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()
来源:CSDN
作者:爱你不会停
链接:https://blog.csdn.net/qq_41560257/article/details/104050529