平滑滤波器
平滑滤波器用于模糊处理和降低噪声. 常应用于预处理任务中, 例如在大目标提取之前去除图像中的一些琐碎细节, 以及桥接直线或曲线的缝隙, 通过线性滤波和非线性滤波模糊处理, 可以降低噪声.
平滑线性滤波器
平滑线性滤波器的输出是包含滤波器模板邻域内的像素的简单平均值, 这些滤波器也被成为均值滤波器.
平滑滤波器的基本概念非常直观, 它使用滤波器模板确定的邻域内像素的平均灰度代替图像中的每个像素的值, 这种处理结果降低了图像灰度的"尖锐"变化, 因此其主要应用就是降低噪声.
下图展示了两种平滑滤波器, 第一个滤波器模板产生模板下方的标准像素平均值:
R
=
1
9
∑
i
=
1
9
z
i
.
.
.
.
.
i
=
1
,
2
,
.
.
.
9
R=\frac{1}{9}\sum_{i=1}^9z_i.....i=1,2,...9
R=91i=1∑9zi.....i=1,2,...9
R是有模板定义的3x3邻域内像素灰度的平均值. 一个mxn模板应有等于1/mn的归一化常数, 所有系数都相等的空间均值滤波器有时称为盒装滤波器.
第二张图产生所谓的加权平均, 使用不同的系数乘以像素, 使得一些像素的重要性(权重)比另一些像素的重要性更大.
一幅
M
×
N
M\times N
M×N的图像经过一个大小为
m
×
n
m \times n
m×n的加权均值滤波器滤波的过程可以由下式给出:
g
(
x
,
y
)
=
∑
s
=
−
a
a
∑
t
=
−
b
b
w
(
s
,
t
)
f
(
x
+
s
,
y
+
t
)
∑
s
=
−
a
a
∑
t
=
−
b
b
w
(
s
,
t
)
g(x,y) = \frac{\sum^{a}_{s=-a}\sum^b_{t=-b}w(s,t)f(x+s, y+t)}{\sum^{a}_{s=-a}\sum^b_{t=-b}w(s,t)}
g(x,y)=∑s=−aa∑t=−bbw(s,t)∑s=−aa∑t=−bbw(s,t)f(x+s,y+t)
可以理解为一幅完全滤波的图像是通过对
x
=
0
,
1
,
2...
,
M
−
1
x=0,1,2...,M-1
x=0,1,2...,M−1和
y
=
0
,
1
,
2...
,
N
−
1
y=0,1,2...,N-1
y=0,1,2...,N−1执行上式得到的, 上式中的分母部分简单地表示为模板的个系数之和, 它是一个仅需计算一次的常数.
使用各种尺寸模板的图像平滑
下图显示了一幅原图像以及分别用尺寸m=3, 5, 9, 15和35像素的方形均值滤波器得到的相应的平滑结果.
- 当m=3时, 图像有轻微模糊, 损失了一些细节, 但图像边缘被很好的平滑了.
- 当m=5时基本类似, 但模糊程度有所增加.
- 当m=9时, 模糊加剧, 有些图像难以和背景区分.
- 当m=15和35时, 图像中的小目标已经难以区分, 这种极端类型的模糊处理通常用于去处图像中的一些小物体.
正像早些时候提到的那样, 空间均值处理的一个重要应用是为了对感兴趣的物体得到一个粗略的描述而模糊一幅图像, 这样可以使较小物体的灰度与背景混合在一起, 较大物体变得像"斑点"而易于检测. 模板的大小由那些即将融入背景物体尺寸来决定. 下图演示了一张利用均值滤波器模板对图像处理的结果, 结果上使得大物体相较于小物体更加明显, 之后再使用阈值处理处理.
统计排序非线性滤波器
统计排序滤波器是一-种非线性空间滤波 器,这种滤波器的响应以滤波器包围的图像区域中所包含的像素的排序(排队)为基础,然后使用统计排序结果决定的值代替中心像素的值。这一类中最知名的滤波器是中值滤波器,正如其名暗示的那样,它是将像素邻域内灰度的中值(在中值计算中包括原‘像素值) 代替该像素的值。中值滤波器的使用非常普遍,这是因为对于一定类型的随机噪声,它提供了一-种优秀的去噪能力,而且比相同尺寸的线性平滑滤波器的模糊程度明显要低。中值滤波器对处理脉冲噪声非常有效,该种噪声也称为椒盐噪声,因为这种噪声是以黑白点的形式叠加在图像上的。
例如对于一个3x3邻域内有一系列像素值(10,20,20,15,20,20,25,100), 对这些值排序后是(10,15,20,20,20,20,20,25,100), 那么其中值就是20. 事实上, 一般使用mxm中值滤波器来出去那些相对于其邻域像素更亮或更暗并且其区域小于 m 2 / 2 m^2/2 m2/2的孤立像素族.
利用中值滤波降噪
下图为一幅被椒盐噪声污染的电路板的X射线图, 为了说明这种情况下的中值滤波器处理效果比均值滤波更好, 我们对其进行进行了3x3邻域内均值模板处理和3x3中值模板处理, 其结果表明在这种情况下中值滤波要远远优于均值滤波.