正文
0.1 卷积
cv.filter2D(img, -1, kernel)
0.2 均值模糊
cv.blur(img, (5,5))
cv.boxFilter(img, -1, (5,5))
0.3 中值滤波
cv.medianBlur(img, 3)
0.4 高斯模板
cv.GaussianBlur(img, (5,5), sigma)
0.5 双边滤波
cv.bilateralFilter(img, -1, sigmaColor=50, sigmaSpace=3)
实践
中值滤波
import numpy as np
import matplotlib.pyplot as plt
import cv2 as cv
def show(img):
if img.ndim == 2:
plt.imshow(img, cmap='gray')
else:
plt.imshow(cv.cvtColor(img, cv.COLOR_BGR2RGB))
plt.show()
img = cv.imread('pic/rose_spnoise_200x200.jpg')
img4 = cv.medianBlur(img, 3)
show(np.hstack([img, img4]))
效果
说明:
- 未经许可,谢绝转载。
- 本教程为《数字图像处理Python OpenCV实战》的配套代码相关内容。
免费视频教程为0-6章(标题号≤6),可在此处点击观看。
所有课件及源代码可在此处下载:
链接:https://pan.baidu.com/s/198PySe_vebO3e06idHSQ6g
提取码:11o4
有问题可在QQ群(1079300899)指出,进群答案:数字图像处理。在本文评论指出可能导致回复很晚。