原标题:OpenCV:图像平滑和图像模糊处理
原文来自:博客园 原文链接:https://www.cnblogs.com/geeksongs/p/11131651.html
导包:
import numpy as npimport cv2import matplotlib.pyplot as pltdef show(image):
plt.imshow(image)
plt.axis('off')
plt.show()def imread(image):
image=cv2.imread(image)
image=cv2.cvtColor(image,cv2.COLOR_BGR2RGB) return image
图像的平滑处理:
kernelsizes=[(3,3),(9,9),(15,15)]
plt.figure(figsize=(15,15))for i,kenel in enumerate(kernelsizes):
plt.subplot(1,3,i+1) #平均平滑的方式
blur=cv2.blur(image,kenel)
plt.axis('off')#不显示坐标
plt.title('great title'+str(kenel))
plt.imshow(blur)
plt.show()
高斯模糊:
kernelsizes=[(3,3),(9,9),(15,15)]#仅对于这幅图来说,高斯模糊和平均模糊是没有什么区别的。plt.figure(figsize=(15,15))for i,kenel in enumerate(kernelsizes):
plt.subplot(1,3,i+1) #平均平滑的方式
blur=cv2.GaussianBlur(image,kenel,0)
plt.axis('off')#不显示坐标
plt.title('great title'+str(kenel))
plt.imshow(blur)
plt.show()
中值模糊:
plt.figure(figsize=(15,15))for i,kenel in enumerate((3,9,15)):#意思是代表3*3,9*9,15*15的卷积核
plt.subplot(1,3,i+1) #平均平滑的方式
blur=cv2.medianBlur(image,kenel,0)
plt.axis('off')#不显示坐标
plt.title('great title'+str(kenel))
plt.imshow(blur)
plt.show()
免责声明:本文来自互联网新闻客户端自媒体,不代表本网的观点和立场。
合作及投稿邮箱:E-mail:editor@tusaishared.com