小波变换完美通俗解读.docx
- 文档编号:7128340
- 上传时间:2023-01-21
- 格式:DOCX
- 页数:13
- 大小:1.34MB
小波变换完美通俗解读.docx
《小波变换完美通俗解读.docx》由会员分享,可在线阅读,更多相关《小波变换完美通俗解读.docx(13页珍藏版)》请在冰豆网上搜索。
小波变换完美通俗解读
这是《小波变换和motion信号处理》系列的第二篇,深入小波。
第一篇我进行了基础知识的铺垫,第三篇主要讲解应用。
在上一篇中讲到,每个小波变换都会有一个motherwavelet,我们称之为母小波,同时还有一个fatherwavelet,就是scalingfunction。
而该小波的basis函数其实就是对这个母小波和父小波缩放和平移形成的。
缩放倍数都是2的级数,平移的大小和当前其缩放的程度有关。
还讲到,小波系统有很多种,不同的母小波,衍生的小波基就完全不同。
小波展开的近似形式是这样:
其中的
就是小波级数,这些级数的组合就形成了小波变换中的基basis。
和傅立叶级数有一点不同的是,小波级数通常是orthonormalbasis,也就是说,它们不仅两两正交,还归一化了。
我们还讲了一般小波变换的三个特点,就是小波级数是二维的,能定位时域和频域,计算很快。
但我们并没有深入讲解,比如,如何理解这个二维?
它是如何同时定位频域和时域的?
在这一篇文章里,我们就来讨论一下这些特性背后的原理。
首先,我们一直都在讲小波展开的近似形式。
那什么是完整形式呢?
之前讲到,小波basis的形成,是基于基本的小波函数,也就是母小波来做缩放和平移的。
但是,母小波并非唯一的原始基。
在构建小波基函数集合的时候,通常还要用到一个函数叫尺度函数,scalingfunction,人们通常都称其为父小波。
它和母小波一样,也是归一化了,而且它还需要满足一个性质,就是它和对自己本身周期平移的函数两两正交:
另外,为了方便处理,父小波和母小波也需要是正交的。
可以说,完整的小波展开就是由母小波和父小波共同定义的。
其中
是母小波,
是父小波。
需要提醒一点的是,这个正交纯粹是为了小波分析的方便而引入的特性,并不是说小波变换的基就一定必须是正交的。
但大部分小波变换的基确实是正交的,所以本文就直接默认正交为小波变换的主要性质之一了。
引入这个父小波呢,主要是为了方便做多解析度分析(multiresolutionanalysis,MRA)。
说到这里,你的问题可能会井喷了:
好好的为什么出来一个父小波呢?
这个scalingfunction是拿来干嘛的?
它背后的物理意义是什么?
waveletfunction背后的物理意义又是什么?
这个多解析度分析又是什么呢?
不急,下面,我们围绕一个例子来巩固一下前面的知识,同时再引出新的特性。
假设我们有这样一个信号:
该信号长度为8,是离散的一维信号。
我们要考虑的,就是如何用小波将其展开。
为了方便讲解,我们考虑最简单的一种小波,哈尔小波。
下面是它的一种母小波:
那如何构建基于这个母小波的基呢?
刚才提到了,要缩放,要平移。
我们先试试缩放,那就是ψ(2n):
但这样的话,它与自己的内积就不是1了,不符合小波基orthonormal的要求,所以我们要在前面加一个系数根号二,这样我们就得到了另一个哈尔小波的basisfunction:
同理,我们可以一直这样推广下去做scale,得到4n,8n,…….下的basisfunction。
当然在这个例子里,我们信号长度就是8,所以做到4n就够了。
但推广来说,就是这种scaling对母小波的作用为
,这是归一化后的表示形式。
平移的话也很简单,我们可以对母小波进行平移,也可以对scale之后的basisfunction进行平移。
比如对上一幅图中的basisfunction进行平移,就成了
看得出来,平移后的basisfunction和母小波以及仅仅scale过的小波,都是正交的,附合小波basis的特点。
如果我们用ψ(n)来表示这个motherwavelet,那么这些orthonormalbasis函数可以写成:
这里的k是可以看成时域的参数,因为它控制着小波基时域的转移,而j是频域的参数,因为它决定了小波基的频率特性。
看到这里,你应该会感觉很熟悉,因为这里的平移和变换本质和刚才对scalingfunction的平移变换是一模一样的。
这样,我们就有了针对此信号space的哈尔小波basis组合:
图1
可以看出,我们用到了三层频率尺度的小波函数,每往下一层,小波的数量都是上面一层的两倍。
在图中,每一个小波基函数的表达形式都写在了波形的下面。
等等,你可能已经发现了,有问题。
这里为什么多了个没有函数表达式的波形呢?
这货明显不是waveletfunction阿。
没错,它是之前提到的scalingfunction,也就是父小波。
然后你可能就会问,为啥这个凭空插了一个scalingfunction出来呢?
明明目标信号已经可以用纯的小波基组合表示了。
是,确实是,就算不包括scalingfunction,这些小波函数本身也组成了正交归一基,但如果仅限于此的话,小波变换也就没那么神奇的功效了。
引入这个scalingfunction,才能引入我们提到的多解析度分析的理论,而小波变换的强大,就体现在这个多解析度上。
那在这里,我们怎么用这个多解析度呢?
这个哈尔小波basis组合是怎么通过多解析度推导出来的呢?
话说在数学定义中,有一种空间叫Lebesgue空间,对于信号处理非常重要,可以用L^p(R)表示,指的是由p次可积函数所组成的函数空间。
我们在小波变换中要研究的信号都是属于L^2(R)空间的,这个空间是R上的所有处处平方可积的可测函数的集合,这样就等于对信号提出了一个限制,就是信号能量必须是有限的,否则它就不可积了。
小波变换的定义都是基于但不限于L^2(R)中的信号的。
这玩意的特性要具体解释起来太数学了,牵涉到太多泛函知识,我就不在这里详述了。
而且老实说我也没能力完全讲清楚,毕竟不是学这个的,有兴趣可以参考wiki。
总之你记住,小波变换研究中所使用的信号基本都是平方可积的信号,但其应用不限于这种信号,就行了。
对L^2(R)空间做MRA是在干嘛呢?
就是说,在L^2(R)空间中,我们可以找出一个嵌套的空间序列
,并有下列性质:
(i)
(ii)
(iii)
(iv)
(v)有这样一个方程
是
的orthonormal basis。
我来简单解释一下这些性质。
这个V_j都是L^2(R)空间中的子空间,然后他们是由小到大的,交集是{0},因为这是最小的子空间,并集就是L空间。
是不是有点难以理解?
没关系,看看下面这个图就清楚了:
这个图是圈圈套圈圈,最里面的圈是V0,之后分别是V1,V2,V3,V4。
那他们有趣的性质就是,假如有一个函数f(t)他属于一个某空间,那你将其在时域上平移,它还是属于这个空间。
但如果你对它频域的放大或缩小,它就会相应移到下一个或者上一个空间了。
同时我们还知道,你要形容每一个空间的话,都需要有对应的orthonormalbasis,这是必然的,那对于V0来讲,它的orthonormalbasis就是
这一系列函数是什么呢?
是
的时域变换,而且我们刚才也说了,时域上平移,是不会跳出这个空间的。
这样,我们就可以说,由这一系列basis所定义的L^2(R)子空间V0被这些basis所span,表示成:
k从负无穷到正无穷。
上面的bar表示这是一个闭包空间,也就是说
这样,我们就定义了基本的V0这个子空间。
刚才说了,这个子空间的基都是对
的整数时域变换,这里我们称
为scalingfunction,所以换个说法,就是说这里整个子空间V0,由scalingfunction和其时域变换的兄弟们span。
当然,如果这个scalingfunction只是用来代表一个子空间的,那它的地位也就不会这么重要了。
刚才我们提到,这个嵌套空间序列有一个性质,
。
这就是这个函数,如果你对它频域的放大或缩小,它就会相应移到下一个或者上一个空间了。
这个性质就有意思了,它代表什么呢?
对于任何一个包含V0的更上一层的空间来讲,他们的基都可以通过对scalingfunction做频域的scale后再做时域上的整数变换得到!
推广开来就是说,当
我们有
这也就意味着,对于任何属于V_j空间的函数f(t),都可以表示为:
到这里,我们就明白这些个子空间和那个凭空冒出来的scalingfunction的作用了。
scaling的构建这些不同的子空间的基础,当j越大的时候,每一次你对频率变换后的scalingfunction所做的时域上的整数平移幅度会越小,这样在这个j子空间里面得到的f(t)表示粒度会很细,细节展现很多。
反之亦然。
通俗点说,就是对scalingfunction的变换平移给你不同的子空间,而不同的子空间给你不同的分辨率,这样你就可以用不同的分辨率去看目标信号。
下面就是时候看看什么是MRAequation了,这是更加有趣,也是更加核心的地方。
通过刚才的讲解,V0属于V1,那scalingfunction
是在V0中的,自然也在V1中了。
我们把他写成V1的基的线性组合,那就是
其中的h(n)是scalingfunction的系数,也叫做scalingfilter或者scalingvector,可以是实数,也可以是虚数。
根号2是为了维持norm为1的。
看,在这个公式里,我们就把属于V0的函数用V1的基表示出来了。
同理,我们可以循环如此,把属于V0的
在V2,V3,…,Vn中表示出来。
这些方程就是MRAequation,也叫refinementequation,它是scalingfunction理论的基础,也是小波分析的基础之一。
好,稍微总结一下。
到现在,已经讲了关于scalingfunction的基本理论知识,知道了信号空间可以分为不同精细度的子空间,这些子空间的basis集合就是scalingfunction或者频率变换之后的scalingfunction,如下图所示:
上图就是四个子空间的basis集合的展览。
通过前面的讨论,我们还知道,一开始的scalingfunction可以通过更精细的子空间的scalingfunction(它们都是对应子空间的basis)来构建。
比如
对于更加finer的scale:
图2
依此类推。
实际上,对于任何scale和translate过的scalingfunction,都可以用更加精细的scale层面上的scalingfunction构建出来。
然后,我们有各种scale下的scalingfunction了,该看看它们分别所对应的嵌套的空间序列
了。
先看看V0,自然就是以基本的scalingfunction为基础去span出来的:
这个不新鲜,刚才就讲过了。
这个子空间代表什么样的信号?
常量信号。
道理很简单,这个scalingfunction在整个信号长度上,没有任何变化。
继续往下看:
这个相比V0更加finer的子空间,代表着这样一种信号,它从1-4是常量,从5-8是另一个常量。
同理我们有:
V2代表的信号,是分别在1,2;3,4;5,6;7,8上有相同值的信号。
那么V3呢?
则表示任何信号,因为对于V3来讲,任何一个时间刻度上的值都可以不一样。
而且现在,我们也可以通过上面的一些scalingfunctions的波形验证了之前提到的多解析度分析中的一个核心性质,那就是:
我们之前讲了一堆多解析度的理论,但直到现在,通过这些图形化的分析,我们可能才会真正理解它。
那好,既然我们有一个现成的信号,那就来看看,对这个信号作多解析度分析是啥样子的:
你看,在不同的子空间,对于同一个信号就有不同的诠释。
诠释最好的当然是V3,完全不损失细节。
这就是多解析度的意义。
我们可以有嵌套的,由scalingfunction演变的basisfunction集合,每一个集合都提供对原始信号的某种近似,解析度越高,近似越精确。
说到这里,可能你对scalingfunction以及多解析度分析已经比较理解了。
但是,我们还没有涉及到它们在小波变换中的具体应用,也就是还没有回答刚才那个问题:
凭空插了一个scalingfunction到小波basis组合中干嘛。
也就是说,我们希望理解scalingfunction是怎么和小波函数结合的呢,多解析度能给小波变换带来什么样的好处呢。
这其实就是是小波变换中的核心知识。
理解了这个,后面的小波变换就是纯数学计算了。
好,我们已经知道,对于子空间V0,basis是scalingfunction:
对应的小波函数是:
然后子空间V1的basis集合是这俩哥们:
看出什么规律了么?
多看几次这三个图,你会惊讶地发现,在V0中的scalingfunction和waveletfunction的组合,其实就是V1中的basis!
继续这样推导,V1本来的的basis是:
然后V1中对应的waveletfunction是
他们的组合,本质上也就是V2的basis(参考图2)。
你继续推导下去,会得到同样的结论:
在scalej的waveletfunction,可以被用来将Vj的basis扩展到V(j+1)中去!
这是一个非常非常关键的性质,因为这代表着,对任何一个子空间Vj,我们现在有两种方法去得到它的orthonormalbasis:
1.一种就是它本来的basis
,对任意k。
2.第二种就是它上一个子空间的basis
,对任意k,以及上一级子空间的waveletfunction
,对任意k。
第二种选择能给我们带来额外的好处,那就是我们可以循环不断地用上一级子空间的scalingfunction以及waveletfunction的组合来作为当前子空间的基。
换句话说,如果针对V3这个子空间,它实际上就有四种不同的,但是等价的orthonormalbasis:
1.本级(V3)的scalingfunctionbasisset
2.上一级(V2)的scalingfunction+waveletfunction;
3.上上一级(V1)的scalingfunction+上上一级(V1)的waveletfunction+上一级(V2)的waveletfunction;
4.上上上一级(V0)的scalingfunction+上上上一级(V0)的waveletfunction+上上一级(V1)的waveletfunction+上一级(V2)的waveletfunction
好,看看最后一种选取方式,有没有感到眼熟?
对了,它就是我们之前提到的“针对此信号space的哈尔小波basis组合”,参见图1。
现在我们知道了,这个scalingfunction不是凭空插进去的,而是通过不断的嵌套迭代出来的:
)
那为什么我们最后选定的是这种选取方式呢?
实际上,刚才介绍的这个性质已经告诉我们,对于任何的scalej0,我们都可以给我们的signalspace找到一组orthonormalbasis,这个basis是通过组合scalej0上的scalingfunction以及所有在scalej,j>=j0上的wavelets得到的。
这样,基于这个orthonormalbasis,所有信号空间中的信号都可以写成组成这个basis的functions的线性组合:
对应的系数的计算和平常一样:
这,就是最终的,也是最核心的,小波变换形式。
不管是信号压缩,滤波,还是别的方式处理,只要是用小波变换,都逃不出这个基础流程:
1.选取合适的waveletfunction和scalingfunction,从已有的信号中,反算出系数c和d。
2.对系数做对应处理
3.从处理后的系数中重新构建信号。
这里的系数处理是区别你的应用的重点。
比如图像或者视频压缩,就希望选取能将能量聚集到很小一部分系数中的小波,然后抛弃那些能量很小的小波系数,只保留少数的这些大头系数,再反变换回去。
这样的话,图像信号的能量并没有怎么丢失,图像体积却大大减小了。
还有一个没有解释的问题是,为什么要强调尺度函数和小波函数组成一个orthonormalbasis呢?
计算方便是一方面,还有一个原因是,如果他们满足这个性质,就满足瑞利能量定理,也就是说,信号的能量,可以完全用每个频域里面的展开部分的能量,也就是他们的展开系数表示:
到这里,我们对小波变换的形式就讲完了。
虽然是用的最简单的哈尔小波为例子,但举一反三即可。
我们着重介绍了多解析度分析以及它给小波变换带来的杀手锏:
时域频域同时定位。
结束之前,再多说几句小波变换的意义。
我们拿刚才例子中V3子空间的第二种可选择的orthonormalbasis作为例子:
左边这四个basis组成元素,也就是scalingfunctions,的系数,表征的是信号的local平均(想想它们和信号的内积形式),而右边的这四个basis组成元素,也就是waveletfunctions,的系数则表征了在local平均中丢失的信号细节。
得益于此,多解析度分析能够对信号在越来越宽的区域上取平均,等同于做低通滤波,而且,它还能保留因为平均而损失的信号细节,等同于做高通滤波!
这样,我们终于可以解释了waveletfunction和scalingfunction背后的物理意义了:
waveletfunction等同于对信号做高通滤波保留变化细节,而scalingfunction等同于对信号做低通滤波保留平滑的shape!
对小波变换的基础知识,我们就讲到这里。
需要注意的是,这只是小波变换最基本最基本的知识,但也是最核心的知识。
掌握了这些,代表你对小波变换的物理意义有了一定的了解。
但对于小波变换本身的讲解,一本书都不一定能将讲透,还有很多的基础知识我都没有讲,比如如何构建自己的scalingfunction,选取合适的系数集h[k],并由此构建自己的waveletfunctions。
所以,如果有深入下去研究的同学,好好买一本书来看吧。
而只是希望用小波变换来服务自己的应用的同学,个人觉得这些知识已经足够让你用来起步了。
Published2011-02-18
Filedin algorithm andtagged 傅立叶变换, 小波变换, 信号处理
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 变换 完美 通俗 解读
![提示](https://static.bdocx.com/images/bang_tan.gif)