发布时间:2021-09-26 23:14:05编辑:run阅读(7755)
使用scipy的ndimage模块函数对图像进行线性滤波,
应用线性滤波器对带有脉冲(椒盐)噪声的图像进行去噪处理。
from skimage.io import imread
import matplotlib.pylab as pylab
from scipy import signal, misc, ndimage
pylab.rcParams['font.sans-serif'] = ['KaiTi']
pylab.rcParams['axes.unicode_minus'] = False
def plot_image(image, title=''):
pylab.title(title, size=20)
pylab.imshow(image)
pylab.axis('off')
im = imread(r'D:\image_processing\image4\f.jpg')
k = 7
im_box = ndimage.uniform_filter(im, size=(k, k, 1))
s = 2
t = (((k - 1) / 2) - 0.5) / s
im_gaussian = ndimage.gaussian_filter(im, sigma=(s, s, 0), truncate=t)
fig = pylab.figure(figsize=(30, 20))
pylab.subplot(131)
plot_image(im, '原始图像')
pylab.subplot(132)
plot_image(im_box, '带有盒式滤波器的模糊化')
pylab.subplot(133)
plot_image(im_gaussian, '带有高斯滤波器的模糊化')
pylab.show()
可以看到,盒式滤波器采用相同尺寸a=2的核比高斯滤波器采用同样尺寸的核进行平滑,其输出图像更加模糊。
上一篇: python3-PIL高斯模糊滤波器平滑
下一篇: python3-PIL非线性噪声平滑
51451
50942
41525
38288
32795
29740
28497
23429
23359
21693
1804°
2525°
2121°
2052°
2415°
2070°
2782°
4646°
4463°
3182°