小波分析MATLAB实例

  • 格式:pdf
  • 大小:186.03 KB
  • 文档页数:4

⼩波分析MATLAB实例

到⼩波分析1 背景

传统的信号理论,是建⽴在Fourier分析基础上的,⽽Fourier变换作为⼀种全局性的变化,其有⼀定的局限性。在实际应⽤中⼈们开始对Fourier变换进⾏各种改进,⼩波分析由此产⽣了。⼩波分析是⼀种新兴的数学分⽀,它是泛函数、Fourier分析、调和分析、数值分析的最完美的结晶;在应⽤领域,特别是在信号处理、图像处理、语⾳处理以及众多⾮线性科学领域,它被认为是继Fourier分析之后的⼜⼀有效的时频分析⽅法。

⼩波变换是近年发展起来的⼀种基于时频域的信号分析⼯具,它具有良好的时频局部性、选基灵活性和去相关性等优点,可⽤于光谱信号的噪声滤波和基线校正等。此后,多位物理、数学家的合作共同奠定了⼩波变换的理论和应⽤基础。由于⼩波变换能够更精确地分析信号的局部特征,在很多领域得到了越来越多地应⽤。⼩波分析的应⽤领域⼗分⼴泛,它包括:数学领域的许多学科;信号分析、图象处理;量⼦⼒学、理论物理;军事电⼦对抗与武器的智能化;计算机分类与识别;⾳乐与语⾔的⼈⼯合成;医学成像与诊断;地震勘探数据处理;⼤型机械的故障诊断等⽅⾯;例如,在数学⽅⾯,它已⽤于数值分析、构造快速数值⽅法、曲线曲⾯构造、微分⽅程求解、控制论等。在信号分析⽅⾯的滤波、去噪声、压缩、传递等。在图象处理⽅⾯的图象压缩、分类、识别与诊断,去污等。以及在医学⽅⾯的应⽤,如核磁共振成像时间、提⾼CT 、B超等分辨率。2 ⼩波变换的产⽣及去噪的必要性

我们在⼀维信号分析中,可知傅⾥叶变换将信号分解成⼀系列不同频率的正弦或余弦波的叠加,与之类似,⼩波变换也可将信号分解成⼀系列⼩波函数的叠加,这⼀系列⼩波函数都由某个母⼩波函数经过平移和尺度变换得来。以不规则的⼩波信号来逼近局部信号显然⽐⽤光滑的正弦信号逼近程度要好,⽽⽤不同尺度⼩波对同⼀信号进⾏逼近⼜有利于对信号进⾏逐步细致的分析,这正是⼩波分析的基本思想。⼩波变换采⽤变化的时频窗,窗⼝⾯积固定,但形状可变。分析低频信号时,采⽤拉伸的⼩波和长的时间窗以获取⾜够信息,分析⾼频信号时,采⽤压缩⼩波和短时间窗以获取⾜够精度。常见的⼩波函数有Meyer波、Morlet 波、8阶⾼斯波等。

传统的去噪⽅法常使⽤Fourier变换去噪,将含噪信号变换到频域,然后采⽤低通滤波器进⾏滤波,但是基于Fourier变换的去噪⽅法存在着保护信号局部性和抑制噪声之间的⽭盾。Fourier变换去噪不能有效的将噪声与有⽤信号的⾼频部分和有噪声引起的⾼频⼲扰加

以有效的区分开来。这就使得我们在研究信号去噪课题上注意到⼩波的好处,⼩波去噪可以很好的保护有⽤信号的尖峰和突变部分的信号。⼩波变换具有良好的时频局部化性质,具有以下优点:(1)⼩波分解可以覆盖整个频域(提供了⼀个数学上完备的描述);(2)⼩波变换通过选取合适的滤波器,可以极⼤的减⼩或去除所提取得不同特征之间的相关性;(3)⼩波变换具有“变焦”特性,在低频段可⽤⾼频率分辨率和低时间分辨率(宽分析窗⼝),在⾼频段,可⽤低频率分辨率和⾼时间分辨率(窄分析窗⼝);(4)⼩波变换实现上有快速算法(Mallat⼩波分解算法)。因此采⽤⼩波去噪是具有必要性的。3 ⼩波变换理论

3.1 ⼩波定义

满⾜以下条件∞

∞ωωωd 02)( (1) 或其等价条件

∞-=0)(dt t ψ (2)

的函数)(t ψ称为基本⼩波,或母⼩波。其中)(ωψ为)(t ψ的傅⾥叶变换。式(2)说明母⼩波函数具有⼀定的振荡性,即包含某种频率特性。)()(21

,a

b t a t b a -=-ψψ (3) 式中b a ,均为常数,且0>a 。显然,)(,t b a ψ是基本函数)(t ψ先作移位再作伸缩以后得到的。若b a ,不断地变化,我们可得到⼀族函数)(,t b a ψ。a 为伸缩因⼦,反映函数的尺度,a<1波形被压缩,越⼩压缩越厉害,a>1波形被拉伸,越⼤拉伸越多。b 为平移因⼦,表⽰沿t 轴的平移位置。)(,t b a ψ是母⼩波经移位和伸缩所产⽣的⼀族函数,我们称之为⼩波基函数,或简称⼩波基。3.2 ⼩波的特性连续⼩波)(,t b a ψ的时频窗⼝中⼼和宽度可以精确定位,且都随尺度a 的变化⽽伸缩。若将时、频域窗⼝综合考虑,根据公式推导可得时频窗⼝的⾯积与尺度a ⽆关,即时间分辨率和频率分辨率是相互制约的。⼩波尺度a 与频率ω相对应。当a 变⼩时,对)(t x 的时域观察范围变窄,但对)(ΩX 在频率观察的范围变宽,且观察的中⼼频率向⾼频处移动;反之,当a 变⼤时,对)(t x的时域观察范围变宽,频域的观察范围变窄,且分析的中⼼频率向低频处移动。⼩波变换恒Q 性质。带宽/中⼼频率=Q aa 00=Ω?=Ω?ΩΩ///,不论a 为何值)0(>a ,)(a

t ψ始终保持了和)(t ψ具有性同的品质因数。恒Q 性质是⼩波变换的⼀个重要性质,也是区别于其它类型的变换且被⼴泛应⽤的⼀个重要原因。3.3 连续⼩波变换和反变换定义

函数)(x f 以⼩波)(x ψ为基的连续⼩波变换定义为函数)(x f 和)(,x b a ψ的内积,∞∞--ψ>=ψ=

b x a x f f b a W b a f )(1)(,),(, 在1984年,A.Grossman 和J.Morlet 指出,连续⼩波的逆变换为,

∞∞-∞∞--ψψ>ψ<=dadb a x f C x f b a b a 2,,)(,2)(

其中,ψC 为母⼩波y (x )的允许条件(admissible condition),∞∞-ψ∞

=ωωωd C )(?

其中,)(?ωψ

为)(x ψ的傅⽴叶变换,⽽)(x ψ是在平⽅可积的实数空间)(2R L 。 3.4 离散⼩波变换

在计算连续⼩波变换时,实际上也是⽤离散的数据进⾏计算的,只是所⽤的缩放因⼦和

平移参数⽐较⼩⽽已。不难想象,连续⼩波变换的计算量是惊⼈的。为了解决计算量的问题,缩放因⼦和平移参数都选择j2(j>0的整数)的倍数。使⽤这样的缩放因⼦和平移参数的⼩波变换叫做双尺度⼩波变换,它是离散⼩波变换的⼀种形式。执⾏离散⼩波变换的有效⽅法是使⽤滤波器。该⽅法是Mallat 在1988年开发的,叫做Mallat 算法,这种⽅法实际上是⼀种信号的分解⽅法,在数字信号处理中称为双通道⼦带编码。3.5 傅⾥叶分析与⼩波包分析的⽐较

从以上分析中可以看出通过傅⽴叶分析进⾏滤波得到的结果与⼩波分析得到的结果有

些差异,主要是由于信号集中在低频部分,噪声分布在⾼频部分,所以通过低通滤波器进⾏滤波,不能将有⽤信号的⾼频部分和由噪声引起的⾼频⼲扰加以有效地区分。若低通滤波器太窄,则在滤波后,信号中仍存在⼤量的噪声,若低通滤波器太宽,则将⼀部分有⽤信号当作噪声被滤掉。因此⼩波分析对⾮平稳信号的消噪有着傅⽴叶分析不可⽐拟的优点。 4 ⼩波去噪4.1 ⼩波去噪的原理

⼩波变换之所以在去噪⽅⾯取得成功,在于它的⼏个特点:1)低熵性。⼩波系数的稀

疏分布使得信号变换后的熵降低;2)多分辨率性质。由于采⽤了多分辨率的⽅法,可以⾮

常好的刻画信号的⾮平稳特性,如边缘、尖峰、断点等,以便于特征提取和保护;3)去相关性。因为⼩波变换可以对信号进⾏去相关,且噪声在变换后有⽩化趋势,所以在⼩波域⽐在时域更利于去噪;4)⼩波基选择的多样性。由于⼩波变换可以灵活选择变换基,所以可以针对不同应⽤场合选⽤不同的⼩波函数,以获得最佳的处理效果。4.2 ⼩波去噪的模型建⽴

4.2.1去噪的Matlab程序

局部放电试验所采集的信号中往往混有⽩噪声、周期⼲扰信号去除。此处采⽤常⽤db 系列⼩波中的db6⼩波进⾏9尺度的多分辨分解后,根据⽩噪声能量特性,估算各尺度的阈值⼤⼩,采⽤硬值进⾏处理,后进⾏重构。Matlab程序如下:function sd=liu_denoise(mix_signal)

%此函数⽤于去除⽩躁信号&周期性⼲扰信号

%输⼊参数mix_signal为采集到的信号波形p=0.6745;

w_dept=9;

w_name='db6';

coef=cell(1,w_dept);

thr=zeros(1,w_dept+1);

[c,l]=wavedec(mix_signal,w_dept,w_name); %对混合信号S进⾏db6的9尺度⼀维分解coef(1)={appcoef(c,l,w_name,w_dept)};%计算尺度为9的⼀维分解低频系数cs=[cs,coef_soft{j}];

thr(1)=median(abs(coef{1}))/p*sqrt(2*log(length(coef{1})));%计算1尺度上的阈值

coef_soft(1)={wthresh(coef{1},'h',thr(1))};%对⼩波系数进⾏阈值为thr(1)的硬阈值处理cs=[coef_soft{1}];

for j=2:w_dept+1

coef(j)={detcoef(c,l,w_dept-j+2)};%计算尺度为9到2的各尺度⾼频⼩波系数

coef1(j)={detcoef(c,l,w_dept-j+2)};

thr(j)=median(abs(coef{j}))/p*sqrt(2*log(length(coef{j})));%计算9到2各尺度上的阈值coef_soft(j)={wthresh(coef{j},'h',thr(j))};%对⼩波系数进⾏阈值为thr(j)的硬阈值处理cs=[cs,coef_soft{j}];end

sd=waverec(cs,l,w_name); %根据⼩波系数[cs,l]对信号进⾏重构

4.2.2仿真分析

为了验证去噪的有效性,先仿真产⽣⼀个局放脉冲然后叠加0.1倍⽩噪声和周期⼲扰,利⽤前⾯的程序去造,结果如图1,从图上可以看到去噪后信号与原始信号幅值、相位都基本没有变化程序如下:fc=40e4; %振荡频率

t4=0.8e-3; %脉冲起始时间

tn=1e-3; %总时间

x=0:step:tn;

x4=t4:step:tn;

%s4=(exp((t4-x4)*13/t)-exp((t4-x4)*22/t)).*sin(2*pi*fc*x4);

s4=(exp((t4-x4)/tr)-exp((t4-x4)/td)).*sin(2*pi*fc*x4);

s4=[zeros(1,t4/step),s4];

p=tn/step;

n=0.1*randn(1,p); %产⽣⽩噪信号

n=[n,0];

s5=0.1*sin(2*pi*10000000*x); %产⽣周期性⼲扰信号

s6=s4+n+s5;

sd=liu_denoise(s6);

subplot(311);plot(x,s4);title('单个局放脉冲仿真波形');

subplot(312);plot(x,mix_signal);title('染噪后波形');

subplot(313);plot(x,sd);title('⼩波去噪后波形');