图像模糊操作

  1. 均值模糊—适用于去随机噪声
  2. 中值模糊 —适用于去除椒盐噪点
  3. 自定义模糊 —适用于图像增强,锐化等
""" 模糊操作 --中值模糊 --均值模糊 --自定义模糊 """
import cv2
import numpy as np

img = cv2.imread('img.jpg')
cv2.namedWindow('Image', cv2.WINDOW_AUTOSIZE)
cv2.imshow('Image', img)
# 均值模糊
dst = cv2.blur(img, (3, 3))
cv2.imshow('Blur', dst)
# 中值模糊
dst_m = cv2.medianBlur(img, 5)
cv2.imshow('medianBlur', dst_m)
# 自定义模糊
k = np.array([[-1, -1, -1], [-1, -1, -1], [9, 0, 0]])  # 需要尽量保证和为奇数,
dst_c = cv2.filter2D(img, -1, kernel=k) # 第二个参数为目标图像深度,-1则表示和原图像一样
cv2.imshow('dst_c', dst_c)
cv2.waitKey(0)
cv2.destroyAllWindows()

实验效果图

总结

能够看着代码教程,一点一点的用,但是背后的原理还是不是很清楚。卷积,核 什么的。

参考博客

  1. Python+OpenCV图像处理(七)—— 滤波与模糊操作
  2. Python3 OpenCV3图像处理-模糊操作