图像处理之平滑与模糊

参考链接:https://docs.opencv.org/3.2.0/d4/d13/tutorial_py_filtering.html

学习目标:

1. 使用不同的低通滤波器模糊图像;

2. 对图像使用定制化滤波器; 

 

2D卷积

低通滤波器用于去除噪音信息,模糊图像,高通滤波器用于寻找图像中的边缘信息。 

Opencv提供的接口函数cv2.filter2D()来对图像做卷积。我们定义一个5x5的均值滤波器核,如下:

 

操作方法:将该滤波器置于一个像素之上,在该滤波器的范围内,所有像素相加,得到均值,用均值替换中间的像素值。该操作作用于图像中的所有像素后,即完成均值滤波。

 

图像模糊(图像平滑)

通过对图像做低通滤波器的卷积操作,实现图像模糊,从而去除噪声信息。实际上,就是从图像中去除了高频信息(如噪点,边缘)。

Opencv提供了四种图像模糊的技术。

1. Averaging

使用标准化的滤波器对图像做卷积,简单地将卷积核区域内的所有像素取均值,并且用均值替换卷积核中心位置对应的像素值。

Opencv 接口:cv2.blur(), cv2.boxFilter(),只需要指定卷积核的宽高即可。

 

2. Gaussian blurring

与上节不同,此处使用高斯核。需要指定核的宽高(正数,奇数),指定xy方向上的偏差,sigmaXsigmaY

高斯模糊可以高效去除图像中的高斯噪音,降低细节层次。

(延伸阅读——高斯噪声 https://blog.csdn.net/sunmc1204953974/article/details/50623071) 

高斯滤波其实就是用高斯分布的方式,生成滤波器中各个位置的权重,再用该滤波器对图像进行卷积操作。

3. Median Blurring

取核区域内的所有像素的中间值,用该值替换核中心的像素值。这种滤波方式,可以高效处理椒盐噪声。在前面介绍的滤波方式中,中间像素的替换值可能是新产生的,而中值滤波,中间值只是被图像中的某个像素值替换。这种方式可以有效减少噪声。

 

4. Bilateral Filtering

双边滤波可以在保留边缘信息的同时,高效去除噪声。但是该操作相比其他滤波器,速度更慢。

高斯滤波器基于位置对各像素进行高斯分布的加权处理,但是他没有考虑到像素之间是否有相同的强度,没有考虑像素是否是边缘像素,所以高斯模糊会将边缘一起模糊掉。

双边滤波器在空间上也使用了高斯滤波器,同时又加了一个高斯滤波器是像素差分函数。空间的高斯函数确保临近像素间的模糊处理,同时,强度差分的高斯函数确保只有和中心像素的强度类似的像素才可以被模糊,因此可以保留边缘信息。


发布了24 篇原创文章 · 获赞 0 · 访问量 1万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 创作都市 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览