空间滤波的定义 滤波的本义是指信号有各种频率的成分,滤掉不想要的成分,即为滤掉常说的噪声,留下想要的成分,这即是滤波的过程,也是目的。空间滤波是一种采用滤波处理的影像增强方法。其理论基础是空间卷积和空间相关。目的是改善影像质量,包括去除高频噪声
空间滤波的定义
滤波的本义是指信号有各种频率的成分,滤掉不想要的成分,即为滤掉常说的噪声,留下想要的成分,这即是滤波的过程,也是目的。空间滤波是一种采用滤波处理的影像增强方法。其理论基础是空间卷积和空间相关。目的是改善影像质量,包括去除高频噪声与干扰,及影像边缘增强、线性增强以及去模糊等。分为低通滤波(平滑化)、高通滤波(锐化)和带通滤波。 各类图像处理系统在图像的采集、获取、传送和转换(如成像、复制扫描、传输以及显示等)过程中,均处在复杂的环境中,光照、电磁多变,所有的图像均不同程度地被可见或不可见的噪声干扰。噪声源包括电子噪声、光子噪声、斑点噪声和量化噪声。如果信噪比低于一定的水平,噪声逐渐变成可见的颗粒形状,导致图像质量的下降。除了视觉上质量下降,噪声同样可能掩盖重要的图像细节,在对采集到的原始图像做进一步的分割处理时,我们发现有一些分布不规律的椒盐噪声,为此采取相应的对策就是对图像进行必要的滤波降噪处理。 (1) 中值滤波 PART/01 是将每个像元在以其为中心的M×N邻域内取中间亮度值来代替该像元值,以达到去尖锐“噪声”和平滑图像的目的。具体计算方法与模板卷积方法类似,仍采用活动窗口的扫描方法。取值时,将M×N窗口内所有像元按亮度值的大小排列,取中间值作为中间像元的值。所以M×N取奇数为好。一般来说,图像亮度为阶梯状变化时,取均值平滑比取中值滤波要明显得多,而对于突出亮点的“噪声”干扰,从去“噪声”后对原图的保留程度看取中值要优于取均值。 代码实现:
比如我们要对下面矩阵进行中值滤波运算, 4 4 3 7 6 8 8 4 4 3 7 6 8 8 2 2 15 8 9 9 9 5 5 8 9 13 10 10 7 7 9 12 15 11 11 8 8 11 10 14 13 13 8 8 11 10 14 13 13 输出结果如下图所示:
有小伙伴看到就会说:我求的是55的矩阵,为什么输入的是77的矩阵?原因在于我们运用的33矩阵窗口放在矩阵4个角的像元时,需要额外添加邻近的像元来构成33的窗口,对于这个添加的临时像元值一般和最近的像元值保持一致。 (2)罗伯特锐化 PART/02
不过在讲解之前小编先给大家引入一个新的概念——图像卷积运算, 卷积运算:可看作是加权求和的过程,使图像区域中的每个像素分别与卷积核(权矩阵)的每个元素对应相乘,所有乘积之和作为区域中心像素的新值。它是在空间域上对图像作局部检测的运算,以实现平滑和锐化的目的。具体作法是选定一个卷积函数,又称为“模板”,实际上是一个M×N图像。二维的卷积运算是在图像中使用模板来实现运算的。运算方法从图像左上角开始,选定与模板同样大小的矩阵元素窗口,图像窗口与模板像元对应的亮度值相乘后再相加,最后一般将计算结果放在窗口中心位置(当M和N都是奇数时),代替原来的像元灰度值。然后活动窗口向右移动一个像元再以同样的方法进行卷积运算,逐行扫描,直到全幅影像都扫描一遍,最后生成新图像。罗伯特锐化方法使用的两个模板如下:
F=|aidxi|+|aidyi|,其中a是矩阵中的2*2个元素,i是第i个元素,i<=4,计算结果放在左上角像元,代替之前的灰度值,但是右下角的像元模板范围内没有其他像元了,无法进行计算,为此使用罗伯特锐化方法都要在原始矩阵的最下边和最右边添加一行和一列,值都和最临近的像元灰度值一样。为了直白了断,小编直接上例子吧,比如有某个矩阵,如下图(1)所示,我要用上面两个模板进行罗伯特锐化,首先得在右边和下边分别添加一行和一列,如下图(2)所示:
接下来对左上角像元进行运算:|2*(-1)+30+40+51|+|20+3*(-1)+41+50|=4,
接下来对右上角像元进行运算:|3*(-1)+30+50+51|+|30+3*(-1)+51+50|=4, 接下来对右下角像元进行运算:|5*(-1)+50+50+51|+|50+5*(-1)+51+50|=0,最终输出矩阵如下所示:
这种算法的意义在于用交叉的方法检测出像与其领域在上下之间或左右之间或斜方向之间的差异,最终产生一个梯度影像,达到提取边缘信息的目的。 代码实现:
比如我们要对下面矩阵进行中值滤波运算,
2 2 10 10 10 10 2 2 10 10 10 10 2 2 10 10 10 10 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 输出结果如下图所示:
|
2021-06-05
2021-05-27
2021-05-26
2021-06-05
2021-05-16