文章来源:Pacific Graphics 2016
下载链接:Paper Download
解决的问题:
图像结构-纹理分解(纹理滤波)
文章内容:
本文提出了一种基于自适应尺度(kernel scales)的结构纹理分离滤波方法。其核心思想是使用像素邻域统计信息区分纹理和结构,同时为每个像素找到最优的平滑尺度(kernel scales)。
对于传统的边缘感知滤波器来说,在多尺度特征并存的情况下,处理高复杂度的图像往往具有一定的挑战性。特别是,在删除不重要的细节和保护重要的特征之间找到适当的平衡并不总是容易的。与以前的方法不同(以前的方法大都是采用固定尺度进行处理),作者从自适应内核尺度的角度来解决这个问题。该方法利用基于patch的统计信息,从结构上识别纹理,并得到最优的像素平滑比例尺寸。实验结果表明,该机制能够有效地保护图像中突出的几何结构,从而提高图像/纹理的滤波性能。
该文章主要贡献:使用自适应内核尺度处理纹理滤波(即,变尺度),而以前方法均是固定尺度。
下列为计算自适应内核尺度的处理步骤:
本文使用中间指导图像(intermediate guidance images)来去除纹理。指导图像通常是通过对源图像进行保边平滑生成,然后进行联合双边滤波滤除纹理。给定输入图像I,联合双边滤波器定义如下:
公式 1其中Ip、Gp、Sp分别表示输入图像像素p处的强度/颜色值、制导图像和滤波图像,p = (px, py) q = (qx,qy)是两个像素的空间坐标。f(·)和g(·)测量两个像素之间的空间和幅度的距离(高斯权重函数中使用),过滤过程可以根据过滤目标进行迭代。
对于基于指导图像的结构-纹理分离框架,指导图像是决定滤波结果质量的关键。从某种意义上说,以前方法造成伪影是由于它们在生成指导图像时使用固定尺度的平滑方法造成的。针对这一问题,本文提出了一种自适应控制平滑尺度的指导图像生成方法。
首先,使用高斯滤波获取指导图像,其定义为:
公式 2 公式 3其中公式3中Kp表示像素p处的最佳核尺度。为了估计每个像素处的Kp,就需要测量像素离我们想要保持的结构边缘的距离。其基本原理是在平坦或纹理区域内放大Kp,在结构边角附近收缩Kp。
其次,为了区分小尺度震荡和结构边缘,本文首先采用RTV方法来增加其可辨别性能,其中RTV在小尺度振荡区域内增大,而在包含边的区域内减小。从这个意义上说,RTV可以用来确定像素p处的核尺度Kp。但是原RTV有一个局限性:它经常会错误地将纹理区域的角等倾斜的锐性特征作为沿x轴和y轴的振荡来处理。如果将RTV直接用于内核的Kp,这可能导致一些精细的特征被过度模糊。为了解决该问题,作者定义了方向相对总变差dRTV:
公式 4∂φ(·)是沿着角φ的方向偏导数算子。
公式 5因此,我们需要寻找一个具有最小震荡的结构方向θp,通常这种θp方向垂直于边缘附近的结构。在角落区域,θp指向角落的尖端方向;在纹理区域,θp可以是任意方向。
公式 60 ≤ φ < 2π。文中抽样检查了12个不同的方向来有效地识别结构方向θp。利用结构方向,dRTV可以识别出结构边缘和锐化边角。
上述的dRTV可以有效的区分小的结构和纹理,但还不能够准确确定Kp。一个较大的值dRTVθp意味着像素属于纹理区域,但并不完全意味着像素p是远离结构的, 由于dRTV值受到一个区域内振荡幅度和振荡次数的影响。为了解决该问题,作者使用一个非线性变换来规范化dRTV,并计算Eθp,文中称该值为平坦度(Flatness)。
公式 7σe控制着从结构边缘到纹理区域的过渡平坦度。
虽然平坦度可以很好地区分纹理区域和结构,但这还不能够确定最优的内核尺度,因此作者又引入了整体平坦度(collective flatness)Cp,取值为左右平均平坦度的最大值。
公式 8Clp和Crp分别代表p像素左右侧的整体平坦度,Clp定义如下,Crp同理可得。
公式 9最后,使用整体平坦度来估计核尺度Kp。
公式 10σ2是高斯函数中的方差,引入参数δ以防止信号过度锐化或混叠。
本文的滤波过程包括指导图像的生成和联合双边滤波。
当获取估计的核尺度K后,我们就可以对原图像I进行变尺度各向同性高斯平滑,得到指导图像(guidance image)G:
公式 11其中k是标准化因子。
最后,利用指导图像G对源图像I进行联合双边滤波(联合双边滤波可参考该文献),得到最终输出S:
公式 12其中gσs(·)和gσr(·)分别给出具有相应高斯核尺寸σs和σr的空间和范围权重。注意,σs不同于σ(公式4)。
为了提高滤波效果,可以多次迭代指导图像的计算和联合双边滤波过程。算法1总结了该方法的整个过程。
算法 1实验结果图:
Figure 9: Visual comparison oftexture filtering results. (a) input image, (b) RTV[λ=0.01,σ=6, εs =0.02,niter =4], (c) BTF [k =5,niter = 5], (d) RGF [σs =5,σr =0.1,niter =4], (e) TreeFiltering [σ=0.02,σs =5,σr =0.05,niter =5], (f) Static & dynamic filtering [λ=200,σ= 2, steps = 10], (g) Semantic filtering with recursive bilateral filter [levelsmoothing = 4.5], (h) our method [σ = 4,σr = 0.1,niter = 5] (best viewed in the original resolution). Figure 10: Large-scale texture filtering (top) and detail enhancement (bottom) results. (a) input image, (b) RTV [XYXJ12] [λ = 0.03,σ = 10, εs = 0.02,niter = 4], (c) BTF [CLKL14] [k = 6,niter = 5], (d) RGF [ZSXJ14] [σs = 10,σr = 0.1,niter = 10], (e) our method [σ = 18,σr = 0.04,niter = 8]. For filtering large-scale textures, our method clearly outperforms previous methods in terms of preserving salient small-scale features such as corners (red box). As a result, our method enables the detail enhancement ofan image containing large-scale textures without introducing halo artifacts near corners.该文所获得的好处:
(1) 本文提出了一种基于自适应核尺度的结构保持图像/纹理滤波算法,并第一次将自适应尺度应用于纹理-结构分解问题。
该文工作可能的不足:
(1) 本文方法假设纹理具有一定的振荡属性,因此该方法可能无法完美地处理需要显式纹理分析或特定先验知识的某些纹理。
内容说明:
上述内容仅个人的点滴粗见,如有不当之处,请同行批评指正。
网友评论