发布时间:2021-09-26 23:14:05编辑:run阅读(7670)
使用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非线性噪声平滑
51264
50704
41302
38121
32581
29488
28345
23206
23176
21501
1575°
2295°
1904°
1845°
2156°
1888°
2575°
4316°
4166°
2971°