1、自适应中值滤波算法滤除医学图像脉冲噪声要点精品文档课 程 设 计 说 明 书学生姓名: 学 号: 学 院: 专 业: 题 目:自适应中值滤波算法滤除医学图像脉冲噪声 指导教师: 职称: 2013 年 月 日课程设计任务书 12/13 学年第 二 学期学 院: 专 业: 学 生 姓 名: 学 号: 课程设计题目: 自适应中值滤波算法滤除医学图像 脉冲噪声 起 迄 日 期: 2013年6 月7 日2013年6月 28 日 课程设计地点: 指 导 教 师: 系 主 任: 下达任务书日期: 2013 年6 月 7 日课 程 设 计 任 务 书1设计目的:综合运用医学图像处理的相关知识,基于理论推导,设
2、计一种自适应中值滤波算法,利用MATLAB作为编程工具进行计算机实现,从而加深对所学知识的理解。2设计内容和要求(包括原始数据、技术参数、条件、设计要求等): 设计一种自适应的中值滤波算法,并将其应用在医学图像的脉冲噪声抑制中,达到抑制噪声与保持边缘的良好平衡。3设计工作任务及工作量的要求包括课程设计计算说明书(论文)、图纸、实物样品等:(1)查阅文献资料,了解相关知识;(2)确定设计方法;(3)编写MATLAB程序,并上机调试;(4)撰写课程设计说明书。课 程 设 计 任 务 书4主要参考文献: 1 韩利竹,王华,MATALB电子仿真与应用(第2版M),北京:国防工业版 社,2003:982
3、38. 2 Rafacl C.Gonzalez,Richard E.Woods 著,阮秋琦,阮宇智等译。数字图版M北 京:电子工业出版社,2007:55193. 3赵广元 著,matlab与控制系统仿真实践M,北京:北京航空航天大学出版社, 2009:56201. 4 Sorin Zoican,Improved median filter for impulse noise removalJ.TELSIKS Serbia and Motenegra,Nis,2003,10(1-3): 681684. 5 R van Nee. OFDM Wireless Multimedia Communica
4、tionsJ.Rrasad R. Artech House,1999,33:298 6 1S.Haykin著.郑宝玉等译.自适应滤波器原理社M,北京:第四版.电子工业 出版社.2003:35356. 7 何振亚,自适应信号处理M,北京:科学出版社,2002:2399. 8 邹国良,自适应滤波理论及应用M,石家庄:河北大学出版社,1997:55 345. 5设计成果形式及要求:提供课程设计说明书一份;MATLAB程序; 6工作计划及进度: 6月7 日 6 月12 日:查资料;6月13 日 6 月 19 日:确定设计方案;6月 20 日 6月25 日:编写程序,上机调试;6月 26 日 6 月27
5、 日:完成课程设计说明书;6月 28 日:答辩。系主任审查意见: 签字: 年 月 日Abstract:An adaptive median filter that can remove impulse noise in medical images is implemented,and it is cornpared with traditional median filter and averaging filter by two objective evaluation criteria,root-mean-square errorand destroyness degree of noi
6、se to original imageThe pixel at the center of filtering window is detected to determinewhether it is an impulse noise based on given conditionMedian filter with adaptive window is applied to eliminate the noiseThe algorithm overcomes the shortcoming of median filter that replaces the value of each
7、pixel bythe median of the gray levels in the neighborhood of that pixel,and reduces unnecessary loss of image detailSimulation results based on MATLAB show that,for larger impulse noise density,it not only eliminates noise effectively,but also preserves the edges and detail information of the object
8、sThe algorithm has been used in the virtual endoscope system,and the filtering performance is very satisfactoryKey words:virtual endoscope system;medical image filtering;adaptive algorithm;median filter;impulse noise 摘要:实现了一种滤除医学图像脉冲噪声的自适应中值滤波算法,用均方根误差和噪声对原图像的毁坏程度两个客观评价指标对该算法及传统均值、中值滤波方法进行了比较与评价。根据设
9、定条件检测滤波窗口中心像素是否为脉冲噪声,采取滤波窗口自适应的算法来滤除脉冲噪声,去除了传统中值滤波对所有像素均用中值代替的弊端,减少了不必要的图像细节损失。基于MATLAB的仿真实验表明,对于较大密度的脉冲噪声,该算法在有效抑制噪声的同时,能较好地保护边缘和细节信息。该算法已应用于虚拟内窥镜系统中,取得了令人满意的效果。 关键词:虚拟内窥镜系统;医学图像去噪;自适应算法;中值滤波;脉冲噪声目 录1.引言12.设计方案简介23.设计条件及主要参数表3 3.1中值滤波的去噪过程3 3.2自适应中值滤波算法33.2.1脉冲噪声特点33.2.2一种自适应中值滤波3 3.3主要参数44. 设计结果45
10、. 设计评述及体会8参考文献9附录10收集于网络,如有侵权请联系管理员删除 1.引 言 计算机断层扫描(CT)、核磁共振(MRI)和正电子放射断层成像(PET)等高精度影像设备是虚拟内窥镜技术(Virtual Endoscope)所需的医学图像数据的来源。由于受到强电磁场的干扰或是图像传输过程中比特位发生了错误,这些影像设备所获取的医学图像数据常含有脉冲噪声,从而导致图像丢失重要的细节信息,影响了组织的分割与提取,严重地影响三维重建结果的质量和人们对图像的正确分析。因此,虚拟内窥镜系统中医学图像数据预处理模块的第一步就是图像滤波。通过滤波处理在实现噪声抑制的同时保持边缘和细节信息,增强图像的特
11、征。中值滤波器作为非线性滤波的代表在抑制脉冲噪声方面表现出的简单有效性,使得其在实际处理过程中得到了广泛的应用。但是,传统的中值滤波对图像中的所有点均进行滤波,改变了图像中未被脉冲噪声污染的像素点的灰度值,从而影响了滤波图像的质量。因此出现了很多基于标准中值滤波器的改进算法,例如加权中值滤波(WMF)、自适应的中值滤波器(AMF) 、方向中值滤波器(DWM)、开关中值滤波器(SMF)等。这些改进算法在去噪和保持图像细节方面较标准中值滤波器均有了很大程度的提高,但在实际应用中都有各自的局限性。WMF通过对滤波窗口内的像素赋不同的权值,降低了细节的损失程度,但同时其去噪性能也有所下降。DWM在滤波
12、时,引入了图像的方向信息,采用多个不同的滤波窗口检测脉冲噪声的走向,从而进一步提高了算法的细节信息,特别是边缘信息保护能力。但其对每一个像素点均采用多个滤波窗口进行滤波,增加了算法的计算量,延长了计算时间。SMF增加了噪声检测机制以区分噪声点与信号点,在噪声密度低时能更好地保留图像细节,但其性能随着输入图像信噪比的降低接近于标准中值滤波且其计算时间随噪声密度的增大而增加。与这些方法相比较,AMF具有较为优秀的滤波性能,但随着噪声密度的增加,其保护细节的能力下降较陕。通过分析脉冲噪声特点,结合虚拟内窥镜系统实时图像处理的要求,实现了一种自适应中值滤波算法。该算法根据设定条件检测滤波窗口中心像素是
13、否为脉冲噪声,然后自适应地采用不同大小的窗口对脉冲噪声点进行中值滤波处理,具有思想简单、速度快等特点。对较大密度的脉冲噪声,该算法在有效抑制噪声的同时,能较好地保护边缘和细节信息。2.设计方案简介 滤波器被广泛地用于图象的预处理,抑制图象噪声,增强对比度,以及强化图象的边沿特征. 运用较为广泛的线性滤波器如平均值滤波器,能较好地抑制图象中的加性噪声. 但是,线性滤波器会引起图象的钝化或模糊,使得图象中物体边界产生位移. 特别是,在图象受到乘性噪声或脉冲噪声的干扰,如超声波及雷达成像中普遍存在的斑点噪声,线性滤波器就不能取得预期的效果. 中值滤波器,就像其名字一样,是用该像素的相邻像素的灰度中值
14、来代替该像素的值,是一种非线性滤波器. 例如滤波窗口由33 个象素组成,则其中5个象素的灰度值会小于等于该滤波器的输出灰度值,同时5 个象素的灰度值会大于等于滤波器的输出. 由此可见,对于离散的脉冲噪声,当其出现的次数小于窗口尺寸的一半时,将被抑制掉同时也能较好地保证图象的边沿特征,而且易于实现. 因此它被广泛地应用于图象处理,尤其是医学图象处理,如超声波图象.但由于其使用的滤窗大小是固定不变的,当窗中噪声像素数超过有用像素之半时(噪声密度较大时),中值滤波滤波作用大大降低。在脉冲噪声强度大于0.2时,中值滤波效果就显得不是令人满意。而自适应中值滤波器会根据一定的设定条件改变滤窗的大小,即当噪
15、声面积较大时,通过增加滤窗的大小将噪声予以去除,同时当判断滤窗中心的像素不是噪声时,不改变其当前像素值,即不用中值代替。这样,自适应中值滤波器可以处理噪声概率更大的脉冲噪声,同时在平滑非脉冲噪声图像时能够更好地保持图像细节,这是传统中值滤波器做不到的。实验框图如下:开始载入有噪图像检测像素点是否在设置的范围内中值滤波输出滤波后的图像结束是图2.1自适应中值滤波器的流程图3. 设计条件及主要参数表3.1中值滤波的去噪过程给定的图像为二维信号,在信号中加入指定的椒盐噪声,然后利用中值滤波进行去噪。虽然有关中值滤波的函数是在matlab函数库中已经提供,但在图像处理中利用中值滤波去除图像中的椒盐噪声
16、噪声却是一种有效的方法,利用中值滤波函数去除图像中的噪声过程如下:(1)使用imread()读入原始的彩色图像。(2)因为使用中值滤波器只能对灰度图像进行处理,所以利用rgb2gray()将彩色图像转化为灰度图像。(3)用imnoise()在灰度图像中加入椒盐噪声。(4)利用medfilt2()函数进行中值滤波,并在matlab环境下运行。3.2自适应中值滤波算法3.2.1脉冲噪声特点脉冲噪声是由于传感器、解码器处理等所产生的脉冲在图像中产生的一些灰度值很小(接近黑色)或灰度值很大(接近白色)的随机噪声。脉冲噪声的灰度是该点正常灰度与噪声灰度的叠加,其在灰度特征上与周围相邻像素点有较明显的区别
17、,一般是其邻域中的灰度极值点(正的或负的极值)。图像中脉冲噪声的概率密度函数(PDF)可由下式描述: 如果ba,灰度值b在图像中将显示为一个亮点,a则显示为一个暗点。或为零,则脉冲噪声为单极脉冲噪声。若和均不为零,尤其是它们近似相等时,则脉冲噪声为双极脉冲噪声也称为椒盐噪声。3.2.2自适应中值滤波 传统中值滤波用像素邻域内灰度的中值代替该像素的值,其数学表述如下:令g(x,y)表示含有噪声的图像,表示以(x,y)点为中心像素的g(x,y)的子图像(滤波窗口),其大小为mn,表示滤波器在点(x,y)处的模板响应,则二维中值滤波定义如下: 虽然传统中值滤波在抑制噪声的同时能较好地保护图像的边缘细
18、节,但该滤波窗口一旦选定,即对所有像素均采用同一模板进行处理,而不考虑窗口范围内噪声点的多少。采用滤波窗口自适应的方法来滤除医学图像数据中含有的脉冲噪声。该滤波器的滤波方式和传统的中值滤波器一样,都是利用mn即矩形区域窗口 定义的区域内图像的统计特性。不同的是在滤波过程中,自适应滤波器会根据一定的设定条件,充分考虑图像中不同区域受脉冲噪声污染的程度不同而自适应地改变滤波窗口的大小。设为像素点(x,y)的灰度值,为滤波窗口中的最小灰度值,为中的最大灰度值,为中的灰度中值,定义为自适应中值滤波所允许的最大窗口。则自适应中值滤波算法的基本过程描述如下:(1)如果,则模板响应为;否则,执行步骤(2)。
19、(2)如果,则模板响应为;否则,增加滤波窗口尺寸。(3)如果,则转至步骤(1);否则,模板响应为。根据前面对脉冲噪声特点的分析可知,(1)和(2)步骤中的条件可判断和是否为脉冲噪声点。如果成立,则表明点(x,y)不是噪声,此时可直接将中心像素值作为模板响应输出。如果该条件不成立,则表明=或=,即点(x,y)是极端值点,此时需进一步判断是否为噪声点。本算法根据和是否是脉冲噪声点的检测结果,自适应地改变滤波窗口大小,去除了传统中值滤波器对所有像素点均用中值代替的弊端,平滑了非脉冲噪声,从而减少不必要的边界细化或粗化等损失。3.3主要参数表是在Sxy滤窗内灰度的最小值; 是在Sxy滤窗内灰度的最大值
20、; 是在Sxy滤窗内灰度的中值; Sxy是坐标(x,y) 处的灰度值; Smax指定Sxy所允许的最大值。4.设计结果1、保持窗口值Smax=10不变,分别添加0.1、0.3、0.5的椒盐噪声后的实验对比图片组如下添加0.1的椒盐噪声后的对比图片组添加0.3的椒盐噪声后的对比图片组添加0.5的椒盐噪声后的对比图片组2、在保持椒盐噪声不变的情况下(取椒盐噪声为0.3),改变窗口值分别为3、5、7的实验对比图片组。窗口值为3的对比图片组窗口值为5的对比图片组窗口值为7的对比图片组5.设计评述及体会从图中可以看出,在添加不同的椒盐噪声情况下传统的中值滤波器降噪的能力不是很好,图像依然很模糊,大量的图
21、像细节丢失,不能从根本上解决降噪与保护图像细节之间的矛盾。而自适应中值滤波器,在有效地抑制噪声的同时还充分地保护了图像细节。由此可见,在噪声越大的情况下,自适应中值滤波器较传统中值滤波器具有很大的优越性,在很大程度上降低了滤除噪声和图像细节丢失之间的矛盾。在图像降噪技术中应用了自适应中值滤波器,介绍了该算法的基本原理,并在matlab平台上进行编程实现和试验仿真:对椒盐噪声图像进行了滤波,并与传统中值滤波器滤波效果进行了比较,结果表明自适应中值滤波器对噪声的滤除效果都非常好:该滤波器能更有效地、更有针对性地抑制噪声并保持住图象的细节,表现出良好的滤波特性。 参考文献1 韩利竹,王华,MATAL
22、B电子仿真与应用(第2版M),北京:国防工业版 社,2003:98238.2 Rafacl C.Gonzalez,Richard E.Woods 著,阮秋琦,阮宇智等译。数字图版M北 京:电子工业出版社,2007:55193.3 赵广元 著,matlab与控制系统仿真实践M,北京:北京航空航天大学出版社, 2009:56201.4 Sorin Zoican,Improved median filter for impulse noise removalJ.TELSIKS Serbia and Motenegra,Nis,2003,10(1-3): 681684.5 R van Nee. OFD
23、M Wireless Multimedia CommunicationsJ.Rrasad R. Artech House,1999,33:2986 1S.Haykin著.郑宝玉等译.自适应滤波器原理社M,北京:第四版.电子工业 出版社.2003:35356.7 何振亚,自适应信号处理M,北京:科学出版社,2002:2399.8 邹国良,自适应滤波理论及应用M,石家庄:河北大学出版社,1997:55 345.附录实验应用编程代码:img0=imread(lenna256.bmp);m n=size(img0);img1=imnoise(img0,salt & pepper,0.3); %加入椒盐
24、噪声Smax=10; %确定最大的滤波半径imgn=zeros(m+2*Smax+1,n+2*Smax+1);imgn(Smax+1:m+Smax,Smax+1:n+Smax)=img0;imgn(1:Smax,Smax+1:n+Smax)=img0(1:Smax,1:n); %扩展上边界imgn(1:m+Smax,n+Smax+1:n+2*Smax+1)=imgn(1:m+Smax,n:n+Smax); %扩展右边界imgn(m+Smax+1:m+2*Smax+1,Smax+1:n+2*Smax+1)=imgn(m:m+Smax,Smax+1:n+2*Smax+1); %扩展下边界imgn(
25、1:m+2*Smax+1,1:Smax)=imgn(1:m+2*Smax+1,Smax+1:2*Smax); %扩展左边界re=imgn;for i=Smax+1:m+Smax for j=Smax+1:n+Smax r=1; %初始滤波半径 while r=Smax W=imgn(i-r:i+r,j-r:j+r); W=sort(W); Zmin=min(W(:); Zmax=max(W(:); Zmed=W(uint8(2*r+1)2/2); if ZminZmed & ZmedZmax %如果当前邻域中值不是噪声点,那么就用此次的邻域 break; else r=r+1; %否则扩大窗口
26、,继续判断 end end if Zminimgn(i,j) & imgn(i,j)Zmax %如果当前这个像素不是噪声,原值输出 re(i,j)=imgn(i,j); else %否则输出邻域中值 re(i,j)=Zmed; end endendfigure;subplot(2,2,1);imshow(img0);title(原始图像);subplot(2,2,2);imshow(img1,);title(加入噪声后图像);subplot(2,2,3);imshow(medfilt2(img1);title(中值滤波后图像);subplot(2,2,4);imshow(re(Smax+1:m+Smax,Smax+1:n+Smax),);title(自适应中值滤波后图像);