代码如下:
import cv2 as cv
from matplotlib import pyplot as plt
def blur_demo(image):
blur = cv.blur(image,(3,3))
return blur
def boxFilter_demo(image):
boxFilter = cv.boxFilter(image,-1,(3,3),normalize=True)
return boxFilter
def boxFilterF_demo(image):
boxFilterF = cv.boxFilter(image,-1,(3,3),normalize=False)
return boxFilterF
def Gaussian_demo(image):
gaussian = cv.GaussianBlur(image,(5,5),1)
return gaussian
def medianBulr(image):
medianbulr = cv.medianBlur(image,5)
return medianbulr
src = cv.imread("./images/lenaNoise.png")
src = src[:,:,[2,1,0]]
img1 = blur_demo(src)
img2 = boxFilter_demo(src)
img3 = boxFilterF_demo(src)
img4 = Gaussian_demo(src)
img5 = medianBulr(src)
plt.subplot(2,3,1),plt.imshow(src)
plt.title("Original image"),plt.xticks([]),plt.yticks([])
plt.subplot(232),plt.imshow(img1)
plt.title("blur_image"),plt.xticks([]),plt.yticks([])
plt.subplot(233),plt.imshow(img2)
plt.title("boxFilter_image"),plt.xticks([]),plt.yticks([])
plt.subplot(234),plt.imshow(img3)
plt.title("boxFilterF_image"),plt.xticks([]),plt.yticks([])
plt.subplot(235),plt.imshow(img4)
plt.title("gaussian_image"),plt.xticks([]),plt.yticks([])
plt.subplot(236),plt.imshow(img5)
plt.title("medianBulr_image"),plt.xticks([]),plt.yticks([])
plt.savefig('./images/lenaNoise_out.png')
plt.show()
实验结果: