同时含有椒盐噪声和高斯噪声的图像消噪处理图像课设论文

更新时间:2023-05-08 23:58:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

燕山大学

课程设计说明书

题目:同时含有椒盐噪声和高斯噪声的图像消噪处理

学院(系):

年级专业: 13级自动化仪表

学号:

学生姓名:

指导教师:吴晓光

教师职称:讲师

燕山大学课程设计(论文)任务书

院(系):基层教学单位:

说明:此表一式四份,学生、指导教师、基层教学单位、系部各一份。

2015年 12月 31 日燕山大学课程设计评审意见表

燕山大学课程设计

目录

一、噪声的分类 (1)

二、滤波原理 (1)

三、综合智能识别 (1)

四、处理结果 (1)

五、程序 (1)

六、参考文献 (1)

共21页第1页

燕山大学课程设计

摘要

在数字图像处理领域,图像噪声的滤除一直是最重要、最基本的研究课题之一。由高斯噪声和椒盐噪声叠加而成的混合噪声是数字图像中存在的一种典型噪声。而传统方法对于这种类型噪声的处理效果往往是不尽如人意的,主要表现在滤除图像噪声的同时会对图像细节产生丢失。

绝大部分自然图像几乎同时含有椒盐噪声和高斯噪声,简单的使用传统的滤波算法不能获得理想的滤波效果。为了解决混有这两种噪声图像的滤波问题,分别针对以椒盐噪声为主的混合噪声图像和高斯噪声为主的混合噪声图像,提出了双阂值滤波算法。这种算法是在修正后的阿尔法均值滤波算法的基础上做了两方面的改进:首先,提出在图像邻域内为不同灰度值的像素点给出归一化的权值,用这些权值和其对应的灰度值共同决定滤波输出。其次,所设计的权值可以用修正因子来进行微调,来获得理想的滤波效果。实验证明,其处理效果优于传统滤波算法和修正后的阿尔法均值滤波算法。

本论文所提出的算法均在MATLAB上进行了仿真,并进行相应的新旧算法比较,本文介绍有中值滤波,均值滤波等经典的滤波的算法,通过与改进后的自适应中值滤波和维纳滤波进行对比。

主题词:阿尔法均值滤波中值滤波维纳滤波

共21页第1页

燕 山 大 学 课 程 设 计

共 21页 第 1页

一、噪声的分类

在我们的图像中常见的噪声主要有以下几种:

(1)加性噪声

加性嗓声和图像信号强度是不相关的,如图像在传输过程中引进的“信道噪声”电视摄像机扫描图像的噪声。这类带有噪声的图像g 可看成为理想无噪声图像f 与噪声n 之和,即

g

f n =+

(2)乘性噪声 乘性嗓声和图像信号是相关的,往往随图像信号的变化而变化,如飞点扫描图像中的嗓声、电视扫描光栅、胶片颗粒造成等,这类噪声和图像的关系是

g f f n =

+?

(3)高斯噪声 高斯噪声是数字图像的主要噪声源,高斯噪声是一种随机噪声,在任选瞬时中任取n 个,其值按n 个变数的高斯概率定律分布。

1、高斯噪声完全是由两瞬时的协方差函数和它的时变平均值来确定,如果噪声是平稳的,则平均值与时间无关,此时协方差函数则变成只与所探讨的两瞬时之差有关的相关函数,在意义上与功率谱密度等同。

2、高斯噪声可以是大量独立的脉冲所产生的,从而在任何有限时间间隔内,这些脉冲中的每一个脉冲值与所有脉冲值的总和相比都可忽略不计。

3、实际上热噪声、散弹噪声及量子噪声都是高斯噪声。

高斯白噪声:如果某个噪声,它的功率谱密度服从均匀分布,而幅度分布服从高斯分布,则称其为高斯白噪声。散粒噪声和热噪声都是高斯白噪声,所谓高斯白噪声中的“高斯”是指概率分布函数是正态函数,而“白噪声”则是指它的一阶矩为常数,二阶矩不

燕 山 大 学 课 程 设 计

共 21页 第 1页 相关,表示为先后信号在时间上的相关性。这是考查一个信号的两个不同方面的问题。 时变信号是信号的幅度随时间变化的信号,幅度不随时间变化的信号,即幅度保持为常数的信号叫时不变信号。高斯白噪声是指信号中包含从负无穷到正无穷之间的所有频率分量,且各频率分量在信号中的权值相同。白光包含各个频率成分的光,白噪声这个名称是由此而来的。它在任意时刻的幅度是随机的,但在整体上满足高斯分布函数。

(x)(z)()x x a F f dz σ-∞-==Φ?

1.3高斯噪声的经典算法

1.3.1算术均值滤波法 1)算法原理:算术平均滤波是根据N 个采样数据1

x 、2x ……N x ,寻找Y ,使得Y

与各个采样值之间的偏差的平方之和最小,即: 21(y x

)N i E i ==-∑

最小。

而Y 是由一元函数求极值的原理获得

11N

i

i y x N ==∑

2)算法特点:此算法对于周期性波动的信号具有很好的滤波平滑效果,比较适用于那些具有随机干扰的信号的滤波。此种算法对于信号的滤波效果和平滑程度将取决于N 的值。N 较小时,平滑度低,滤波效果不太明显。N 较大时,灵敏度低,平滑度高,实时性差。而此算法的主要缺陷在于:不适用对要求计算速度较快或者测量速度较慢的实 时控制。

3)算术均值滤波器

算术均值滤波器是最简单的均值滤波器。令表示中心在点(x, y)处、大小为m*n 的

燕 山 大 学 课 程 设 计

共 21页 第 1页 矩形子图像窗口(邻域)的一组坐标。算术均值滤波在xy S 定义的区域中计算被

污染图像g (x,y )的平均值。在点(x, y)处复原图像*

f 的值,就简单地使用xy S 定义的区域中的像素计算出的算数平均值,即 *(s,t)S 1(x,y)(s,t)xy f

g mn ∈=∑(m 和n 是奇整数)

这个操作可以使用大小为m*n 的一个空间滤波器来实现,其所有的系数均为其值的 1 /mn 。均值滤波平滑一幅图像中的局部变化,虽然模糊了结果,但降低了噪声。这个操作可以用其系数为1 /mn 的卷积模版来实现。其滤波模板为:

??????????=111111111911ω

(4)“椒盐”噪声

此类嗓声如图像切割引起的即黑图像上的白点。白图像上的黑点噪声,在变换域引入的误差,使图像反变换后造成的变换噪声等。

去噪后的图像一般需要考虑三个方面的因素:1.噪声衰减程度2.区域平滑程度3.边缘保持程度。去嗓后的图像保持尽可能地衰减噪声,尽可能地平滑区域,尽可能地保持图像边缘鲜明。椒盐噪声是由图像传感器,传输信道,解码处理等产生的黑白相间的亮暗点噪声。椒盐噪声往往由图像切割引起。去除脉冲干扰和椒盐噪声最常用的算法是中值滤波。路面图像被看作为结构光图像,一般运用区域分割技术里的阂值分割法来去除白噪声和一些椒盐噪声,而一般不能运用中值滤波来滤除白噪声和部分椒盐噪声,因为滤波器模板在图像中漫游的时候会影响光条中像素的灰度分布,给之后重心法的细化过程带来负面影响。

燕 山 大 学 课 程 设 计

共 21页 第 1页 从大量实验研究中可发现,通过摄像机拍摄获取的图像受椒盐噪声、离散脉冲和均值为零的高斯噪声的影响很严重。图像噪声给数字图像处理带来了许多困难,对图像识别、特征提取、图像分割等有直接的影响。因此,实时采集获得的图像必须经过滤波预处理。去除图像里的那部分噪声成份被称为图像的滤波或平滑化操作。平滑的目的有两个:一是为了适应计算机处理过程中的要求,滤除掉图像数字化过程中所混入的部分噪声;二是提取出处理对象的一些特征作为图像识别时的特征模式。而滤波处理过程中的要求也有两条:一是不能破坏图像轮廓和边缘等重要的信息;二是使图像变得更清晰, 视觉效果更好。

椒盐噪声是指两种噪声,一种是盐噪声(salt noise),另一种是胡椒噪声(peppernoise)。盐=白色,椒=黑色。前者是高灰度噪声,后者属于低灰度噪声。一般两种噪声同时出现,呈现在图像上就是黑白杂点。处理方法:中值滤波法在滤除椒盐噪声的领域应用的十分广泛。可是中值滤波在滤除椒盐噪声时有其固有的不足,比如中值滤波法并不能非常好地保护图像边缘和图像中的大部分细节信息,因此中值滤波在细节和边缘要求比较严格的情况下并不能得到人们理想的处理效果。

1.4.1自适应中值滤波法

传统的中值滤波方法只能一致地应用到整个图像,无论图像点的好坏均会受到该滤波窗口的影响,这样势必会影响到未受噪声干扰的图像细节。为了解决这个问题,提出了一种简单且易实现的“自适应中值滤波法”,该方法既可有效滤除严重的噪声干扰,又能较好保持图像细节。该方法首先必须将整个图像分割成为L 个子图像,之后依次统计出每一个子图像中噪声点的个数,再依照子图像里噪声点的个数,在每一个子图像中自动选取滤波窗口的尺寸。

在实现此方案的过程中,首先必须进行整体噪声检测。而噪声检测算法的实现是来源于对随机噪声图像的两点假设:一是受到污染的噪声点从局部来看,其灰度值会明显 低于或高于其邻域中的其它像素点的灰度值;二是假若没有受到随机噪声的干扰的数字 图像局部应当是相对平稳的,可能在区域的边缘地区会有明显的跳跃。假设

ij x 代表受到

燕 山 大 学 课 程 设 计

共 21页 第 1页 噪声干扰的图像中像素点(i,j )的灰度值,

ij m 是以点(i,j)为中心,大小为3x3的窗口内

所有图像点的中值,即 }

,...,...{1,11,1++--=j i ij j i ij x x x Med m

则有: ???≥-=其他0

1Td m x f ij ij ij 式中,Td 是预先设定的门限值,1=ij f 表示图像点(i,j)是一个噪声点,0=ij f 表示图像点(i ,j)是一个未受污染的好点。 在完成自适应中值滤波随机噪声的检测之后,可将图像里的全部像素分为两大类:

噪声点和好点(没有受到噪声污染的点),之后再根据实际中图像被污染的情况,自动选择每个子图像所能适用的中值滤波函数窗口的尺寸,进行自适应中值滤波。其详细步骤如下:

(1)检测随机噪声,确定好点和噪声点。

(2)将图像分割成L 个预处理的子图像。

(3)分别计算各个子图像中好点和噪声点的个数。

(4)如果噪声点的个数大于某个设定的阂值,则对该子图像采用5x5大小的窗口进行 中值滤波;反之,则对该子图像采用3x3大小的窗口进行中值滤波。

(5)将经上述处理的L 个子图像合成起来,以得到消除噪声的恢复图像。

燕山大学课程设计

共21页第1页

燕 山 大 学 课 程 设 计

共 21页 第 1页 这种自适应中值滤波方法通过将待处理的图像分割为L 个子图像,然后再根据每个子图像受噪声污染的实际情况,自动地选择滤波窗口的大小。这样既可有效滤除严重的噪声干扰,同时也保持了图像的细节。

二、滤波原理

2.1滤波图像复原

逆滤波法是最简单的图像恢复方法。对1式两边作二维傅立叶变换,得到

),(),(),(),(v u N v u F v u H v u G +=

),(v u H 为成像系统的转移函数。估算得到的恢复图像的傅立叶变换),(^

v u F 为 ),(),(),(),(),(),(^v u H v u N v u F v u H v u G v u F +==

若知道转移函数),(v u H ,上式经反变换即可得到恢复图像。

逆滤波恢复法会出现病态性,若0),(=v u H ,而噪声0),(≠v u N ,则),(/),(v u N v u H 比),(y x F 大很多,使恢复出来入),(^

y x f 与),(y x f 相差很大,甚至面目全非。考虑到降质系统的转移函数),(v u H 的带宽比噪声要窄的多,其频率特性也具有低通性质,因此可令逆滤波的转

移函数),(1v u H 为

?????>+≤+=021

22021221)(0)(),(/1),(D v u D v u v u H v u H 2.2维纳滤波复原

逆滤波简单,但可能带来噪声的放大,而维纳滤波对逆滤波的噪声放大有抑制作用。

燕 山 大 学 课 程 设 计

共 21页 第 1页 维纳滤波是寻找一个滤波器,使得复原后图像),(y x f 与原始图像),(^

y x f 的方差最小,即

})],(),({[min 2^

y x f y x f E -=

如果图像),(y x f 和噪声),(y x n 不相关,且),(y x h 有零均值,则可导出维纳滤波器的传递函数为 )

,(/),(),(),(*),(1),(22v u P v u P v u H v u H v u H v u H f n w += 式中),(v u P n 和),(v u P f 分别为噪声和原始图像的功率谱。),(v u P n 和),(v u P n 是未知的,常用常数K 来近似

),(/),(v u P v u P f n 。

2.3滤波算法 逆滤波简单,但可能带来噪声的放大,而维纳滤波对逆滤波的噪声放大有抑制作用。 维纳滤波是寻找一个滤波器,若混有噪声图像设为g ,大小为Q P *滤波的输出为f 。对混有噪声的图像进行从上到下从左至右的滤波。

2.3.1噪声检测

以含噪图像g 中像素点A (i ,j )为中心选取一个像素为3x3窗口S 计算出滤波窗口内像素点的方差:

∑∑-=-=---=11112

2]),([91q p u p j q i I σ

其中

∑∑-=-=--=1111),(91q m p j q i I μ

令其阀值为T 。若

T >2σ时,则判定为此滤波窗口内被椒盐噪声所污染;反之若

燕 山 大 学 课 程 设 计

共 21页 第 1页 T <2σ时,则判定为该滤波窗口被高斯噪声所污染。

依据上述判定方法,如果滤波窗口中像素点受到椒盐噪声的污染,则计算出滤波窗中灰度的最小值min 和最值max 。把滤波窗中每一个像素点g (i,j )其中s j i ∈,与最小值和最大值进行对比,去除所有等于最小值或是最大值的像素点,若此时滤波窗中剩下的像素点N 不为零,则可计算出剩下像素点的平均值M ,并求出平均像素g(i,j)的灰度值和滤波窗口中点处的像素点灰度值的差的绝对值即d=IM-g(i,j )I 。将此绝对值和提前设定好的阂值T 进行比较,如果d>T ,则输出余下的像素点均值M ,若d

4/))1,()1,1(),1()1,1((),(-++-+-+--=j i g j i g j i g j i g j i f 若判断滤波窗内未被椒盐噪声污染,则先计算出滤波窗内像素的梯度绝对值:

),()1,()1,(),1(j i g j i g j i g j i g Td +++-+-= 如果梯度值大于某一给定的阂值T,T=-k*m+b ,其中k=0.3 ,b=160则直接输出原像素。否则输出滤波窗像素灰度值均值。重复上述算法直至完成所有像素点的滤波处理,最后得到除噪后的图像f 。

1)最大值和最小值滤波器。 尽管中值滤波器是目前数字图像处理中最常用的一种顺序统计滤波器,但他绝不是唯一的一种。中值相当于按从小到大或从大到小顺序排列中间的那个数值,人们会从基本的统计学想到还有很多其他的可能性。例如,可以运用序列中的最后一个数值,得到最大值滤波器,由下式给出:

燕 山 大 学 课 程 设 计

共 21页 第 1页 )},({max ),(),(t s g y x F xy S t s ∈=

上述滤波器在寻找出图像中最亮点的时候十分管用。同样,由于“胡椒”噪声的值比较低,作为图像区域xy S ,中的最大值来选择结果时,可以使用这种滤波器来消除。而起始位置的滤波器被称作最小值滤波器:

)},({min ),(),(t s g y x F xy S t s ∈=

此种滤波器在探索图像中的最暗点的时候十分有用。同样,作为图像区域

xy S 中的

最小值来选择结果时,可以用来消除“盐’噪声

2)中点滤波器

中点滤波器是在滤波器涉及范围内计算最大值和最小值之间的中点: )}],({max )},({min [21),(),(),(t s g t s g y x F xy xy S t s S t s ∈∈+=

这种滤波器结合了顺序统计和求平均,对于高斯和均匀随机分布这类噪声有很好的滤除效果。

3)修正后的阿尔法均值滤波器

假设在xy S 邻域内去掉g(s,t)中最低的灰度值d/2和最高的灰度值d/2。用g ( s,t)来表示剩余的mn-d 个像素。由这些剩余像素点的平均值所形成的滤波器称为“修正后的阿尔法均值滤波器

∑∈-=xy S t s t s g d mn y x F ),(),(1),(

其中d 的取值可以在0到mn-1之间的任何数。若d=0时,该滤波器就退化成算术均值滤波器。假如选取d=(mn-1) /2,此滤波器将变为中值滤波器。当d 取其他值时,此种滤波器在混有多种噪声的情况下也十分适用。比如椒盐噪声和高斯噪声混合在一起

燕 山 大 学 课 程 设 计

共 21页 第 1页 的情况下。

2.4改进后新的高斯椒盐混合去噪算法

2.4.1自适应中值滤波

为了尽量保留图像细节,用自适应中值滤波对图像进行预处理。对处理后的图像记 为im_med.其处理方法如下:

ij im 表示一个要处理的中心点在(i,j)处的2N+1x2N+1的子窗口

min im 表示图像ij im 中的最小亮度值

max im 表示图像ij im 中的最大亮度值

med im 表示图像ij im 中的亮度的值

im(i,j )表示图像坐标在(i,j )处的亮度值

判决方法:

Step 1:如果min im

否则增加窗口尺寸

若窗口尺寸≤2N+1重复Step 1

否则输出

med im Step2:如果min im

否则输出

med im Canny 算法

对im_med 图像进行边缘提取。因为canny 算法具有很好的抵制噪声同时较为精准的定位图像边缘的特性,为了尽可能的保存图像细节信息,这里采用canny 算法(laplacian)算法对图像细节保留的也很好,但是受噪声的影响也很大,这里不采用。处理后的图像记为im_canny

基本思路如下:

燕 山 大 学 课 程 设 计

共 21页 第 1页 1)用一个高斯滤波器平滑输入图像

2)计算梯度幅值图像和角度图像

3)对梯度幅值图像应用非最大抑制

4)用双阂值处理和连接分析来检测并连接边缘

自适应维纳滤波

对im_ med 图像进行自适应维纳滤波,滤波后的图像记为im_ winner 方法如下:

1.对im_ med 图像的每个像素点分别进行3x3, 5x5、7x7滤波

2.分别计算图像在不同模版下的均值μ和方差σ

3.分别计算图像在不同模版下的方差的均值avg σ和在该模版下图像方差最大值。

4.取最小均值时所用的窗口作为该点最佳滤波窗口进行如下处理

)),(_(*)1(),(_1

1

max var var u j i m ed im q u j i winner im q avg avg -?+-+=++=?+=σσσσσ

三、综合智能识别

对大多数去噪算法而言,在滤除噪声的同时必然产生图像的模糊问题,可以假设某个图像未被噪声污染,但是通过去噪算法后得到的图像反而远不及原始图像。为此,在图像处理时候先进行一次判决,判断该点是否收到噪声污染,然后决定是否对该像素点进行处理,从而能很好的保留图像的原始信息,从而弱化了图像的模糊问题,达到较好的处理效果。判决标准如下:

1)若某个像素点im med(i,j)>im_ winner(i,j),则认为该点受到高斯噪声污染,im_new (i,j)=im_winner(i,j ) ;

2)若某个像素点im med(i,j)

燕山大学课程设计

(i,j)=im_med(i,j );

3)若im ( i,j)是im_canny中的点,则im ( i,j )=边线的中值;

4)若某个像素点

im(i,j)与im_med(i,j)和im_winner(i,j)的差都在某个阂值T范围内,则认为该点没有被噪声污染,则im_new(i,j)=im(i,j

3.2算法流程图

共21页第1页

燕山大学课程设计

共21页第1页

燕 山 大 学 课 程 设 计

共 21页 第 1页 四、处理结果

原始图

像混有高斯和椒盐噪

声中值处

高斯噪

声维纳滤波图

片最终处理

五、程序

I=imread('C:\Users\Administrator\Desktop\1.jpg');

I=rgb2gray(I);

subplot(2,3,1);imshow(I);title('原始图像');

im_noise=imnoise(I,'gaussian',0.004);%将均值为0,方差为0.004的高斯噪声添加到图像I 中

im_noise=imnoise(im_noise,'salt & pepper',0.05);%0.05噪声值的图像区域的百分比

subplot(2,3,2);imshow(im_noise);title('混有高斯和椒盐噪声');

%自适应中值滤波

im_med=adpmedian(im_noise,7);%7是允许的最大自适应滤波器窗口的大小 subplot(2,3,3);imshow(im_med);title('中值处理');

%维纳滤波

[m,n]=size(I);

im_noise=imnoise(I,'gaussian',0.02);%将均值为0,方差为0.02的高斯噪声添加到图像I 中

燕山大学课程设计

subplot(2,3,4);imshow(im_noise);title('高斯噪声');

for N=1:4

for i=N+1:m-N

for j =N+1:n-N

im_avg(N,i,j)=mean2(im_noise(i-N:i+N,j-N:j+N));%计算矩阵元素的平均数

im_var(N,i,j)=std2(im_noise(i-N:i+N,j-N:j+N))^2;%计算矩阵元素的方差

end

end

end

im_mean_varl=mean2(im_var(1,2:m-1,2:n-1));%计算矩阵元素的平均数

im_mean_var2=mean2(im_var(2,3:m-2,3:n-2));

im_mean_var3=mean2(im_var(3,4:m-3,4:n-3));

im_mean_var4=mean2(im_var(4,5:m-4,5:n-4));

im_new=im_noise;%修正后的阿尔法均值滤波器

im_mean_var=zeros(m,n);

im_N_var=zeros(m,n);

im_max_var=zeros(m,n);

for i=5:m-5

for j=5:n-5

im_min_avg(i,j)=min([im_avg(1,i,j),im_avg(2,i,j),im_avg(3,i,j ),im _avg(4,i,j )] );

for N=1:4

if im_avg(N,i,j)==im_min_avg(i,j);

im_mean_var(i,j)=mean2(im_var(N,i-N:i+N,j-N:j+N));

im_N_var(i,j)=im_var(N,i,j);

im_max_var(i,j)=max(im_var(N,:));

im_new(i,j)=im_avg(N,i,j);

end

end

end

end

q=im_mean_var./(im_N_var+1);

dat=im_N_var./(im_mean_var+im_max_var+1);

im_winner=uint8(double(im_new)+(1-q+dat).*(double(im_noise-im_new) ));

subplot(2,3,5);imshow(im_winner);title('维纳滤波图片');

共21页第1页

本文来源:https://www.bwwdw.com/article/t9te.html

Top