这里只有代码实现
import numpy as np
import cv2
import matplotlib.pyplot as plt
'''
# 加噪声
def noise(img):
out = img
rows, cols, chn = img.shape
for i in range(5000):
x = np.random.randint(0, rows)
y = np.random.randint(0, cols)
out[x, y, :] = 255
return out
'''
if __name__ == "__main__":
noise_img = cv2.imread('4.jpg')
plt.subplot(3, 2, 1)
plt.imshow(noise_img)
plt.axis('off')
plt.title('Original')
result1 = cv2.blur(noise_img, (5, 5))
plt.subplot(3, 2, 3)
plt.imshow(result1)
plt.axis('off')
plt.title('mean')
result2 = cv2.boxFilter(noise_img, -1, (5, 5), normalize=1)
plt.subplot(3, 2, 4)
plt.imshow(result2)
plt.axis('off')
plt.title('box')
result3 = cv2.GaussianBlur(noise_img, (3, 3), 0)
plt.subplot(3, 2, 5)
plt.imshow(result3)
plt.axis('off')
plt.title('gaussian')
result4 = cv2.medianBlur(noise_img, 3)
plt.subplot(3, 2, 6)
plt.imshow(result4)
plt.axis('off')
plt.title('median')
plt.show()