APP下载

基于自适应中值滤波半径的纹理滤波算法

2018-01-25郭和炀刘俊如赵汉理

现代计算机 2017年36期
关键词:像素点纹理半径

郭和炀,刘俊如,赵汉理

(温州大学智能信息系统研究所,温州 325035)

0 引言

图像是一种重要的视觉信息表达媒介,通常会包含各种纹理信息。纹理体现了物体表面的共有内在属性,包含了物体表面结构组织排列的重要信息以及其与周围的联系[1]。图像纹理滤波器可以有效地过滤图像中的纹理细节信息,同时较好地保持显著的结构边缘信息。因此,基于结构保持的图像纹理滤波器可以将图像中的纹理信息和显著结构信息进行有效地分离。并且,图像纹理滤波算法经常作为一些图像处理应用的预处理操作,可以用来改善输入图像的信息,方便计算机理解图像。图像纹理滤波器可以优化诸如边缘检测和图像分割等图像处理应用。

本文提出了一种新的图像纹理滤波算法。首先,该图像纹理滤波算法采用一种改进的基于方向的相对总变差尺度mdRTV(modified directional Relative Total Variation)来区分图像的显著结构边界和纹理细节区域。然后,基于最大-最小图像栈确定自适应纹理滤波半径,运用自适应中值滤波生成一幅引导图像。最后,对输入图像使用基于引导图像的联合双边滤波,得到最终的结构保持的纹理滤波图像。

1 相关工作

图像纹理滤波算法在图像处理领域有着重要的作用,越来越多的研究学者专注于该课题的研究。近年来,已有很多优秀的基于边缘保持的图像滤波算法被提出。

一种是基于细节信息过滤的图像滤波算法。该种类型的滤波算法将图像中的纹理滤除并保留图像的显著结构信息。形态学滤波[2]是其中一个经典的算法,基于时域信号处理,可以有效防止信号幅度衰减和相位移动的问题,同时信号的保真度也保持得较好。但是,形态学滤波可能会破坏图像的细节和边缘。双边滤波[3]则是结合了图像中像素灰度值的相似性和像素之间的空间距离,既能保持图像边缘,又能达到抑制噪声的效果。但是,双边滤波器还不能做到平滑任意尺度的图像细节。Buades等[4]提出了基于块相似性的非局部均值滤波算法,Perona等[5]提出了基于偏微分方程的各向异性扩散滤波算法。Ma等[6]提出了一种加权中值滤波算法进行图像滤波和边界保持操作。这些算法虽然在图像滤波的过程中很好地保持了图像的边界结构信息,但是并不能很好地处理图像中的复杂纹理信息。

另一种是基于纹理信息过滤的图像滤波算法。该种类型的滤波算法通过相应操作对图像中的纹理信息和显著结构信息进行区分并且建立一幅引导图像,然后基于引导图像对输入图像进行结构保持的纹理滤波。Xu等[7]提出了一种基于相对总变差尺度(RTV,Relative Total Variation)的纹理滤波算法,从带有复杂纹理信息的图像中有效地提取出显著结构信息。Kara⁃can等[8]提出了一种基于局部区域协方差的纹理过滤方法。Cho等[9]提出了一种改进的相对总变差尺度(mRTV,modified Relative Total Variation),运用图像块偏移的思想建立引导图像,实现对输入图像的纹理滤波。最近,Jeon等[10]则提出了基于方向的相对总变差尺度(dRTV,directional Relative Total Variation),设计了一种基于自适应高斯滤波半径的纹理尺度感知的图像纹理滤波方法。

2 算法介绍

图1示意了本文算法的主要步骤,算法流程具体如下。首先,根据输入图像(如图1a所示)计算出一种新的用于区分图像中显著结构信息和复杂纹理信息的尺度mdRTV。其次,将所生成mdRTV尺度图像进行归一化处理,并且运用中值滤波对归一化后的mdRTV尺度图像进行平滑过滤(如图1b所示)。然后,计算出每个像素的自适应滤波半径,并且根据自适应滤波半径对输入图像进行自适应中值滤波以生成一幅引导图像(如图1c所示)。最后,基于该引导图像对输入图像进行联合双边滤波,获得所要输出的结构保持的纹理滤波图像(如图1d所示)。

2.1 mdRTV尺度图像

基于Cho等[9]的mRTV和Jeon等[10]的mRTV,本文提出了改进的基于方向的相对总变差尺度mdRTV,其具体定义如下:

图1 本文算法流程图

式中,Iq表示输入图像I中像素点q的像素值,Np表示以像素点p为中心点的方形图像块,∅∈[0,2π)表示图像块的旋转角度,参数ε=10-3用于防止计算时出现分母为0的情况。因此,Tp(∅)表示以像素点p为中心的图像块Np顺时针旋转∅角度后的纹理特征尺度。

在具体实现中,在0到2π的角度范围中等间距地遍历12个角度值,分别计算出各个角度下的Tp(∅)值。接着,将12个Tp(∅)值中的最大值作为像素p所对应的mdRTV值,此时所对应的角度称为最大方向角。如果像素点p对应的mdRTV值较小,则像素点p位于纹理特征显著区域或者较平坦区域。如果像素点p对应的mdRTV值较大,则像素点p位于结构边界区域。具体地,最大方向角的计算公式如下:

对于彩色图像的mdRTV值的计算,本文采用Cho等[9]的方法,首先对彩色图像R、G、B三个通道分别计算mdRTV值,然后将三个通道的mdRTV值相加得到最终的mdRTV值。

2.2 mdRTV图像平滑过滤

图像中位于结构边界附近的纹理区域像素点的mdRTV值可能会与结构边界上像素点的mdRTV值差异并不太明显。

首先,本文采用Jeno等[10]的方法对mdRTV进行归一化:

式中,σe用于调控结构边界到纹理区域的像素点对应的mdRTV值过渡情况,本文设为0.1。

然后,使用中值滤波对该归一化后的mdRTV图进行平滑。中值滤波能够很好地保持图像显著结构信息,还能有效地滤除高对比度噪声。在中值滤波前,将滤波窗口根据中心像素对应的最大方向角进行旋转,得到最终参与滤波的窗口像素。图2给出了mRTV算法、dRTV算法和mdRTV算法的效果对比图,图中蓝色表示RTV值较小,绿色和红色表示RTV值较大。从效果对比图和一些细节放大对比中可以看出dRTV算法以及本文提出的mdRTV算法在结构信息地保持上都比mRTV算法做得更好,尤其是在一些角点的地方,dRTV算法和mdRTV算法得到的结果图在连贯性和完整性上都比mRTV算法得到的效果图更好。

图2 mRTV、dRTV与mdRTV结果比较

2.3 基于自适应滤波半径的引导图像生成

使用自适应滤波半径的中值滤波生成引导图像,中值滤波定义如下:

式中,每一个像素点p的滤波核大小不一定相同,在显著结构边界的像素点的滤波核半径较小,而在纹理区域的像素点滤波半径较大。自适应滤波半径能够使得引导图像在经过中值滤波后能够达到结构边界信息保持清晰以及纹理区域过渡自然的效果,同时能够过滤高对比的噪声。

本文基于最大-最小图像栈方法[11]来计算自适应滤波半径的大小。为了对显著结构区域的滤波半径进行有效限制,定义一个二值限制函数[11]:

式中,ξ表示当前邻近像素点与中心像素点p的距离,R为阈值参数。如果图像大小是N×M个像素点,则建立最大-最小图像栈时,图像栈将有log2(max(N,M))张N×M个像素点大小的图片,每一张图像称为图像栈的一层。在第0层中图像包含了EP的原始向量元素。第1层中任意坐标值记为(m,n)的向量元素包含了第0层中像素坐标值为:

(m±[0 ,20],n±[0 ,20])的3×3邻域内的最大值和最小值。以此类推,建立最大-最小图像栈。通过遍历最大-最小图像栈就能够得到任意像素点p周围像素点的最大值和最小值在[EP-R,EP+R]范围内对应的最高图像层编号,并记为 fP,则像素p的滤波半径就为2fP-1。

2.4 基于引导图像的纹理滤波

与Cho等[9]的做法类似,对输入图像基于引导图像进行联合双边滤波,得到最终的输出图像:

式中,fσI(∙)与 gσg(∙)分别为联合双边纹理滤波器的空间权重和值域权重函数。

对于彩色图像,分别对R、G、B三个通道进行联合双边滤波得到最终的彩色滤波结果。

3 实验结果和总结

本文实验在一台配置了酷睿i5 3470 CPU和8 GB内存的个人电脑上进行测试。本文方法通常仅需要一次迭代就能过滤图像中的噪声和小尺度的纹理。对于大尺度的纹理,也只需2~3次迭代。本文算法主要有两个调节参数,一个参数是迭代次数n∈{1,2,3},另一个参数是滤波核大小K∈{5,7,9}。联合双边滤波中滤波核大小设为3K×3K,值域标准差设为σr∈{0.08,0.16},空域标准差设为 σs∈{K-1,K+1}。

图3给出了本文算法与Cho等[9]和Jeon等[10]算法的纹理滤波对比效果。Cho等[9]的算法虽然能够保持住大部分的结构边界信息,但是对一些低对比度的局部特征保持得不好,例如大鱼眼睛的睫毛部分比较模糊。并且,Cho等[9]的算法和Jeon等[10]的算法不能很好地过滤结构内部的高对比度纹理,例如图像的黑色背景还是能够看到一些离散的白斑点。本文的算法能够使得在结构边界和局部特征区域的像素点对应的滤波半径较小,而在纹理区域的像素点对应的滤波半径较大。因此,基于自适应中值滤波的引导图像能够在较好地保持结构边界和局部特征的同时,将复杂纹理背景过滤得更平滑。

图3 算法结果比较

图4示意了运用本文的基于自适应中值滤波半径的纹理滤波算法所生成的更多纹理滤波效果。从图中可以看出,本文算法有效地过滤了输入图像中的纹理细节信息,也保持了显著的结构边界信息。

图4 本文算法的滤波效果

4 结语

本文提出了一种新的区分图像的显著结构边界和复杂纹理区域的尺度,基于最大-最小图像栈的方式确定自适应中值滤波半径并生成引导图像,最终运用联合双边滤波对图像的纹理进行过滤。通过与其他算法的实验比较证明了本文算法的有效性。

但是,本文方法还存在一些不足。一方面,对低对比度的结构边界不一定能完整的保持。另一方面,局部纹理特征可能会出现滤波过度的情况。在今后的工作中,将研究相关的方法解决这些缺点。

[1]Haralick R M.Statistical and Structural Approaches to Texture[J].Proceedings of the IEEE,1979,67(5):786-804.

[2]Maragos P A.Morphological Filters-Part II:Their Relations to Median,Order-Static,and Stack Filters[J].IEEE Trans Assp,1987,35:1170-1184.

[3]Tomasi C,Manduchi R.Bilateral Filtering for Gray and Color Images[C].6th International Conference on Computer Vision.Bombay.India:IEEE,1998:839-846.

[4]Buades A,Coll B,Morel J M.Neighborhood Filters and PDE's[J].Numerical Mathematics,2006,105:1-34.

[5]Perona P,Malik J.Scale-Space and Edge Detection Using Anisotropic Diffusion[J].IEEE Transactions on Pattern Analysis&Machine Intelligence,2002,12(7):629-639.

[6]Ma Z,He K,Wei Y,et al.Constant Time Weighted Median Filtering for Stereo Matching and Beyond[C].IEEE International Conference on Computer Vision.IEEE,2014:49-56.

[7]Xu L,Yan Q,Xia Y,ct al.Structure Extraction from Texture Via Relative Total Variation[J].ACM Transactions on Graphics,2012,31(6):439-445.

[8]Karacan L,Erdem E,Erdem A.Structure-Preserving Image Smoothing Via Region Covariances[J].ACM Transactions on Graphics,2013,32(6):1-11.

[9]Lee H,Lee H,Lee S,et al.Bilateral Texture Filtering[J].Acm Transactions on Graphics,2014,33(4):128.

[10]Jeon J,Lee H,Kang H,et al.Scale aware Structure Preserving Texture Filtering[J].Computer Graphics Forum,2016,35(7):77-86.

[11]Choudhury P,Tumblin J.The Trilateral Filter for High Contrast Images and Meshes[C].Eurographics Workshop on Rendering Techniques,Leuven,Belgium,June.DBLP,2005:5.

猜你喜欢

像素点纹理半径
直击多面体的外接球的球心及半径
图像二值化处理硬件加速引擎的设计
基于局部相似性的特征匹配筛选算法
基于BM3D的复杂纹理区域图像去噪
使用纹理叠加添加艺术画特效
基于像素点筛选的舰船湍流尾迹检测算法
将相等线段转化为外接圆半径解题
基于canvas的前端数据加密
TEXTURE ON TEXTURE质地上的纹理
消除凹凸纹理有妙招!