图像滤波

图像滤波

噪声是我们不想要的一类数据。但是在实际操作中往往会引入噪声,例如图片经过低质量的信道传输,引入了信道中存在的噪声;图像采集设备由于某些电子学原因而引入了噪声等。

噪声的存在必然会对我们正常的图像处理造成干扰,尽可能多地滤除噪声是我们进行图像预处理的一个重要步骤。

均值滤波

这里提到的均值滤波器更确切地说是算数均值滤波器,这是最简单的一种图像滤波方法,可以滤除均匀噪声和高斯噪声,但是会对图像造成一定程度的模糊。它是将图片中指定区域内的像素点进行平均滤波的方法。这个过程与前面我们所说的卷积的计算过程是类似的。

对左图中左上角的9个点进行均值滤波,得到右图中左上角9个点的中心值3的计算过程为:

1/9(1+2+1+1+2+2+5+7+6)=3

均值滤波器的缺点是会使图像变得模糊,这是因为它将所有的点都进行了均值处理。而实际上,在绝大多数情况下,噪声的占比是少数,将所有的点都以同样的权值进行处理,势必会导致图像的模糊。而且,这个滤波器的宽度越大,滤波后的图片就会越模糊,也就是丢失图像的细节部分,使图像变得更加“中庸”。当然,根据这个特点,也可以将这个滤波器的权值更改一下,以便达到有所侧重的效果。

例如,在对图片进行滤波操作时,不应该全部按照系数为1进行加权求和,从而进行滤波。我们知道,图像的像素是连续的,距离越近的像素点间的联系越大,那么,滤波器的参数越靠近中心位置的权值越大,越靠近边缘位置的权值越小。

一种可行的实现方法便是将这个滤波器的参数按照高斯分布形式进行修改,那么这个滤波器就称为高斯滤波器。如下图所示是二维高斯分布曲面图及其投影,我们选择的滤波器权值就是高斯曲面的投影。

中值滤波

我们在上面介绍了均值滤波,使用均值滤波会造成图片的模糊,即使修改均值滤波的权值,也还是会造成图片的模糊。因此,我们既要对图片进行滤波处理,又要尽量减少图片的模糊程度,那么就要考虑另外一种思路来实现滤波过程。

中值滤波是一种与均值滤波过程不同的滤波方法。相比于均值滤波,中值滤波可以有效减少图片的模糊程度。中值滤波的原理如下:与均值滤波的原理大体相似,同样使用一个指定大小的滑动窗口,在图片上进行滑动,不断地进行滤波处理。不过,与均值滤波的不同在于,中值滤波在对像素点进行处理时,并不是采取简单的取平均数的做法,而是改为取其中位数的做法。

以椒盐噪声为例,其像素的灰度值要么是最低的,要么是最高的,总是处于两个极端。而图像中绝大多数正常点处于这样一个区间之中,因此,将滤波器所选取区域中的像素点,以其灰度值的大小进行排序,如果存在噪声,则基本处于两端的位置。

此时,这组数据的中位数在绝大多数情况下都是图像中正常的信息而不是噪声,这样就可以实现滤波过程。

对于椒盐噪声来讲,中值滤波的效果要好于均值滤波。而对于高斯噪声来讲,均值滤波的效果优于中值滤波,这是因为,高斯噪声的特点是噪声颜色值不固定,基本符合高斯随机分布的特点,这样就会导致中值滤波无法按照默认的噪声范围进行滤波,其效果自然就没有均值滤波好。