opencv-python图像处理

会有一股神秘感。 提交于 2020-01-20 16:44:52

opencv-python图像处理(六)

图像的平滑

cv2.blur() 平均模糊,用卷积框内像素的平均值代替卷积框内像素的值
cv2.GaussianBlur() 高斯模糊,常用于去除高斯噪声,中心点邻近区域像素的高斯加权平均值
cv2.medianBlur() 中值模糊,常用于去除椒盐噪声,用卷积框的中值代替中心像素的值
cv2.bilateralFilter() 双边滤波,边界不会被模糊


import cv2
import matplotlib.pyplot as plt
import matplotlib
matplotlib.rcParams['font.family'] = 'SimHei'   # 可以显示汉字

img = cv2.imread('aaa.jpg', 0)

blur = cv2.blur(img, (3, 3))  # (3,3)为卷积核
gauss = cv2.GaussianBlur(img, (3, 3), 0)  # 高斯模糊
median = cv2.medianBlur(img, 3)  # 中值模糊
bilateral = cv2.bilateralFilter(img, 9, 75, 75)  # 9 邻域直径,两个 75 分别是空间高斯函数标准差,灰度值相似性高斯函数标准差

plt.subplot(321), plt.imshow(img, 'gray'), plt.title('原图像')
plt.subplot(322), plt.imshow(blur, 'gray'), plt.title('平均')
plt.subplot(323), plt.imshow(gauss, 'gray'), plt.title('高斯模糊')
plt.subplot(324), plt.imshow(median, 'gray'), plt.title('中值模糊')
plt.subplot(325), plt.imshow(bilateral, 'gray'), plt.title('双边滤波')
plt.show()

在这里插入图片描述

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!