【技术实现步骤摘要】
基于FPGA的图像双边滤波方法和装置
[0001]本专利技术涉及图像处理领域,尤其涉及一种基于FPGA的图像双边滤波方法和装置。
技术介绍
[0002]双边滤波是一种非线性的滤波方法,广泛用于图像滤波,它的核心是对图像的空间邻近度和像素值相似度进行折衷处理,以有效的实现图像噪声的抑制与平滑,并保持图像边缘信息。
[0003]传统的图像双边滤波,需采用高斯函数实时地对空域权重和值域权重进行计算,指数函数运算大,因此在FPGA中实现双边滤波具有难度。
[0004]为此,技术人员将双边滤波复杂运算(指数运算,或者指数运算与乘法运算)由实时计算改为查表,使得在FPGA中无需进行该复杂运算,降低运算压力。
[0005]但是,不论利用高斯函数实时计算空域权重和值域权重,还是存储查找表,都需要用到大量的FPGA资源。
[0006]在专利号为CN112435156A的专利文献中,公开了一种基于FPGA的双边滤波方法,但各种计算仍然需要大量的资源。在专利号为CN107230190A的专利文献中,提出了将一些计算转为查表,但未提及本专利技术中的用区间函数替换高斯函数以减少资源的方法。
技术实现思路
[0007]本专利技术的目的是提供一种基于FPGA的图像双边滤波方法和装置,以解决FPGA中进行图像双边滤波需要用到大量的FPGA资源的问题,从而减少FPGA资源的使用,降低硬件成本。
[0008]第一方面,本专利技术实施例提供一种基于FPGA的图像双边滤波方法,包括:
[000 ...
【技术保护点】
【技术特征摘要】
1.一种基于FPGA的图像双边滤波方法,其特征在于,所述方法包括:基于预先设定的分段函数以及邻域像素点与目标像素点之间的像素差值,确定所述邻域像素点的值域计算值;根据预先存储的空域权重值查找表,确定所述邻域像素点的空域权重值;利用所述值域计算值和所述空域权重值,实现对所述目标像素点的双边滤波;其中,所述邻域像素点为滤波窗口的全部像素点;所述目标像素点为滤波窗口的中心像素点;所述分段函数,是以邻域像素点与目标像素点之间的像素差值为自变量,以邻域像素点的值域计算值为因变量的函数。2.根据权利要求1所述的基于FPGA的图像双边滤波方法,其特征在于,所述分段函数的设定方法,包括:利用值域权重值高斯函数和预先设定的分段函数分界点个数,确定由所述分界点划分的各个区间以及各个区间对应的函数值;基于所述各个区间以及所述各个区间对应的函数值,生成值域权重值分段函数;对所述值域权重值分段函数进行推演,得到所述分段函数;其中,所述值域权重值高斯函数和所述值域权重值分段函数,均为以邻域像素点与目标像素点之间的像素差值为自变量,以邻域像素点的值域权重值为因变量的函数。3.根据权利要求2所述的基于FPGA的图像双边滤波方法,其特征在于,所述利用值域权重值高斯函数和预先设定的分段函数分界点个数,确定由所述分界点划分的各个区间,包括:基于所述值域权重值高斯函数,确定最大值域权重值;根据所述最大值域权重值和所述分段函数分界点个数,确定所述值域权重值高斯函数中与所述分界点分别对应的函数值;将所述函数值代入所述值域权重值高斯函数中进行计算,得到所述分界点的坐标;按照所述分界点的坐标,对所述分段函数的定义域进行区间划分,得到由所述分界点划分的各个区间;其中,所述分段函数的定义域为[0,+∞)。4.根据权利要求3所述的基于FPGA的图像双边滤波方法,其特征在于,所述值域权重值高斯函数中与所述分界点分别对应的函数值,具体通过以下公式计算:其中,G
max
表示最大值域权重值,N表示预先设定的分界点的个数,g
N
‑
i
表示值域权重值高斯函数中与第i个分界点对应的函数值,i表示索引值。5.根据权利要求3所述的基于FPGA的图像双边滤波方法,其特征在于,所述利用值域权重值高斯函数和预先设定的分段函数分界点个数,确定由所述分界点划分的各个区间对应的函数值,包括:将所述各个区间中第一个区间和最后一个区间之外的区间作为待选区间;令所述待选区间对应的函数值为所述值域权重值高斯函数中所述待选区间两个端点
对应的函数值的均值;令第一个区间对应的函数值为最大值域权重值,并令最后一个区间对应的函数值为0;其中,所述第一个区间为0与第一...
【专利技术属性】
技术研发人员:何健,
申请(专利权)人:北京双翼麒电子有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。