数字图像处理中的统计排序滤波实验
创作时间:
作者:
@小白创作中心
数字图像处理中的统计排序滤波实验
引用
CSDN
1.
https://blog.csdn.net/weixin_67506931/article/details/139984866
数字图像处理中的统计排序滤波实验是理解图像滤波基本概念和掌握空域滤波原理的重要实践。本文通过Python编程语言,详细介绍了中值滤波、最大值滤波和最小值滤波等方法在图像处理中的应用,并通过实验比较了不同滤波方法的效果。
实验目的
- 理解图像滤波的基本概念;
- 掌握空域滤波的基本原理;
- 掌握图像中值滤波器的基本方法;
- 掌握椒盐噪声的添加与去除方法。
实验环境
Python
实验内容
1. 图像中值滤波处理
中值滤波是一种非线性滤波方法,特别适合去除椒盐噪声。以下是使用Python实现中值滤波的代码示例:
from scipy import ndimage
from skimage import data, util
from matplotlib import pyplot as plt
img = data.astronaut()[:,:,0]
noise_img = util.random_noise(img, mode='s&p', seed=None, clip=True)
n = 3
new_img = ndimage.median_filter(noise_img, (n, n))
plt.figure()
plt.imshow(img, cmap='gray')
plt.figure()
plt.imshow(noise_img, cmap='gray')
plt.figure()
plt.imshow(new_img, cmap='gray')
2. 最大值和最小值滤波处理
最大值滤波和最小值滤波分别用于增强图像的亮部和暗部特征。以下是使用Python实现最大值和最小值滤波的代码示例:
from scipy import ndimage
from skimage import data, util
from matplotlib import pyplot as plt
img = data.astronaut()[:,:,0]
pepper_img = util.random_noise(img, mode='pepper', seed=None, clip=True)
salt_img = util.random_noise(img, mode='salt', seed=None, clip=True)
n = 3
max_img = ndimage.maximum_filter(pepper_img, (n, n))
min_img = ndimage.maximum_filter(salt_img, (n, n))
plt.figure()
plt.imshow(img, cmap='gray')
plt.figure()
plt.imshow(min_img, cmap='gray')
plt.figure()
plt.imshow(max_img, cmap='gray')
3. 多种滤波方法对比
读入camera图像,添加椒盐噪声,分别采用高斯滤波、中值滤波、最大值滤波、最小值滤波进行滤波处理,并显示滤波结果。
from skimage import data, util
from matplotlib import pyplot as plt
from scipy import ndimage
import numpy as np
import math
img = data.camera()
noise_img = util.random_noise(img, mode='s&p', seed=None, clip=True)
n = 3
gauss_img = ndimage.gaussian_filter(noise_img, (n, n))
med_img = ndimage.median_filter(noise_img, (n, n))
max_img = ndimage.maximum_filter(noise_img, (n, n))
min_img = ndimage.maximum_filter(noise_img, (n, n))
plt.figure()
plt.imshow(img, cmap='gray')
plt.figure()
plt.imshow(gauss_img, cmap='gray')
plt.figure()
plt.imshow(med_img, cmap='gray')
plt.figure()
plt.imshow(min_img, cmap='gray')
plt.figure()
plt.imshow(max_img, cmap='gray')
4. 滤波效果评估
通过计算PSNR值来比较不同滤波方法的效果。
from skimage.metrics import peak_signal_noise_ratio as compare_psnr
psnr1 = compare_psnr(img, gauss_img*255)
psnr2 = compare_psnr(img, med_img*255)
psnr3 = compare_psnr(img, max_img*255)
psnr4 = compare_psnr(img, min_img*255)
print("高斯滤波", psnr1)
print("中值滤波", psnr2)
print("最大值滤波", psnr3)
print("最小值滤波", psnr4)
最终结果显示,中值滤波的效果最好。
实验小结
图像滤波实验是一个涉及图像处理和计算机视觉的实验,其主要目标是去除图像中的噪声、平滑图像以及提取图像中的特征。高斯滤波器可以平滑图像,但可能会模糊边缘;中值滤波器对椒盐噪声有很好的效果,但可能会导致图像变得模糊;而最大滤波、最小滤波可以增强边缘,但可能会增加噪声。通过实验比较,中值滤波在去除椒盐噪声方面效果最佳。
热门推荐
武汉地铁白玉山站举行基坑涌水涌砂应急演练
这些人群要警惕“碎片化睡眠”!
智能家居如何保障老年人安全:关键设备及应用解析
椰子能放多久 如何分辨椰子水坏没坏
膳食纤维知识百科:作用、食物来源及补充方法
香蕉从种植到成熟需要多少个月
专利侵权避免策略:公司主体如何保护自身知识产权
如何缓解“熬夜”疲劳,听听军医给你的补救方案
人参果含糖量分析:低糖水果的营养与食用建议
如何调整后排座椅以提升乘坐舒适度?这种调整对车辆安全有何影响?
外来入侵蚂蚁如何影响东非标志性野生动物?
为什么蚂蚁用触角打招呼?
低速灵活,高速稳定,这么厉害的后轮转向为啥很少用?
Excel表格学生按成绩排序的多种方法
发病率飙升!这种癌症需警惕,3个预防措施,第1个最关键
狠狠治愈!春天就要来北京爬这些山!
春天的脚步近了!北京最新“爬春山”攻略来了
霍尔传感器的速度测量与位置检测技术
汗手汗脚怎么治
贵州各市2024GDP出炉,贵阳万亿?恭喜遵义,黔东南有望超黔西南
贵阳人口为何逆势增长
全球卖港口,李嘉诚嗅到了什么危险信号?
什么叫抄底股票:抄底股票的策略
税优健康险是什么 如何选购
项目管理中的EMV:概念、计算方法及应用
水果蔬菜剥皮的方法 最全食材剥皮新技能
如何提高美国留学签证申请的成功率
美国签证申请中的资金证明:如何准备与提交
益生菌产品琳琅满目,如何选择适合自己的那一款?
AI时代娃要学编程吗?不必!熊璋:加快扭转教育功利化倾向