灰度图与彩图的双边滤波

摘要:
即,滤波图像的指定位置处的值是基于输入图像和周围区域上相同位置处的函数计算的值。2.原理双边滤波的基本思想是在图像范围内的域中执行传统滤波器所做的操作。考虑对图像应用具有平移不变性的低通滤波器:上面公式中的f和h被加粗,以强调输入和输出图像可能是多频带的。图像强度的空间分布在距离滤波中不起任何作用。没有域过滤的范围过滤几乎不会改变图像中的颜色映射。

翻译自http://homepages.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/MANDUCHI1/Bilateral_Filtering.html

1、引言

        对于图像处理和计算机视觉来说,滤波有可能是最基础的操作了。术语“滤波”最广泛的定义下,也就是过滤后的图像的指定位置上的值就是为基于输入图像上相同位置极其周边区域上函数计算的值。例如:高斯低通滤波是计算周边像素值的一个加权平均值,在这其中权值是距离中心位置越远,权值越小。尽管从正式的公式和量化的数值上可以认为权重是会减少的,但是从感官上来说,在空间上图像的变化通常是很缓慢的,所以相邻的像素其实也有着相似的值,所以这也是为什么可以一起进行均化的原因。而且噪音值因为与信号值相比有着更少的相关性,会腐化这些近邻的像素,通过均化可以将噪音值给移除而能够保留信号值。

不过对于边缘来说,之前有关空间变化缓慢的假设就行不通了,而且这通常会被一些线性的低通过滤器给模糊掉。那么如何既能够在保留这些边缘的同时又能够对选定的区域进行均化呢?在许多的努力中,双边滤波是一种简单的,非迭代的方法来解决去噪保边的问题。

2、原理

双边滤波的基本想法是在图像的范围中执行传统的过滤器在域中所做的事情。两个像素之间可以相互靠的很近,也就是说,要不就是占领近邻的空间位置,或者他们之间是非常相似的,说白了就是有着相近的值。

考虑在一个图片上应用一个具有平移不变性的低通域过滤器:

灰度图与彩图的双边滤波第1张

上式中的 f 和 h 加粗是为了强调输入和输出图像可能是多波段的。为了保留其中的直流成分,上式中的系数必须是:

灰度图与彩图的双边滤波第2张

范围过滤器也有着相似的定义:

灰度图与彩图的双边滤波第3张

这里的核是测量像素之间的光度相似性的。其中的归一化常量为:

灰度图与彩图的双边滤波第4张


图像强度的空间分布在范围过滤中没有任何的作用。然而从整个图像中结合强度也是没有任何意义的,因为远离 x 的图像值的分布不会影响到 x 位置对应的最终值。另外,没有域过滤的范围过滤几乎不会改变图像中的色彩映射,所以也没有什么用处。合适的解决方法是将域和范围过滤结合起来,因而增强局部的几何和光度。结合的过滤器可以用下面的式子描述出来:

灰度图与彩图的双边滤波第5张

对应的归一化为:

灰度图与彩图的双边滤波第6张

结合了域和范围的过滤可以被称之为双边过滤。它通过用与 x 周边像素的相似的均值来替换 x 的像素值。在平滑区域中,基于很小的周边区域中的像素值是互相之间相似的,双边过滤其实本质上扮演着一个标准的域过滤,通过均化掉那些由噪音引起的之间有着小的、弱相关的差异的像素值。现在假设有一个基于黑和白区域明显的形状边界,如下图图1(a):

灰度图与彩图的双边滤波第7张

图1

当双边过滤器位于边界上明亮那边的一个像素上的时候,相似性函数 s 假设这一边上的像素的值是接近1的,而在黑色那边的像素值是接近0的。在图1(b)中的相似性函数是一个23×23大小的过滤器支持这对图1(a)中步长的右侧的两个像素的中心化。归一化项 k(x)确保所有的像素上的权重加起来等于1.结果就是这个过滤器通过在它附近的明亮像素的均值来替换位于中心的明亮像素,从而忽略其中的黑色像素。相反的,当这个过滤器位于一个黑色像素的中心时,明亮像素也会被忽略掉。因此正如图1(c)中的所示,由于过滤器中的域成分,所以在边界部分有着很好的滤波行为;而又由于范围成分使得在同一时刻能够保留它的边缘部分。

3、高斯情况

双边过滤的一个简单但是却重要的例子就是平移不变高斯滤波,在这其中靠近性函数 c 和相似性函数 s 都是基于他们参数的欧式距离的高斯函数。更具体的说,c 是一个径向对称:

灰度图与彩图的双边滤波第8张

其中:

灰度图与彩图的双边滤波第9张

是欧式距离。相似性函数 s 是完全类似于 c 的:

灰度图与彩图的双边滤波第10张

其中:

灰度图与彩图的双边滤波第11张

是在其强度空间中一个距离的合适测量。在标量的情况中,这也许是简单的像素差分的绝对值或者是因为随着图像强度增大而增加的噪音导致的依赖于强度的差分绝对值。这样的域过滤就是平移不变的,上面的引入的高斯范围过滤器是对于图像强度的总体额外的改变不敏感的。当然范围过滤器也是具有平移不变性的。

4、在灰度图上的实验

灰度图与彩图的双边滤波第12张

图2

图2(a)和(b)显示的是双边滤波潜在的移除纹理的结果。图2(b)中的所示的图像的“简化”可以用来做数据的约间而没有损失总体的形状特征,可以应用于如图像传输、图像编辑和操作、索引中的图像描述等。

灰度图与彩图的双边滤波第13张

图3

图3(a)中双边滤波的参数是灰度图与彩图的双边滤波第14张个像素和灰度图与彩图的双边滤波第15张的强度值,并得到了图3(b)。注意到其中大部分的细微的纹理已经被过滤掉了,而所有的曲线还是如原图中的一样。图3(c)显示的是图3(a)的一个局部放大版,图3(d)是对应的过滤后的版本。这两个洋葱是有着类图形的外观,其中细微的纹理已经被移除了。然而总的阴影还是被保留了下来,因为它很好的位于域过滤器的频带内,而且几乎不受范围过滤器的影响。同样的,洋葱的边界也被保留了下来。

5、在彩图上的实验

对于黑白图片来说,任何两个灰度级别中的强度仍然是灰度级别。所以当用一个标准的低通过滤器来平滑黑白图片的时候,适中级别的灰度会作用于边界上,因而生成模糊的图像。对于彩色图像来说,就不是这么简单了,因为介于任何两个颜色的其他颜色来说,它们通常是不同的。例如,介于蓝色和红色之间是会生成粉色和紫色的阴影。因此当在颜色边界上进行平滑的时候会生成令人不安的颜色波段。平滑后的图像不止是看上去模糊而已,它同样看上去还很怪异,物体周围还会有彩色光环。

灰度图与彩图的双边滤波第16张

图4

图4(a)显示的是在蓝色天空下红色夹克图的局部放大效果。即使是在非模糊图像中,一条薄薄的粉色-紫色线还是可见的,这是由于镜头模糊和像素均化造成的。事实上,当映射回到场景中,沿着边界的像素是相交互于红色夹克和蓝色天空的,生成的颜色是红色和蓝色的均化后得到的粉色。当平滑的时候,这个影响就会被注重,图4(b)中展现的就是模糊的粉色-紫色区域。

为了处理这样的问题,保留边界的平滑可以被单独的用在图像 的红色、绿色和蓝色通道上。然而,在三色波段两端的边缘的强度分布一般是不同的。分别平滑这三色波段会生成一个比原始图像(图4(a))更显著的粉色和紫色波段,如图4(c)。然而粉色-紫色波段没有和图4(b)中那样标准模糊的结果那样宽。

通过双边滤波可以得到一个更好的结果。事实上,双边过滤器可以适当的结合这三色波段,并在结合后的空间中测量像素之间的光度距离。更进一步,这种组合距离可以通过使用在CIE-Lab色空间的欧式距离来感知对应近距离的非相似性。这个CIE-lab的颜色空间是基于对人类观察得到的大量有关于颜色匹配实验的心理数据得到的。在这个空间中,小的欧式距离被设计成与颜色差异的感知有着强相关的,是通过在一个“平均”正常-颜色人类观察上实验得到的。因此,从意识上来说,在CIT-lab颜色空间中的双边过滤是对于彩色图片来说最自然的过滤器类型了:只通过对感知到的相似的颜色一起均化,值通过感知重要的边界并保留。图4(d)显示的就是从图4(a)进行双边过滤得到的结果。粉色带相对的萎缩了,而且没有明显的无关的颜色出现。

灰度图与彩图的双边滤波第17张

图5

图5(c)显示在图5(a)上迭代5次双边滤波后的结果。不过只迭代一次得到的图(图5(b))比原图更清楚,差不多可以满足大多数图像处理的需要,多次迭代也会相对应有着压缩颜色的影响,不过没有模糊边界的问题。生成的结果图有这更小的颜色映射,而且当打印出来的时候会更容易的观察到双边滤波的影响。注意到图5(c)更像是卡通图片。所有的影子和边界都被保留了下来,但是大多数的阴影消失了,而且没有“新的”颜色出现。


参考文献:

[1] C. Tomasi and R. Manduchi, "Bilateral Filtering for Gray and Color Images", Proceedings of the 1998 IEEE International Conference on Computer Vision, Bombay, India.
[2] T. Boult, R.A. Melter, F. Skorina, and I. Stojmenovic,"G-neighbors", 
Proceedings of the SPIE Conference on Vision Geometry II, pages 96-109, 1993.
[3] R.T. Chin and C.L. Yeh, "Quantitative evaluation of some edge-preserving noise-smoothing techniques", 
Computer Vision, Graphics, and Image Processing, 23:67-91, 1983.
[4] L.S. Davis and A. Rosenfeld, "Noise cleaning by iterated local averaging", 
IEEE Transactions on Systems, Man, and Cybernetics, 8:705-710, 1978.
[5] R.E. Graham, "Snow-removal - a noise-stripping process for picture signals", 
IRE Transactions on Information Theory, 8:129-144, 1961.
[6] N. Himayat and S.A. Kassam, "Approximate performance analysis of edge preserving filters", 
IEEE Transactions on Signal Processing, 41(9):2764-77, 1993.
[7] T.S. Huang, G.J. Yang, and G.Y. Tang, "A fast two-dimensional median filtering algorithm", 
IEEE Transactions on Acoustics, Speech, and Signal Processing, 27(1):13-18, 1979.
[8] J.S. Lee, "Digital image enhancement and noise filtering by use of local statistics", 
IEEE Transactions on Pattern Analysis and Machine Intelligence, 2(2):165-168, 1980.
[9] M. Nagao and T. Matsuyama, "Edge preserving smoothing", 
Computer Graphics and Image Processing, 9:394-407, 1979.
[10] P.M. Narendra, "A separable median filter for image noise smoothing", 
IEEE Transactions on Pattern Analysis and Machine Intelligence, 3(1):20-29, 1981.
[11] K.J. Overton and T.E. Weymouth, "A noise reducing preprocessing algorithm",
Proceedings of the IEEE Computer Science Conference on Pattern Recognition and Image Processing, pages 498-507, Chicago, IL, 1979.
[12] P. Perona and J. Malik, "Scale-space and edge detection using anisotropic diffusion", 
IEEE Transactions on Pattern Analysis and Machine Intelligence, 12(7):629-639, 1990.
[13] G. Ramponi, "A rational edge-preserving smoother", 
Proceedings of the International Conference on Image Processing, volume 1, pages 151-154, Washington, DC, 1995.
[14] G. Sapiro and D.L. Ringach, "Anisotropic diffusion of color images", 
Proceedings of the SPIE, volume 2657, pages 471-382, 1996.
[15] D.C.C. Wang, A.H. Vagnucci, and C.C. Li, "A gradient inverse weighted smoothing scheme and the evaluation of its performance", 
Computer Vision, Graphics, and Image Processing, 15:167-181, 1981.

[16] G. Wyszecki and W. S. Styles, Color Science: Concepts and Methods, Quantitative Data and Formulae, John Wiley and Sons, New York, NY, 1982.
[17] L. Yin, R. Yang, M. Gabbouj, and Y. Neuvo, "Weighted median filters: a tutorial",IEEE 
Transactions on Circuits and Systems II: Analog and Digital Signal Processing, 43(3):155-192, 1996.

 






免责声明:文章转载自《灰度图与彩图的双边滤波》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇perl 继承 @ISA李智维:趣直播创业心得分享下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

[原创][开源] SunnyUI.Net 常见问题答疑

从码云下载下来的项目,编译直接出错嘛,怎么办? 兄弟,先把码云项目下面的Readme.md仔细看看:SunnyUI.Net, 基于 C# .Net WinForm 开源控件库、工具类库、扩展类库、多页面开发框架源码编译环境: VS2019 动态库应用环境:VS2010及以上,.Net Framework 4.0及以上(不包括.Net Framework...

OpenCV4学习笔记(3.0)官方教程 | Load, Modify, and Save an Image 加载、修改和保存图像

本篇博客的主要内容是对官方OpenCV教程的翻译、总结与理解,并记录自己在学习过程中的心得体会。 官方教程地址:https://docs.opencv.org/4.3.0/db/d64/tutorial_load_save_image.html 阅读这篇博客之前,需要先掌握a如何使用cv::imread来读取图像和使用cv::imshow来显示图像,这...

Android图表分析的开发

  - Java4Less ( http://java4less.com/charts/chart.php?info=android )       - Chart4J (http://code.google.com/p/charts4j/)     需要网络支持 - BlueChart (http://code.google.com/p/bluech...

安卓的设备的分辨率

DisplayMetrics metrice= new DisplayMetrics(); Display defaultDisplay = getWindowManager().getDefaultDisplay();defaultDisplay.getMetrics(metrice); int densityDpi = metrice.densityD...

HTML_css3美化网页元素

一.span标签:能让某几个文字或者某个词语凸显出来 <p> 今天是11月份的<span>第一天</span>,地铁卡不打折了 </p> 二.字体风格 font-family:字体类型 font-size:字体大小 font-style:字体风格 font-weight:字体粗细 font: 风格 粗细 大小...

Android LogCat使用详解

Android的Logcat用于显示系统的调试信息,可在分别以下几个地方查看和调用logcat: 1.eclipse的Debug模式或DDMS模式下的会有一个Logcat窗口,用于显示log日志 只需在eclipse中启动Android模拟器,切换到DDMS或debug模式下,就会有Logcat窗口,窗口右上方有一系列图标,其中V、D、I、W、E五个图标为...