加入椒盐噪声的图像分别作均值、中值和维纳滤波
图像椒盐噪声的分阶段中值滤波算法
![图像椒盐噪声的分阶段中值滤波算法](https://img.taocdn.com/s3/m/112a135ae418964bcf84b9d528ea81c758f52e8e.png)
第27卷第3期2013年9月南华大学学报(自然科学版)Journal of University of South China(Science and Technology)Vol.27No.3Sep.2013收稿日期:2013-04-08作者简介:晏资余(1988-),男,湖南浏阳人,南华大学计算机科学与技术学院硕士研究生.主要研究方向:数字图像处理.*通讯作者.文章编号:1673-0062(2013)03-0066-06图像椒盐噪声的分阶段中值滤波算法晏资余,罗 杨*,杨 浩(南华大学计算机科学与技术学院,湖南衡阳421001)摘 要:针对自适应中值滤波算法的缺陷 对高密度椒盐噪声图像滤波后留下黑色斑块,提出了一种分阶段中值滤波算法.该算法对图像执行两次小窗口的滤波操作,相较于采用较大窗口的滤波,其在有效去除噪声的同时降低了结果图像的模糊程度.先对所有噪声点进行一次中值滤波消除了盐粒噪声,再用窗口内非噪声点的灰度中值代替胡椒噪声点的灰度值以去除黑色斑块.最后的仿真实验结果表明,本文算法既有像自适应中值算法一样滤除低密度椒盐噪声的良好性能,又有对高密度椒盐噪声图像的降噪能力.关键词:椒盐噪声;中值;分阶段去噪中图分类号:TP391.41 文献标识码:BGrading Median Algorithm for Filtering Salt and Pepper Noises in ImageYAN Zi⁃yu ,LUO Yang *,YANG Hao(School of Computer Science and Technology,University of South China,Hengyang,Hunan 421001,China)Abstract :A grading median filtering algorithm was proposed to offset the defect of adaptive median filter (AMF)that it left some black plaque after filtering images corrupted by high density salt and pepper noises.Through twice filter to the noise image with small size win⁃dow,compared with bigger ones,it reduced the blur degree of result image.For the first time,it eliminated the salt noise by using median filter (MF)to noise pixels,and then wiped off the black plaque by replacing pepper noise pixels with the median of the noise free pixels in its 8⁃stly,the simulation result shows,our algorithm either has the good capability to filter the low density noises as well as AMF or has the ability to filter higher density salt and pepper noises in image.key words :salt and pepper noise;median;grading de⁃noising第27卷第3期晏资余等:图像椒盐噪声的分阶段中值滤波算法0 引 言椒盐噪声又称脉冲噪声,它由电磁干扰及通信系统的故障和缺陷等因素而产生.图像中的椒盐噪声表现为白色与黑色的点,它们对高级图像处理中的图像分割与识别的干扰较大,因此滤除椒盐噪声是图像处理的一项重要工作.中值滤波器(MF)被认为是一种去除椒盐噪声的实用工具,但其降噪效果依赖于滤波窗口的大小.大窗口滤波会在去除噪声的同时给图像带来了较大的模糊性,小窗口滤波的降噪效果则略显不足,于是就出现了一系列的改进算法.开关中值(SM)算法[1]㊁自适应中值(AM)算法[2⁃3]以及加权中值(WM)算法[4]是三种较经典的中值滤波改进算法.这三种算法对低噪声的滤除能力较强.其中,AM的滤波窗口随着局部噪声密度的大小而改变,噪声密度大用较大的窗口滤波,噪声密度小则用较小的窗口滤波,相较于MF的固定窗口滤波而言,这种操作有更好的保真度,而极值中值(EM)算法[5]是一种保真度更好的自适应中值算法.这些改进的滤波算法都提高了中值滤波器的性能,能够降低结果图像的模糊程度,但它们对高密度椒盐噪声的滤除能力不足.针对这一缺陷,也有一些改进算法弥补了它们的不足.如文献[6⁃7]的自适应开关中值(ASM)算法将噪声探测与滤波分开,先利用大窗口进行噪声探测,之后再用通过变化窗口大小对噪声点进行自适应滤波,这种算法在改善滤波性能的同时也增加了算法的时间复杂度.自适应加权开关中值(AWSM)算法[8⁃9]同样将噪声点探测与滤波分开进行,其滤波效果要比前者好,但其没有减少算法的运行时间.噪声点位置的探测对滤波效果产生的影响固然较大,但找到噪声点并非易事.查找条件太松容易漏查,导致降噪效果不明显;条件太紧则容易将非噪声点视为噪声点,导致失真过多.况且大窗口的查找运算较费时,大窗口的滤波易失真,这在噪声密度较大时尤为明显.因此,不如简化操作,将噪声点分两次滤除.第一次只滤除部分噪声点或一类噪声点,第二次再滤除另外一类噪声点.利用这一点,本文提出了一种能快速去除高密度椒盐噪声的中值滤波算法.1 自适应中值滤波滤除噪声的一种较好方法是只对噪声点滤除,而将非噪声点予以保留,自适应中值滤波器(AMF)就是这样设计的.由于椒盐噪声在图像中表现为两种形式:一种为白色的 盐粒”点称为盐粒噪声,另一种为黑色的 胡椒”点称为胡椒噪声.因此可以利用这一颜色特征对其进行识别.一幅灰度级为256的图像f的像素点颜色表现为: f(x,y)=255,白色0<f(x,y)<255,其他颜色f(x,y)=0,{黑色(1)其中f(x,y)表示图像在点(x,y)处的灰度值(下同).由此看出,椒盐噪声在图像中表现为最大灰度值与最小灰度值,可以应用这一点来区分图像中的噪声点与非噪声点.还可以更进一步估计出图像中噪声的密度,如果用n表示一幅M×N图像中非噪声点的总数,那么图像的噪声密度为:ρ=1-n MN(2)实际上,并不需要对整幅图像进行噪声密度估计,而是只需对局部噪声密度有一个大致的估计即可.AMF对椒盐噪声滤除的自适应性表现为两点:第一,根据噪声密度的不同自动选择不同尺寸的滤波窗口;第二,自动区分噪声点与非噪声点,并对噪声点执行滤波.实际操作中,AMF对像素点(x,y)的滤波过程如下:1)找到点(x,y)的r×r邻域内像素进行升序排序,找到序列的最大值ma㊁中值me及最小值mi.即ma=max{f(x+s,y+t)}me=median{f(x+s,y+t)}mi=min{f(x+s,y+t{)}(3)其中-[r/2]≤s,t≤[r/2],[㊃]表示取整(下同),r为邻域半径,初始窗口半径一般取3. 2)若该邻域内满足mi<me<ma或窗口尺寸达到最大时(一般为7×7),则进入到3);否则将窗口向四周扩大一个像素宽度即r=r+2,并转到1).3)若f(x,y)满足mi<f(x,y)<ma,则将其视为 非噪声点”不对其进行任何操作,否则就对其执行滤波操作,具体操作如下:g(x,y)=f(x,y)mi<f(x,y)<mame{其他(4)其中g(x,y)为对点(x,y)滤波后的灰度值(下同).到此,一个像素点的滤波操作执行完毕.当图像的所有像素点执行完上述步骤后就完成了对76 南华大学学报(自然科学版)2013年9月整幅图像的滤波操作得到结果图像g .如果噪声密度较大,则得到的图像g 会出现一些黑色的斑块.可以从自适应窗口的滤波过程分析出斑块产生的原因:若窗口尺寸已达到最大的7×7,仍然不满足滤波条件mi <me <ma 时,就会直接进入到3)滤波完成.若此时窗口内的中值为0,则可将其分为以下2种情况来讨论:第一种情况,胡椒噪声点未被滤除.若该噪声点的7×7邻域(用3×3代为描述)内像素排好序后为{0,0,0,0,0,2,3,5,6},那么此时mi =0,me =0,ma =6不满足滤波条件,但此时窗口尺寸已经达到最大,因此执行3)后该点的灰度值依旧为0,其滤波过程示意图如图1所示.图1 胡椒噪声点保持不变Fig.1 Pepper noise pixel stays the same第二种情况,椒盐噪声转化为胡椒噪声.椒盐噪声图像经AMF 滤波后会发现白色的盐粒噪声消失了,然而这并不意味着滤波时将所有盐粒噪声点的灰度值都用一个恰当的中值代替.实际上,它只滤除一部分的盐粒噪声,另一部分的盐粒噪声则转化为了黑色的胡椒噪声.假设窗口尺寸已经达到7×7(用3×3窗口代为描述),那么可将该过程表示为如图2所示.图2 椒盐噪声点转化为胡椒噪声点Fig.2 Salt noise pixel translated to pepper one图2a 所示图中的像素点按升序后排列为{0,0,0,0,0,2,3,6,255},此时中值me =0.如图2b 所示,滤波后该点的灰度值就转化为0,于是椒盐噪声点就变成了胡椒噪声点.上面两种情况最可能在图像中噪声水平较大的情况下发生,因为当噪声水平较低时滤波窗口尺寸根本不需要达到7×7就可以完成滤波操作.由此可知,当噪声密度较大时AMF 只是清除了部分噪声点(几乎全部的椒盐噪声和部分胡椒噪声),而留下了较多的胡椒噪声点.噪声密度越大,这样的点就越多,甚至于出现连续多点的灰度值都为0的情况,这就导致滤波后图像中产生黑色的斑块.实验表明,当图像中的椒盐噪声密度达到0.6以上时,经AMF 滤波后图像中就会出现这样的黑色斑块.此即AMF 不适用于高水平椒盐噪声下滤波的根本原因.2 分阶段去噪目前,有一些算法对AMF 的缺陷进行了改进.AWSM 算法就是其中之一,其主要思想是给噪声点邻域的中值赋予不同大小的权值再更新,但权值的大小不好确定,且其选择也是多种多样的.文献[8⁃9]提出了模糊加权,通过邻域内的最大灰度距离(某点邻域内其它点的灰度值与该点的灰度值之差的最大绝对值)与两个阈值控制权值,灰度距离较大的点给中值赋予较大的权重,距离较小的则赋予较小的权重,这种方法有其合理性,但阈值不好确定.文献[10]利用信号点作为牛顿插值的节点估计出噪声点的灰度值,一定程度上加大了噪声的滤除能力.文献[11]则用相邻三个信号点的灰度均值代替噪声点的灰度值,维持了好的保真度,但其在噪声探测阶段采用了较大的窗口,因此需进一步完善.而我们的目标是以一种更易实现的方法对AMF 进行改进.改进过程由以下两步构成:第一步只追求能够滤掉一部分噪声点,因此只需采用小窗口滤波,即将最大窗口尺寸设为3×3,这样既可以滤掉一部分噪声点,又能保护好图像中的细节信息,这些细节信息对第二步的滤波工作是十分有用的.这一步消除了几乎所有的盐粒噪声,剩下的噪声几乎都是胡椒噪声.由于AMF 对较大噪声的图像滤波后会产生黑色的斑块,但相对于滤波前图像中的 非噪声点”数量已经大为改善,且只出现了一种噪声点,因此一般的窗口内不可能出现全是0的像素点.滤波后噪声点(图3中深色背景处)邻域内像素的灰度值分布类似于图3中的两种情况.图3a 表示在3×3邻域内有灰度值不为0的像素点,图3b 表示在3×3邻域内所有像素点的灰度值都为0,但在5×5邻域内有灰度值不为0的点.第二种情况是十分罕见地,因为即使噪声密86第27卷第3期晏资余等:图像椒盐噪声的分阶段中值滤波算法度达到0.9,若3×3邻域内有8个点的值为0,那么还有一个点的值不为0,更何况第一步我们已经去除了一些噪声.根据这事实我们可以采取一些措施对噪声点进行去除.图3 AMF 滤波后噪声点邻域内灰度值的大致分布情况Fig.3 The rough gray value distribution of pixels innoise pixels neighborhood after AMF filtering若噪声点(x ,y )的r 2×r 2邻域内所有灰度值为非0的像素点的中值为me 2,那么用me 2代替该点的灰度值就可以滤除该噪声点.这其实也是一个自适应滤波过程,具体执行过程如下:4)找到点(x ,y )的r 2×r 2邻域内非0像素的中值me 2.即me 2=median {g (x +s ,y +t )}(5)其中-[r 2/2]≤s ,t ≤[r 2/2],开始时取r 2=3.5)若me 2≠0或窗口半径达到最大(5×5),则进行6);否则将窗口半径按表达式r 2=r 2+2扩大并转到4).6)对像素点(x ,y )执行下列操作:g (x ,y )=me 2g (x ,y )=0g (x ,y )g (x ,y )≠{0(6) 当黑色斑块中的所有的噪声点都被滤除后,黑色斑块即被滤除.至此,1)至6)就是分阶段中值滤波算法的过程.实际操作中,只需进行两次小窗的滤波就可已达到滤除密度接近0.9的噪声的目的.第一次为通过1)至3)滤除椒盐噪声的过程,第二次则为通过4)至6)滤除胡椒噪声的过程,两次的最大窗口半径都设为3,但为了保证第二次能滤除全部噪声点,可保留最大邻域半径为5这一自适应滤波过程.滤波过程中小窗口的使用使得分阶段中值算法在滤波效率上要优于采用大窗口滤波的ASM 及AWSM.3 实验结果分析在仿真实验中采用尺寸为256×256,格式为bmp 的Lena 灰度图像,并对其加上0.1~0.9的椒盐噪声.比较了MF㊁AMF 与本文算法对各噪声密度水平下的滤波效果,并借助客观评价量均方误差(MSE)与峰值信噪比(PSNR)进行结果对比分析.MSE =1MN ∑Mx =1∑Ny =1(o (x ,y )-d (x ,y ))2PSNR =10log (L -1)2[]ìîíïïïïMSE(7)其中o (x ,y ),d (x ,y ),L 分别表示原始无噪声图像㊁滤波结果图像及图像的最大灰度级.图4展示了三个算法的滤波效果图.很明显,在大噪声水平下本文算法优于AMF,而AMF 优于MF.从图4c 可以看出经AMF 滤波后的图像存在黑色的斑块,而经本文算法算滤波后的图像已经没有黑色的斑块了,如图4d 所示.图4 三个算法的滤波效果图Fig.4 Output image of three algorithm.表1给出了不同噪声水平下三种算法的PSNR 值,图5则将这些数据以散点图的方式展示出来.从表1或图5可知,当噪声水平在0.1~0.2之间时,本文算法的滤波效果略低于AMF,这是由于第一阶段采用3×3窗口滤波后留下了一些椒盐噪声,而第二阶段的3×3滤波只是对黑点进行了清除,于是最后还留下了很少的白点.这可以96 南华大学学报(自然科学版)2013年9月通过增大窗口尺寸来解决,比如将第一阶段的最大滤波窗口设为5×5就可以滤掉所有的白点噪声.对于噪声水平大于0.2的情况就没有必要将最大窗口半径设为5了,因为表1与图5中的数据已经显示,此时本文算法对椒盐噪声的去除效果要好于AMF,而当噪声水平大于0.6时,则要明显的优于AMF.因此本文算法既适用于低噪声水平下的滤波又适合于高水平噪声条件下的滤波,即本文算法在性能上优于AMF 算法.表1 不同噪声密度下各算法输出图像的PSNR Table 1 The PSNR of output image from differentalgorithm in different noise density噪声密度7×7标准中值滤波7×7自适应中值滤波本文算法0.125.0529.2827.280.224.0127.6027.480.323.1925.7626.260.422.3524.4625.080.521.4723.2224.230.620.0221.8423.430.716.9319.4022.830.812.1915.2421.700.98.0011.1719.46图5 各算法输出图像的PSNR 与输入图像噪声密度的关系Fig.5 The relationship between PSNR of output image from different algorithm and noise density of input image4 结 论通过对自适应中值滤波器的缺陷分析,以去除滤波后的黑色斑块为出发点,改善了滤波器的性能,使其能够适用于高水平脉冲噪声下的图像滤波.主要是通过两点达到这一目标的:第一,不需要一次将噪声全部清除.一次将所有噪声点全部清除,这在噪声密度较大的情况下很难达到,这需要较大的滤波窗口半径,这容易造成误差加剧图像的模糊程度.第二,采用两次小窗口滤波比采用一次大窗口滤波效果要好.通过两次小窗口滤波使得本文算法在低噪声水平下要优于AMF,也是通过小窗口滤波使得算法能在高噪声水平下保持良好的降噪效果.小窗口的滤波,既保护了图像的细节,又节省了滤波的时间.本文算法的滤波效果没有ASM 以及AWSM 那么好,这主要是由于滤波阶段采用中值代替噪声点灰度值而引起的.当噪声密度较大时,一小块的噪声点可能都被同一个中值所代替就会产生模糊效应,这种效应主要体现在图像的边缘部分,是中值滤波的一个缺陷.小窗口的中值滤波虽然可以减少这种模糊效应,但是减小的程度很有限.ASM 与AWSM 之所以能够达到较高的保真度,是因为它们不仅仅是简单的中值替换,而是给替换值赋予一定规则的权值更新,这就使得不同位置的噪声点被不同的值代替,这样就可以保留灰度差异,进而达到保真的目的.此算法只注重降噪部分,目的主要是怎样快速有效的将噪声点去除,没有花过多精力去研究如何降低模糊程度.如果要降低模糊性,则可以借鉴ASM 与AWSM 的权值更新法及插值估计或其他方法.参考文献:[1]Sun T,Neuvo Y.Detail⁃preserving median based filters in image processing [J ].Pattern recognition letters,1994,15(4):341⁃347.[2]Hwang H,Haddad R A.Adaptive median filters:new al⁃gorithm and results[J].IEEE Transaction on Image Pro⁃cessing,1995,4(4):499⁃502.[3]武英.一种图像椒盐噪声自适应滤除方法[J].微电子学与计算机,2009,26(1):148⁃150.[4]Brownrigg D R K.The weighted median filter[J].Com⁃munications of the ACM,1984,27(8):807⁃818.(下转第77页)7第27卷第3期徐 强等:石鼓网络舆情监控系统的设计与实现户自己的监控网站的网页结构也是下一步的研究方向.其二,就是系统没有把发言者的IP显示出来,不方便用户对恶意发言者的屏蔽和追踪.其三,目前系统对数据信息的分析只是基于用户关键词和行业敏感词的匹配,这就导致由系统分析出的舆情信息数目较多,也没有突出具体的事件或者话题.因而设计一个高效的文本聚类机制也是下一步的研究重点.另外系统的界面也不够精美,影响用户体验,也需要进一步的完善.下一步的主要工作就是针对大量的信息进行自动分类,将有关事件的Web信息资源进行聚类分析,全面掌握与各种热点事件的相关的信息,对事件进行追踪以及进行发展趋势的预测,帮助舆情工作人员时刻掌握事件的发展状况,并提供可靠的数据理论支撑.参考文献:[1]曾润喜,徐晓林.网络舆情突发事件预警系统㊁指标与机制[J].情报杂志,2009,28(11):51⁃54. [2]邓燕.论网络舆情对高校群体性事件的影响[J].重庆邮电大学学报,2009,21(3):123⁃126. [3]Pena⁃Shaff J B,Nicholls C.Analyzing student interac⁃tions and meaning construction in computer bulletin board discussions[J].Computers&Education,2004,42(3):243⁃265.[4]刘德鹏.互联网舆情监控分析系统的研究与实现[D].成都市:电子科技大学,2011.[5]Allan J,Papka R,Lavrenko V.On⁃line new event detec⁃tion and tracking[C]//Proc.of SIGIR Conference on Research and Development in Information Retrieval, 1998:37⁃45.[6]Allan J,Carbonell J,Doddington G,et al.Topic detection and tracking pliot study:final repot[M].Proceedings of the DAPRA Broadcast News Transcription and Under⁃standing Workshop.San Francisco,CA:Morgan Kaufmann Publishers,Inc,1998:194⁃218.[7]Yang Y,Carbonell J G,Brown R D,et al.Learning ap⁃proaches for detecting and tracking new events[J].Intel⁃ligent Systems and their Applications,IEEE,1999,14 (4):32⁃43.[8]朱旭.基于网格研判的高校群体突发事件预警平台的研究[D].北京:北京交通大学,2009. [9]叶昭晖,曾琼,李强.基于搜索引擎的网络舆情监控系统设计与实现[J].广西大学学报(自然科学版), 2011,36(1):302⁃307.[10]董亚倩.高校网络舆情演变规律及安全评估指标体系构建研究[D].淄博:山东理工大学,2012. [11]李婷.校园BBS舆情分析系统的设计与实现[D].武汉:华中科技大学,2009.(上接第70页)[5]邢藏菊,王守觉,邓浩江,等.一种基于极值中值的新型滤波算法[J].中国图像图形学报,2001,6(6):533⁃536.[6]Ng P E,Ma K K.A switching median filter with boundary discriminative noise detection for extremely corrupted im⁃ages[J].IEEE Transaction on Image Processing,2006,15(6):1506⁃1516.[7]Ping W,Junli L,Dongming L,et al.A Fast and reliable switching median filter for highly corrupted images by impulse noise[C]//Circuits and Systems,2007.ISCAS 2007.IEEE International Symposium on.IEEE,2007: 3427⁃3430.[8]Hussain A,Jaffar M A,Ul⁃Qayyum Z,et al.Directional weighted median based fuzzy filter for random⁃valued im⁃pulse noise removal[J].ICIC Express Letters,Part B: Applications,2010,1(1):9⁃14.[9]Kaur J,Gupta P.Fuzzy logic based adaptive noise filter for real time image pProcessing applications[J].2012,9 (4):269⁃271.[10]周艳,唐权华,金炜东.图像椒盐噪声的自适应插值算法[J].西南交通大学学报,2009,44(1):36⁃40. [11]黄宝贵,卢振泰,马春梅,等.改进的自适应中值滤波算法[J].计算机应用,2011,31(7):1835⁃1837.77。
常用图像去噪滤波方法比较分析
![常用图像去噪滤波方法比较分析](https://img.taocdn.com/s3/m/91236a54e53a580217fcfe11.png)
常用图像去噪滤波方法比较分析图像在成像、传输、转换或存储的过程中会受到各种随机干扰信号即噪声的影响,从而会使画面变得粗糙、质量下降、特征淹没。
为了减弱噪声、还原真实的画面,就需要用到降噪滤波器对图像数据进行处理。
选取了图像降噪最具有代表性的滤波方法即均值滤波、中值滤波和维纳滤波对同时加有高斯噪声、椒盐噪声和乘性噪声的图像进行了滤波处理,并由各种滤波的原理,再结合各种方法处理的效果和详细分析比较了各种滤波在图像去噪方面的特征、以及各自作用的利弊。
标签:邻域平均;中值滤波;维纳滤波1 原始图像与加噪图像如下分别是原图和依次加有高斯噪声、椒盐噪声、乘性噪声干扰后的图,噪声均值均为0,方差均为0.04。
中值滤波选择的窗口是3×3;均值滤波选择的窗口是3×3;维纳滤波选择的窗口是4×4:2 均值滤波均值滤波是典型的线性滤波算法,其采用的主要方法为邻域平均法。
即对待处理的当前像素点(x,y),选择一个模板,该模板由其近邻的M个像素组成,求模板中所有像素的均值,再把该均值赋予当前像素的算术平均值g(x,y)=1M∑f(x,y),作为邻域平均处理后的灰度。
该方法运算简单,对高斯噪声具有良好的去噪能力。
均值滤波可归结为矩形窗加权的有限冲激响应线性滤波器,第一个“旁瓣”比主峰大约低13分贝。
因此,均值滤波相当于低通滤波器。
这种低通性能在平滑噪声的同时,必定也会模糊信号的细节和边缘,即在消除噪声的同时也会对图像的高频细节成分造成破坏和损失,使图像模糊,如下即分别为均值滤波对加有高斯噪声、椒盐噪声、乘性噪声的图像处理后的对比图:由以上处理后的图像可以看到:邻域平均法消弱了图像的边缘,使图像变得有些模糊。
均值滤波对高斯噪声,乘性噪声的抑制是比较好的,但对椒盐噪声的抑制作用不好,椒盐噪声仍然存在,只不过被削弱了而已。
为了改善均值滤波细节对比度不好、区域边界模糊的缺陷,常用门限法来抑制椒盐噪声和保护细小纹理,用加权法来改善图像的边界模糊,用选择平均的自适应技术来保持图像的边界。
中值和均值滤波论文(附代码)
![中值和均值滤波论文(附代码)](https://img.taocdn.com/s3/m/1982f80a844769eae009ed5d.png)
基于MATLAB 的带噪图像的中值和均值滤波摘要:图像是一种重要的信息源,通过图像处理可以帮助人们了解信息的内涵。
本文将纯净的图像加入椒盐噪声,然后采用中值和均值滤波的方法对其进行去噪。
在图像处理中,中值和均值滤波对滤除脉冲干扰噪声都很有效。
文章阐述了中值和均值滤波的原理、算法以及在图像处理中的应用。
MATLAB 是一种高效的工程计算语言,在数据处理、图像处理、神经网络、小波分析等方面都有广泛的应用。
关键词:图像,中值滤波,均值滤波,去噪,MATLAB1. 引言20世纪20年代,图像处理首次得到应用。
上个世纪60年代中期,随着计算机科学的发展和计算机的普及,图像处理得到广泛的应用。
60年代末期,图像处理技术不断完善,逐渐成为一个新兴的学科。
图像处理中输入的是质量低的图像,输出的是改善质量后的图像。
为了改善图像质量,从图像中提取有效信息,必须对图像进行去噪预处理。
根据噪声频谱分布的规律和统计特征以及图像的特点,出现了多种多样的去噪方法。
经典的去噪方法有:空域合成法,频域合成法和最优合成法等,与之适应的出现了许多应用方法,如均值滤波器,中值滤波器,低通滤波器,维纳滤波器,最小失真法等。
这些方法的广泛应用,促进数字信号处理的极大发展,显著提高了图像质量。
2. 中值滤波中值滤波是一种典型的低通滤波器,属于非线性滤波技术,它的目的是保护图像边缘的同时去除噪声。
所谓中值滤波,是指把以某点(x,y )为中心的小窗口内的所有象素的灰度按从大到小的顺序排列,若窗口中的象素为奇数个,则将中间值作为(x ,y)处的灰度值。
若窗口中的象素为偶数个,则取两个中间值的平均值作为(x ,y)处的灰度值。
中值滤波对去除椒盐噪声很有效。
中值滤波器的缺点是对所有象素点采用一致的处理,在滤除噪声的同时有可能改变真正象素点的值,引入误差,损坏图像的边缘和细节。
该算法对高斯噪声和均匀分布噪声就束手无策。
设有一个一维序列1f ,2f ,…,n f ,取窗口长度为m(m 为奇数),对此序列进行中值滤波,就是从输入序列中相继抽出m 个数,v i f -,…,1-i f ,…,1f ,…,1+i f ,…,v i f +,其中i 为窗口的中心位置,21-=m v ,再将这m 个点按其数值大小排列,取其序号为正中间的那作为输出。
毕业论文-基于中值滤波的图像椒盐噪声滤除算法的研究与应用
![毕业论文-基于中值滤波的图像椒盐噪声滤除算法的研究与应用](https://img.taocdn.com/s3/m/c381a797783e0912a3162a9e.png)
本科生毕业论文(设计)题目:基于中值滤波的图像椒盐噪声滤除算法的研究与应用院系:信息科学与技术学院专业:计算机科学与技术学生姓名:**学号:********指导教师:罗笑南(教授)(职称)二〇年月基于中值滤波的图像椒盐噪声滤除算法的研究与应用摘要摘要在现实生活中,将实际获得的图像进行数字化,并在其传输和处理过程中,不可避免的存在着一定的外部干扰和内部干扰,使用户所获得的数字图像被噪声污染,而这些噪声中椒盐噪声的表现更为明显。
为此有大量学者针对椒盐噪声进行研究分析。
中值滤波算法以其非线性的特点,在处理椒盐噪声上有显著的效果,因此许多学者针对中值滤波算法进行改进。
典型的如加权中值滤波器、开关中值滤波器、自适应中值滤波器等。
然而这些滤波器或在保护图像细节上能力不足,或去除噪声效果不佳,或对于高密度噪声无法处理,或过于复杂不便于硬件实现,存在着一定的缺陷。
本文研究了几种典型的改进后的中值滤波算法,通过理论分析与实验仿真,比较其在去噪及保护图像细节各方面的优缺点。
在此基础上,本文给出了一种基于噪声检测的模糊自适应中值滤波算法。
在该算法中,通过设计窗口自适应的噪声检测机制,有效的区分了噪声与非噪声像素点,从而高效的保护了图像细节信息,并大量减少需要处理的像素点,降低算法运行时间。
同时对于检测出的噪声点,则采用改进了的自适性中值滤除算法进行噪声滤除,在该滤波算法中加入了窗口自适应控制,对于高密度噪声也能有效的进行去噪处理。
通过详细的理论分析后,本文基于matlab进行大量仿真实验,验证了这些新方法在噪声去除与细节保留上的有效性。
关键词:图像去噪、椒盐噪声、噪声检测、自适应中值滤波、开关阈值滤波AbstractThe acquisition, recording and transmission of digital images through sensors or communication channels are often interfered by different types of noises, which may change the image. Impulse noise is one most common and important kind of noise. Impulse noise removal in image processing is an important pre-processing so that many researchers work on the restoration of images corrupted by impulse noise. Being the most popular nonlinear filter, the median filter is often used to remove impulse noise because of its good denoising power. In that case, many image-denoising filters are proposed based on the median filter, such as the weighted median filter, soft switching filter, adaptive median filter, etc.In this paper, a new image-denoising filter that is based on several advanced median filter is proposed. There is a two-phase scheme in this new algorithm. In the first phase, an impulse noise detection is used to identify pixels which are likely to be noise candidates. The noise detection has variable window size for removal of impulses, so that we can keep most of the signal content of the uncorrupted pixels, and time used for filtering can be reduced by a wide margin. In the second phase, the noise candidates will be filtered by the new filter. Based on the adaptive median filter, the proposed filter is superior to some other filters mentioned in this paper not only for smooth pictures but also images that are complicated and have many sharp edges. Being incorporated with variable windows size, our method is also very useful for images with high noise level.Key Words:image denoising, salt-and-pepper noise, adaptive median filter,impulse noise detector, switching-based median filter目录第一章引言 (1)1.1课题背景及其意义 (1)图像滤波技术概述 (1)中值滤波研究现状 (2)本论文的主要工作 (3)1.3论文章节安排 (4)第二章图像去噪算法综述 (5)2.1图像去噪方法概述 (5)2.2图像噪声模型 (6)2.3图像去噪质量的评估方法 (7)2.4中值滤波 (8)2.5维纳滤波 (9)2.6均值滤波 (11)2.7其他滤波技术 (12)2.8小结 (13)第三章几种中值滤波去噪方法分析 (14)3.1标准中值滤波方法(STANDARD MEDIAN FILTER,SM) (14)3.2带权值的中值滤波方法(WEIGHTED MEDIAN FILTER) (15)3.3三态中值滤波方法(TRI-STATE MEDIAN FILTER) (17)3.4自适应软开关滤波方法 (18)3.5自适应中值滤波方法 (20)3.6实验结果分析 (21)3.7小结 (26)第四章基于噪声检测的自适应中值滤波 (27)4.1噪声检测机制 (27)4.2椒盐噪声滤除方法 (33)4.2.1 噪声滤除策略 (34)4.2.2 动态窗口策略 (35)4.2.3 VAM滤波方法 (37)4.3小结 (37)第五章仿真结果分析比较 (39)5.1噪声检测机制性能分析 (39)5.2V AM滤波器去噪效果分析 (41)5.3小结 (45)第六章结语 (46)6.1论文主要工作总结 (46)6.2展望 (46)参考文献 (48)致谢 (50)第一章引言1.1 课题背景及其意义冈萨雷斯曾在其著作中提到,视觉是人类感觉中最高级的,而图像又在人类的感知中起着重要的作用[1]。
MATLAB图像邻域运算,去除噪声,模板运算中值滤波,均值滤波
![MATLAB图像邻域运算,去除噪声,模板运算中值滤波,均值滤波](https://img.taocdn.com/s3/m/5cd00210a300a6c30c229fc1.png)
1.列出常用的卷积模板2.基于3×3的模板,编写均值滤波的处理程序,处理含有加性高斯噪声和椒盐噪声的图像,观察处理结果3.编写中值滤波程序,处理相同的图像与均值滤波进行比较;改变模板尺寸观察处理结果4.编程实现利用一阶微分算子和二阶拉普拉斯算子进行图像锐化的程序5.对比不同的邻域运算结果,体会图像锐化与图像平滑的区别均值滤波处理含有椒盐噪声图像程序代码(1):模板运算f=imread('lena sp.bmp');f=double(f);[row,col]=size(f);r=1;for i=2:row-1for j=2:col-1g(i,j)=(f(i-1,j-1)+f(i-1,j)+f(i-1,j+1)+f(i,j-1)+f(i,j)+f(i,j+1)+f (i+1,j-1)+f(i+1,j)+f(i+1,j+1))/9;g=uint8(g);endendsubplot(121);imshow(uint8(f));title('椒盐噪声图像');subplot(122);imshow(g);title('均值滤波处理后的图像')椒盐噪声图像均值滤波处理后的图像(2):mean函数均值滤波f=imread('lena sp.bmp');f=double(f);[row,col]=size(f);g=size(f);for i=2:row-1for j=2:col-1t=f(i-1:i+1,j-1:j+1);t=double(t);g(i,j)=mean(mean(t));g(i,j)=uint8(g(i,j));endendsubplot(121);imshow(uint8(f));title('椒盐噪声图像');subplot(122);imshow(uint8(g));title('均值滤波处理后的图像')均值滤波处理后的图像(3)可变模板处理f=imread('lena gauss.bmp');f=double(f);[row,col]=size(f);r=1;g=size(f);for i=2:row-1for j=2:col-1s=0;s=double(s);for m=-r:rfor n=-r:rs=s+f(i+m,j+n);endendg(i,j)=s/power((r+2),2);endendsubplot(121);imshow(uint8(f));title('椒盐噪声图像');subplot(122);imshow(uint8(g));title('均值滤波处理后的图像')椒盐噪声图像均值滤波处理后的图像均值滤波处理含有加性高斯噪声图像程序代码(1):模板运算f=imread('lena gauss.bmp');f=double(f);[row,col]=size(f);r=1;for i=2:row-1for j=2:col-1g(i,j)=(f(i-1,j-1)+f(i-1,j)+f(i-1,j+1)+f(i,j-1)+f(i,j)+f(i,j+1)+f (i+1,j-1)+f(i+1,j)+f(i+1,j+1))/9;g=uint8(g);endendsubplot(121);imshow(uint8(f));title('加性高斯噪声图像');subplot(122);imshow(g);title('均值滤波处理后的图像')加性高斯噪声图像均值滤波处理后的图像(2):mean函数均值滤波f=imread('lena gauss.bmp');f=double(f);[row,col]=size(f);r=1;g=size(f);for i=2:row-1for j=2:col-1t=f(i-1:i+1,j-1:j+1);t=double(t);g(i,j)=mean(mean(t));g(i,j)=uint8(g(i,j));endendsubplot(121);imshow(uint8(f));title('加性高斯噪声图像');subplot(122);imshow(uint8(g));title('均值滤波处理后的图像')均值滤波处理后的图像(3):可变模板处理f=imread('lena gauss.bmp');f=double(f);[row,col]=size(f);r=1;g=size(f);for i=2:row-1for j=2:col-1s=0;s=double(s);for m=-r:rfor n=-r:rs=s+f(i+m,j+n);endendg(i,j)=s/power((r+2),2);endendsubplot(121);imshow(uint8(f));title('加性高斯噪声图像');subplot(122);imshow(uint8(g));title('均值滤波处理后的图像')椒盐噪声图像均值滤波处理后的图像中值滤波(椒盐噪声图像处理)f=imread('lena sp.bmp');f=double(f);[row,col]=size(f);g=size(f);r=1;for i=r+1:row-rfor j=r+1:col-rt=f(i-r:i+r,j-r:j+r);id=0;for tm=1:5m=0;for k=1:9if(m<t(k))m=t(k);id=k;endendt(id)=0;endg(i,j)=m;endendsubplot(121);imshow(uint8(f));title('原图像');subplot(122);imshow(uint8(g));title('中值滤波处理后的图像')R=1时的图像原图像中值滤波处理后的图像R=5原图像中值滤波处理后的图像中值滤波(加性高斯噪声)f=imread('lena gauss.bmp');f=double(f);[row,col]=size(f);g=size(f);r=1;for i=r+1:row-rfor j=r+1:col-rt=f(i-r:i+r,j-r:j+r);id=0;for tm=1:5m=0;for k=1:9if(m<t(k))m=t(k);id=k;endendt(id)=0;endg(i,j)=m;endendsubplot(121);imshow(uint8(f));title('原图像');subplot(122);imshow(uint8(g));title('中值滤波处理后的图像')原图像中值滤波处理后的图像R=5原图像中值滤波处理后的图像不同领域运算结果比较r=2f=imread('lena sp.bmp');f=double(f);[row,col]=size(f);r=2;g=size(f);for i=r+1:row-rfor j=r+1:col-rs=0;s=double(s);for m=-r:rfor n=-r:rs=s+f(i+m,j+n);endendg(i,j)=s/power((r+2),2);endendsubplot(121);imshow(uint8(f));title('椒盐噪声图像');subplot(122);imshow(uint8(g));title('均值滤波处理后的图像')均值滤波处理后的图像R=3椒盐噪声图像均值滤波处理后的图像R=8椒盐噪声图像均值滤波处理后的图像。
用中值滤波滤除图像中的椒盐噪声
![用中值滤波滤除图像中的椒盐噪声](https://img.taocdn.com/s3/m/b396f831b4daa58da0114ad6.png)
数字图像处理作业系别:班级:姓名:学号:论文:影响系统图像清晰程度的因素很多,例如室外光照度不够均匀就会造成图像灰度过于集中;由CCD(摄像头)获得的图像经过A/D(数/模转换,该功能在图像系统中由数字采集卡来实现)转换、线路传送都会产生噪声污染等等。
因此图像质量不可避免的降低了,轻者表现为图像不干净,难于看清细节;重者表现为图像模糊不清,连概貌也看不出来。
因此,在对图像进行分析之前,必须要对图像质量进行改善,一般情况下改善的方法有两类:图像增强和图像复原。
图像增强( image enhancement ),定义是将原来不清晰的图像变得清晰或强调某些关注的特征,抑制非关注的特征,使之改善图像质量、丰富信息量,加强图像判读和识别效果的图像处理方法。
增强图像中的有用信息,它可以是一个失真的过程,其目的是要改善图像的视觉效果,针对给定图像的应用场合,有目的地强调图像的整体或局部特性,将原来不清晰的图像变得清晰或强调某些感兴趣的特征,扩大图像中不同物体特征之间的差别,抑制不感兴趣的特征,使之改善图像质量、丰富信息量,加强图像判读和识别效果,满足某些特殊分析的需要。
图像增强可分成两大类:频率域法和空间域法。
前者把图像看成一种二维信号,对其进行基于二维傅里叶变换的信号增强。
采用低通滤波(即只让低频信号通过)法,可去掉图中的噪声;采用高通滤波法,则可增强边缘等高频信号,使模糊的图片变得清晰。
具有代表性的空间域算法有局部求平均值法和中值滤波(取局部邻域中的中间像素值)法等,它们可用于去除或减弱噪声。
图像增强的方法是通过一定手段对原图像附加一些信息或变换数据,有选择地突出图像中感兴趣的特征或者抑制(掩盖)图像中某些不需要的特征,使图像与视觉响应特性相匹配。
在图像增强过程中,不分析图像降质的原因,处理后的图像不一定逼近原始图像。
图像增强技术根据增强处理过程所在的空间不同,可分为基于空域的算法和基于频域的算法两大类。
维纳滤波与图像去噪
![维纳滤波与图像去噪](https://img.taocdn.com/s3/m/5b9fa195a8956bec0875e33b.png)
维纳滤波与图像去噪摘要首先选取对图像降噪比较有代表性的维纳滤波,在加有高斯噪声、椒盐噪声和乘性噪声的图像上进行处理,再将维纳滤波与中值滤波和均值滤波抑制噪声的效果进行比较,通过实验仿真及其处理效果,详细分析维纳滤波在图像去噪中的特点及各自作用的利弊。
关键词维纳滤波;中值滤波;均值滤波;图像去噪Wiener filtering and image denoisingLIMeng , ZHAOQi(Xi' an University of Posts and Telecommunications,School of communication and information engineering ,Xi ' an710000. Chin)Abstract: Select the first is a representative of wiener filtering for image noise reduction with gauss no ise and salt and pepper no ise and multiplicative no ise of image process ing, the n wie ner filtering and median filtering and mean filtering noise effect comparison, through the experimental simulation and the treatment effect, detailed analysis of wiener filtering in image denoising, the characteristics and the pros and cons of each role.Keywords: Wiener filtering,Median filtering,Mean filtering,Image denoising0引言图像在成像、传输、转换或存储的过程中会受到各种随机干扰信号即噪声的影响,从而会使画面变得粗糙、质量下降、特征淹没。
图像去噪算法的研究
![图像去噪算法的研究](https://img.taocdn.com/s3/m/385d64b2f121dd36a32d8282.png)
文章编号 : 1 0 0 7 — 1 4 2 3 ( 2 0 1 4 ) 0 5 — 0 0 2 8 — 0 4
图 形 囝 像
D OI : 1 0 . 3 9 6 9 6 . i s s n . 1 0 0 7 — 1 4 2 3 . 2 0 1 4 . 0 5 . 0 0 6
值滤波 。 维纳滤波对高斯噪声有很好的抑制效果 . 与此同时 , 维纳 滤波却容 易丢失边缘信 息且对椒盐噪声几乎没有 去
噪作用。
关键词 :
椒 盐噪声 ; 高斯噪声 ;中值滤波 ; 均值滤波 ; 维纳滤波
基金项 目:
国 家 大学 生创 新 创 业 项 目( N o . 2 0 1 2 1 0 7 2 2 0 2 8 )
去 噪 和模 糊 二 者 之 间 应 该 具 有 一个 清 楚 的衡 量标 准
5 结语
本文针对高斯 噪声 和椒盐 噪声 的去噪问题展开分
析, 分 别 使 用 中值 滤 波 、 均值 滤 波 和维 纳 滤 波 对 这 两 种
噪声进行 去噪 . 仿 真结果 表明 . 均值 滤波和维纳滤波对 于高斯 噪声具有 较好的效果 . 但 是这两个去噪方法都 会对 图像 造成一定的边缘信息丢失现象 . 并且维纳滤
参考文献:
『 l 1 周品 , 李晓东. Ma t L a b数 字 图像 处 理 『 M1 . 北京: 清 华 大 学 出版 社 , 2 0 1 2
『 2 1 张铮 , 王艳平霹 桂香 . 数字图像处理与机器视觉: V i s u a l c + + 与 Ma t L a b实现『 M1 . 北京: 人 民邮电出版社 , 2 0 1 0
缘信息且对椒盐噪声几乎没有去噪效果 。
同时含有椒盐噪声和高斯噪声的图像消噪处理
![同时含有椒盐噪声和高斯噪声的图像消噪处理](https://img.taocdn.com/s3/m/7a312ba2f424ccbff121dd36a32d7375a417c67c.png)
同时含有椒盐噪声和高斯噪声的图像消噪处理引言所谓噪声是电路或系统中不含信息量的电压或电流。
在工业与自然界中,存在着各种干扰源(噪声源),如大功率电力电子器件的接入、大功率用电设备的开启与断开、雷击闪电等都会使空间电场和磁场产生有序或无序的变化,这些都是干扰源(或噪声源)。
这些源产生的电磁波或尖峰脉冲通过磁、电耦合或是通过电源线等路径进入放大电路,各种电气设备,形成各种形式的干扰。
高斯噪声是指噪声的概率密度函数服从高斯分布(即正态分布)的一类噪声。
如果一个噪声,它的幅度分布服从高斯分布,而它的功率谱密度又是均匀分布的,则称它为高斯白噪声。
高斯白噪声的二阶矩不相关,一阶矩为常数,是指先后信号在时间上的相关性。
高斯白噪声包括热噪声和散粒噪声。
而椒盐噪声是指椒盐噪声是由图像传感器,传输信道,解码处理等产生的黑白相间的亮暗点噪声。
椒盐噪声往往由图像切割引起。
本文将采用中值滤波和维纳滤波对含有高斯噪声和椒盐噪声的图像进行处理,通过比较两种滤波技术对图像处理的效果,可以看出哪种滤波技术对椒盐噪声更起作用,哪种滤波技术对高斯噪声更有效果,再根据同一种滤波技术对不同窗口尺寸的图像进行滤波,比较处理效果,最终将选出对图像采用哪种滤波技术或者对同一种滤波技术哪种窗口尺寸滤波效果更好。
中值滤波:是一种非线性平滑技术,它将每一象素点的灰度值设置为该点某邻域窗口内的所有象素点灰度值的中值.实现方法:1:通过从图像中的某个采样窗口取出奇数个数据进行排序2:用排序后的中值取代要处理的数据即可中值滤波在图像处理中,常用于用来保护边缘信息,是经典的平滑噪声的方法。
中值滤波原理中值滤波是基于排序统计理论的一种能有效抑制噪声的非线性信号处理技术,中值滤波的基本原理是把数字图像或数字序列中一点的值用该点的一个邻域中各点值的中值代替,让周围的像素值接近的真实值,从而消除孤立的噪声点。
方法是去某种结构的二维滑动模板,将板内像素按照像素值的大小进行排序,生成单调上升(或下降)的为二维数据序列。
matlab图像去噪算法设计
![matlab图像去噪算法设计](https://img.taocdn.com/s3/m/9d52f62c0066f5335a812188.png)
数字图像去噪典型算法及matlab实现希望得到大家的指点和帮助图像去噪是数字图像处理中的重要环节和步骤。
去噪效果的好坏直接影响到后续的图像处理工作如图像分割、边缘检测等。
图像信号在产生、传输过程中都可能会受到噪声的污染,一般数字图像系统中的常见噪声主要有:高斯噪声(主要由阻性元器件内部产生)、椒盐噪声(主要是图像切割引起的黑图像上的白点噪声或光电转换过程中产生的泊松噪声)等;目前比较经典的图像去噪算法主要有以下三种:均值滤波算法:也称线性滤波,主要思想为邻域平均法,即用几个像素灰度的平均值来代替每个像素的灰度。
有效抑制加性噪声,但容易引起图像模糊,可以对其进行改进,主要避开对景物边缘的平滑处理。
中值滤波:基于排序统计理论的一种能有效抑制噪声的非线性平滑滤波信号处理技术。
中值滤波的特点即是首先确定一个以某个像素为中心点的邻域,一般为方形邻域,也可以为圆形、十字形等等,然后将邻域中各像素的灰度值排序,取其中间值作为中心像素灰度的新值,这里领域被称为窗口,当窗口移动时,利用中值滤波可以对图像进行平滑处理。
其算法简单,时间复杂度低,但其对点、线和尖顶多的图像不宜采用中值滤波。
很容易自适应化。
Wiener维纳滤波:使原始图像和其恢复图像之间的均方误差最小的复原方法,是一种自适应滤波器,根据局部方差来调整滤波器效果。
对于去除高斯噪声效果明显。
实验一:均值滤波对高斯噪声的效果I=imread('C:\Documents and Settings\Administrator\桌面\1.gif');%读取图像J=imnoise(I,'gaussian',0,0.005);%加入均值为0,方差为0.005的高斯噪声subplot(2,3,1);imshow(I);title('原始图像');subplot(2,3,2); imshow(J);title('加入高斯噪声之后的图像');%采用MATLAB中的函数filter2对受噪声干扰的图像进行均值滤波K1=filter2(fspecial('average',3),J)/255; %模板尺寸为3 K2=filter2(fspecial('average',5),J)/255;% 模板尺寸为5 K3=filter2(fspecial('average',7),J)/255; %模板尺寸为7 K4= filter2(fspecial('average',9),J)/255; %模板尺寸为9 subplot(2,3,3);imshow(K1);title('改进后的图像1');subplot(2,3,4); imshow(K2);title('改进后的图像2');subplot(2,3,5);imshow(K3);title('改进后的图像3');subplot(2,3,6);imshow(K4);title('改进后的图像4');PS:filter2用法fspecial函数用于创建预定义的滤波算子,其语法格式为:h = fspecial(type)h = fspecial(type,parameters)参数type制定算子类型,parameters指定相应的参数,具体格式为:type='average',为均值滤波,参数为n,代表模版尺寸,用向量表示,默认值为[3,3]。
基于椒盐噪声的中值滤波法的使用
![基于椒盐噪声的中值滤波法的使用](https://img.taocdn.com/s3/m/0a3c5a58bf1e650e52ea551810a6f524ccbfcb07.png)
科学技术创新2020.10(转下页)基于椒盐噪声的中值滤波法的使用王辉(苏州科技大学天平学院,江苏苏州215100)图像作为人类感知世界的视觉基础,将信息转变为我们人类视觉化的认知。
但图像在获取和传播过程中通常会受到噪声的干扰,使得图像质量下降,为了使图像恢复原本的质量,获得更多的信息,我们需要图像去噪技术来对以及被噪声破坏的图像进行加工和处理。
1椒盐噪声的概念与特点噪声的物理学概念是指无规律的不具周期性特征的声响,主要分为高斯噪声,伽马噪声,椒盐噪声等(也成脉冲噪声)。
椒盐噪声由为盐噪声组成,是指使随机改变图像上的像素值,使得图像在二维平面上的像素点一些变白(盐噪声),一些点变黑(胡椒噪声),一般两种噪声同时出现,前者属于高灰度噪声,后者属于低灰度噪声。
椒盐噪声改变图像像素的灰度值,它出现的位置随机,并且灰度值固定。
记x 为未被椒盐噪声和其他噪声污染的原始图像,x (i ,j )记为x 所处坐标像素位置的灰度值,其灰度值的区间为[Smin ,Smax],且满足Smin<=x (i ,j )<=Smax 。
当图像被椒盐噪声污染后,其像素的灰度值变为椒盐噪声的灰度值。
2传统去椒盐噪声的方法及评价传统的去椒盐噪声的方法有均值滤波法和中值滤波法。
2.1均值滤波法均值滤波法:均值滤波法,又叫领域平均法,它是线性滤波的一种方法。
其原理是拿几个像素的灰度值来代替图片每个像素的灰度值。
一张M*N 的图片(用Xi ,j 表示图像X 在坐标(i ,j )上的像素灰度值,此时i ,j 属于A{(1,……M )×(1,……N )}),用3*3或5*5的正方形滤波窗口,以3*3为例,用3*3正方形滤波窗口将图像依次进行分割处理,将窗口内未处理的像素点为中心,还包括其周围的领域像素。
最后将模板全体像素的灰度平均值来代替原来每个像素的灰度。
评价:(1)中值滤波法在一定程度上抑制了噪声,但其原理是拿窗口内像素的平均灰度值来代替每一个像素的灰度值,导致了图像噪声分摊到每一个像素点上,使得图像变模糊,这是因为均值滤波法的原理导致的,只能改善。
数字图像处理实验三中值滤波和均值滤波实验报告
![数字图像处理实验三中值滤波和均值滤波实验报告](https://img.taocdn.com/s3/m/99f80a25bceb19e8b8f6bad4.png)
数字图像处理实验三均值滤波、中值滤波的计算机实现12281166 崔雪莹计科1202 班一、实验目的:1)熟悉均值滤波、中值滤波处理的理论基础;2)掌握均值滤波、中值滤波的计算机实现方法;3)学习VC++ 6。
0 的编程方法;4)验证均值滤波、中值滤波处理理论;5)观察均值滤波、中值滤波处理的结果。
二、实验的软、硬件平台:硬件:微型图像处理系统,包括:主机,PC机;摄像机;软件:操作系统:WINDOWS2000或WINDOWSXP应用软件:VC++6.0三、实验内容:1)握高级语言编程技术;2)编制均值滤波、中值滤波处理程序的方法;3)编译并生成可执行文件;4)考察处理结果。
四、实验要求:1)学习VC+确6。
0编程的步骤及流程;2)编写均值滤波、中值滤波的程序;3)编译并改错;4)把该程序嵌入试验二给出的界面中(作适当修改);5)提交程序及文档;6)写出本次实验的体会。
五、实验结果截图实验均值滤波采用的是3X3的方块,取周围的像素点取得其均值代替原像素点。
边缘像素的处理方法是复制边缘的像素点,增加一个边框,计算里面的像素值得均值滤波。
均值氓浜1W赵六、实验体会本次实验在前一次的实验基础上增加均值滤波和中值滤波,对于椒盐噪声的处理,发现中值滤波的效果更为好一点,而均值滤波是的整个图像变得模糊了一点,效果差异较大。
本次实验更加增加了对数字图像处理的了解与学习。
七、实验程序代码注释及分析// HistDemoADIg.h :头文件//#in elude "ImageWnd.h"#pragma once// CHistDemoADIg 对话框classCHistDemoADIg : public CDialogEx{//构造public:CHistDemoADlg(CWnd* pParent = NULL); // 标准构造函数intnWidth;intnHeight;intnLen;intnByteWidth;BYTE *lpBackup;BYTE *lpBitmap;BYTE *lpBits;CStringFileName;CImageWndsource,dest;// 对话框数据enum { IDD = IDD_HISTDEMOA_DIALOG };protected:virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持// 实现protected:HICON m_hIcon;// 生成的消息映射函数virtual BOOL OnInitDialog();afx_msg void OnSysCommand(UINT nID, LPARAM lParam);afx_msg void OnPaint();afx_msg HCURSOR OnQueryDragIcon();DECLARE_MESSAGE_MAP()public:voidLoadBitmap(void);afx_msg void OnOpen();afx_msg void OnHist();voidHistogramEq(void);voidNoColor(void);void HistogramEq1(intnWidth,intnHeight,BYTE *lpInput,BYTE *lpOutput);voidMeanFilter(intnWidth,intnHeight,BYTE *lpInput,BYTE *lpOutput);voidMedianFilter(intnWidth,intnHeight,BYTE *lpInput,BYTE *lpOutput); afx_msgvoid OnBnClickedClose();afx_msg void OnBnClickedMeanfilter();afx_msg void OnBnClickedMedianfilter();};HistDemoADlg.cpp 对HistDemoADlg.h 进行具体的实现,OnOpen() 函数响应ID 为IDC_OPEN的按钮事件,而且会调取文件选择对话框,选取文件之后,会显示在原始图像区域显示对应的位图图像,OnHist()函数会响应ID为IDC_HIST的按钮事件,调用HistogramEq()进行直方图均衡化的处理,HistogramEq()会调用HistogramEq1()进行直方图均衡化的处理,并用dst.setlmage()显示处理之后的图像,以及NoColor()函数,对原始图像转化为灰度图像之后再显示。
椒盐噪声,中值滤波
![椒盐噪声,中值滤波](https://img.taocdn.com/s3/m/9fec33d17f1922791788e805.png)
%%%%%%%%%%%%%% 添加椒盐噪声,使用中值滤波器%%%%%%%%%%%%%% 以相同概率取得图像的最大值和最小值[filename pathname]=uigetfile;img=imread(strcat(pathname,filename));%保留一份数据imgSave=img;[m,n,k]=size(img);figure(1);subplot(221);imshow(img);%find the maxium and minium of the bmpmaxium=10;minium=200;for i=1:mfor j=1:nif(img(i,j,1)>maxium)maxium=img(i,j,1);end;if(img(i,j,1)<minium)minium=img(i,j,1);end;end;end;%加入椒盐噪声的比率ratio=0.01;noisenum=ratio*(m*n);for num=1:noisenumt=mod(round(abs(rand())*3),3)+1;i=max(mod(round(abs(rand())*m+1),m),1);j=max(mod(round(abs(rand())*n+1),n),1);img(i,j,t)=maxium;i=max(mod(round(abs(rand())*m+1),m),1);j=max(mod(round(abs(rand())*n+1),n),1);img(i,j,t)=minium;end;%img=imnoise(img,'salt & pepper');subplot(222);imshow(img);title('salt&pepper noise');%后面要进行多个模板滤波,保留一份数据noiseimgSave=img;%开始中值滤波3*3的模板mid=zeros(9,1);for t=1:kfor x=2:m-1for y=2:n-1temp=img(x-1:x+1,y-1:y+1,t);for i=1:3for j=1:3mid((i-1)*3+j)=temp(i,j);end;end;mid=sort(mid);midvalue=mid(5);img(x,y,t)=midvalue;end;end;end;subplot(223);imshow(img);title('3*3 midvalue filter');%7*7模板img=noiseimgSave;mid=zeros(49,1);temp=zeros(7,7);for t=1:kfor x=4:m-4for y=4:n-4temp=img(x-3:x+3,y-3:y+3,t);for i=1:7for j=1:7mid((i-1)*7+j)=temp(i,j);end;end;mid=sort(mid);midvalue=mid(25);img(x,y,t)=midvalue;end;end;end;subplot(224);imshow(img);title('7*7');。
图像噪声、均值滤波、高斯滤波、中值滤波
![图像噪声、均值滤波、高斯滤波、中值滤波](https://img.taocdn.com/s3/m/787a554259fb770bf78a6529647d27284b7337ca.png)
一、图像噪声由于图像采集、处理、传输等过程不可避免的会受到噪声的污染,妨碍人们对图像理解及分析处理。
常见的图像噪声有高斯噪声、椒盐噪声等。
1、椒盐噪声2、高斯噪声高斯噪声是指噪声的密度服从高斯分布的一类噪声,由于高斯噪声在空间和频域中数学上的易处理性,这种噪声(也称为正态噪声)模型经常被用于实践中。
高斯噪声随机变量z的概率密度函数由下式给出:加入高斯噪声后的效果:二、图像平滑图像平滑从信号处理的角度看就是去除其中的高频信息,保留低频信息。
因此我们可以对图像实施低通滤波。
低通滤波可以去除图像中的噪声,对图像进行平滑。
根据滤波器的不同可以分为:均值滤波、高斯滤波、中值滤波、双边滤波我们认为高频信息就是噪声,低频信息就是有用的内容。
1、均值滤波(1)api介绍(2)实例分析import cv2 as cvimport numpy as npimport matplotlib.pyplot as pltfrom matplotlib import font_manager#字体设置my_font = font_manager.fontproperties(fname="c:/windows/fonts/sthupo.ttf")#1、读取图像img = cv.imread("./images/girl.jpg")#2、均值滤波blur = cv.blur(img, (5,5))#3、图像显示plt.figure(figsize=(10,8), dpi=100)# subplot中的121代表[1,2,1],表示在本区域里显示1行2列个图像,最后的1表示本图像显示在第一个位置。
plt.subplot(121)plt.imshow(img[:,:,::-1])plt.title("原图", fontproperties=my_font)plt.xticks([]), plt.yticks([])plt.subplot(122)plt.imshow(blur[:,:,::-1])plt.title("均值滤波后的结果", fontproperties=my_font)plt.xticks([]), plt.yticks([])plt.show()2、高斯滤波图像是二维的,所以使用二维高斯分布。
数字图像处理实验(全完整答案)
![数字图像处理实验(全完整答案)](https://img.taocdn.com/s3/m/49ab70b4f242336c1fb95e4f.png)
实验一常用MATLAB图像处理命令一、实验目得1、熟悉并掌握MATLAB工具得使用;2、实现图像得读取、显示、代数运算与简单变换。
二、实验环境MATLAB 6。
5以上版本、WIN XP或WIN2000计算机三、常用函数●读写图像文件1 imreadimread函数用于读入各种图像文件,如:a=imread('e:\w01。
tif')2 imwriteimwrite函数用于写入图像文件,如:imwrite(a,’e:\w02。
tif’,’tif')3imfinfoimfinfo函数用于读取图像文件得有关信息,如:imfinfo('e:\w01、tif’)●图像得显示1imageimage函数就是MATLAB提供得最原始得图像显示函数,如:a=[1,2,3,4;4,5,6,7;8,9,10,11,12];image(a);2 imshowimshow函数用于图像文件得显示,如:i=imread('e:\w01、tif');imshow(i);title(‘原图像’)%加上图像标题3 colorbarcolorbar函数用显示图像得颜色条,如:i=imread(’e:\w01。
tif');imshow(i);colorbar;4 figurefigure函数用于设定图像显示窗口,如:figure(1); /figure(2);5 subplot把图形窗口分成多个矩形部分,每个部分可以分别用来进行显示、Subplot(m,n,p)分成m*n个小窗口,在第p个窗口中创建坐标轴为当前坐标轴,用于显示图形、6 plot绘制二维图形plot(y)Plot(x,y)xy可以就是向量、矩阵。
图像类型转换1rgb2gray把真彩图像转换为灰度图像i=rgb2gray(j)2 im2bw通过阈值化方法把图像转换为二值图像I=im2bw(j,level)Level表示灰度阈值,取值范围0~1(即0.n),表示阈值取自原图像灰度范围得n%3 imresize改变图像得大小I=imresize(j,[m n])将图像j大小调整为m行n列图像运算1imadd两幅图像相加,要求同样大小,同种数据类型Z=imadd(x,y)表示图像x+y2 imsubstract两幅图像相减,要求同样大小,同种数据类型Z=imsubtract(x,y) 表示图像x-y3 immultiplyZ=immultiply(x,y) 表示图像x*y4 imdivideZ=imdivide(x,y) 表示图像x/y四、实验内容(请将实验程序填写在下方合适得位置,实验图像结果拷屏粘贴)1、读入一幅RGB图像,变换为灰度图像与二值图像,并在同一个窗口内分成三个子窗口来分别显示RGB图像与灰度图像,注上文字标题。
数字图像处理实验报告图像复原实验
![数字图像处理实验报告图像复原实验](https://img.taocdn.com/s3/m/a436623958fafab069dc027a.png)
实验报告课程名称数字图像处理导论专业班级_______________姓名_______________学号_______________电气与信息学院和谐勤奋求是创新2.对加入噪声图像选用不同的平滑(低通)模板做运算,对比不同模板所形成的效果,要求在同一窗口中显示。
I=imread('moon.tif');H = fspecial('sobel');subplot(2,2,1)imshow(I);title(' Qriginal Image ');Sobel = imfilter(I,H,'replicate');subplot(2,2,2)imshow(Sobel);title(' Sobel Image ')H = fspecial('laplacian',0.4);lap = imfilter(I,H,'replicate');subplot(2,2,3)imshow(lap);title(' Laplacian Image ')H = fspecial('gaussian',[3 3],0.5);gaussian = imfilter(I,H,'replicate');subplot(2,2,4)imshow(gaussian);title(' Gaussian Image ')3.使用函数imfilter时,分别采用不同的填充方法(或边界选项,如零填充、’replicate’、’symmetric’、’circular’)进行低通滤波,显示处理后的图像。
originalRGB = imread('trees.tif');subplot(3,2,1)imshow(originalRGB);title(' Qriginal Image ');h = fspecial('motion', 50, 45); %motion blurredfilteredRGB = imfilter(originalRGB, h);subplot(3,2,2)imshow(filteredRGB);title(' Motion Blurred Image ');boundaryReplicateRGB = imfilter(originalRGB, h, 'replicate');subplot(3,2,3)imshow(boundaryReplicateRGB);title(' 0-Padding');boundary0RGB = imfilter(originalRGB, h, 0);subplot(3,2,4)imshow(boundary0RGB);title('Replicate');boundarysymmetricRGB = imfilter(originalRGB, h, 'symmetric'); subplot(3,2,5)imshow(boundarysymmetricRGB);title(' Symmetric ');boundarycircularRGB = imfilter(originalRGB, h, 'circular'); subplot(3,2,6)imshow(boundarycircularRGB);title(' Circular');5.对加入椒盐噪声的图像分别采用均值滤波法,和中值滤波法对有噪声的图像做处理,要求在同一窗口中显示结果。
常用的去噪方法
![常用的去噪方法](https://img.taocdn.com/s3/m/7c4ee66e48d7c1c708a14537.png)
常用的数字图像去噪典型算法及matlab实现发表于603天前⁄图像处理⁄评论数1⁄被围观743views+图像去噪是数字图像处理中的重要环节和步骤。
去噪效果的好坏直接影响到后续的图像处理工作如图像分割、边缘检测等。
图像信号在产生、传输过程中都可能会受到噪声的污染,一般数字图像系统中的常见噪声主要有:高斯噪声(主要由阻性元器件内部产生)、椒盐噪声(主要是图像切割引起的黑图像上的白点噪声或光电转换过程中产生的泊松噪声)等;目前比较经典的图像去噪算法主要有以下三种:均值滤波算法:也称线性滤波,主要思想为邻域平均法,即用几个像素灰度的平均值来代替每个像素的灰度。
有效抑制加性噪声,但容易引起图像模糊,可以对其进行改进,主要避开对景物边缘的平滑处理。
中值滤波:基于排序统计理论的一种能有效抑制噪声的非线性平滑滤波信号处理技术。
中值滤波的特点即是首先确定一个以某个像素为中心点的邻域,一般为方形邻域,也可以为圆形、十字形等等,然后将邻域中各像素的灰度值排序,取其中间值作为中心像素灰度的新值,这里领域被称为窗口,当窗口移动时,利用中值滤波可以对图像进行平滑处理。
其算法简单,时间复杂度低,但其对点、线和尖顶多的图像不宜采用中值滤波。
很容易自适应化。
Wiener维纳滤波:使原始图像和其恢复图像之间的均方误差最小的复原方法,是一种自适应滤波器,根据局部方差来调整滤波器效果。
对于去除高斯噪声效果明显。
实验一:均值滤波对高斯噪声的效果代码I=imread('C:\Documents and Settings\Administrator\桌面\1.gif');%读取图像J=imnoise(I,'gaussian',0,0.005);%加入均值为0,方差为0.005的高斯噪声subplot(2,3,1);imshow(I);title('原始图像');subplot(2,3,2);imshow(J);title('加入高斯噪声之后的图像');%采用MATLAB中的函数filter2对受噪声干扰的图像进行均值滤波K1=filter2(fspecial('average',3),J)/255;%模板尺寸为3K2=filter2(fspecial('average',5),J)/255;%模板尺寸为5K3=filter2(fspecial('average',7),J)/255;%模板尺寸为7K4=filter2(fspecial('average',9),J)/255;%模板尺寸为9subplot(2,3,3);imshow(K1);title('改进后的图像1');subplot(2,3,4);imshow(K2);title('改进后的图像2');subplot(2,3,5);imshow(K3);title('改进后的图像3');subplot(2,3,6);imshow(K4);title('改进后的图像4');PS:filter2用法fspecial函数用于创建预定义的滤波算子,其语法格式为:h=fspecial(type)h=fspecial(type,parameters)参数type制定算子类型,parameters指定相应的参数,具体格式为:type=’average’,为均值滤波,参数为n,代表模版尺寸,用向量表示,默认值为[3,3]。
中值滤波与椒盐噪声
![中值滤波与椒盐噪声](https://img.taocdn.com/s3/m/df1fc90e03020740be1e650e52ea551810a6c91c.png)
中值滤波与椒盐噪声
椒盐噪声:也称为脉冲噪声:
在图像中,它是⼀种随机出现的⽩点或者⿊点,可能是亮的区域有⿊⾊像素或是在暗的区域有⽩⾊像素(或是两者皆有)。
在⼀维信号中,可以理解为⼀些离群的点或者尖脉冲。
举两个栗⼦:分别为带有椒盐噪声⼆维信号和⼀维信号
滤除椒盐噪声⽐较有效的⽅法是对信号进⾏中值滤波处理。
顾名思义,中值滤波是指将⼀个像素的值⽤该像素邻域中强度值的中间值来取代,⾄于领域范围取多⼤则视实际需要⽽定。
去除椒盐噪声的后可以得到较为平滑的信号,其效果要优于均值滤波器,当然同样也会造成边缘模糊、信号不够锐利,这似乎也是很多滤波⽅法的⼀⼤通病。
下⾯给出⼆维信号以及⼀维信号在中值滤波前后的⼀个对⽐效果:
matlab中,调⽤ y = medfilt1(x,n)即可进⾏⼀维信号的中值滤波操作(x表⽰输⼊信号,n值窗宽度)调⽤B = medfilt2(A, [m n])可完成⼆维信号的中值滤波操作(A为输⼊矩阵,采⽤m*n⼤⼩的窗⼝)。
图像处理——均值滤波+中值滤波(Matlab)
![图像处理——均值滤波+中值滤波(Matlab)](https://img.taocdn.com/s3/m/63cea3db312b3169a451a498.png)
题目:均值滤波和中值滤波在自己的证件照中加入椒盐噪声、高斯白噪声。
分别用3*3、5*5、7*7的均值滤波器和中值滤波器进行滤波。
处理过程1.用imnoise函数在图像中分别加入椒盐噪声和高斯白噪声;2.均值滤波:用fspecial函数创建各模板大小的均值滤波器,并用imfilter函数进行滤波。
中值滤波:直接用matlab提供的medfilt2中值滤波器进行滤波即可。
处理结果程序清单(1)均值滤波rgb=imread('photo.jpg');J1=imnoise(rgb,'salt & pepper',0.02);J2=imnoise(J1,'gaussian',0,0.01);h1=fspecial('average',[3,3]);h2=fspecial('average',[5,5]);h3=fspecial('average',[7,7]);rgb1=imfilter(J2,h1);rgb2=imfilter(J2,h2);rgb3=imfilter(J2,h3);figure;subplot(2,3,1);imshow(rgb)title('原图像');subplot(2,3,2);imshow(J2)title('加入噪声后的图像');subplot(2,3,4);imshow(rgb1)title('3*3均值滤波图像');subplot(2,3,5);imshow(rgb2)title('5*5均值滤波图像');subplot(2,3,6);imshow(rgb3)title('7*7均值滤波图像');(2)中值滤波rgb=imread('photo.jpg');J1=imnoise(rgb,'salt & pepper',0.02);J2=imnoise(J1,'gaussian',0,0.01);J3=rgb2gray(J2);rgb1=medfilt2(J3,[3 3]);rgb2=medfilt2(J3,[5 5]);rgb3=medfilt2(J3,[7 7]);figure;subplot(2,3,1);imshow(rgb) title('原图像');subplot(2,3,2);imshow(J3) title('加入噪声后的图像'); subplot(2,3,4);imshow(rgb1) title('3*3中值滤波图像'); subplot(2,3,5);imshow(rgb2) title('5*5中值滤波图像'); subplot(2,3,6);imshow(rgb3) title('7*7中值滤波图像');。
python添加高斯噪声和椒盐噪声,实现中值滤波和均值滤波,实现Roberts算子和Sobel算子
![python添加高斯噪声和椒盐噪声,实现中值滤波和均值滤波,实现Roberts算子和Sobel算子](https://img.taocdn.com/s3/m/1f69e2f8846a561252d380eb6294dd88d0d23d0e.png)
python添加⾼斯噪声和椒盐噪声,实现中值滤波和均值滤波,实现Roberts算⼦和Sobel算⼦写在前⾯HIT⼤三上学期视听觉信号处理课程中视觉部分的实验⼀,经过和学长们实验的对⽐发现每⼀级实验要求都不⼀样,因此这⾥标明了是2019年秋季学期的视觉实验⼀。
由于时间紧张,代码没有进⾏任何优化,实验算法仅供参考。
实验要求1. 实现给图像添加⾼斯噪声和椒盐噪声,要求显⽰添加噪声之后的结果图。
2. 实现图像的空域滤波:中值滤波和均值滤波算法,并选取适合的⽅法对1中的图像进⾏平滑处理,要求显⽰处理之后的结果。
3. 实现图像的边缘检测:Roberts算⼦和Sobel算⼦。
4. 选做:实现对BMP⽂件头的读取,并解析BMP图像⽂件。
PS:图像单通道形式读取实验代码代码⾸先贴在这⾥,仅供参考知识总结这⼀部分总结实验过程中查询的博客,介绍完成本实验所需的知识,并对其记录以便之后复习。
⾸先需要实现⼀个对bmp⽂件读取的程序,这⾥⾸先需要了解bmp图像的格式这⾥我使⽤的⽂件读取⽅式是pack和unpackbmp⽂件读取程序中,如何保存读出的图像数据⾃⼰决定,但最好使⽤numpy库将其保存为数组,⽅便后续进⾏各种处理。
(这⾥我选择将其按像素点储存为⼀维数组,理解上较为简单,但后续算法实现需要算⼀下下标,导致程序不是很简洁。
)接下来进⾏的各种操作都是在灰度图上进⾏的,因此⾸先需要将bmp图像数据转化成灰度图像数据之后是实现⾼斯噪声和椒盐噪声均值滤波和中值滤波Roberts算⼦和Sobel算⼦实验总结很简单的⼀个实验,总时间加起来⼤致6个⼩时左右(后⾯⼏个算法程序结构都是完全⼀样的,看懂算法原理直接替换核⼼代码就可以了。