文档库

最新最全的文档下载
当前位置:文档库 > 小波降噪及其在MATLAB中的仿真与比较

小波降噪及其在MATLAB中的仿真与比较

中图分类号:TN911 文献标识码:A 文章编号:1009-2552(2008)03-0004-02

小波降噪及其在MATLAB中的仿真与比较

张翠芳

(南京邮电大学通信与信息工程学院,南京210003)

摘 要:随着小波理论的日益完善,小波分析在信号降噪领域已经得到越来越广泛的应用。首先讨论了小波分析的基本特点;其次通过理论分析和MATL AB仿真实验,详细讨论了四种降噪方法:阈值降噪法、平移不变量小波阈值降噪法、模极大值降噪法、基于各尺度下小波系数相关性降噪法。最后,对这几种算法的降噪效果进行了比较。

关键词:小波分析;信号降噪;阈值;模极大值;MATL AB仿真

Simulation and comparison of wavelet de-noising in MATLAB

ZHANG Cui-fang

(Schoo l of Communication and Information Engineering,Nanjing University of Posts

and Telecomm unications,Nanjing210003,C hina)

Abstract:Wavelet theory has been widely used in signal de-noising with its theoretical completeness.At first,the thesis introduces wavelet property.Secondly,the thesis discusses four methods of signal de-noising: wavelet threshold de-noising,translation-invariant,modulus maximum de-noising and SSNF(spatially selective noise filtration)by theory analysis and MATLAB simulation in detail.Finally,the effects of the methods in de-noising are c ompared.

Key words:wavelet analysis;signal de-noising;threshold;modulus maximum;MATL AB simulation

小波变换作为一种新的多分辨分析方法,可同时进行时域和频域分析,具有时———频局部化和多分辨特性。随着小波理论的日益完善,它在信号降噪领域已经得到越来越广泛的应用。主要分析四种小波降噪方法,并通过MATLAB仿真实验说明各算法的优劣特性以及适用范围。

1 小波阈值降噪法

含噪信号经小波分解后,信号的小波系数比较大,噪声的小波系数比较小。选择合适的阈值,保留信号的小波系数,而让大部分噪声的小波系数置为零。具体步骤为:①计算含噪信号的正交小波变换;

②对分解得到的小波系数进行非线性阈值处理,阈值处理有软阈值和硬阈值两种方法;③进行逆小波变换。

仿真过程为:采用极小极大(Minimaxi)阈值,应用wden函数实现信号的硬、软阈值降噪(含噪信号用sym8小波进行八层分解),如图1所示。图中软阈值处理相对平滑,但重构信号与原始信号的逼近程度较差;硬阈值法很好地保留信号边缘等局部特征,但重构信号不具有和原始信号一样的光滑性。

2 平移不变量小波阈值降噪法

在信号急剧变化部分,运用阈值法降噪会产生伪吉布斯现象。为了克服这一现象,可以采用“平移———降噪———平均”的思想,即:对原始信号进行一定量的循环平移,从而获得一个新的平移信号;然后对这个新信号作阈值降噪,得到降噪后的新信号;最后对此信号作相反的循环平移,从而得到最终的降噪信号;改变平移量,采用n次循环平移,并将每次平移降噪后的结果再进行平均。

仿真过程为:①产生含噪信号(将heavy sine信

收稿日期:2007-06-13

基金项目:江苏省自然科学基金项目资助(BK2006235);南京邮电大学项目资助(NY207050)

作者简介:张翠芳(1974-),女,南京邮电大学通信与信息工程学院讲师,主要从事通信信号处理等方面的研究与教学

工作。

4

DOI:10.13274/http://www.wendangku.net/doc/3b1ffad8ff00bed5b8f31d83.html ki.hdzj.2008.03.016

小波降噪及其在MATLAB中的仿真与比较

号迭加上随机噪声);②将含噪信号平移d 后,采用极小极大阈值,应用wden 函数进行软阈值降噪(分解尺度取8);③降噪后的信号再进行相反的循环平移d ,得到真正的降噪信号;④d 的值分别取128、256、384、512、640、768、896、1024,重复②、③步骤;⑤将8次平移后得到的降噪信号相加求平均,从而得到最终的降噪信号,如图1所示

小波降噪及其在MATLAB中的仿真与比较

图1 heavy sine 含噪信号降噪效果

从图1中可以看出,平移不变量小波降噪法要

优于阈值法。在仿真过程中还发现不同的小波函数会影响降噪结果。例如对heavy sine 含噪信号若用haar 小波,降噪后的信号就失去连续性。所以要获得最佳的降噪效果,必须采用合适的小波函数、分解层数。

3 小波变换模极大值降噪法

根据信号与噪声在各尺度上模极大值不同的传播特性,可将信号与噪声分离,实现小波降噪。具体步骤为:①对含噪信号进行离散二进小波变换,一般选取尺度数为4或5。②求出每个尺度上小波变换系数对应的模极大点。③在高频部分,仅保留与突变点位置相对应的模极大点,其它小波变换值置为零;在低频部分,保留突变点及其附近的小波变换模极大点,其它小波变换值置为零。④根据保留下来的模极大值及其极值的位置,重构小波系数,然后利用重构的小波系数进行二进小波逆变换,得到降噪信号。

仿真过程为:①设定含噪信号的长度,分解的级数,抽样率,迭代次数和小波名称;运用wfilters 函数获得滤波器参数;②产生含噪信号;③求小波变换的模极大值及其位置;④对不同尺度层的模极大值使用不同阈值处理;⑤运用交替投影法重构信号。如图2所示。

在仿真中发现该方法降噪效果与采用的小波函数有关。例如采用bior3.5小波就不如bior3.3

的效

图2 小波模极大降噪法的降噪效果

果好。而且降噪后的信号在奇异点有毛刺和轻微的振荡。因此要获得较好的降噪效果必须采用合适的小波函数。在信号中含有较多奇异点、且要求对奇异点精确定位时,可以选择模极大值降噪法。但在采用交替投影法重构信号时由于计算复杂,计算速度很慢,所以在实际应用时应该综合考虑计算量和降噪效果。

4 基于小波变换尺度间相关性的降噪法

根据信号与噪声的小波变换在不同尺度层上的特点,可以将相邻两个较细尺度层上的小波系数直接相乘来增强信号,抑制噪声。于是人们提出了基于小波变换尺度间相关性的降噪法,简称SSFN 。步骤为:①求含噪信号的小波变换;②估计噪声及各尺度的标准差;③提取信号的边缘信息;④得到各尺度下被抽取的小波系数以及二进小波变换的最大尺度的低频分量,利用逆小波变换获得降噪信号。

仿真过程为:①产生一个1×256的含噪信号;②对含噪信号用bior5.5小波进行8层平稳小波分解,然后提取各层高频系数,并将第一层、第二层的高频系数另存于ww 数组中;③运用wnoisest 函数提取第一层、第二层上的噪声标准偏差;④将第一层屏蔽滤波器mask1置为0;⑤计算第一层小波系数能量、相关系数和规范化相关系数;⑥寻找边缘点,并将边缘点信息存入屏蔽滤波器mask1相应位置中。⑦对原始数据进行屏蔽滤波,得到新的第一层高频系数;⑧按照步骤④至⑦得到新的第二层高频系数;⑨利用原始数据和新的第一层、第二层高频系数重构信号,如图3所示。

在仿真过程中发现,提取边缘信息时不一定要提取每一层的边缘信息。因为噪声的小波变换主要集中在较细尺度层上,只要提取较细尺度层上的边缘信息就可以了。另外,提取边缘信息的过程还与噪声的大小、噪声阈值等因素有关。如果噪声大小、噪声阈值等选取不恰当,程序就会进入

(下转第16页)

5—

发人员实际更改原始文档中的数据,而且很难同时访问同一个文档中的多处不同的数据。由此可见,两种解析器并没有哪一个具有本质上的优势,它们分别服务于不同的需求,所以在解析XML 文档时,选择一个适合的解析器是比较重要的。

该JavaBean (命名为ParserXML )实现了SAX 解析器和DOM 解析器,并且实现了JAXP 的转换功能。创建一个Parser XML 对象,该对象可以根据用户的不同需要选择不同的解析器。对大型文件进行处理[4]

,只需要文件的部分内容,或者只需要从文件中得到特定信息,想建立自己的文档结构,这时就要选择SAX 解析器了。

需要对文件进行修改,需要随机对文件进行存取或者改变文档的结构,要选择DOM 解析器。创建一个Document 对象,以XML 文档做为参数,有了此对象就可以对XML 文档进行操作了。用户可以使用newXML ()方法动态创建新xml 文档;最后,用户把修改过的Document 对象写入xml 文档中,通过上面提到过的transformer ()方法,它将xml 文档的内存树重新写到XML 文档中,也可以把一个XML 文档通过样式表转换成另一个XML 文档。

综上所述,该JavaBean 实现了对XML 文档的查询,添加,修改,删除或文档构造的改变,并且将一个

X ML 文档转换成为另一个XML 文档,如图3所示。

在陶瓷企业ASP 平台设计与开发中,该技术为陶瓷企业数据管理和挖掘提供了充分而又可靠的后台支持

小波降噪及其在MATLAB中的仿真与比较

图3 JavaBean 的功能流程

5 结束语

随着网络技术的发展和XML 的应用越来越广泛,DOM 技术和SAX 技术凭借它们各自的优点被广泛应用到各个领域,同时他们也存在着缺点。但是只要在适当的时候选择适当的解析器,发挥其优点,再借助JAXP 使用文档解析结果实现转换功能,就可以方便且更为灵活地运用XML 文档,为网络数据交流提供可靠方便的渠道。参考文献:

[1] 刘基诚.Java 与XML [M ].中国电力出版社,2004,2:233-237.[2] 张亚鹏.X ML 的四种解析器性能比较[J ].福州大学学报:自然

科学版,2006,2(34):20-21.[3] Benoit Marchal .X M L 示例程序导学[M ].北京:清华大学出版社,

2002,9:216-218.

[4] 赵俊岚.XML 编程中的DOM 与SAX 技术[J ].计算机工程,

2004,11(30):71-72.

责任编辑:么丽苹

(上接第5页

小波降噪及其在MATLAB中的仿真与比较

)

图3 采用SSFN 法的降噪效果

死循环。从重构信号中可以看到,采用小波变换尺

度间相关性降噪法,可以很好地保留信号边缘,还可以有效地去除噪声。

5 小波降噪方法的比较

阈值降噪法可以将原始信号的特征尖峰点得到很好的保留,计算速度快。但在有些情况下,降噪后的信号会在某些不连续点附近和快速变化的点处产生振荡现象。另外,阈值的选择对降噪效果也有很大影响,目前,阈值的选择方法有启发式SURE 阈值等,实际应用时需要根据具体的情况来选择合适的阈值。平移不变量小波降噪方法不仅能有效地抑制伪吉布斯现象,而且能减小原始信号和估计信号之间的均方根误差,是一种比阈值法更好的降噪方法。但它的计算速度没有阈值降噪法快。

模极大值降噪法降噪效果非常稳定,主要适用于信号中含有较多奇异点的情况,但用模极大值进行重构信号时,计算速度较慢。另外利用该方法降噪,需要选择合适的尺度,因为小尺度下小波系数受噪声影响非常大,产生许多伪极值点;大尺度会使信号丢失某些重要的局部奇异性。

基于小波系数尺度之间的相关性降噪法比较适合高信噪比的信号,它在分析信号的边缘方面具有优势,并且可以扩展到边缘检测、图像增强及其它应用。但计算量较大,并且需要估计噪声的方差。参考文献:

[1] 徐长发,李国宽.实用小波方法[M ].2版.华中科技大学出版

社,2004.[2] 孙延奎.小波分析及其应用[M ].机械工业出版社,2005.[3] 飞思科技产品研发中心.MATLAB6.5辅助小波分析与应用

[M ].电子工业出版社,2003.[4] 戎舟,高翔,徐蕾.小波去噪及其在虚拟仪器中的应用[J ].南京

邮电大学学报,2005,25(3):87-90.

责任编辑:姚彦茹

16—