关于双边滤波的理论介绍
背景
使用OpenCV时,[OpenCV的官方文档](OpenCV: Smoothing Images)中提到了如下几种滤波器:
- 均值滤波器
- 中值滤波器
- 高斯滤波器
- 双边滤波器
前面三种到在课堂上有接触,但最后一种并没有听说过,于是便记录以下这种滤波器的特性
高斯滤波器与α-截尾均值滤波器
高斯滤波器原理与均值滤波器类似,都是取滤波器窗口内的像素均值作为输出,不过在均值滤波器中,模板系数均为相同的1,但高斯滤波器具有高斯函数图像的特性,中间高,四周逐渐减小,反映到滤波器上就是距离中心越近的模板系数越大,越远的模板系数越小
。
α-截尾均值滤波器则与中值滤波器较为相似,其思想是将模板窗中的像素进行排序后,取消百分率为α的最小值与最大值,之后剩下的像素均值作为模板中心像素值。
可见,高斯滤波器考虑的是像素距离(空间域)的差别,而α截尾均值滤波器则考虑的是值域的差别。
双边滤波器
双边滤波器则将上述两种滤波器的想法融合,计算领域像素的加权组合:
其中权重w的计算既考虑了像素距离差别,又考虑了值域的差别。w由如下两部分组成:
即w的值为:
可见在加入r(i,j,k,l)后,滤波器具备了衡量像素相似程度的考量,即插值越大的像素,权值越小,对中心像素的影响也就越小。进而可以达到平滑图像的同时尽可能的保留边缘信息。