0.刚刚接触,如有不对请大家指正。
1.均值模糊 中值模糊 自定义模糊
2.模糊是卷积的一种表象 :查卷积原理!!!查到了,受益匪浅
https://blog.csdn.net/zouxy09/article/details/49080029
3.椒盐噪声以及中值滤波:
椒盐噪声是图像中一种常见的噪声。它是一种随机出现的白点或者黑点,可能是亮的区域有黑色像素或是在暗的区域有白色像素(或是两者皆有)。噪声对于图像识别,特征提取带来困难。所以需要进行滤波处理,去除噪声
添加噪声代码:
import cv2 as cv
import numpy as np
def Add_salt(image): #
SNR=0.2 #知名信噪比
size=image.size
n=int(size-(1-SNR))
for i in range (0,n):
xi=int(np.random.random()*image.shape[1])
yj=int(np.random.random()*image.shape[0])
if (image.ndim==2): #二维的
image[yj,xi]=255
elif(image.ndim==3):
image[yj,xi]=0
cv.imshow('Add_salt',image)
print('---Hello Python-----')
src=cv.imread('E:/aaaxuexi/python_z/zhanglaoshi/lianxi/liuyifei.jpg')
cv.imshow('xiaojiejie',src)
Add_salt(src)
cv.waitKey(0)
cv.destroyAllWindows()
哭唧唧。。。。。变成这样我也十分不愿意
模糊代码:
import cv2 as cv
import numpy as np
def blur_demo(image): #均值模糊
dst=cv.blur(image,(5,5)) #模糊处理 image,先水平,后垂直(5,5)最常用
cv.imshow("blur_demo",dst)
def median_blur_demo(image): #通过中值模糊比均值滤波可以更好的去掉椒盐噪声
dst=cv.medianBlur(image,5) #模糊处理 image,先水平,后垂直(5,5)最常用
cv.imshow("median_blur_demo",dst)
def custom_blur_demo(image): #自定义
#kernel=np.ones([5,5],np.float32)/25 #保证不会溢出
kernel=np.array([[0,-1,0],[-1,5,-1],[0,-1,0]],np.float32) #锐化
dst=cv.filter2D(image,-1,kernel)
cv.imshow('custom_blur_demo',dst)
print('---Hello Python-----')
src=cv.imread('E:/aaaxuexi/python_z/zhanglaoshi/lianxi/liuyifei.jpg')
cv.imshow('xiaojiejie',src)
blur_demo(src) #时间很快
cv.waitKey(0)
cv.destroyAllWindows()