孙广文 论文2稿.docx
- 文档编号:23143789
- 上传时间:2023-05-08
- 格式:DOCX
- 页数:20
- 大小:240.95KB
孙广文 论文2稿.docx
《孙广文 论文2稿.docx》由会员分享,可在线阅读,更多相关《孙广文 论文2稿.docx(20页珍藏版)》请在冰豆网上搜索。
孙广文论文2稿
基于MATLAB的图像去噪处理研究
作者:
孙广文
指导教师:
秦怡
摘要:
本文概述了小波阈值去噪的基本原理。
对常用的几种阈值去噪方法进行了分析比较和仿真实现。
最后结合理论分析和实验结果,讨论了一个完整去噪算法中影响去噪性能的各种因素。
为实际的图像处理中,小波阈值去噪法的选择和改进提供了数据参考和依据。
关键词:
图像去噪;阈值;MATLAB
0引言
图像在生成和传输过程中常常因受到各种噪声的干扰和影响而使图像降质,这对后续图像的处理(如分割、压缩和图像理解等)将产生不利影响。
噪声种类很多,如:
电噪声、机械噪声、信道噪声和其他噪声。
在图像处理中,图像去噪是一个永恒的主题,为了抑制噪声,改善图像质量,便于更高层次的处理,必须对图像进行去噪预处理。
计算机图像处理主要采取两大类方法:
一是在空间域中的处理,即在图像空间中对图像进行各种处理;另一类是把空间域中的图像经过正交变换到频域,在频域里进行各种处理然后反变换到空间域,形成处理后的图像。
人们也根据实际图像的特点、噪声的统计特征和频谱分布的规律,发展了各式各样的去噪方法。
其中最为直观的方法,是根据噪声能量一般集中于高频而图像频谱则分布于一个有限区间的这一特点,采用低通滤波方式来进行去噪,或对图像进行平滑处理等,这属于第一类图像处理方法。
还有就是在频域进行处理,如:
傅立叶变换、小波基变换。
1图像与噪声
人类获取外界信息有视觉、听觉、触觉、味觉等多种方法,但绝大部分(约80%)是来自视觉所接收的图像信息,即所谓“百闻不如一见”。
而图像处理就是对图像息进行加工处理,以满足人的视觉心理和实际应用的要求。
因此,图像处理技术的广泛研究和应用是必然的趋势。
在分析和使用图像之前,需要对图像信号进行一系列处理。
比如调整图像存储的格式,对图像进行去噪等等。
图像处理是针对性很强的技术,根据不同用途、不同要求采用不同的处理方法。
采用的方法是综合各学科较先进的成果而成的,如数学、物理学、心理学、生理学、医学、计算机科学、通信理论、信号分析、控制论和系统工程等,各学科相互补充、相互渗透才使数字图像处理技术飞速发展。
根据本文研究的内容,我们只探讨图像去噪这一图像预处理技术。
一般来说,在图像采集、编码、传输、恢复的几个基本步骤中,影响图像质量的因素很多。
例如,现实图像中无用的信息对我们而言就是噪声,设备、环境、获取方法等因素也会引入许多噪声干扰。
如电磁干扰、相片颗粒噪声、采集图像信号的传感器噪声、信道噪声、甚至滤波器产生的噪声等等。
所以,为了提高图像的质量以及后续更高层次的处理,对图像进行去噪处理是不可缺少的重要环节,而寻求一种行之有效的去噪方法也是人们一直在进行的工作。
2图像去噪方法
2.1传统去噪方法
对随时间变化的信号,通常采用两种最基本的描述形式,即时域和频域。
时域描述信号强度随时间的变化,频域描述在一定时间范围内信号的频率分布。
对应的图像的去噪处理[1]方法基本上可分为空间域法和变换域法两大类。
前者即是在原图像上直接进行数据运算,对像素的灰度值进行处理。
变换域法是在图像的变换域上进行处理,对变换后的系数进行相应的处理,然后进行反变换达到图像去噪的目的。
2.1.1空域滤波
1均值滤波
邻域平均法是一种局部空间域处理的算法。
设一幅图像
为
的阵列,处理后的图像为
,它的每个像素的灰度级由包含
领域的几个像素的灰度级的平均值所决定,即用下式得到处理后的图像:
(2-l)
式中
;s是以
点为中心的邻域的集合,M是s内坐标总数。
图像邻域平均法的处理效果与所用的邻域半径有关。
半径愈大,则图像模糊程度也愈大。
另外,图像邻域平均法算法简单,计算速度快,但它的主要缺点是在降低噪声的同时使图像产生模糊,特别在边缘和细节处,邻域越大,模越厉害。
2中值滤波
中值滤波是一种非线性滤波[2-4],由于它在实际运算过程中并不需要图像的统计特性,所以比较方便。
中值滤波首先是被应用在一维信号处理技术中,后来被二维图像信号处理技术所应用。
在一定的条件下,可以克服线性滤波器所带来的图像细节模糊,而且对滤除脉冲干扰及图像扫描噪声最为有效。
但是对一些细节多,特别是点、线、尖顶细节多的图像不宜采用中值滤波的方法。
中值滤波的基本原理是把数字图像或数字序列中一点的值用该点的一个邻域中各点值的中值代替。
2.1.2频域低通滤波法
在分析图像信号的频率特性时,一幅图像的边缘,跳跃部分以及颗粒声代表图像信号的高频分量,而大面积的背景区则代表图像信号的低频分量。
用滤波的方法滤除其高频部分就能去掉噪声使图像得到平滑由卷积定理可知:
(2-2)式中,
是含噪声图像的傅里叶变换,
是平滑后图像的傅里叶变换,
是低通滤波器传递函数。
利用
使
的高频分量得到衰减,得到
后再经过反变换就得到所希望的图像
了。
低通滤波平滑图像的系统框图2-1所示。
图2-1频域空间滤波框图
综上所述,图像的经典去噪方法主要有两大类,一种是基于空间域的处理方法,一种是基于频域的处理方法。
基于空域的平均滤波法和非线性的中值滤波都是通过对图像像素的灰度值进行运算,达到平滑图像的效果。
平均滤波是以点邻域像素灰度平均值来代替该点的灰度值,而中值滤波则以点邻域像素灰度值中值来代替该点的灰度值,因此,对于随机噪音的抑制能力,中值滤波器的性能要比均值滤波器的差些。
但对于脉冲干扰来讲,特别是脉冲宽度小于滤波器的窗口宽度一半,中值滤波还是很有效的。
不过,他们在平滑图像的同时亦会使图像轮廓变得模糊,它们的噪音平滑效果与窗口的宽度有关,窗口宽度越宽,噪音平滑效果越好,但图像就越模糊,这个矛盾难于解决,也是均值滤波和中值滤波的缺点。
基于频域的处理方法主要是用滤波器,把有用的信号和干扰信号分开,它在有用信号和干扰信号的频谱没有重叠的前提下,才能把有用信号和干扰信号完全区别开来。
但在实际的情况中,有用信号和干扰信号的频谱往往是重叠的,因为无论是高斯白噪声还是脉冲干扰,它们的频谱几乎都是分布在整个频域。
而图像的像素灰度一般是光滑的,只有在图像轮廓细节处像素才会突变,所以可以用具有低通的滤波对图像进行平滑,不过在平滑的同时亦会使图像变得模糊。
这是用低通滤波器对图像进行平滑难于解决的矛盾。
如果要噪声平滑效果好,必然会引起图像模糊,要图像轮廓清晰,噪声平滑效果必然不好。
在使用时,必须权衡得失,在两者中选择其一。
由上述经典去噪方法要么完全在频率域,要么完全在空间域展开。
这两类消噪方法造成了顾此失彼的局面,虽然抑制了噪声,却损失了图像边缘细节信息,造成图像模糊[5]。
因此,提出了基于小波变换的去噪方法研究。
小波分析由于在时域频域同时具有良好的局部化性质和多分辨率分析的特点,能有效地把信号和噪声区别开来,因此不仅能满足各种去噪要求如低通、高通、陷波、随机噪音的去除等,而且与传统的去噪方法相比较,有着无可比拟的优点,成为信号分析的一个强有力的工具,被誉为分析信号的数学显微镜。
2.2小波去噪
近年来,小波理论得了非常迅速的发展,由于其具备良好的时频特性和多分辨率特性,小波理论成功地在许多领域得到了广泛的应用。
现在小波分析已经渗透到自然科学、应用科学、社会科学等领域。
在图像去噪领域中,应用小波理论进行图像去噪受到许多专家学者的重视,并取得了非常好的效果。
2.2.1小波去噪的研究现状
在数学上,小波去噪问题的本质是一个函数逼近问题,即如何在有小波母函数伸缩和平移所展成的函数空间中,根据提出的衡量准则,寻找对原图像的最佳逼近,以完成原图像和噪声的区分。
在早期,人们通过对边缘进行某些处理,以缓解低通滤波产生的边缘模糊。
在这一点上,虽然这种方法同小波去噪很相似,但是小波变换之所以能够很好地保留边缘,是因为小波变换的多分辨率特性,小波变化后,由于对应图像特征(边缘等)处的系数幅值变大,而且在相邻尺度层间具有很强的相关性,所以便于特征提取和保护。
相对早期的方法而言,小波噪声对边缘等特征的提取和保护是有很强的数学理论背景的,因而便于系统的理论分析。
在许多国内外研究学者的努力下,小波去噪技术在信号处理领域中不断得到发展和完善。
早期的小波去噪工作类似有损压缩技术,即先对含噪信号进行正交小波变换,再选定一个固定的阈值与小波系数比较进行取舍,低于此阈值的小波系数设为零,然后进行小波重构恢复原信号,上述算法中的阈值选取完全取决于经验和实际应用[6-10]。
1992年,由S.Mallat和Zhong提出了小波模极大值方法[11],具体来说,就是利用有用信号与噪声小波变换的模极大值在多尺度分析中呈现不同的奇异性,用计算机自动实现由粗到精的跟踪并消除各尺度下属于噪声的模极大值,然后利用属于有用信号的模极大值重构小波,模极大值方法可使信噪比提高4-7dB。
由于受到各种因素的干扰,这种跟踪是很困难的,在实际工作中需要一些经验性的判据。
奇异点重建信号分为过零点重建小波变换和模极大值重建小波变换,其缺点:
用过零点或极大值来重建信号只是一种逼近,结果不太精确。
1995年,Stanford大学的学者D.L.Donoho和M.Johnstone提出了通过对小波系数进行非线性阈值处理来恢复噪声中的信号[6-9],称为“小波收缩”。
在此基础上,他们提出了软阈值和硬阈值的准则,并从统计学的角度出发,不断完善这一理论。
他们算法的去噪效果超过了一般的线性去噪技术,算法中的阈值选取取决于噪声能量的大小,换句话说,是取决于带噪信号的信噪比的。
和固定阈值算法一样,分解后的每一层小波系数和这一阈值比较后进行非线性处理,要么保留或收缩,要么归零。
有文献表明[12],与Mallat的模极大值法相比较,阈值法去噪后有噪信号的信噪比提高10dB以上,实验结果表明,阈值法去噪效果优于模极大值法,而且实现起来更为简单。
这之后的小波去噪方法主要是从阈值函数的选择或最优小波基的选择出发,提高去噪的效果。
比较有影响的方法有:
EeroP.Semoncelli和EH.Adelson提出的基于最大后验概率的贝叶斯估计准则确定小波阈值的方法[13]。
ElwoodT.Olsen等在处理断层摄影图像时,提出了三种基于小波相位去噪方法:
边缘跟踪法、局部相位方差阈值和尺度相位变动阈值法[14];学者Kozaitis结合小波变换和高阶统计量的特点,提出对一维信号进行去噪和信号重建的基于高阶统计量的小波阈值去噪方法[15];G.P.Nason等利用原图像和小波域图像的相关性用GCV(generalcrossvali-dation)法对图像进行去噪[12].Huang.X和Woolsey等提出结合维纳滤波器和小波阈值的方法对信号进行去噪[16],VasilyStrela等人将一类新的特性良好多小波(约束对)应用于图像去噪的方法[12],这些方法均取得了良好的效果,对发展小波去噪的理论和应用起着重大的作用。
2.2.2小波去噪方法
小波去噪的方法有多种,如利用小波分解与重构的方法滤波降噪、利用小波变换模极大值的方法去噪、利用信号小波变换后空域相关性进行信噪分离、非线性小波阈值方法去噪、平移不变量小波去噪法,以及多小波去噪等等。
归结起来主要有三类:
模极大值检测法、阈值去噪法和屏蔽(相关)去噪法。
其中最常用的就是阈值法去噪,本文主要研究阈值去噪。
3小波阈值去噪及MATLAB仿真
3.1小波阈值去噪概述
3.1.1阈值去噪法简述
1992年,斯坦福大学的DonohoDL和Johnstone教授提出一种具有良好的统计优化特性的去噪方法,称作“WaveletShrinkage”(即阈值收缩法)。
该方法的主要思想是:
基于图像和噪声在经小波变换后具有不同的统计特性:
图像本身的能量对应着幅值较大的小波系数,主要集中在高频(
);噪声能量则对应着幅值较小的小波系数,并分散在小波变换后的所有系数中。
根据该特征,设置一个阈值门限,认为大于该阈值的小波系数的主要成份为有用的信号,给予收缩后保留;小于该阈值的小波系数,主要成份为噪声,予以剔除,这样就可以达到去噪的目的。
去噪时,通常认为低通系数含有大量的图像能量,一般不作处理,只对剩余三个高通部分进行处理。
因此,一次阈值去噪并不能完全去除噪声,还需要对未作处理的低频部分(
)再次进行小波分解和阈值去噪,直到实际图像与估计图像的偏差达到最小值。
但是,随着分解和去噪次数的增加,小波系数中的噪声能量越来越少,并且趋于分散,去噪的效果将逐渐降低。
一般来说,进行3-4层小波分解和去噪就可以达到满意的去噪效果。
3.1.2小波阈值去噪方法
小波阈值去噪的基本思路是:
(1)先对含噪信号
做小波变换,得到一组小波系数
;
(2)通过对
进行阈值处理,得到估计系数
,使得
与
两者的差值尽可能小;
(3)利用
进行小波重构,得到估计信号
即为去噪后的信号。
Donoho提出了一种非常简洁的方法对小波系数
进行估计。
对
连续做几次小波分解后,有空间分布不均匀信号
各尺度上小波系数
在某些特定位置有较大的值,这些点对应于原始信号
的奇变位置和重要信息,而其他大部分位置的
较小;对于白噪声
,它对应的小波系数
在每个尺度上的分布都是均匀的,并随尺度的增加,
系数的幅值减小。
因此,通常的去噪办法是寻找一个合适的数
作为阈值(门限),把低于λ的小波函数
(主要由信号
引起),设为零,而对于高于
的小波函数
(主要由信号
引起),则予以保留或进行收缩,从而得到估计小波系数
,它可理解为基本由信号
引起的,然后对
进行重构,就可以重构原始信号。
估计小波系数的方法如下,取:
(3-1)
定义:
(3-2)
称之为硬阈值估计方法。
一般软阈值估计定义为
(3-3)
3.2基于MATLAB的小波去噪函数简介
常用的图像降噪方式是小波阈值降噪方法。
这是一种实现简单而效果较好的降噪方法,阈值降噪方法的思想很简单,就是对小波分解后的各层系数模大于和小于某阈值的系数分别进行处理,然后利用处理后的小波系数重构出降噪后的图像。
在阈值降噪中,阈值函数体现了对小波分解系数的不同处理策略和不同的估计方法。
常用的阈值函数有硬阈值函数和软阈值函数。
硬阈值函数可以很好地保留图像边缘等局部特征,但图像会出现伪吉布斯效应等视觉失真等现象:
而软阈值处理相对较光滑,但可能会造成边缘模糊等失真现象,为此人们提出了半软阈值函数。
小波阈值降噪方法处理阈值的选取,另一个关键因素是阈值的具体估计。
如果阈值太小,降噪后的图像仍然存在噪声:
相反如果阈值太大,重要图像特征又被滤掉,引起偏差。
从直观上讲,对于给定的小波系数,噪声越大,阈值就越大。
MATLAB中实现图像的降噪,主要是阈值获取和图像降噪实现两个方面。
1阈值获取
MATLAB中实现阈值获取的函数有ddencmp、select、wbmpen和wdcbm2。
这里主要介绍函数ddencmp。
函数ddencmp的功能是获取降噪或压缩的默认值。
该函数是降噪和压缩的导向函数,它给出一维或二维信号使用小波或小波包进行降噪和压缩一般过程的所有默认值。
其语法格式为:
[THR,SORH,KEEPAPP,CRIT]=ddencmp(IN1,IN2,X)
[THR,SORH,KEEPAPP]=ddencmp(IN1,‘wv’,X)
[THR,SORH,KEEPAPP,CRIT]=ddencmp(IN1,‘wp’,X)
2阈值降噪
MATLAB中实现阈值降噪的函数有wden、wdencmp、wpdencmp、wthresh、wpthcoef和wthcoef2。
这里主要介绍函数wdencmp。
其语法格式为:
[XC,CXC,LXC,PERF0,PERFL2]=wdencmp('gbl',X,'wname',N,THR,SORH,KEEPAPP)
[XC,CXC,LXC,PERF0,PERFL2]=wdencmp('lvd',X,'wname',N,THR,SORH)
[XC,CXC,LXC,PERF0,PERFL2]=wdencmp('lvd',C,L,'wname',N,THR,SORH)
函数wdencmp的功能是使用小波进行降噪。
该函数是二维小波降噪的导向函数。
它使用小波对信号或图像执行降噪过程。
wname是所用的小波函数。
gbl(global)表示每层都采用同一个阈值进行处理。
lvd表示每层用不同的阈值进行处理。
N表示小波分解的层数。
THR为阈值向量,长度为N。
SORH表示选择软阈值或硬阈值(分别取值为‘s’和‘h’)。
参数KEEPAPP取值为1时,则低频系数不进行阈值量化,反之,则低频系数要进行阈值量化。
XC是降噪后的信号,[CXC,LXC]是XC的小波分解结构,PHRF0和PERFL2是恢复和压缩L2的范数百分比。
如果[C,L]是x的小波分解结构,则PERFL2=100
(CXC向量的范数/C向量的范数)2;如果X是一维信号,小波wname是一个正交小波,则PERFL2=
。
3.3小波去噪对比试验
接下来按照上述小波阈值变换在信号去噪中的算法及小波阈值函数进行计算机仿真,仿真程序采用MATLAB语言编写。
该节首先产生一个实验信号,然后对小波去噪时各种参数设置进行了详细的对比研究,最后用MATLAB语言对小波去噪进行仿真。
3.3.1实验信号的产生
该节所用到的实验信号是由wnoise()函数产生的长度为211点、含标准高斯白噪声、信噪比为3的‘heavysine’信号。
MATLAB工具箱提供了函数wnoise以实现为检验小波去噪性能产生测试噪声。
其语法格式为:
X=wnoise(FUN,N)
[X,XN]=wnoise(FUN,N,SQRT_SNR)
[X,XN]=wnoise(FUN,N,SQRT_SNR,INIT)
(1)X=wnoise(FUN,N)产生幅值在[0,1]之间长度为2N的信号,信号的类型由FUN指定:
FUN=1BLOCKS产生不规则的方波信号
FUN=2BUMPS产生低频噪声
FUN=3HEAVYSIN产生随机间断的正弦信号
FUN=4DROPLER产生chirp信号
FUN=5QUADCHIRP产生4次调频信号
FUN=6MISHMASH产生混杂信号
(2)[X,XN]=wnoise(FUN,N,SQRT_SNR)产生含有白噪声的信号XN,SQRT_SNR是信号的噪声比。
(3)[X,XN]=wnoise(FUN,N,SQRT_SNR,INIT)使用初始值INIT产生含噪信号。
下面的MATLAB语句产生信号:
%产生一个Heavysine初始信号x和长度为211点、含标准高斯白噪声的信号xref
snr=3;init=2055615866;
[xref,x]=wnoise(3,11,snr,init);
subplot(221),plot(xref),axis([12048-1010]);
title('Originalsignal');
subplot(223),plot(x),axis([12048-1010]);
title(['Noisysignal-Signaltonoiseratio=',...
num2str(fix(snr))]);
图3-1所示就是以上语句为产生的测试信号图形。
图3-1原始信号和含噪信号
3.3.2各参数下的去噪效果对比
MATLAB工具箱提供了函数wden以实现自动利用小波进行一维信号的去噪。
其语法格式为:
[XD,CXD,LXD]=wden(X,TPTR,SORH,SCAL,N,'wname')
[XD,CXD,LXD]=wden(C,L,TPTR,SORH,SCAL,N,'wname')
(1)[XD,CXD,LXD]=wden(X,TPTR,SORH,SCAL,N,'wname')对输入信号X进行去噪处理,返回经过处理的信号XD,以及XD的小波分解结构[CXD,LXD]。
(2)[XD,CXD,LXD]=wden(C,L,TPTR,SORH,SCAL,N,'wname')根据信号小波分解结构[C,L]对信号进行去噪处理。
各参数的选择对比如下:
1.四种阈值选取方式的对比(TPTR的设置)
根据基本的噪声模型,程序中使用四种规则来选取阈值,每一种规则的选取有参数TPTR决定。
TPTR的选择有以下四种阈值规则:
(1)TPTR=‘rigrsure’是一种基于史坦的无偏似然估计(二次方程)原理的自适应阈值选择。
对一个给定的阈值t,得到他的似然估计,再将非似然t最小化,就得到了所选的阈值,它是一种软件阈值估计器。
(2)TPTR=‘sqtwolog’采用的是固定的阈值形式,产生的阈值大小是sqrt(2*log(length(x)))。
(3)TPTR=‘heursure’事前两种阈值的综合,是最优预测变量阈值选择。
如果噪声比很小(估计有很大的噪声),在这种情况下,采用此种启发式的阈值。
(4)TPTR=‘minimaxi’采用的是一种极大极小原理,它产生一个最小均方误差值,而不是无误差。
在统计学上,这种极值原理在于设计估计器。
因为被消噪的信号可以看作与未知回归函数的估计式相似,这种极值估计器可以在一个给定的函数集中实现最大均方误差最小化。
在MATLAB中运行以下语句:
%不同阈值选取方式下滤波效果的比较
snr=3;init=2055615866;
[xref,x]=wnoise(3,11,snr,init);
lev=5;
xd=wden(x,'rigrsure','s','sln',lev,'sym8');
subplot(221),plot(xd),axis([12048-1010]);
title('rigrsure');
xd=wden(x,'heursure','s','one',lev,'sym8');
subplot(222),plot(xd),axis([12048-1010]);
title('heursure');
xd=wden(x,'sqtwolog','s','sln',lev,'sym8');
subplot(223),plot(xd),axis([12048-1010]);
title('sqtwolog');
xd=wden(x,'minimaxi','s','sln',lev,'sym8');
subplot(224),plot(xd),axis([12048-1010]);
title('minimaxi');
[c,l]=wavedec(x,lev,'sym8');
xd=wden(c,l,'minimaxi','s','sln',lev,'sym8');
得到4个去噪效果图如图3-2所示。
图3-2MATLAB中的4种阈值选取方式对比
可以看出,固定阈值形式(sqtwolog)和启发式阈值(heuesure)的去噪更彻底,而由于rigrsure和minimaxi阈值选取规则较为保守(阈值较小),导致只有部分系数置零噪声去除不彻底。
2软门限阈值和硬门限阈值处理比较(SORH的设置)
对于阈值函数的确定,Donoho提出了两种:
硬阈值和软阈值。
在硬阈值处理中,由于收缩函数的不连续性,会在恢复的信号中产生一些人为的“噪声点”。
软阈值的连续性较好。
在MATLAB语句中,SORH=‘s’,则为软阈值处理,向量X为待处理的信号。
当SORH=‘h’,则为硬阈值处理。
一般来说,用硬阈值处理后的信号比用软阈值处理后的信号更为粗糙。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 孙广文 论文2稿 论文