发布时间:2021-09-26 23:14:05编辑:run阅读(7739)
使用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非线性噪声平滑
51421
50898
41487
38261
32766
29683
28472
23397
23328
21656
1752°
2487°
2084°
2017°
2376°
2043°
2754°
4599°
4416°
3147°