数学之路-python计算实战(16)-机器视觉-滤波去噪(邻域平均法滤波)

# -*- coding: utf-8 -*-   
#code:myhaspl@myhaspl.com
#邻域平均法滤波,半径为2
import cv2
import numpy as np
fn="test3.jpg"
myimg=cv2.imread(fn)
img=cv2.cvtColor(myimg,cv2.COLOR_BGR2GRAY)

#加上椒盐噪声
param=20
#灰阶范围
w=img.shape[1]
h=img.shape[0]
newimg=np.array(img)
#噪声点数量
noisecount=100000
for k in xrange(0,noisecount):
    xi=int(np.random.uniform(0,newimg.shape[1]))
    xj=int(np.random.uniform(0,newimg.shape[0]))
    newimg[xj,xi]=255

#邻域平均法去噪
tmpimg[1:myh-1,1:myw-1]=newimg[0:myh,0:myw]
#用领域平均法的,设半径为2,脉冲响应函数
a=1/8.0
kernel=a*np.array([[1,1,1],[1,0,1],[1,1,1]])
....
...

上面是椒盐噪声滤波


本博客全部内容是原创,假设转载请注明来源

http://blog.csdn.net/myhaspl/



下图是对高斯噪声滤波的处理,效果确实不错



原文地址:https://www.cnblogs.com/bhlsheji/p/5231696.html