收藏 分销(赏)

中值滤波实验.doc

上传人:pc****0 文档编号:7546705 上传时间:2025-01-09 格式:DOC 页数:4 大小:341KB 下载积分:10 金币
下载 相关 举报
中值滤波实验.doc_第1页
第1页 / 共4页
中值滤波实验.doc_第2页
第2页 / 共4页


点击查看更多>>
资源描述
湖南文理学院实验报告 课程名称:图像处理技术实验 实验名称:中值滤波实验 成绩: 学生姓名: 专业: 计算机科学与技术 班级: 学号: 同组者姓名: 实验日期:2012/12/3 一、实验目的: ①掌握中值滤波的原理、滤波过程; ②掌握在给定阈值时,中值滤波的滤波过程(又叫做超限中值滤波); ③熟悉Matlab编程。 二、实验内容: ①利用中值滤波,对图像进行滤波; ②给定阈值时利用中值滤波,对图像进行滤波。 三、实验原理: 中值滤波是一种非线性滤波,由于它在实际运算过程中并不需要图像的统计特性,所以比较方便。中值滤波首先是被应用在一维信号处理技术中,后来被二维图像信号处理技术所应用。在一定的条件下,可以克服线性滤波器所带来的图像细节模糊,而且对滤除脉冲干扰及图像扫描噪声最为有效。但是对一些细节多,特别是点、线、尖顶细节多的图像不宜采用中值滤波的方法。 中值滤波的基本原理是把数字图像或数字序列中一点的值用该点的一个邻域中各点值的中值代替。 设有一个一维序列,,…,,取窗口长度为m(m为奇数),对此序列进行中值滤波,就是从输入序列中相继抽出m个数,,…,,…,,…,,…,,其中为窗口的中心位置,,再将这m个点按其数值大小排列,取其序号为正中间的那作为出。用数学公式表示为: (2-2) 例如:有一个序列为{0,3,4,0,7},则中值滤波为重新排序后的序列{0,0,3,4,7}中间的值为3。此例若用平均滤波,窗口也是取5,那么平均滤波输出为。因此平均滤波的一般输出为: (2-3) 对于二位序列进行中值滤波时,滤波窗口也是二维的,但这种二位窗口可以有各种不同的形状,如线状、方形、圆形、十字形、圆环形等。二维数据的中值滤波可以表示为: (2-4) 在实际使用窗口时,窗口的尺寸一般先用再取逐渐增大,直到其滤波效果满意为止。对于有缓变的较长轮廓线物体的图像,采用方形或圆形窗口为宜,对于包含尖顶角物体的图像,适宜用十字形窗口。使用二维中值滤波最值得注意的是保持图像中有效的细线状物体。与平均滤波器相比,中值滤波器从总体上来说,能够较好地保留原图像中的跃变部分。 四、实验步骤: (1)Maltab读取实验图像; 进入MATLAB 6.5的运行环境编写代码如下所示: close all clear all clc I=imread('Barbara256.bmp'); figure; imshow(I); title('原始图像'); (2) 图像添加椒盐噪声,得到原始含噪声图像; 实现代码如下: I_Noise=imnoise(I,'salt & pepper',0.1); figure; imshow(I_Noise); title('加入噪声的图像'); (3)编程实现中值滤波法滤波过程; 实现代码如下: II=I_Noise; I_Noise=double(I_Noise); T=3; for i=2:T1-1 for j=2:T2-1 Block=I_Noise(i-1:i+1,j-1:j+1); Block=Block(:); Temp=sort(Block); if abs(Temp(5)-I_Noise(i,j))>T II(i,j)=Temp(5); else II(i,j)=I_Noise(i,j); end end end figure; imshow(II); title('中值滤波后的图像'); (4)给定阈值时,中值滤波的过程; 实现代码如下: Io=10 III=I_Noise; I_Noise=double(I_Noise); for i=2:255 for j=2:255 Block=I_Noise(i-1:i+1,j-1:j+1); Temp=sort(Block(:)); if abs(Temp(5)-I_Noise(i,j))>Io II(i,j)=Temp(5); else II(i,j)=I_Noise(i,j); end end end figure; imshow(II); Title('超限中值滤波后图像'); imwrite(II,'image.bmp'); return; 五、实验结果(显示所图像,并标明是什么图像): 图1 原始图像 图2 噪声图像 图3 去噪图像(中值滤波) 图4 超限中值滤波 六、实验小结: 中值滤波是一种非线性滤波,由于它在实际运算过程中并不需要图像的统计特性。通过本次实验了解了中值滤波的原理(是把数字图像或数字序列中一点的值用该点的一个邻域中各点值的中值代替。)、滤波过程,在给定阈值时,中值滤波的滤波过程,熟悉了Matlab编程,学会了利用中值滤波,对图像进行滤波,给定阈值时利用中值滤波,对图像进行滤波。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 百科休闲 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服