小波去噪理论及MATLAB实现研究

时间:2022-09-10 04:55:46

小波去噪理论及MATLAB实现研究

摘 要:阐述了小波变换去除信号噪声的基本原理和方法,研究利用小波变换技术对信号噪声进行抑制和去除非平稳信号的噪声。然后利用MATLAB软件编制程序实现了基于小波变换的正弦信号的去噪仿真分析,仿真结果表明小波变换去除噪声具有很强的实用性。

关键词:小波变换;多分辨率分析;小波去噪;MATLAB

中图分类号:O4文献标识码:A文章编号:1672-3198(2008)09-0399-02

1 引言

利用振动信号或状态量对设备进行诊断是设备故障诊断中最有效、最常用的方法,过去常用传统的基于快速傅里叶变换(FFT)的频谱分析方法进行振动信号处理,但是傅里叶分析存在着严重的不足,它只适于分析时不变系统的平稳信号,而不适于分析非平稳信号,且傅里叶变换对在检测信号中包含的趋势、突变事件的开始和结束等特征分析时也显得无能为力。出于对非平稳信号和突变信号的分析的迫切要求,法国地球物理学家Morlet于1984年提出了一种新的线性时频分析方法――小波分析理论,为机械故障诊断中的非平稳信号分析,弱信号提取,信号滤波等提供了一条有效的途径。本文我们利用小波分析所具有的时频局部化特性选择合适的小波函数,建立小波去噪模型,并结合当前在信号处理和分析领域应用广泛的MATLAB 7软件,通过计算机进行仿真,完成了小波去噪的MATLAB实现。

2 小波变换理论

小波变换(Wavelet Transform)的基本思想和传统的傅里叶变换是一致的,它也是用一族函数来表示信号或函数, 这一族函数称之为小波函数系,但是小波函数系与其它两种方法所用的简谐函数系不同,它是由一基本小波函数平移和伸缩构成的。它是一种窗口面积恒定,窗口形状可变(时域窗口和频域窗口均可变)的时-频局域化分析方法。

2.1 连续小波变换理论

设函数Ψ(t)为一平方可积函数,即Ψ(t)∈L2(R),其傅里叶变换Ψ(ω)满足允许条件:

则称Ψ(t)为一个基小波(或小波母函数),我们称上式为小波函数的容许条件。

将母函数Ψ(t)经伸缩和平移后,就可以得到一个小波序列。对于连续的情况,小波序列为:

其中,a,b∈R;a≠0。a为伸缩因子,b为平移因子,我们称Ψa,b(t)为依赖于参数a,b的小波基函数。

将任意L2(R)空间里的函数f(t)在小波基下展开,称这种展开为函数f(t)的连续小波变换(Continue Wavelet Transform,简称CWT)其表达式为:

WTf(a,b)=

=|a|-12∫∞-∞Ψ*(t-bb)f(t)dt

由以上定义,我们可以看出小波变换和傅里叶变换一样,也是一种积分变换, f(a,b)为小波变换系数。但它不同于傅里叶变换的地方是,小波基具有尺度a和平移b两个参数,所以函数一经小波变换,就意味着将一个时间函数投影到二维的时间――尺度相平面上,这样有利于提取信号函数的某些本质特征。

2.2 离散二进小波变换

在实际应用中,为了方便计算机进行分析、处理,信号f(t)都要离散化成离散序列,a和b也必须离散化,成为离散小波变换,记为DWT(Discrete Wavelet Transform)。在对连续小波离散化的过程中,连续小波变换? f(a,b)的伸缩因子a和b进行采样,选取a=2-j ,b=2-j kb0,则可得到离散的二进小波变换;

这里j, k ∈ Z,采样率b0 > 0.

由于离散二进小波变换是对连续小波变换的伸缩因子和平移因子按一定规则采样而得到的,任一函数f(t)∈L2(R),经二进离散小波变换,得到了一个连续降半频带上的时间信息。从算法上,二进离散小波变换分为一般二进离散小波变换和快速二进离散小波变换。

3 小波去噪原理

我们知道,一个含噪声的一维信号的模型可表示为:

s(k)=f(k)+ε*e(k)

式中,f(k)为真实信号,e(k)为噪声信号,s(k)为含噪信号。这里以一个简单的噪声模型加以说明,即e(k)为高斯白噪声N(0,1),噪声级为1,通常表现为高频信号,在实际工程中,有用信号f(k)通常表现为低频信号或较平稳的信号,所以消噪过程可按以下方法进行处理。

首先对实际信号进行小波分解,选择小波并确定分解层次为N,则噪声部分通常包含在高频中;然后对小波分解的高频系数进行门限阈值量化处理;最后根据小波分解的第N层低频系数和经过量化后的1~N层高频系数进行小波重构,达到消除噪声的目的,对信号降噪实质上是抑制信号的噪声,在实际信号中恢复真实信号的过程。

小波收缩去噪方法的关键步骤是如何选择阈值和如何进行门限阈值处理,在某种程度上,它关系到信号去噪的质量。在对小波系数作门限阈值处理操作时,可以使用软阈值处理方法或硬阈值处理方法。

硬阈值是把信号的绝对值与指定的阈值进行比较,小于或等于阈值的点变为0,大于阈值的点保持不变。(见公式1)

软阈值是把信号的绝对值与指定的阈值进行比较,小于或等于阈值的点变为0,大于阈值的点变为该点值与阈值的差。

一般来说,硬阈值比软阈值处理后的信号更粗糙一些(如图1)。

4 小波去噪的MATLAB仿真

MATLAB软件是Mathwork公司于1984年推出的一套高性能的集数值和符号计算、文字处理、可视化建模及实时控制的可视化软件。近几年己成为信号及图像处理的优选工具软件。本文是基于2004年6月的最新版本MATLAB R14(包括MATLAB7.0和Wavelet Toolbox3.0等)产品系列来进行理论论述的。

4.1 小波GUI(Grsphical User Interface)

小波GUI,也就是MATLAB小波工具箱的图像用户接口,用户不需要使用任何函数,更不需要编写任何程序,只要利用小波工具箱的I/O函数导入对于待分析的工程信号到GUI中,调用相应的分析模块进行运算,并保存相应的处理结果,就可达到信号处理分析的目的。

4.2 小波降噪的专用函数

小波工具箱一共提供了wnoise 、wden 、wdencmp 等13个用于降噪和压缩的函数。

4.3 仿真实验

我们对小波去噪时各种参数设置作了详尽的对比研究,实验信号是由wnoise()函数产生的含标准的高斯白噪声信噪比为3的随机信号,用wden()函数进行去噪处理,对在各种可选参数下的去噪效果作了对比研究,得出了以下结论。

(1)四种阈值选取方式的对比(tptr的设置):选择软、硬阈值得到四个去噪效果图(见图2),可以看出固定阈值形式(sqtwolog)和启发式阈值形式(heursure)的去噪更彻底,而由于rigrsure和minimaxi阈值选取规则较为保守(阈值较小,导致只有部分系数置零)噪声去除不彻底,但在信号的高频成分和噪声有重叠时利用这两种阈值可以把弱小信号从噪声中分离出来。

(2)软门限阈值和硬门限阈值处理比较(sorh的设置):实验表明软门限阈值处理方式一般能够取得更为平滑和理想的去噪效果。

(3)分解层次的比较(level):可以得到不同分解层次的去噪效果图,从中可以看出随着小波分解层次的增加去噪效果变好,但是分解层次增加到5层以上后去噪效果改善已经不明显,反而增加了计算代价,实际应用中分解层次取3~5层即可。

(4)小波函数的选取(wname):小波函数可以选取一个正交小波,如Daubechies (dbN),symlets (symN), coiflets (coifN),具体选择可以根据实际需要决定,在我们的实验中选择的是sym8。

下面是给定的含噪声的随机信号,通过Matlab编制程序并运行,得到的运行结果(图2)。

5 总结

通过以上小波分析理论和MATLAB知识的阐述,并结合计算机仿真实验,我们不难发现,小波分析非常适合于分析非平稳信号,它能探测到正常信号中夹带的瞬态反常现象并展示其成分,实现信号中的有用部分和噪声的有效分离。综上所述,基于小波变换的消噪方法是一种提取有用信号、展示噪声和突变信号的优越方法,具有切实的应用价值和广阔的发展空间。

参考文献

[1]张贤达,保铮.非平稳信号分析与处理[M].北京:国防工业出版社,1998.

[2]华容.信号分析与处理[M].北京:高等教育出版社,2004.

[3]石博强,早焱华.机械故障诊断的分形方法――理论与实践[M].北京:治金工业出版社,2001.

作者简介:

熊殿成,男,西南石油局川渝石油基地服务中心党委书记、主任。

上一篇:小型无人直升机控制方法探讨 下一篇:企业国际竞争优势可持续性研究