您的位置:首页 > 其它

保边平滑滤波器之双边滤波理论学习

2018-01-06 15:08 260 查看
双边滤波是接触到计算摄影领域后觉得比较经典的保边滤波器,一直都想好好学习一下保边平滑相关的算法,现在终于痛下决心来写博客记录下自己的学习历程,也希望看到这篇博客的小伙伴能多多指教!

双边滤波在保边平滑滤波领域可以算是鼻祖了,是1998年发表在IEEE上的一篇文章,原文链接:Bilateral Filter

双边滤波原文学习笔记
Abstract

Introduction

the idea

双边滤波作用于灰度图

双边滤波作用于彩色图

Conclusion

双边滤波原文学习笔记

与其说是学习笔记,更多的是一篇翻译笔记,现将其整理如下:

Abstract

Bilateral Filter 是一种基于邻域像素点非线性结合实现保边滤波的滤波器;

非迭代型,局部,简单,主要是对像素值和空间距离相似度较高的像素点进行滤波;

通过在CIE-Lab空间对三个通道同时进行滤波以一种人类感知形式进行保边滤波,减少了那些分开对颜色通道进行滤波算法带来的人工处理痕迹

Introduction

“滤波”:被滤波像素点的像素值由固定尺寸的滤波窗口中各像素点像素值相关的函数来确定

“高斯低通滤波”:被滤波像素点的像素值是其邻域像素点像素值的加权平均值,其中,距离越远的邻域点像素值的权重越小,可以有效处理图像中的噪声,但不具保边平滑性

“Anisotropic diffusion,各向异性扩散”:被用于保边平滑;

主要思想:度量每个像素点周围的像素值变化情况,根据像素值变化情况来确定滤波窗口的尺寸和形状

算法实现:通过求解偏微分方程来在滤波窗口中进行平滑,迭代型,算法稳定性和耗时和待滤波图像结构相关

对多通道图像同时进行滤波的原因&重要性:

不同通道像素值的对比度不同,分开进行滤波会打破色彩平衡,引入一些人工的噪声

Bilateral Filter:

主要思想:对空间距离较近,颜色&像素值相似的像素点进行平滑

NOTE: 一种非线性滤波器,滤波器权重由像素点的灰度或是颜色来确定,但在计算上是一种可分离滤波器,计算复杂度小

Spatial locality is still an essential notion. In fact, we show that range filtering by itself merely distortsan image’s color map. We then combine range and domain filtering, and show that the combination is much more interesting. We denote teh combined filtering as bilateral filtering

除CIE-Lab空间外,bilateral filter还可以应用其他颜色空间中,如灰度,RGB等空间;

The CIE-Lab color space endows the space of colors with a perceptually meaningful measure of color similarity, in which short Euclidean distances correlate strongly with human color discrimination performance.

the idea

其基本的理论推导可见下图:



考虑在边缘附近使用bilateral filter,则有下图的一个效果:



当在遇到图(a)所示的待滤波区域时,一个窗口为23 * 23的双边滤波权重如图(b)所示。

归一化项k(x)可以保证滤波窗口中所有像素点的权重值加和为1

结果:

对边缘处的像素点进行滤波时,窗口中边缘上的点权重较大,边缘外的点,权重趋于零,经过滤波后,即可保持边缘处像素点的值;

对非边缘处的像素点进行滤波时,窗口中的像素点和权重相当,滤波以后的图像得到平滑;

由此,双边滤波后的结果如图(c)所示。

将上述函数换作一个高斯函数,则可有以下结果:



双边滤波实质:

在滤波窗口内部,domain function c是一个常量,窗口外为0;

此时,在滤波窗口内部,双边滤波即等效为一个range filter, 滤波结果是一个作用于gray image的局部重映射(range filter的作用)结果.

双边滤波作用于灰度图:

NOTE:此算法可用于在图像传输,图片编辑操作以及用在检索领域的图像描述等做数据降维



上图展示的是在不同的σ_r和σ_d的设置下,双边滤波的结果

可以看出:

对于一张灰度图,σ_r取100或300时,对于σ_d=1的情况影响较小,此时domain filter可看作一个标准的高斯滤波器,如右上角图片所示;σ_r取值较小时,整个滤波器就体现出来保边平滑性,如左上角图像所示;对于σ_d=10, σ_r较大的情况,一些细节被平滑了,如右下角图像所示,是前述,直方图压缩效应所致。

双边滤波作用于彩色图:

在处理彩色图像时,传统算法通常会有新的颜色产生,比如下图中的图©, 是在对边缘进行平滑的时候产生的,看上去会有些突兀:



而双边滤波可以避免这个问题,在滤波的时候,双边滤波可以合理的将三个通道的像素融合起来,并在此空间对像素距离进行度量。

Conclusion

双边滤波的可推广性极强;

甚至可以定义一个新的尺度空间,σ_r作相应的尺度变换即可,在这个空间中增加σ_r,即可保边平滑细节

Perhaps even a new scale space can be defined in which the range filter parameter A σ_r corresponds to scale. In such a space, detail is lost for increasing A σ_r, but edges are preserved at all range scales that are below the maximum image intensity value.

Note: Domain Transform就是一个极为经典的衍生算法

以上就是自己关于双边滤波的学习笔记,为了更加深入的理解双边滤波的“双边性”,下一篇博客会记录双边滤波在C++和Matlab的实现以及不同参数下的滤波效果。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息