基于FPGA的图像双边滤波方法和装置制造方法及图纸

技术编号:33809099 阅读:22 留言:0更新日期:2022-06-16 10:18
本发明专利技术涉及一种基于FPGA的图像双边滤波方法和装置,包括:基于预先设定的分段函数以及邻域像素点与目标像素点之间的像素差值,确定邻域像素点的值域计算值;根据预先存储的空域权重值查找表,确定邻域像素点的空域权重值;利用值域计算值和空域权重值,实现对目标像素点的双边滤波。本发明专利技术在FPGA中将用于实时计算邻域像素点值域的高斯函数替换成分段函数,降低了值域的计算分辨率,从而减少了FPGA资源的使用。资源的使用。资源的使用。

【技术实现步骤摘要】
基于FPGA的图像双边滤波方法和装置


[0001]本专利技术涉及图像处理领域,尤其涉及一种基于FPGA的图像双边滤波方法和装置。

技术介绍

[0002]双边滤波是一种非线性的滤波方法,广泛用于图像滤波,它的核心是对图像的空间邻近度和像素值相似度进行折衷处理,以有效的实现图像噪声的抑制与平滑,并保持图像边缘信息。
[0003]传统的图像双边滤波,需采用高斯函数实时地对空域权重和值域权重进行计算,指数函数运算大,因此在FPGA中实现双边滤波具有难度。
[0004]为此,技术人员将双边滤波复杂运算(指数运算,或者指数运算与乘法运算)由实时计算改为查表,使得在FPGA中无需进行该复杂运算,降低运算压力。
[0005]但是,不论利用高斯函数实时计算空域权重和值域权重,还是存储查找表,都需要用到大量的FPGA资源。
[0006]在专利号为CN112435156A的专利文献中,公开了一种基于FPGA的双边滤波方法,但各种计算仍然需要大量的资源。在专利号为CN107230190A的专利文献中,提出了将一些计算转为查表,但未提及本专利技术中的用区间函数替换高斯函数以减少资源的方法。

技术实现思路

[0007]本专利技术的目的是提供一种基于FPGA的图像双边滤波方法和装置,以解决FPGA中进行图像双边滤波需要用到大量的FPGA资源的问题,从而减少FPGA资源的使用,降低硬件成本。
[0008]第一方面,本专利技术实施例提供一种基于FPGA的图像双边滤波方法,包括:
[0009]基于预先设定的分段函数以及邻域像素点与目标像素点之间的像素差值,确定所述邻域像素点的值域计算值;
[0010]根据预先存储的空域权重值查找表,确定所述邻域像素点的空域权重值;
[0011]利用所述值域计算值和所述空域权重值,实现对所述目标像素点的双边滤波;
[0012]其中,所述邻域像素点为滤波窗口的全部像素点;
[0013]所述目标像素点为滤波窗口的中心像素点;
[0014]所述分段函数,是以邻域像素点与目标像素点之间的像素差值为自变量,以邻域像素点的值域计算值为因变量的函数。
[0015]根据本专利技术提供的基于FPGA的图像双边滤波方法,所述分段函数的设定方法,包括:
[0016]利用值域权重值高斯函数和预先设定的分段函数分界点个数,确定由所述分界点划分的各个区间以及各个区间对应的函数值;
[0017]基于所述各个区间以及所述各个区间对应的函数值,生成值域权重值分段函数;
[0018]对所述值域权重值分段函数进行推演,得到所述分段函数;
[0019]其中,所述值域权重值高斯函数和所述值域权重值分段函数,均为以邻域像素点与目标像素点之间的像素差值为自变量,以邻域像素点的值域权重值为因变量的函数。
[0020]根据本专利技术提供的基于FPGA的图像双边滤波方法,所述利用值域权重值高斯函数和预先设定的分段函数分界点个数,确定由所述分界点划分的各个区间,包括:
[0021]基于所述值域权重值高斯函数,确定最大值域权重值;
[0022]根据所述最大值域权重值和所述分段函数分界点个数,确定所述值域权重值高斯函数中与所述分界点分别对应的函数值;
[0023]将所述函数值代入所述值域权重值高斯函数中进行计算,得到所述分界点的坐标;
[0024]按照所述分界点的坐标,对所述分段函数的定义域进行区间划分,得到由所述分界点划分的各个区间;
[0025]其中,所述分段函数的定义域为[0,+∞)。
[0026]根据本专利技术提供的基于FPGA的图像双边滤波方法,所述值域权重值高斯函数中与所述分界点分别对应的函数值,具体通过以下公式计算:
[0027][0028]其中,G
max
表示最大值域权重值,N表示预先设定的分界点的个数,g
N

i
表示值域权重值高斯函数中与第i个分界点对应的函数值,i表示索引值。
[0029]根据本专利技术提供的基于FPGA的图像双边滤波方法,所述利用值域权重值高斯函数和预先设定的分段函数分界点个数,确定由所述分界点划分的各个区间对应的函数值,包括:
[0030]将所述各个区间中第一个区间和最后一个区间之外的区间作为待选区间;
[0031]令所述待选区间对应的函数值为所述值域权重值高斯函数中所述待选区间两个端点对应的函数值的均值;
[0032]令第一个区间对应的函数值为最大值域权重值,并令最后一个区间对应的函数值为0;
[0033]其中,所述第一个区间为0与第一个分界点围成的区间,所述最后一个区间为第N个分界点与+∞围成的区间。
[0034]根据本专利技术提供的基于FPGA的图像双边滤波方法,所述对所述值域权重值分段函数进行推演,得到所述分段函数,包括:
[0035]对于所述值域权重值分段函数的每一个区间,确定区间对应的函数值与最大值域权重值的比值,以及1与所述比值的差值;
[0036]将所述比值与邻域像素点的像素值之间的乘积作为第一记录值,并将所述差值与目标像素点的像素值之间的乘积作为第二记录值;
[0037]利用所述第一记录值和所述第二记录值加和值替换区间对应的函数值,以得到所述分段函数。
[0038]根据本专利技术提供的基于FPGA的图像双边滤波方法,所述空域权重值查找表,由空域权重值及其对应的邻域像素点与目标像素点之间的像素距离构成的;
[0039]所述空域权重值是基于空域的光滑参数以及邻域像素点与目标像素点之间的像素距离确定的;
[0040]所述根据预先存储的空域权重值查找表,确定所述邻域像素点的空域权重值,包括:
[0041]计算所述领域像素点与所述目标像素点之间的像素距离;
[0042]查找空域权重值查找表中与所述领域像素点与所述目标像素点之间的像素距离对应的空域权重值;
[0043]将查找到的空域权重值作为所述邻域像素点的空域权重值。
[0044]根据本专利技术提供的基于FPGA的图像双边滤波方法,所述利用所述值域计算值和所述空域权重值,实现对所述目标像素点的双边滤波,包括:
[0045]按照空域权重值相同的邻域像素点归为一个集群的方式,将滤波窗口中全部邻域像素点进行集群划分,并确定各个集群对应的空域权重值;
[0046]计算各个集群对应的值域计算值总和;
[0047]将各个集群对应的值域计算值总和与空域权重值的乘积进行加和,得到滤波窗口邻域像素点的值域计算值和空域权重值乘积的合计值;
[0048]将所述合计值与滤波窗口邻域像素点的空域权重值的合计值之间的比值作为双边滤波后所述目标像素点的像素值。
[0049]第二方面,本专利技术实施例提供一种基于FPGA的图像双边滤波装置,包括:
[0050]第一确定模块,用于基于预先设定的分段函数以及邻域像素点与目标像素点之间的像素差值,确定所述邻域像素点本文档来自技高网
...

【技术保护点】

【技术特征摘要】
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与第一...

【专利技术属性】
技术研发人员:何健
申请(专利权)人:北京双翼麒电子有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1