【无标题】

第6章 多分辨分析与Mallat算法
前面重点介绍了什么是小波变换,如何用好小波变换。在选用某一具体小波基函数时,提供了几种参考方法。然而,数学家终究会提出具有一般数学范畴上的概念,即如何构造这样的小波基,并且这些基是否具有正交特性?
Meyer在1986年提出了一组小波,其二进制伸缩和平移构成L2
 (R)的标准化正交基。在此结果基础上,1988年,S.Mallat 在构造正交小波时提出了多分辨分析的概念,从函数分析的角度给出了正交小波的数学解释,在空间的概念上形象地说明了小波的多分辨率特性,给出了通用的构造正交小波的方法和小波变换的快速算法——Mallat算法。
本章正是基于上述问题,介绍多分辨分析理论、双尺度方程及多分辨滤波器组、Mallat算法、正交小波变换等,并且通过详尽的算例使读者能够加深对这些概念的学习。
学习目标:
(1)了解多分辨分析的基本概念
(2)熟练掌握Mallat算法
(3)熟练掌握离散序列的多分辨分析
(4)熟悉正交小波变换
(5)熟悉二维正交小波变换
6.1 多分辨分析
在上一章离散小波变换中我们了解到,当离散小波族是正交系时,信号就可以在这个小波基下分解与重构。接下来将介绍这类正交小波基函数的构造方法。
6.1.1 多分辨分析理论
小波理论包括连续小波和二进小波变换,在映射到计算域的时候存在很多问题,因为两者都存在信息冗余,在对信号采样以后,需要计算的信息量还是相当得大,尤其是连续小波变换,因为要对精度内所有的尺度和位移都做计算,所以计算量相当得大。而二进小波变换虽然在离散的尺度上进行伸缩和平移,但是小波之间没有正交性,各个分量的信息搀杂在一起,为我们的分析带来了不便。
当Mallat算法在计算上变得可行以后,小波变换在各个领域才发挥它独特的优势,解决了各类问题,为人们提供了更多的关于时域分析的信息。
形象一点说,多分辨分析就是要构造一组函数空间,每组空间的构成都有一个统一的形式,而所有空间的闭包则逼近L2
 (R)。在每个空间中,所有的函数都构成该空间的标准化正交基,而所有函数空间的闭包中的函数则构成L2
 (R)的标准化正交基,如果对信号在这类空间上进行分解,就可以得到相互正交的时频特性。而且由于空间数目是无限可数的,因此可以很方便地分析我们所关心的信号的某些特性。
下面我们简要介绍一下多分辨分析的数学理论。
定义 设{Vj
 }j∈Z
 是L2
 (R)上的一列闭子空间,φ(t)是L2
 (R)中的一个函数,如果它们满足如下的5个条件,即
(1)单调性:对任何整数 j∈Z,Vj
 ⊂Vj+1
(2)唯一性:
(3)稠密性:
(4)伸缩性:
(5)正交基的存在性:
 构成子空间V0
 的标准正交基
那么称
 是L2
 (R)上的一个正交多分辨分析。
多分辨空间的关系可用图6-1形象地说明。
图6-1 多分辨空间关系
由多分辨分析的定义容易得到一个重要结果,即函数族
 是Vj
 空间的标准正交基。下面将要讨论的是如何由这个正交多分辨分析去构造L2
 (R)上的一个正交小波ψ(t),使{
 构成L2 (R)的标准正交小波基。
仿照 Shannon 小波的构造方法,对∀j∈Z,定义如下的子空间Wj
 :
容易验证,子空间序列{Wj
 }j∈Z
 具有下述性质:
(1)∀j≠l,Wj
 ⊥Wl
 ;
(2)
(3)∀j∈Z,
因此,根据(2)可知,为了得到空间L2
 (R)的标准正交基,只需构造每一个子空间Wj
 的标准正交基。再由(3)得到,这只需构造W0
 的标准正交基就足够了。
令{Vj
 }j∈Z
 是L2
 (R)空间的一个多分辨分析,则存在一个唯一的函数
 使得:
必定是Vj
 内的一个标准正交基,其中ϕ(t)称为尺度函数。
式中的系数2−j/2
 是为了使ϕj,k
 的L2
 范数为1。引入尺度函数的目的是为了构造正交小波基,图6-2(a)所示为一指数衰减、连续可微分的尺度函数,图6-2(b)所示是其傅立叶变换。显然,尺度函数与低通滤波器的形状相同。
图6-2 db9尺度函数
若φ(t)生成一个多分辨分析,那么ϕ∈V0
 也属于V−1
 ,并且因为{ϕ−1,k
 :k∈Z}是V−1
 的一个Riesz基,所以存在唯一的l2
 序列{h(k)},它描述尺度函数φ的两尺度关系:
由单调性可知Vj+1
 ∈Vj
 ,∀j∈Z,所以
反复应用上式,得:
同样,像φ(t)生成V0
 一样,存在一个函数ψ(t)生成闭子空间W0
 ,且有类似的双尺度方程:
此式称为小波函数双尺度方程。由上式可知,尺度函数与小波函数的构造归结为系数{h(k)},{g (k)}的设计,若令 ,则把尺度函数和小波函数的设计可以归结为滤波器
 的设计。
构造正交小波时滤波器H (ω)与G(ω)必须满足以下3个条件:
联合求解可得:
由上式立刻可得:
所以,要设计正交小波,只需要设计滤波器H(ω)。
6.1.2 几种常见的正交小波基
由一个函数的平移和伸缩所构成的正交基在对信号进行分解和重构方面是十分有用的。
多分辨分析给出了具体的构造方法,下面先给出几个具有解析表达式的例子。
1.Haar小波
数学家A.Haar于1910年提出的Haar系
 是由母函数生成的。
特点是同一尺度m上,函数集合{hm,n
 (t)}n∈Z
 中任意两个函数的支集不相交;同一尺度上的基函数相互正交;不同尺度间的基函数正交;hm,n
 构成了L2
 (R)空间上的完备标准正交基H;aar系的函数时域不连续,光滑性差;频域ω随的衰减速度仅为 ,频域局部性差。实际应用受限制,但结构简单,常用于理论研究。
2.Littlewood-Paley小波
其傅立叶变换为:
将ψ(t)进行平移和伸缩得到的
 是L2
 (R)空间上的完备正交基,称之为Littlewood-Paley正交小波基。
特点是:时域衰减速度仅为
 ,局部性差,频域局部性好,实际应用也受到限制。
3.Shannon小波
Shannon小波母函数:
Shannon小波母函数是无限次可导的,这比存在不连续点的Haar小波母函数要优越,可是Haar系函数的支集是紧的S,hannon系的函数不仅不是紧支的,且当
 时趋于零的速度仅为
 ,故当用Shannon系对函数进行分解时,分解系数不能很好地反映信号的局部特征。
4.Meyer小波
Meyer小波的小波函数ψ和尺度函数φ都是在频域中进行定义的,是具有紧支撑的正交小波。
其中,v(x)(Meyer小波的辅助函数)为一任意连续可导函数,且满足
 v(x)+v(1−x)=1。
若取v(x)一阶连续可导:
则v(x)与Ψ(ω)同波形。
若要v(x)四阶连续可导:
则与相应Meyer小波同波形。
若用k表示v(x)的连续可导阶数,则Meyer小波在时域的衰减速度为:
其中,Ck
 为一常数。可见提高k值,可以改进Meyer小波的时域局部性,得到时、频域都具有较好局部性的小波。
在多分辨分析理论出现之前,人们还采用不同的方法构造出了其他的正交小波,如Stormbery 小波,以及由 Battle和Lemarie 分别采用不同的方法构造的指数衰减的Battle-Lemarie小波等。
1986年,S.Mallat和Y.Meyer提出多分辨分析的框架,统一了在此之前的小波的构造,并提供了构造新的小波基的方便工具。
6.1.3 尺度函数和小波函数性质
Poisson公式:用于描述整数平移系列正交归一性在频域的表现。
(1)设 f (t−k),k∈Z是一组正交归一的函数集合:
则此正交归一性质的频域表现为:
其中,F(ω)是f (t)的傅立叶变换。
(2)设
 是两组正交的函数集合,
则此正交性质的频域表现为:
其中,F1
 (ω)、F2
 (ω)分别为f1
 (t)、f2
 (t)的傅立叶变换。
上式即为著名的Poission公式。证明(略)。
尺度函数φ(t)和小波函数ψ(t)的一些重要性质如下。
(1)尺度函数:
在同一尺度 j的两个函数之间满足:
则同一尺度下的尺度函数具有正交归一性。由Poission公式有:
不同尺度之间φj,k
 与φj′,k′
 不具有正交性,即:
(2)小波函数
 对所有 j,k∈Z都是相互正交的:
则在同一尺度下的小波函数必然满足,由Poission公式有:
(3)同一尺度之间,小波函数ψj,k
 同尺度函数φj,k′
 正交(因为在同一尺度下Wj
 ⊥Vj
 )
由于小波函数和尺度函数之间满足上式,由Poission公式,即:
6.2 双尺度方程及多分辨滤波器组
上节介绍了与多分辨空间有关的尺度空间和小波空间的相关知识,本节将介绍双尺度方程及多分辨率滤波器组。
6.2.1 双尺度方程
双尺度方程是多尺度分析赋予尺度函数ϕ(t)、小波函数ψ(t)的最基本特征。它描述两个相邻尺度空间Vj−1
 和Vj
 ,或相邻的尺度空间Vj−1
 和小波空间Wj
 的基函数
 和
 之间的内在的本质联系。
由多分辨分析可知:
(1)ϕ(t)为尺度空间V0
 的一个标准正交基函数;
(2)ψ(t)为小波空间W0
 的一个标准正交基函数;
(3) V0
 ⊂V−1
 ,W0
 ⊂V−1
 。
由此可知,ϕ(t)、ψ(t)也必然属于V−1
 空间,所以ϕ(t)、ψ(t)可用V−1
 空间的正交基ϕ−1,n
 (t)线性展开:
其中展开系数h0
 (n)、h1
 (n)分别为:
由于上式描述的是相邻双尺度空间基函数之间的关系,所以称此式为双尺度方程(此时尺度为0、-1)。
注意:双尺度关系存在于任意相邻尺度 j、j−1之间,即:
展开系数h0
 (n)、h1
 (n)不随尺度 j的变化而变化(证明略)。即h0
 、h1
 是由尺度函数ϕ(t)和小波函数ψ(t)决定的,与具体尺度无关。我们称h0
 和h1
 为滤波器系数。
设H0
 (ω)为h0
 (n)的傅立叶变换,H1
 (ω)为h1
 (n)的傅立叶变换,它们都是以2π为周期的函数:
则双尺度方程的频域表示为:
其中Φ(t)、Ψ(t)分别为ϕ(t)、ψ(t)的傅立叶变换。
则此定义下的双尺度方程的频域表示为:
由双尺度方程可见,滤波器组系数h0
 (n)、h1
 (n) (或H0
 (ω)、H1
 (ω))描述的是两尺度空间函数之间的内在联系,并且唯一地对应于ϕ(t)、ψ(t)。它们具有非常明确的物理概念和非常重要的使用价值。
6.2.2 滤波器组系数h0
 (n)和h1
 (n)的性质
1. h0
 (n)和h1
 (n)的总和
h0
 (n)和h1
 (n)的总和分别为:
2.频域初值
由此性质可知,H0
 (ω)为低通滤波器,H1
 (ω)为高通滤波器。
H0
 (ω)对应于尺度函数的低通性:
H1
 (ω)对应于小波函数的高通性:
3.递推关系
由双尺度方程的频域式可知,Φ(ω)、Ψ(ω)与H0
 (ω)、H1
 (ω)之间还有下述关系:
4. h0
 (n)和h1
 (n)的正交性
由同一尺度间尺度函数的平移正交性可推得:
说明h0
 (n)满足偶次移位正交性。
同样,由同一尺度间小波函数的正交条件可推得:
说明h1
 (n)满足偶次移位正交性。
同理,由同一尺度间的尺度函数和小波函数的正交性条件可推得:
说明两个滤波器h0
 (n)和h1
 (n)之间也是偶次移位正交的。
5.滤波器H0
 (ω)和H1
 (ω)的特性
滤波器H0
 (ω)和H1
 (ω)满足下式:
6.3 Mallat算法
前面两节在空间的概念上形象地说明了小波的多分辨率特性,下面将介绍通用的构造正交小波的快速算法——Mallat算法。
6.3.1 一维Mallat算法
设 f (t)∈L2
 (R),并假定已得到 f (t)在2−j
 分辨率下的象Aj f∈Vj
 ,{Vj
 }j∈Z
 构成
 的多分辨分析,从而有
 ,即:
其中
于是
由尺度函数的双尺度方程可得:
利用尺度函数的正交性,有:
同理由小波函数的双尺度方程可得:
由以上式子立即可得:
引入无穷矩阵:
其中, ,则上式可分别表示为:
其中H*、G*分别是H和G的共轭转置矩阵。
将式(6.1)称为Mallat 一维分解算法,式(6.2)为Mallat 一维重构算法,如图6-3所示。
图6-3 Mallat小波分解和重构算法示意图
利用Mallat分解与重构算法进行信号处理时,不必知道具体的小波函数是什么样的。此外,在对数字信号进行处理时,通常假定相应的连续函数属于V0
 ,但即使如此,该函数在V0
 空间的投影的系数与由采样得到的离散序列一般还是不一样,实际上都是直接把由采样得到的信号作为最高分辨率的信号来处理,这时更多的是把小波变换当作滤波器组来看待。
在实际应用Mallat算法时,由于实际信号都是有限长的,因而存在如何处理边界的问题。比较常用的方法是周期扩展和反射扩展,主要目的是要降低边界不连续性所产生的在边界上变换系数衰减慢的问题。
6.3.2 二维Mallat算法
在进行图像处理时要用到二维小波变换,目前研究中主要以可分离小波为主,下面的定理给出了构造二维可分离正交小波基的方法。
定理6-1令
 的可分离多分辨分析,并令
 是相应的二维尺度函数,ψ(x)是与尺度函数对应的一维标准正交小波。若定义3个“二维小波”:

分别是L2
 (R2
 )内的标准正交基。

 为待分析的图像信号,其二维逼近图像为:
式中:
利用尺度函数和小波函数的正交性,由上式立即得:
以及
引入矩阵算子,令Hr
 和Hc
 分别代表用尺度滤波器系数对阵列
 的行和列作用的算子,Gr
 和Gc
 分别表示用小波滤波器系数对行和列作用的算子,二维Mallat 分解算法为:
二维Mallat重构算法为:
图6-4显示出了二维图像的分解和重构算法。
图6-4 二维Mallat小波分解和重构算法示意图
对于图6-4所示的二维小波分解与重构算法,利用其可分离特性,在算法实现时分别由对行进行一维小波变换,然后再对按行变换后的数据按列进行一维小波变换来完成。与一维的情形类似,在实际应用中,由于图像信号总是有限区域的,因而也存在如何处理边界的问题。典型的处理方法是周期扩展和反射扩展。
在用小波变换进行图像压缩时,由于边界的不连续性会使得在边界处的小波变换系数的衰减变慢,从而影响图像的压缩比,因而在图像压缩应用中,若使用的是具有对称性质的双正交小波滤波器,一般对边界采用反射扩展的方式,使边界保持连续,以提高压缩性能。
6.3.3 Mallat算法在MATLAB中的实现
本小节将介绍在MATLAB中如何实现Mallat算法。为使程序易于理解,在不考虑算法复杂度的情况下,分解程序采用简洁的循环计算出下一级的分解系数,程序采用的编程思想如下:
以上矩阵等式左边是进行二抽样的结果, 是j分解的低频部分。同理,对于j分解的高频部分有如下矩阵形式:
对于重构算法,其等效形式为:
上式等号右边部分实质上是对变量k的数字卷积运算,程序采用频域相乘代替卷积。
Mallat算法分解程序如下,保存为mallatdec2.m:
function Y=mallatdec2(X,wname,level)
%输入:X 载入的二维图像数据
% level 小波分解次(级)数设定值(如果设定值超过最高可分解次数,按最高分解次数分
% wname 小波名字wavelet name
%输出:Y 多极小波分解后的小波系数矩阵
[h,g]=wfilters(wname,'d');%h、g 分别为低通和高通滤波器
X=double(X);
t=1;
[hh,ll]=size(X);
while t<=level
%先进行行小波变换
for row=1:hh
Y(row,1:ll)=mdec1(X(row,1:ll),h,g) ;
end
%再进行列小波变换
for col=1:ll
temp=mdec1(Y(1:hh,col)',h,g);
Y(1:hh,col)=temp';
end
t=t+1;
hh=hh/2;
ll=ll/2;
X=Y;
end
function y=mdec1(x,h,g)
%输入:x 行数组
% h为低通滤波器
% g为高通滤波器
%输出: y 进行一级小波分解后的系数
lenx=size(x,2);
lenh=size(h,2);
h=[h,zeros(1,(lenx-lenh))];
g=[g,zeros(1,(lenx-lenh))];
r1(1)=sum(h.*x);
r2(1)=sum(g.*x);
for k=1:1:(lenx/2-1)
h=[h(end-1:end),h(1:(end-2))];
r1(k+1)=sum(h.*x);
g=[g(end-1:end),g(1:1:(end-2))];
r2(k+1)=sum(g.*x);
end
y=[r1,r2];
Mallat算法重构程序如下,保存为mallatrec2.m:
function Y=mallatrec2(X,wname,level)
%输入:X 载入的小波系数矩阵
% level 小波分解次(级)数设定值(如果设定值超过最高可分解次数,按最高分解次数
% wname 小波名字wavelet name
%输出:Y 重构图像矩阵
[h,g]=wfilters(wname,'d');%h、g 分别为重构低通滤波器和重构高通滤波器
[hh,ll]=size(X);
hz=size(X,2);
h1=hz/(2^(level-1));
while h1<=hz
if h1>=hh | h1>ll
break;
end
% 对列变换
for col=1:h1
temp=mrec1(X(1:h1,col)',h,g)';
X(1:h1,col)=temp;
end
%再对行变换
for row=1:h1
temp=mrec1(X(row,1:h1),h,g);
X(row,1:h1)=temp;
end
h1=h1*2;
end
Y=X;
function y=mrec1(x,h,g)
%输入:x 行数组
% h为低通滤波器
% g为高通滤波器
%输出: y 进行一级小波重构后值
lenx=size(x,2);
lenh=size(h,2);
h=[h,zeros(1,(lenx-lenh))];
g=[g,zeros(1,(lenx-lenh))];;
c3=dyadup(x(1,1:lenx*0.5),0,lenx);%内插零use para 0
d3=dyadup(x(1,(lenx*0.5+1):lenx),0,lenx);%use para 0
y=ifft(fft(c3,lenx).*fft(h,lenx))+ ifft(fft(d3,lenx).*fft(g,lenx));
6.3.4 Mallat算法在MATLAB中的应用
本小节主要是调用上节的Mallat算法来实现图像信号的分解与重构,并且进行零延拓、周期延拓、对称周期延拓、常数连续延拓4种常见的延拓方法。
【例6.1】利用MATLAB中提供的woman图进行Mallat算法的调用,小波基选取db9。
MATLAB代码设置如下:
clc;
clear;
load woman;
image(X);
colormap(map);
原始图像如图6-5所示。
A=mallatdec2(X,'db3',3);
image(abs(a));
colormap(map);
title('3级多尺度分解图像');
分解图像如图6-6所示。
图6-5 原始图像
图6-6 分解图像
Y=mallatrec2(A,'db3',3);
Y=real(Y);
figure(2);
subplot(1,2,1);
image(X);
colormap(map);
title('原始图像');
subplot(1,2,2);
image(Y);
colormap(map);
title('重构图像');
重构图像如图6-7所示。
图6-7 重构图像
csize=size(X);
sr=csize(1);
sc=csize(2);
mse=sum(sum((Y-X).^2,1))/(sr*sc);
psnr=10*log(255*255/mse)/log(10)
下面分别介绍边界延拓方法,主要包括零延拓、周期延拓、对称周期延拓和常数连续延拓。
MATLAB代码分别设置如下:
%零延拓
[r0,c0]=size(X);
for s=1:r0
a(s,:)=[zeros(1,c0/8),X(s,:),zeros(1,c0/8)];
end
c0=c0+c0/4;
for t=1:c0
T(:,t)=[zeros(r0/8,1)',a(:,t)',zeros(r0/8,1)']';
end
image(T);
colormap;
零延拓如图6-8所示。
%周期延拓
[r0,c0]=size(X);
for s=1:r0
a(s,:)=[X(s,c0/8:-1:1),x(s,:),x(s,end:-1:end-(c0/10-1))];
end
c0=c0+c0/4;
for t=1:c0
T(:,t)=[a(r0/8:-1:1,t)',a(:,t)',a(end:-1:end-(r0/10-1),t)']';
end
image(T);
colormap;
周期延拓如图6-9所示。
图6-8 零延拓
图6-9 周期延拓
%对称周期延拓
[r0,c0]=size(X);
for s=1:r0
a(s,:)=[x(s,end-(c0/10-1):1:end),X(s,:),X(s,1:1:c0/8)];
end
c0=c0+c0/4;
for t=1:c0
T(:,t)=[a(end-(r0/10-1):1:end,t)',a(:,t)',a(1:1:r0/8,t)']';
end
image(T);
colormap;
对称周期延拓如图6-10所示。
%常数连续延拓
[r0,c0]=size(X);
for s=1:r0
r1(1:c0/8)=X(s,1);
r2(1:c0/8)=X(s,c0);
a(s,:)=[r1,X(s,:),r2];
end
c0=c0+c0/4;
for t=1:c0
c1(1:r0/8)=a(1,t);
c2(1:r0/8)=a(r0,t);
T(:,t)=[c1,a(:,t)',c2]';
end
image(T);
colormap;
常数连续延拓如图6-11所示。
图6-10 对称周期延拓
图6-11 常数连续延拓
【例6.2】利用三角正余弦混合信号,通过小波谱分析,进行Mallat算法的实现。
MATLAB代码设置如下:
clc;
clear;
%% 3.波形
f1=50;%频率1
f2=100;%频率2
fs=2*(f1+f2);%采样频率
Ts=1/fs;%采样间隔
N=120;%采样点数
n=1:N;
y=sin(pi*f1*n*Ts)+cos(pi*f2*n*Ts);%三角正余弦波混合
figure(1)
plot(y);
title('两个三角波弦信号')
结果如图6-12所示。
图6-12 混合信号
figure(2)
stem(abs(fft(y)));
title('两信号频谱')
结果如图6-13所示。
图6-13 频谱图
%% 4.小波滤波器谱分析
h=wfilters('db4','l');%低通
g=wfilters('db4','h');% 高通
h=[h,zeros(1,N-length(h))];%补零(圆周卷积,且增大分辨率变于观察)
g=[g,zeros(1,N-length(g))];%补零(圆周卷积,且增大分辨率变于观察)
figure(3);
stem(abs(fft(h)));
title('低通滤波器图')
结果如图6-14所示。
figure(4);
stem(abs(fft(g)));
title('高通滤波器图')
结果如图6-15所示。
图6-14 低通滤波器
图6-15 高通滤波器
%% 5.MALLET 分解算法(圆周卷积的快速傅立叶变换实现)
sig1=ifft(fft(y).*fft(h));%低通(低频分量)
sig2=ifft(fft(y).*fft(g));%高通(高频分量)
figure(5);% 信号图
subplot(2,1,1)
plot(real(sig1));
title('分解信号1')
subplot(2,1,2)
plot(real(sig2));
title('分解信号2')
结果如图6-16所示。
图6-16 分解信号
figure(6);% 频谱图
subplot(2,1,1)
stem(abs(fft(sig1)));
title('分解信号1频谱')
subplot(2,1,2)
stem(abs(fft(sig2)));
title('分解信号2频谱')
结果如图6-17所示。
图6-17 分解信号的频谱
%% 6.MALLET 重构算法
sig1=dyaddown(sig1);% 2抽取
sig2=dyaddown(sig2);% 2抽取
sig1=dyadup(sig1);% 2插值
sig2=dyadup(sig2);% 2插值
sig1=sig1(1,[1:N]);%去掉最后一个零
sig2=sig2(1,[1:N]);%去掉最后一个零
hr=h(end:-1:1);% 重构低通
gr=g(end:-1:1);% 重构高通
hr=circshift(hr',1)';% 位置调整圆周右移一位
gr=circshift(gr',1)';% 位置调整圆周右移一位
sig1=ifft(fft(hr).*fft(sig1));%低频
sig2=ifft(fft(gr).*fft(sig2));%高频
sig=sig1+sig2;% 源信号
%% 7.比较
figure(7);
subplot(2,1,1)
plot(real(sig1));
title('重构低频信号');
subplot(2,1,2)
plot(real(sig2));
title('重构高频信号');
结果如图6-18所示。
图6-18 重构信号
figure(8);
subplot(2,1,1)
stem(abs(fft(sig1)));
title('重构低频信号频谱');
subplot(2,1,2)
stem(abs(fft(sig2)));
title('重构高频信号频谱');
结果如图6-19所示。
图6-19 重构信号频谱
figure(9)
plot(real(sig),'r','linewidth',2);
hold on;
plot(y);
legend('重构信号','原始信号')
title('重构信号与原始信号比较')
结果如图6-20所示。
图6-20 重构信号与原始信号比较
6.4 离散序列的多分辨分析与正交小波变换
对于Mallat分解算法等效于
 经过冲击响应为h[−]n和g[−]n的数字滤波器,然后再分别进行“二抽取”,本节将重点介绍离散序列是如何进行小波分解的。
6.4.1 离散序列的小波分解
从数字滤波器的角度来看,6.2 节中的h0
 和h1
 所决定的滤波器系数称为双通道滤波器组,如图6-21所示。
图6-21 分解电路结构
若将初始序列c0,k
 看作一离散序列,则图6-21(c)所示为一输入序列进行双通道滤波的过程。
(1)滤波输出特性:由于h0
 具有低通特性,h1
 具有高通特性,因此它们的滤波输出分别对应于离散信号的低频概貌和高频细节。
(2)输出长度:两滤波器的输出序列长度=输入序列长度。
总长度=原信号长度的两倍
(3)输出序列的带宽=原信号的一半。
(4)由带限信号的采样定理知,可以将采样频率降低一半而不丢失任何信息,故此处允许二抽取,对应c1,k
 和d1,k
 的数据长度减半,使总的输出序列长度与输入长度保持一致。
对c1,k
 继续做类似的分解(由V1
 到V2
 、W2
 的分解),可得c2,k
 和d2,k
 。所需电路的结构及滤波器系数h0
 和h1
 不变,并且类似的结构可以一直重复推演下去。图6-22所示为二次分解的电路结构,即每一次分解把该输入离散信号分解成一个低频的粗略逼近(概貌)和一个高频的细节部分。而且每次输出采用率都可以再减半,来保证总的输出系数长度不变。这样就将原始离散信号进行了多分辨率分析。
图6-22 二次分解
从频域空间剖分的观点来分析上述离散序列的分解过程。
如果把离散序列占据的总频带0~π定义为空间V-1
 ,经第一次分解后,V-1
 被划分成两个等宽
 的低频V0
 和高频W0
 空间,并由ϕ和ψ之间的正交性得知,两空间必定正交。经第二次分解后,低频部分V0
 又被等分为两个等宽的低频V1
 和高频W1
 两部分。
如图6-23所示,这些带通都是等Q的滤波带,这些子空间对应于多尺度空间。对照连续函数空间L2
 (R)的多分辨分析(MRA),称图6-23所示的空间部分为离散函数空间l2
 的MRA。
图6-23 频率空间的剖分
同连续函数的正交小波变换相对应,称滤波器的各级输出
 为离散信号在不同尺度(或分辨率)下的小波系数,而
 分别对应于离散信号在不同分辨率下的剩余系数。因此,图6-21(c)所示的电路结构实际上完成的是离散信号的小波变换。
在各级低通h0
 (−n)和高通h1
 (−n)滤波器都相同的情况下如何实现多分辨分析呢?
由于滤波器的设计是根据归一频率进行的,前一级输出被二抽取后,虽然其归一频带不变,但其实际频带减半,因此同一滤波器组(h0
 (−n)和h1
 (−n))在不同级别可输出不同频率分辨率的信号。
图6-24所示为一离散信号及其三尺度下的小波分解。可以看到,每分解一次,数据长度减半。
图6-24 离散信号的小波分解(分解3个尺度)
离散序列进行小波分解后,所有尺度下的小波系数加最大尺度上的尺度系数后的总长等于原函数序列的长度。所不同的是,将序列投影到小波域,其各分量按频率的不同重新组合排序,而且新的序列具有集中系数的能力,便于数据压缩、去噪及特征提取等。
6.4.2 离散序列的小波重构
若用数字滤波器理论描述6.3节的重构方程,其电路结构如图6-25(a)所示,图中h0
 (k)和h1
 (k)同信号分解时的一样,为多分辨框架下的滤波系数。
说明:
(1)此结论针对正交小波而言,实际中多采样率滤波器组的分析滤波器和综合滤波器不一定相同,如对应双正交小波,分析和综合时采用的是互为对偶的滤波器组;
(2)二插值。在输入序列每两个相邻样本之间补一个零,使数据长度增加一倍;
(3)若将所得到的 j尺度上的尺度系数cj,k
 再加上小波系数dj,k
 ,重复 6-25(a)所示电路处理,则可得到cj−1,k
 ,见图6-25(b),如此重复下去,可重构出任意尺度上的尺度系数,直至原始离散信号。
图6-25 重构的电路结构
6.5 二维正交小波变换
正交小波变换是小波变换中比较重要的一种变换,本节将继连续、离散小波变换后着重介绍有关二维信号的正交小波变换及多维小波基的构造方法。
6.5.1 L2
 (R2
 )空间的两种正交小波基
二维正交小波基主要有两种结构方式:正方块二维正交小波基和长方块二维正交小波基。它们分别对应于L2
 (R2
 )空间的两种不同结构的MRA。
1.正方块形式的二维小波基与二维正交小波变换
设在L2
 (R)中已给定一个多尺度分析:
相应的尺度函数为ϕ(x)。定义j尺度下的二维尺度空间
 为:
其中符号
 表示空间相乘,则由
 是Vj
 空间的标准正交基可知,
 一定是
 空间的标准正交基。
令Wj
 为Vj
 在Vj-1
 中的正交补空间,即:

其中
分别称之为二维小波空间。显然
 空间的标准正交基,
 空间的标准正交基,
 空间的标准正交基,且由式6(.5)知,空间 必定两两正交。
由式(6.6)可知,二维尺度空间有:
且有:
同时
 显然满足MRA的伸缩规则性、平移不变性和正交基存在性。因此,我们可以得到L2
 (R2
 )空间的一个MRA:
 ,且有:
从而 构成了L2
 (R2
 )中的正交小波基。
由式(6.6)知,将二维尺度空间进行一次分解后所得的 4个二维子空间均是由同一尺度的两个一维空间相乘得到的,因此每一子空间在两个方向上的尺度相同,形状为正方块(见图6-26)。称用这种分解方法得到的二维正交小波基为正方块形式的二维正交小波基。
图6-26 正方块正交小波基的空间划分
假设任意L2
 (R2
 )空间的函数
 在正方块二维正交小波基下的展开公式为:
其中
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

___Y1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值