基于双边网格的实时加权中值滤波方法

文档序号:10553568阅读:708来源:国知局
基于双边网格的实时加权中值滤波方法
【专利摘要】本发明提供了一种基于双边网格的实时加权中值滤波方法。该方法可以简要概括为以下五个步骤:用户给定一幅输入图像和一幅边界图像;根据输入图像和边界图像构造一个具有(x,y,z,a)四个坐标轴的四维双边网格;根据构造的四维双边网格,分别沿着x,y,z三个坐标轴进行高斯滤波操作得到一个平滑加权后的双边网格;根据平滑加权后的双边网格,沿着a坐标轴进行累加操作得到累加后的三维直方图。根据累加后的三维直方图,基于线性插值的方法,得到最终的加权中值滤波后的输出图像。得益于双边网格的优势,本发明方法能够在图像平滑滤波的同时保持较好的边缘信息。本发明方法的每一个步骤都可以在图形卡硬件中并行处理,有效地改善了运行速度。
【专利说明】
基于双边网格的实时加权中值滤波方法
技术领域
[0001] 本发明涉及一种加权中值滤波方法,尤其是基于四维双边网格来进行实时加权中 值滤波的方法。
【背景技术】
[0002] 边界保持的图像平滑滤波器的任务是去除图像中所包含的噪声信息的同时尽可 能好地保持图像上的显著结构信息。目前已经有很多边界保持的图像平滑滤波器被提了出 来。双边滤波方法是一种实现简单且应用广泛的边界保持滤波方法,通过计算图像局部邻 域内像素值的加权和来进行图像滤波操作,该算法不能很好的去除图像中存在的椒盐噪声 并且在一定程度上会模糊图像的结构边界(参见Tomasi C,Manduchi R.Bilateral filtering for gray and color images.Proceedings of IEEE International Conference on Computer Vision,IEEE Computer Society,1998:839-846)。这类非线性 边界保持滤波方法还有基于局部极值的边界保持滤波方法(参见Subr K,So 1 er C,Durand F.Edge-preserving multiscale image decomposition based on local extrema.ACM Transactions on Graphics,2009,28:1-9)等。标准的中值滤波方法被证明能够很好的去 除椒盐噪声,但是不能很好的保持图像的结构边界参见(Weiss B.Fast median and bilateral filtering.ACM Transactions on Graphics.ACM,2006:519_526)。加权中值滤 波方法相对于标准的中值滤波方法能够具有更好的结构边界信息保持优势,但是需要花费 更多的运算时间(参见Yin L,Yang R,Gabbouj M,et al .Weighted median filters:a tutorial.IEEE Transactions on Circuits&Systerns II Analog&Digital Signal Processing,1996,43(3): 157-192)。为了提高加权中值滤波方法的运行效率,近年来有很 多方法被提了出来。
[0003] Zhang等人提出了利用联合直方图表示、中值跟踪和支持快速数据获取的数据结 构来加速加权中值滤波的方法(参见Zhang Q,Xu L,Jia J.lOO+Times Faster Weighted Median Filter(ffMF).Proceedings of the 2014 IEEE Conference on Computer Vision and Pattern Recognition .IEEE Computer Society,2014:2830-2837)。尽管该方法把时 间复杂度减少到〇(r),但是该算法具有高度的串行特性,因此不能直接在图形卡硬件上实 现。Ma等人提出一种基于常量时间复杂度的加权中值滤波方法。该算法利用三维直方图来 求图像局部邻域的加权中值,使得加权中值滤波方法的时间复杂度变为常量时间,并且支 持在图形卡硬件上并行实现(参见Ma Z,He K,Wei Y,et al .Constant Time Weighted Median Filtering for Stereo Matching and Beyond.IEEE International Conference on Computer Vision.IEEE Computer Society,2013:49-56)〇
[0004] 为了进一步的优化加权中值滤波的运行速度,本发明提出了一种基于双边网格的 加权中值滤波方法,每一个步骤都可以在图形卡硬件中并行处理。

【发明内容】

[0005] 本发明的目的:本发明提出了一种基于双边网格的实时加权中值滤波方法,通过 构造一个四维双边网格,有效地提高加权中值滤波方法的运行速度。由于每一个步骤都具 有可并行性,可以图形卡硬件中并行处理。
[0006] 本发明提出了一种基于双边网格的实时加权中值滤波方法,该方法可以概括为以 下五个步骤:
[0007] (1)给定一幅二维的图像作为输入图像I,给定一幅和输入图像同等大小的图像作 为边界图像E。图像的宽度和高度分别记作w和h,贝lj XG {0,1,2, . . . .,W-1},yG {〇,1, 2,--,h_l}。图像中的像素记作p = (x,y),图像I和图像E在(x,y)坐标的像素的亮度值分 别记为I(x,y)和E(x,y)。对于8位二进制数所表示的灰度图像,图像最多有2 8 = 256个灰度 值,因此I(x,y)和E(x,y)的取值范围为{0,1,2. ? ?,255}。
[0008] (2)给定双边网格在图像空域的下采样比例Ss,值域下采样的两个比例SjPS a。根 据步骤(1)中的输入图像I和边界图像E,运用亮度直方图统计方法构造一个具有(x,y,z,a) 四个坐标轴的四维双边网格r。每个(x,y,z,a)值对应于一个四维双边网格单元。其方法具 体描述如下:
[0009] 首先,对于所有的(X,y,z,a)的值所对应的四维双边网格单元,均对其值作如下初 始化:「(1,7,2,8)=0,其中1和7轴对应的是图像空域的下采样范围,其取值范围为1£{〇, 1,2, . . .,(w-l)/Ss},yG{〇,l,2, . . . .,{h_l)/Ss},z轴对应的是边界图像值域的下采样范 围,其取值范围为zG{〇,l,2,. ..,255/Sr},a轴对应的是输入图像值域的下采样范围,其取 值范围aG{〇,l,2,. ?,.255/Sa}。
[0010] 然后,对于输入图像中的每个像素(x,y),根据如下公式对对应的四维双边网格单 元中的值进行加1操作:
[0012] 式中,[x]表示最接近x的整数值。根据该亮度直方图统计方法,累加统计每个四维 双边网格单元中的像素个数。
[0013] (3)根据步骤(2)中构造的四维双边网格,分别沿着四维双边网格的x,y,z三个坐 标轴进行高斯滤波操作,得到一个平滑加权后的双边网格。给定x,y轴的标准方差为〇 s,z轴 的标准方差为~。其方法具体如下:
[0014] f=/(T?
[0015] 这里f表不标准的高斯滤波器(参见Paris S,Durand F.A Fast Approximation of the Bilateral Filter Using a Signal Processing Approach[J].International Journal of Computer Vision,2008,18(2-3): 124-136)。对于〇的取值,沿x和y轴进行高斯 滤波时取值为〇s,沿Z轴进行高斯滤波时取值为〇r。相应地,高斯滤波的矩形邻域的长度和宽 度设为2〇。
[0016] (4)根据输入图像I、边界图像E以及步骤(3)中得到的平滑加权后的双边网格,对 于输入图像中的所有像素(x,y),沿着a轴对平滑加权后的双边网格进行累加操作,得到累 加后的三维直方图s。对于a轴上所有的值,其累加方法具体如下:
[0018] 式中,am用来表示平滑加权后的双边网格中a轴上的某一个值。式中,
都不是整数值。因此,采用线性插值的方法,对坐标
周围最邻近的8个整数值坐标的平滑加权后的双边网格单元的值进行线性插值来参与式中 的累加操作。
[0019] (5)根据步骤(4)中计算得到的累加后的三维直方图,基于线性插值的方法,得到 最终的加权中值滤波后的输出图像M。由步骤(2)中a轴的取值范围可知,255/S r表示a轴取 值范围中的最大值。根据s的均值来得到累加后的三维直方图在像素(x,y)坐标的加权中值 泛,则有少,255/叉)/2。由于加权中值泛不是整数值,因此首先需要采用线性插值 的方法,对最邻近sOc,;;,习值的2个累加后的三维直方图单元的值进行线性插值。这2个最 邻近的累加后的三维直方图单元可以很容易地找到:
[0020] s(x,y,[a J) <= y, a) < s{x, +1)
[0021] 式中,[_x」表示不大于x的最大整数值。
[0022] 然后,加权中值的线性插值计算方法如下:
[0024] 这里的M即所求的加权中值滤波后的输出图像。至此我们就计算出了输入图像加 权中值滤波的结果。
[0025] 本发明涉及的基于双边网格的实时加权中值滤波方法的优势在于,提出了将图像 空间的像素数据映射到新的四维双边网格数据结构中,通过在四维双边网格的简单高斯平 滑滤波和线性插值方法来实现加权中值滤波,能够在过滤图像细节信息的同时较好地保持 图像的显著结构边界。并且,本发明方法的每一个步骤都具有可并行性,可以图形卡硬件中 并行处理。
【附图说明】
[0026]图1是实施例的流程不意图;
[0027] 具体实施方法
[0028] 下面通过实施例结合流程示意图对本发明作进一步的描述。
[0029] 下面结合附图对本发明:基于双边网格的实时加权中值滤波方法进行详细说明; 本实施例是以本发明技术方案为前提,进行实施的,并结合了详细的实施方式和过程,但本 发明的保护范围不限于下述的实施例。
[0030] 如图1所示,本实施例所描述的基于双边网格的实时加权中值滤波方法,包括以下 五个步骤:
[0031] (1)给定一幅二维的图像作为输入图像I,给定一幅和输入图像同等大小的图像作 为边界图像E。图像的宽度和高度分别记作w和h,贝lj XG {0,1,2, . . . .,W-1},yG {〇,1, 2,--,h_l}。图像中的像素记作p = (x,y),图像I和图像E在(x,y)坐标的像素的亮度值分 别记为I(x,y)和E(x,y)。对于8位二进制数所表示的灰度图像,图像最多有28 = 256个灰度 值,因此I(x,y)和E(x,y)的取值范围为{0,1,2. ? ?,255}。
[0032] (2)给定双边网格在图像空域的下采样比例Ss,值域下采样的两个比例SjPSa。根 据步骤(1)中的输入图像I和边界图像E,运用亮度直方图统计方法构造一个具有(x,y,z,a) 四个坐标轴的四维双边网格r。每个(x,y,z,a)值对应于一个四维双边网格单元。其方法具 体描述如下:
[0033]首先,对于所有的(x,y,z,a)的值所对应的四维双边网格单元,均对其值作如下初 始化:「(1,7,2,8)=0,其中1和7轴对应的是图像空域的下采样范围,其取值范围为1£{〇, 1,2, . . .,(w-l)/Ss},yG{〇,l,2, . . . .,(h_l)/Ss},z轴对应的是边界图像值域的下采样范 围,其取值范围为zG{〇,l,2,. ..,255/Sr},a轴对应的是输入图像值域的下采样范围,其取 值范围aG{〇,l,2,. ?,.255/Sa}。
[0034]然后,对于输入图像中的每个像素(x,y),根据如下公式对对应的四维双边网格单 元中的值进行加1操作:
[0036]式中,[x]表示最接近x的整数值。根据该亮度直方图统计方法,累加统计每个四维 双边网格单元中的像素个数。以上方法可以采用CUDA编程的方式在GPU上快速实现。双边网 格可以用纹理内存的方式来存储,且根据四维双边网格中x和y轴上的大小来开辟线程数, 并且利用共享内存的方法来快速的完成双边网格的构造。
[0037] (3)根据步骤(2)中构造的四维双边网格,分别沿着四维双边网格的x,y,z三个坐 标轴进行高斯滤波操作,得到一个平滑加权后的双边网格。给定x,y轴的标准方差为〇s,z轴 的标准方差为~。其方法具体如下:
[0038] F=/(I?
[0039] 这里f表示标准的高斯滤波器。对于〇的取值,沿x和y轴进行高斯滤波时取值为〇s, 沿Z轴进行高斯滤波时取值为〇 r。相应地,高斯滤波的矩形邻域的长度和宽度设为2〇。这一 步双边网格中每个网格内的高斯平滑操作由开辟的对应的线程控制,且利用共享内存的方 式减少数据传输的时间。
[0040] (4)根据输入图像I、边界图像E以及步骤(3)中得到的平滑加权后的双边网格,对 于输入图像中的所有像素(x,y),沿着a轴对平滑加权后的双边网格进行累加操作,得到累 加后的三维直方图s。对于a轴上所有的值,其累加方法具体如下:
[0042]式中,am用来表示平滑加权后的双边网格中a轴上的某一个值。式中,
都不是整数值。因此,采用线性插值的方法,对坐标
周围最邻近的8个整数值坐标的平滑加权后的双边网格单元的值进行线性插值来参与式中 的累加操作。
[0043] (5)根据步骤(4)中计算得到的累加后的三维直方图,基于线性插值的方法,得到 最终的加权中值滤波后的输出图像M。由步骤(2)中a轴的取值范围可知,255/Sr表示a轴取 值范围中的最大值。根据s的均值来得到累加后的三维直方图在像素(x,y)坐标的加权中值 泛,则有4^,5)=^(七少,255/叉)/2。由于加权中值泛不是整数值,因此首先需要采用线性插值 的方法,对最邻近办Jj)值的2个累加后的三维直方图单元的值进行线性插值。这2个最 邻近的累加后的三维直方图单元可以很容易地找到:
[0044] 5(x,.y5L?J) <=s{x,y,a) < ^(x,^,LaJ+l)
[0045] 式中,l_x」表示不大于x的最大整数值。
[0046] 然后,加权中值的线性插值计算方法如下:
[0048]这里的M即所求的加权中值滤波后的输出图像。至此我们就计算出了输入图像加 权中值滤波的结果。
【主权项】
1. 一种基于双边网格的实时加权中值滤波方法,可以阐述为以下五个步骤: (1) 给定一幅图像作为输入图像,给定一幅和输入图像大小相等的图像作为边界图像。 (2) 根据步骤(1)中的输入图像和边界图像,运用亮度直方图统计方法构造一个具有 (x,y,z,a)四个坐标轴的四维双边网格。 (3) 根据步骤(2)中构造的四维双边网格,分别沿着四维双边网格的x,y,z三个坐标轴 进行高斯滤波操作,得到一个平滑加权后的双边网格。 (4) 根据步骤(3)中计算得到的平滑加权后的双边网格,沿着a坐标轴进行累加操作,得 到累加后的三维直方图。 (5) 根据步骤(4)中计算得到的累加后的三维直方图,基于线性插值的方法,得到最终 的加权中值滤波后的输出图像。
【文档编号】G06T5/00GK105913384SQ201610194713
【公开日】2016年8月31日
【申请日】2016年3月21日
【发明人】赵汉理, 高丹丹
【申请人】温州大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1