opencv 图像平滑

import cv2
import numpy as np
import matplotlib.pyplot as plt
#2d卷积
img=cv2.imread('E:/python/sunflower.png',0)
kernel=np.ones((5,5),np.float32)/25
dst=cv2.filter2D(img,-1,kernel)
plt.subplot(121),plt.imshow(img,'gray')
plt.subplot(122),plt.imshow(dst,'gray')
import cv2
import numpy as np
import matplotlib.pyplot as plt
#blur
img=cv2.imread('E:/python/sunflower.png',0)

dst=cv2.blur(img,(5,5))
#0是指根据窗口大小(5,5)来估计标准差,窗口大小必须是奇数
#dst=cv2.GaussianBlur(img,(5,5),0)
#dst=cv2.medianBlur(img,5)
#双边滤波可以保留边缘
#第一个5为领域直径,23为空间高斯函数标准差,75为灰度值函数标准差
#dst=cv2.bilateralFilter(img,5,23,75)
plt.subplot(121),plt.imshow(img,'gray')
plt.subplot(122),plt.imshow(dst,'gray')

猜你喜欢

转载自blog.csdn.net/qq_41244435/article/details/86638101