1 __author__ = "WSX"
2 import cv2 as cv
3 import numpy as np
4 #均值模糊 中值模糊 自定义模糊(卷积)
5 #卷积原理
6
7 #均值模糊
8 def blur(img): #去燥 基于卷积
9 dst = cv.blur(img , (5 ,5)) #卷积核大小(1*3)
10 cv.imshow("Show", dst)
11
12 def mean(img): #去椒盐噪声 基于卷积
13 dst = cv.medianBlur(img , 5)
14 cv.imshow("Show", dst)
15
16 def own_blur( img ): #自定义模糊
17 kernel = np.ones([5,5],np.float32)/25 #均值模糊,除以5*5防止溢出
18 kernel1 = np.array([[0,-1,0],[-1,5,-1],[0,-1,0]], np.float32) #锐化算子
19 dst = cv.filter2D( img , -1 , kernel1)
20 cv.imshow("Show", dst)
21
22
23
24 def main():
25 img = cv.imread("1.JPG")
26 cv.namedWindow("Show", cv.WINDOW_AUTOSIZE)
27 #blur(img)
28 own_blur(img)
29 cv.waitKey(0)
30 cv.destroyAllWindows()
31
32 main()