5.4 高斯滤波
高斯滤波器是根据高斯函数的形状来选择权值的线性平滑滤波器。高斯平滑滤波器对去除服从正态分布的噪声有很好的效果。式(5.1)和式(5.2)分别是一维零均值高斯函数和二维零均值高斯函数公式。图5.6(a)和(b)分别是一维零均值高斯函数和二维高斯零均值函数的分布示意图。
(5.1)
(5.2)
其中,σ是正态分布的标准偏差,决定了高斯函数的宽度。
图5.6 高斯函数分布图
高斯函数具有以下五个重要特性。
①二维高斯函数具有旋转对称性,即滤波器在各个方向上的平滑程度是相同的。一般来说,一幅图像的边缘方向是事先不知道的,因此,在滤波前无法确定一个方向上比另一方向上需要更多的平滑。旋转对称性意味着高斯平滑滤波器在后续边缘检测中不会偏向任一方向。
②高斯函数是单值函数。这表明,高斯滤波器用像素邻域的加权均值来代替该点的像素值,而每一邻域像素点权值是随该点与中心点的距离单调增减的。这一性质很重要,因为边缘是一种图像局部特征,如果平滑运算对离算子中心很远的像素点仍然有很大作用,则平滑运算会使图像失真。
③高斯函数的傅里叶变换频谱是单瓣的。这一性质说明高斯函数傅里叶变换等于高斯函数本身。图像常被不希望的高频信号所污染(噪声和细纹理),而所希望的图像特征(如边缘)既含有低频分量,又含有高频分量。高斯函数傅里叶变换的单瓣意味着平滑图像不会被不需要的高频信号所污染,同时保留了大部分所需信号。
④高斯滤波器宽度(决定着平滑程度)由参数σ决定,而且σ和平滑程度的关系非常简单。σ越大,高斯滤波器的频带就越宽,平滑程度就越好。通过调节参数σ可以有效地调节图像的平滑程度。σ也被称为平滑尺度。
⑤由于高斯函数的可分离性,可以有效地实现较大尺寸高斯滤波器的滤波处理。二维高斯函数卷积可以分两步来进行,首先将图像与一维高斯函数进行卷积,然后将卷积结果与方向垂直的相同一维高斯函数卷积。因此,二维高斯滤波的计算量随滤波模板宽度成线性增长而不是成平方增长。
这些特性表明,高斯平滑滤波器无论在空间域还是在频率域都是十分有效的低通滤波器,且在实际图像处理中得到了工程人员的有效使用。
对于图像处理来说,常用二维零均值离散高斯函数作平滑滤波器,在设计高斯滤波器时,为了计算方便,一般希望滤波器权值是整数。在模板的一个角点处取一个值,并选择一个K使该角点处值为1。通过这个系数可以使滤波器整数化,由于整数化后的模板权值之和不等于1,为了保证图像的均匀灰度区域不受影响,必须对滤波模板进行权值规范化。
以下是几个高斯滤波器模板。
σ=1,3×3模板
σ=2,5×5模板
σ=3,7×7模板
在获得高斯滤波器模板后,就像微分运算(见第4章)那样,对图像进行卷积即可获得平滑图像。
图5.7是640×480像素的彩色原图和采用上述3个高斯滤波器模板滤波后的图像。可以看出,滤波后图像都比原图像显得干净、清亮,而且随着平滑尺度增加,尤其是模板大小的增大,可以去掉较大的噪声,同时图像也变得模糊,平滑时间也越长。在实际应用中要根据实际噪声的大小,采用不同模板大小和平滑尺度σ。通过对比发现,高斯滤波对随机噪声和高斯噪声(尤其是服从正态分布的噪声)的去除效果都比较好。
图5.7 高斯滤波图像