双边滤波(Bilateral filter)是一种可以保边去噪(edge-preserving and noise reducing)的滤波器。之所以可以达到此去噪效果,是因为滤波器是由两个函数构成。一个函数是由几何空间距离决定滤波器系数。另一个由像素差值决定滤波器系数。可以与其相比较的两个filter:高斯低通滤波器和α-截尾均值滤波器(去掉百分率为α的最小值和最大之后剩下像素的均值作为滤波器)。
The Idea
The basic idea underlying bilateral filtering is to do in the range of an image what traditional filters do in its domain. Two pixels can be close to one another, that is, occupy nearby spatial location, or they can be similar to one another, that is, have nearby values, possibly in a perceptually meaningful fashion.
- domain filter is defined
- range filter is defined similarly
A simple and important case of bilateral filtering is shift-invariant Gaussian filtering, c is raidally symmetric
在MATLAB代码实现中,需要指定窗口长度和标准差(包括空间距离标准差和像素值标准差),共3个参数。
Reference: