a?sn,2l,b?sn,2l?1(l?0,1,2,...,2n?1?1)上,记
?ss?n,2l?sn,2l?1?n?1,l?2 (1-45) ??dn?1,l?sn,2l?1?sn,2l这里是将信号序列sn的偶序号点和奇序号点相加取平均得平均值sn?1,l;将奇序号点减去偶序号点得到差值dn?1,l。sn?1,l和dn?1,l各有2n?1个样本,看作是信号sn的概貌和细节。当l遍历0到2n?1?1之间的所有整数时,{sn?1,l}组成sn?1序列,可以对sn?1进行类似的分解,得到s2?2n?2,l和dn?2,l,它们各有2n?个样本,{sn?2,l}组成了sn序列。这样的分解可以进行n次,最后的概貌信号只有一个点s0?sn0,0,它是信号s的均值或直流分量。最后的概貌信号加上各级细节信号,正好是2n个。上述变换正是Haar小波变换。多级Haar小波变换的分解过程和重构过程如下图。
图1-21 多级小波变换过程示意图
? (1.8.2) Haar小波变换的提升实现
小波变换的原位实现(in-lplace)-------不增加额外空间
(1) d=b-a (先将d 存于原来b的位置) (2) s =a+d/2 (s=a+d/2=a+b/2- a/2= (a+b)/2) (再计算s 存于原来a 的位置)
? 提升算法中的信号分解
提升过程分为三步:分裂、预测和更新。
考虑信号s?{sj,l|0≤l?2}提升算法分三步完成
jj一级变换后?j?1j?1{?,ds?}
概貌信号细节信号(1)Split(分裂)
将信号简单地分为两部分,有多种方法,这里将信号序列按奇、偶分为两个子集:
j?1??oddj?1?{sj,2l?1|0?l?2} ?j?1even?{s|0?l?2}?j?1j,2l?只将完整信号序列分成二部分,不做其他处理,故称懒小波变换。这里Split是分裂算子。
这种分解方法可表示为
(evenj?1,oddj?1):?Split(sj)
注释:将信号分解为成两个序列的方法有很多,将信号序列按奇、偶分为两个子集是一种方法;或将前一半和后一半分成两个子集也是一种方法;或将相邻两个数之和分给一个子集,而相邻两个数之差分给另一个子集又是一种方法。总之,不同的分裂方法,相当于采用不同的小波基。实际应用中,最常用的是懒小波最为第一级分解。 (2)Predict(预测)
若原信号sj具有局部相关性,则子集evenj?1和oddj?1也具有相关性。因此,只要知道
其中任一个,就可以以合理地精度预测另一个,通常用偶子集预测奇子集。在Haar小波变换的情况下,预测误差为dj?1,l?sj,2l?1?sj,2l,特别地,如果原信号是一个常量,则所有预测误差均为零。一般情况,定义预测算子P,且
dj?1?oddj?1?P(evenj?1)
j?1P(evenj?1)表示用evenj?1值的某种运算或某种组合来预测odd的值。在Haar小波变换
的情况下,简单地选择偶次项sj,2l,去减奇次项,得差值dj?1,l。预测误差表示信号的细节信息。这一步骤在提升算法中被成为“对偶提升”。当信号的相关性较大时,预测是非常有效的,若信号为常数时,dj?1,l恒为零。
(3)Update(更新) 低频概貌信号的一个关键性质是,它与原信号应具有相同的平均值,即
s?2?jj2?1?sj,l,并且不随j变化。这能确保最后的变换系数是原信号的总平均。Update
l?0操作可保证该性质成立,既用细节信息子集dj?1来更新偶序号子集evenj?1,既
sj?1?evenj?1?U(dj?1j?1)
式中U为更新算子,表示对d测误差信号dj?1的某种运算或某种组合。对于Haar小波,可以简单地用预
更新偶子集信号evenj?1,既sj?1?sj,2l?dj?1,l/2。
在提升算法中,更新称为“原始提升”,故才有“提升算法”一词。
容易验证,
2?(j?1)2j?1?12j?1?1?sj?1,l?l?0??j(sj,2l?dj?1,l/2)
j?1jl?02?1?2?(sj,2l?sj,2l?1)?2?j2?1l?0?sj,l
l?0以上三步操作相当于对信号sj进行一级小波变换,将它分解为低频信号sj?1和细节信号
dj?1。一般地,对于提升算法存在分裂算子Split、预测算子P和更新算子U,使
(evenj?1,oddj?1)?Split(s)dj?1j?oddj?1?P(evenj?1) ?evenj?1?U(dj?1sj?1)上述所有操作可以实现原位实现,即偶数位置用平均值重写,奇数位置用细节重写。 伪码实现:
(oddj?1,evenj?1):?Split(s)oddj?1??P(evenj?1)evenj?1??U(oddj?1)j
提升方案实现小波分解的最大优点在于将小波分解成了几个简单的基本步骤,且每个步骤都非常容易找到它的逆变换。
? 提升算法中信号的重构过程(三个过程)
相反地,从低频信号s(1)反更新
j?1和细节信号dj?1恢复原信号s的提升算法为
j给定sj?1和dj?1,可由下式恢复出偶序号序列
j?1 evenj?1?s(2)反预测
?U(dj?1)
用反更新计算出的偶序号序列evenj?1和给定的细节d oddj?1?d(3)合并
j?1j?1,可通过下式预测出奇序号序列
?P(evenj?1)
通过反更新和反预测步骤,分别获得偶序号序列和奇序号序列,将它们合并即可恢复原信号。这一步骤称为invert Lazy wavelet transform,记作
s?Merge(evenj?1,oddj?1)―――逆懒小波变换
对于Haar小波,恢复
sj,2l?sj?1,l?dj?1,l/2 sj,2l?1?dj?1,l?sj,2l
j
4.3.1小波分解与重构的多相位表示
?、g?、h、g为双正交小波滤波器组,对应讨论有限冲激响应的双正交滤波器的情况。设h二通道Mallat算法的等价Z变换如图4-7所示。
从图3-2到图3-3,是将时域表示成z域,图中z?1与时域中时序反转相对应。 ?
?、h、g?、g的约束条件 两通道分析滤波器和综合滤波器在理想重构条件下,h设x?{xn}是一个信号序列, z变换为x(z)??xzn?n。当{xn}是一个有限序列时,
称x(z)是一个Laurent多项式(将实数下的泰勒公式推广到复数)。 设小波滤波器h?{hn}的Z变换为h(z)??hnzn?n。可推出h(z)?h(z)。同理,
?1?的巻积x?h?的Z变换等于它们Z变换的乘积,既 ?(z)?h?(z?1)。另外,由于x?{x}与hhn?x?h??(z)?x(z)h?(z)?x(z)h?(z?(z?1)?令x(z)h?1)
于是,图3-2的滤波器组的等价的Z变换形式如图3-3。
?ckzk?k,则根据二元下采样的定义,有
a(z)????D?x?h??kzk?k??c2kzk?k