1
完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>
标签 > 小波变换
小波变换是一种新的变换分析方法,它继承和发展了短时傅立叶变换局部化的思想,同时又克服了窗口大小不随频率变化等缺点,能够提供一个随频率改变的“时间-频率”窗口,是进行信号时频分析和处理的理想工具。
小波变换(wavelet transform,WT)是一种新的变换分析方法,它继承和发展了短时傅立叶变换局部化的思想,同时又克服了窗口大小不随频率变化等缺点,能够提供一个随频率改变的“时间-频率”窗口,是进行信号时频分析和处理的理想工具。它的主要特点是通过变换能够充分突出问题某些方面的特征,能对时间(空间)频率的局部化分析,通过伸缩平移运算对信号(函数)逐步进行多尺度细化,最终达到高频处时间细分,低频处频率细分,能自动适应时频信号分析的要求,从而可聚焦到信号的任意细节,解决了Fourier变换的困难问题,成为继Fourier变换以来在科学方法上的重大突破。
传统的信号理论,是建立在Fourier分析基础上的,而Fourier变换作为一种全局性的变化,其有一定的局限性,如不具备局部化分析能力、不能分析非平稳信号等。在实际应用中人们开始对Fourier变换进行各种改进,以改善这种局限性,如STFT(短时傅立叶变换)。由于STFT采用的的滑动窗函数一经选定就固定不变,故决定了其时频分辨率固定不变,不具备自适应能力,而小波分析很好的解决了这个问题。小波分析是一种新兴的数学分支,它是泛函数、Fourier分析、调和分析、数值分析的最完美的结晶;在应用领域,特别是在信号处理、图像处理、语音处理以及众多非线性科学领域,它被认为是继Fourier分析之后的又一有效的时频分析方法。小波变换与Fourier变换相比,是一个时间和频域的局域变换因而能有效地从信号中提取信息,通过伸缩和平移等运算功能对函数或信号进行多尺度细化分析(Multiscale Analysis),解决了Fourier变换不能解决的许多困难问题。
小波变换(wavelet transform,WT)是一种新的变换分析方法,它继承和发展了短时傅立叶变换局部化的思想,同时又克服了窗口大小不随频率变化等缺点,能够提供一个随频率改变的“时间-频率”窗口,是进行信号时频分析和处理的理想工具。它的主要特点是通过变换能够充分突出问题某些方面的特征,能对时间(空间)频率的局部化分析,通过伸缩平移运算对信号(函数)逐步进行多尺度细化,最终达到高频处时间细分,低频处频率细分,能自动适应时频信号分析的要求,从而可聚焦到信号的任意细节,解决了Fourier变换的困难问题,成为继Fourier变换以来在科学方法上的重大突破。
传统的信号理论,是建立在Fourier分析基础上的,而Fourier变换作为一种全局性的变化,其有一定的局限性,如不具备局部化分析能力、不能分析非平稳信号等。在实际应用中人们开始对Fourier变换进行各种改进,以改善这种局限性,如STFT(短时傅立叶变换)。由于STFT采用的的滑动窗函数一经选定就固定不变,故决定了其时频分辨率固定不变,不具备自适应能力,而小波分析很好的解决了这个问题。小波分析是一种新兴的数学分支,它是泛函数、Fourier分析、调和分析、数值分析的最完美的结晶;在应用领域,特别是在信号处理、图像处理、语音处理以及众多非线性科学领域,它被认为是继Fourier分析之后的又一有效的时频分析方法。小波变换与Fourier变换相比,是一个时间和频域的局域变换因而能有效地从信号中提取信息,通过伸缩和平移等运算功能对函数或信号进行多尺度细化分析(Multiscale Analysis),解决了Fourier变换不能解决的许多困难问题。
小波分析
与Fourier变换相比,小波变换是空间(时间)和频率的局部变换,因而能有效地从信号中提取信息。通过伸缩和平移等运算功能可对函数或信号进行多尺度的细化分析,解决了Fourier变换不能解决的许多困难问题。小波变换联系了应用数学、物理学、计算机科学、信号与信息处理、图像处理、地震勘探等多个学科。数学家认为,小波分析是一个新的数学分支,它是泛函分析、Fourier分析、样条分析、数值分析的完美结晶;信号和信息处理专家认为,小波分析是时间—尺度分析和多分辨分析的一种新技术,它在信号分析、语音合成、图像识别、计算机视觉、数据压缩、地震勘探、大气与海洋波分析等方面的研究都取得了有科学意义和应用价值的成果。信号分析的主要目的是寻找一种简单有效的信号变换方法,使信号所包含的重要信息能显现出来。小波分析属于信号时频分析的一种,在小波分析出现之前,傅立叶变换是信号处理领域应用最广泛、效果最好的一种分析手段。傅立叶变换是时域到频域互相转化的工具,从物理意义上讲,傅立叶变换的实质是把这个波形分解成不同频率的正弦波的叠加和。正是傅立叶变换的这种重要的物理意义,决定了傅立叶变换在信号分析和信号处理中的独特地位。傅立叶变换用在两个方向上都无限伸展的正弦曲线波作为正交基函数,把周期函数展成傅立叶级数,把非周期函数展成傅立叶积分,利用傅立叶变换对函数作频谱分析,反映了整个信号的时间频谱特性,较好地揭示了平稳信号的特征。
小波变换是一种新的变换分析方法,它继承和发展了短时傅立叶变换局部化的思想,同时又克服了窗口大小不随频率变化等缺点,能够提供一个随频率改变的“时间-频率”窗口,是进行信号时频分析和处理的理想工具。它的主要特点是通过变换能够充分突出问题某些方面的特征,因此,小波变换在许多领域都得到了成功的应用,特别是小波变换的离散数字算法已被广泛用于许多问题的变换研究中。从此,小波变换越来越引起人们的重视,其应用领域来越来越广泛。
应用
是与小波分析的理论研究紧密地结合在一起的。现在,它已经在科技信息产业领域取得了令人瞩目的成就。电子信息技术是六大高新技术中重要的一个领域,它的重要方面是图象和信号处理。现今,信号处理已经成为当代科学技术工作的重要部分,信号处理的目的就是:准确的分析、诊断、编码压缩和量化、快速传递或存储、精确地重构(或恢复)。从数学地角度来看,信号与图象处理可以统一看作是信号处理(图象可以看作是二维信号),小波分析的许多分析和应用问题,都可以归结为信号处理问题。现在,对于其性质随时间是稳定不变的信号(平稳随机过程),处理的理想工具仍然是傅立叶分析。但是在实际应用中的绝大多数信号是非稳定的(非平稳随机过程),而特别适用于非稳定信号的工具就是小波分析。
事实上小波分析的应用领域十分广泛,它包括:数学领域的许多学科;信号分析、图象处理;量子力学、理论物理;军事电子对抗与武器的智能化;计算机分类与识别;音乐与语言的人工合成;医学成像与诊断;地震勘探数据处理;大型机械的故障诊断等方面;例如,在数学方面,它已用于数值分析、构造快速数值方法、曲线曲面构造、微分方程求解、控制论等。在信号分析方面的滤波、去噪声、压缩、传递等。在图象处理方面的图象压缩、分类、识别与诊断,去污等。在医学成像方面的减少B超、CT、核磁共振成像的时间,提高分辨率等。
⑴小波分析用于信号与图象压缩是小波分析应用的一个重要方面。它的特点是压缩比高,压缩速度快,压缩后能保持信号与图象的特征不变,且在传递中可以抗干扰。基于小波分析的压缩方法很多,比较成功的有小波包最好基方法,小波域纹理模型方法,小波变换零树压缩,小波变换向量压缩等。
⑵小波在信号分析中的应用也十分广泛。它可以用于边界的处理与滤波、时频分析、信噪分离与提取弱信号、求分形指数、信号的识别与诊断以及多尺度边缘检测等。
⑶在工程技术等方面的应用。包括计算机视觉、计算机图形学、曲线设计、湍流、远程宇宙的研究与生物医学方面。
从图像处理的角度看,小波变换存在以下几个优点:
⑴小波分解可以覆盖整个频域(提供了一个数学上完备的描述)⑵小波变换通过选取合适的滤波器,可以极大的减小或去除所提取得不同特征之间的相关性⑶小波变换具有“变焦”特性,在低频段可用高频率分辨率和低时间分辨率(宽分析窗口),在高频段,可用低频率分辨率和高时间分辨率(窄分析窗口)⑷小波变换实现上有快速算法(Mallat小波分解算法)
能不能通俗的讲解下傅立叶分析和小波分析之间的关系
小波,一个神奇的波,可长可短可胖可瘦(伸缩平移),当去学习小波的时候,第一个首先要做的就是回顾傅立叶变换(又回来了,唉),因为他们都是频率变换的方法,而傅立叶变换是最入门的,也是最先了解的,通过傅立叶变换,了解缺点,改进,慢慢的就成了小波变换。主要的关键的方向是傅立叶变换、短时傅立叶变换,小波变换等,第二代小波的什么的就不说了,太多了没太多意义。当然,其中会看到很多的名词,例如,内积,基,归一化正交,投影,Hilbert空间,多分辨率,父小波,母小波,这些不同的名词也是学习小波路上的标志牌,所以在刚学习小波变换的时候,看着三个方向和标志牌,可以顺利的走下去,当然路上的美景要自己去欣赏(这里的美景就是定义和推导了)。因为内容太多,不是很重要的地方我都注释为(查定义)一堆文字的就是理论(可以大体一看不用立刻就懂),同时最下面也给了几个网址辅助学习。
一、基
傅立叶变换和小波变换,都会听到分解和重构,其中这个就是根本,因为他们的变化都是将信号看成由若干个东西组成的,而且这些东西能够处理还原成比原来更好的信号。那怎么分解呢?那就需要一个分解的量,也就是常说的基,基的了解可以类比向量,向量空间的一个向量可以分解在x,y方向,同时在各个方向定义单位向量e1、e2,这样任意一个向量都可以表示为a=xe1+ye2,这个是二维空间的基,
而对于傅立叶变换的基是不同频率的正弦曲线,所以傅立叶变换是把信号波分解成不同频率的正弦波的叠加和,而对于小波变换就是把一个信号分解成一系列的小波,这里时候,也许就会问,小波变换的小波是什么啊,定义中就是告诉我们小波,因为这个小波实在是太多,一个是种类多,还有就是同一种小波还可以尺度变换,但是小波在整个时间范围的幅度平均值是0,具有有限的持续时间和突变的频率和振幅,可以是不规则,也可以是不对称,很明显正弦波就不是小波,什么的是呢,看下面几个图就是
当有了基,以后有什么用呢?
下面看一个傅立叶变换的实例:
对于一个信号的表达式为x=sin(2*pi*t)+0.5*sin(2*pi*5*t);
这里可以看到是他的基就是sin函数,频率是1和5,下面看看图形的表示,是不是感受了到了频域变换给人的一目了然。
基具有非冗余性,即使基不是正交的,有相关性,但若去掉其中任何一个,则不成为基,这一点也叫完备性;基的表示有唯一性,即给定一族基对一个函数的表达是唯一的;一般情况下基非正交,也称为为exact frame(Resize basis),这个时候要表示信号可以将基正交化成唯一的正交基(对偶为其自身);也可以求其对偶框架(dual frame),其对应了小波变换中的双正交情形!信号可以依框架分解,然后用对偶框架重构。若在基集里添加一些新的向量,并随意调整空间位置,则有可能成为框架。把函数与基或框架作内积,也可以说成是一种函数空间到系数空间的变换。若某种变换后的能量(内积的平方和度量)仍然有一个大于0的上下界,才可以成为框架,由于框架的冗余性,所以系数的表达也不具有唯一性。若上下界相等,则为紧框架,且界表示冗余度。若上下界相等为且为1,称为pasval identity frame,此时不一定为正交基(想象把一组正交基中某一个拆成两个同方向的基之和,则pasval identity仍然成立),此时若加上基的长度均为一的条件,则框架退化为正交基。可能你会问我们用基来表示信号就行了啊,为什么还要框架呢?其实很多信号表示方法不能构成基,却能构成框架,如短时傅立叶变换中如要求窗函数满足基条件,则可推出该函数有很差的时频局部化性质(事实上退化为了傅立叶变换。
二、内积
在Hilbert空间(查定义)里看到这个东西,用来刻画两个向量的夹角,当内积为0时,两个向量正交,若g为Hilbert空间里的正交基的时候,内积为f向基上的正交投影;(Hilbert空间是一个很直观的空间,我一直都理解为欧氏空间去理解定义在其上的东西,L^2(平方可积,查定义)和l^2同样为Hilbert空间。
下面这个公式是基本,经过变形后会用在推导中:
如果两个向量的内积为0 ,就说他们是正交的。
如果一个向量序列相互对偶正交,并且长度都为1,那么就说他们是正交归一化的。
对于,存在L2(R)上一组标准正交基gi(t),i=1,2,3…。,使得
L2(R)上任意一个函数f(t)都可以由L2(R)上的一个规范正交基gi(t)进行线性组合表示出来
三、傅立叶的缺点
先列举出来缺点,然后再说明:
(1) Fourier分析不能刻画时间域上信号的局部特性
(2) Fourier分析对突变和非平稳信号的效果不好,没有时频分析
傅立叶变换傅立叶变换将函数投影到三角波上,将函数分解成了不同频率的三角波,这不能不说是一个伟大的发现,但是在大量的应用中,傅立叶变换的局限性却日趋明显,事实上在光滑平稳信号的表示中,傅立叶基已经达到了近似最优表示,但是日常生活中的信号却并不是一直光滑的,而且奇异是平凡的,傅立叶在奇异点的表现就着实让人不爽,从对方波的傅立叶逼近就可以看出来,用了大量不同频率的三角波去逼近其系数衰减程度相当缓慢,而且会产生Gibbs效应。其内在的原因是其基为全局性基,没有局部化能力,以至局部一个小小的摆动也会影响全局的系数。实际应用中很需要时频局部化,傅立叶显然缺乏此能力了。即使如此,由于其鲜明的物理意义和快速计算,在很多场合仍然应用广泛。傅立叶变换在从连续到离散的情形是值得借鉴与学习的,大家都知道,时间周期对应频域离散,时间离散对应频域周期,时间离散周期对应频域离散 周期,DFT其实是将离散信号做周期延拓然后做傅立叶变换再截取一个周期,反变换同样如此,所以DFT用的是块基的概念,这样如果信号两端的信号连接后不再光滑(即使两边都光滑),同样会在边界上产生大幅值系数(边界效应),延伸到图像中就是块效应。当对信号做对称周期延拓后再做傅立叶变换得到的正弦系数全部为0,也就是任何对称函数可以写成余弦的线性组合,同样按照离散的思路构造得到的是离散块余弦基,即DCT变换,虽然DCT可以通过对称后周期延拓再变换减少了边界效应(两边信号接上了,但不一定平滑),但任不能消除块效应,尤其是图像变换中人为将图像分成8*8处理后块效应更加明显。但是DCT很好的能量聚集效应让人惊奇,加之快速计算方法使它替代DFT成为图像的压缩的标准了很长时间(JPEG)。
上面一堆文字也许看的有点蒙,还是用图来说明
第一个就是傅立叶变换是整个时域,所以没有局部特征,这个也是他的基函数决定的看图,同时如果在时域张有了突变,那么在频域就需要大量的三角波去拟合,这也是傅立叶变换性质决定的。
第二个就是面对非平稳信号,傅立叶变换可以看到由哪些频域组成,但是不知道各成分对应的时刻是什么,也就是没有时频分析,看不出来信号频域随着时间变换的情况,反过来说就是,一个的频图对应好几个时域图,不知道是哪个,这个在实际应用中就不好了,看图
做FFT后,我们发现这三个时域上有巨大差异的信号,频谱(幅值谱)却非常一致。尤其是下边两个非平稳信号,我们从频谱上无法区分它们,因为它们包含的四个频率的信号的成分确实是一样的,只是出现的先后顺序不同。
可见,傅里叶变换处理非平稳信号有天生缺陷。它只能获取一段信号总体上包含哪些频率的成分,但是对各成分出现的时刻并无所知。因此时域相差很大的两个信号,可能频谱图一样。
然而平稳信号大多是人为制造出来的,自然界的大量信号几乎都是非平稳的,所以在比如生物医学信号分析等领域的论文中,基本看不到单纯傅里叶变换这样naive的方法。
上图所示的是一个正常人的事件相关电位。对于这样的非平稳信号,只知道包含哪些频率成分是不够的,我们还想知道各个成分出现的时间。知道信号频率随时间变化的情况,各个时刻的瞬时频率及其幅值——这也就是时频分析。
三、短时傅立叶变换(Short-time Fourier Transform,STFT)
有了缺点就要改进了,这里就出来了短时傅立叶变换,也叫加窗傅立叶变换,顾名思义,就是因为傅立叶变换的时域太长了,所以要弄短一点,这样就有了局部性。
定义:把整个时域过程分解成无数个等长的小过程,每个小过程近似平稳,再傅里叶变换,就知道在哪个时间点上出现了什么频率了。”这就是短时傅里叶变换。下面就是示意图
时域上分成一段一段做FFT,不就知道频率成分随着时间的变化情况了吗!
可能理解这一点最好的方式是举例子。首先,因为我们的变换是对时间和频率的函数(不像傅立叶变换,仅仅是对频率的函数),它是二维的(如果加上幅度则是三维)。以下图所示的非平稳信号为例:
在这个信号中,在不同时刻有四个频率分量。0-250ms内信号的频率为300Hz,其余每个250ms的间隔的信号频率分别为200Hz,100Hz和50Hz。很明显,这是一个非平稳信号,让我们看一看它的短时傅立叶变换:用这样的方法,可以得到一个信号的时频图了:
图上既能看到10Hz, 25 Hz, 50 Hz, 100 Hz四个频域成分,还能看到出现的时间。两排峰是对称的,所以大家只用看一排就行了。
看着貌似解决了问题,好像有了局部性,但是这个名字叫做加窗傅立叶变换,那么这个窗要多大了呢?
窗太窄,窗内的信号太短,会导致频率分析不够精准,频率分辨率差。
窗太宽,时域上又不够精细,时间分辨率低。
(这里插一句,这个道理可以用海森堡不确定性原理来解释。类似于我们不能同时获取一个粒子的动量和位置,我们也不能同时获取信号绝对精准的时刻和频率。这也是一对不可兼得的矛盾体。我们不知道在某个瞬间哪个频率分量存在,我们知道的只能是在一个时间段内某个频带的分量存在。所以绝对意义的瞬时频率是不存在的。)
上图对同一个信号(4个频率成分)采用不同宽度的窗做STFT,结果如右图。用窄窗,时频图在时间轴上分辨率很高,几个峰基本成矩形,而用宽窗则变成了绵延的矮山。但是频率轴上,窄窗明显不如下边两个宽窗精确。
所以窄窗口时间分辨率高、频率分辨率低,宽窗口时间分辨率低、频率分辨率高。
对于时变的非稳态信号,高频适合小窗口,低频适合大窗口。然而STFT的窗口是固定的,在一次STFT中宽度不会变化,所以STFT还是无法满足非稳态信号变化的频率的需求。
四、小波变换
真是千呼万唤才出来了,终于看见小波了啊。
这里先引入小波,回顾一下基,然后再看看小波的优点,其实就是上面傅立叶缺点的解决。
对于加窗傅立叶变换让人头疼的就是窗口的大小问题,如果我们让窗口的大小可以改变,不就完美了吗?答案是肯定的,小波就是基于这个思路,但是不同的是。STFT是给信号加窗,分段做FFT;而小波变换并没有采用窗的思想,更没有做傅里叶变换。小波直接把傅里叶变换的基给换了——将无限长的三角函数基换成了有限长的会衰减的小波基。这样不仅能够获取频率,还可以定位到时间了~
这里就又回到了最开始的基了。
这个基函数会伸缩、会平移(其实是两个正交基的分解)。缩得窄,对应高频;伸得宽,对应低频。然后这个基函数不断和信号做相乘。某一个尺度(宽窄)下乘出来的结果,就可以理解成信号所包含的当前尺度对应频率成分有多少。于是,基函数会在某些尺度下,与信号相乘得到一个很大的值,因为此时二者有一种重合关系。那么我们就知道信号包含该频率的成分的多少。如前边所说,小波做的改变就在于,将无限长的三角函数基换成了有限长的会衰减的小波基。效果如下图
现在来看一下小波公式
从公式可以看出,不同于傅里叶变换,变量只有频率ω,小波变换有两个变量:尺度a(scale)和平移量 τ(translation)。尺度a控制小波函数的伸缩,平移量 τ控制小波函数的平移。尺度就对应于频率(反比),平移量 τ就对应于时间。如下图
当伸缩、平移到这么一种重合情况时,也会相乘得到一个大的值。这时候和傅里叶变换不同的是,这不仅可以知道信号有这样频率的成分,而且知道它在时域上存在的具体位置。
而当我们在每个尺度下都平移着和信号乘过一遍后,我们就知道信号在每个位置都包含哪些频率成分。
看到了吗?有了小波,我们从此再也不害怕非稳定信号啦!从此可以做时频分析啦!
(1) 解决了局部性
(2)解决时频分析
做傅里叶变换只能得到一个频谱,做小波变换却可以得到一个时频谱!
时域信号 傅立叶变换结果 小波变换结果
五、小波的深入
上面那么多,也就是走进小波的大门,具体的我们还要学习子空间、多分辨率,母小波的变换,如何去构造想要的小波函数,然后还有离散小波变换,正交小波变换,二维小波变换,小波包的应用(这里没有介绍可以自己看资料)。好像还有很多要学习的。
这里先深入一下,父小波和母小波,多分辨率分析,了解一下伸缩和平移。
任何小波变换的基函数,其实就是对母小波和父小波缩放和平移的集合。首先要看的就是多分辨率分析。
每个小波变换都会有一个mother wavelet,我们称之为母小波,同时还有一个father wavelet,就是scaling function。而该小波的basis函数其实就是对这个母小波和父小波缩放和平移形成的。缩放倍数都是2的级数,平移的大小和当前其缩放的程度有关。
还讲到,小波系统有很多种,不同的母小波,衍生的小波基就完全不同。小波展开的近似形式是这样:
其中的就是小波级数,这些级数的组合就形成了小波变换中的基basis。和傅立叶级数有一点不同的是,小波级数通常是orthonormal basis,也就是说,它们不仅两两正交,还归一化了。
我们还讲了一般小波变换的三个特点,就是小波级数是二维的,能定位时域和频域,计算很快。但我们并没有深入讲解,比如,如何理解这个二维?它是如何同时定位频域和时域的?
在这一篇文章里,我们就来讨论一下这些特性背后的原理。
首先,我们一直都在讲小波展开的近似形式。那什么是完整形式呢?之前讲到,小波basis的形成,是基于基本的小波函数,也就是母小波来做缩放和平移的。但是,母小波并非唯一的原始基。在构建小波基函数集合的时候,通常还要用到一个函数叫尺度函数,scaling function,人们通常都称其为父小波。它和母小波一样,也是归一化了,而且它还需要满足一个性质,就是它和对自己本身周期平移的函数两两正交:
另外,为了方便处理,父小波和母小波也需要是正交的。可以说,完整的小波展开就是由母小波和父小波共同定义的。
其中ψ(t)是母小波,是父小波。需要提醒一点的是,这个正交纯粹是为了小波分析的方便而引入的特性,并不是说小波变换的基就一定必须是正交的。但大部分小波变换的基确实是正交的,所以本文就直接默认正交为小波变换的主要性质之一了。引入这个父小波呢,主要是为了方便做多解析度分析(multiresolution analysis, MRA)。说到这里,你的问题可能会井喷了:好好的为什么出来一个父小波呢?这个scaling function是拿来干嘛的?它背后的物理意义是什么?waveletfunction背后的物理意义又是什么?这个多解析度分析又是什么呢?不急,下面,我们围绕一个例子来巩固一下前面的知识,同时再引出新的特性。
假设我们有这样一个信号:
该信号长度为8,是离散的一维信号。我们要考虑的,就是如何用小波将其展开。为了方便讲解,我们考虑最简单的一种小波,哈尔小波。下面是它的一种母小波:
那如何构建基于这个母小波的基呢?刚才提到了,要缩放,要平移。我们先试试缩放,那就是ψ(2n):
但这样的话,它与自己的内积就不是1了,不符合小波基orthonormal的要求,所以我们要在前面加一个系数根号二,这样我们就得到了另一个哈尔小波的basis function:
同理,我们可以一直这样推广下去做scale,得到4n,8n,……。下的basis function。当然在这个例子里,我们信号长度就是8,所以做到4n就够了。但推广来说,就是这种scaling对母小波的作用为,这是归一化后的表示形式。
平移的话也很简单,我们可以对母小波进行平移,也可以对scale之后的basis function进行平移。比如对上一幅图中的basis function进行平移,就成了
看得出来,平移后的basis function和母小波以及仅仅scale过的小波,都是正交的,附合小波basis的特点。如果我们用ψ(n)来表示这个mother wavelet,那么这些orthonormal basis函数可以写成:
这里的k是可以看成时域的参数,因为它控制着小波基时域的转移,而j是频域的参数,因为它决定了小波基的频率特性。看到这里,你应该会感觉很熟悉,因为这里的平移和变换本质和刚才对scaling function的平移变换是一模一样的。
这样,我们就有了针对此信号space的哈尔小波basis组合:
可以看出,我们用到了三层频率尺度的小波函数,每往下一层,小波的数量都是上面一层的两倍。在图中,每一个小波基函数的表达形式都写在了波形的下面。
等等,你可能已经发现了,有问题。这里为什么多了个没有函数表达式的波形呢?这货明显不是wavelet function阿。没错,它是之前提到的scaling function,也就是父小波。然后你可能就会问,为啥这个凭空插了一个scaling function出来呢?明明目标信号已经可以用纯的小波基组合表示了。是,确实是,就算不包括scaling function,这些小波函数本身也组成了正交归一基,但如果仅限于此的话,小波变换也就没那么神奇的功效了。引入这个scaling function,才能引入我们提到的多解析度分析的理论,而小波变换的强大,就体现在这个多解析度上。那在这里,我们怎么用这个多解析度呢?这个哈尔小波basis组合是怎么通过多解析度推导出来的呢?
话说在数学定义中,有一种空间叫Lebesgue空间,对于信号处理非常重要,可以用L^p(R)表示,指的是由p次可积函数所组成的函数空间。我们在小波变换中要研究的信号都是属于L^2(R)空间的,这个空间是R上的所有处处平方可积的可测函数的集合,这样就等于对信号提出了一个限制,就是信号能量必须是有限的,否则它就不可积了。小波变换的定义都是基于但不限于L^2(R)中的信号的。这玩意的特性要具体解释起来太数学了,牵涉到太多泛函知识,我就不在这里详述了。而且老实说我也没能力完全讲清楚,毕竟不是学这个的,有兴趣可以参考wiki。总之你记住,小波变换研究中所使用的信号基本都是平方可积的信号,但其应用不限于这种信号,就行了。
对L^2(R)空间做MRA是在干嘛呢?就是说,在L^2(R)空间中,我们可以找出一个嵌套的空间序列,并有下列性质:
我来简单解释一下这些性质。这个V_j都是L^2(R)空间中的子空间,然后他们是由小到大的,交集是{0},因为这是最小的子空间,并集就是L空间。是不是有点难以理解?没关系,看看下面这个图就清楚了:
这个图是圈圈套圈圈,最里面的圈是V0,之后分别是V1,V2,V3,V4 。那他们有趣的性质就是,假如有一个函数f(t)他属于一个某空间,那你将其在时域上平移,它还是属于这个空间。但如果你对它频域的放大或缩小,它就会相应移到下一个或者上一个空间了。
同时我们还知道,你要形容每一个空间的话,都需要有对应的orthonormal basis,这是必然的,那对于V0来讲,它的orthonormal basis就是
这一系列函数是什么呢?是的时域变换,而且我们刚才也说了,时域上平移,是不会跳出这个空间的。这样,我们就可以说,由这一系列basis所定义的L^2(R)子空间V0被这些basis所span,表示成:
k从负无穷到正无穷。上面的bar表示这是一个闭包空间,也就是说
这样,我们就定义了基本的V0这个子空间。刚才说了,这个子空间的基都是对的整数时域变换,这里我们称为scalingfunction,所以换个说法,就是说这里整个子空间V0,由scalingfunction和其时域变换的兄弟们span。
当然,如果这个scaling function只是用来代表一个子空间的,那它的地位也就不会这么重要了。刚才我们提到,这个嵌套空间序列有一个性质,。这就是这个函数,如果你对它频域的放大或缩小,它就会相应移到下一个或者上一个空间了。这个性质就有意思了,它代表什么呢?对于任何一个包含V0的更上一层的空间来讲,他们的基都可以通过对scaling function做频域的scale后再做时域上的整数变换得到!推广开来就是说,当
我们有
这也就意味着,对于任何属于V_j空间的函数f(t),都可以表示为:
到这里,我们就明白这些个子空间和那个凭空冒出来的scaling function的作用了。scaling的构建这些不同的子空间的基础,当j越大的时候,每一次你对频率变换后的scaling function所做的时域上的整数平移幅度会越小,这样在这个j子空间里面得到的f(t)表示粒度会很细,细节展现很多。反之亦然。通俗点说,就是对scaling function的变换平移给你不同的子空间,而不同的子空间给你不同的分辨率,这样你就可以用不同的分辨率去看目标信号。
下面就是时候看看什么是MRA equation了,这是更加有趣,也是更加核心的地方。通过刚才的讲解,V0属于V1,那scaling function是在V0中的,自然也在V1中了。我们把他写成V1的基的线性组合,那就是
其中的h(n)是scaling function的系数,也叫做scaling filter或者scaling vector,可以是实数,也可以是虚数。根号2是为了维持norm为1的。看,在这个公式里,我们就把属于V0的函数用V1的基表示出来了。同理,我们可以循环如此,把属于V0的在V2,V3, …, Vn中表示出来。这些方程就是MRA equation,也叫refinement equation,它是scaling function理论的基础,也是小波分析的基础之一。
好,稍微总结一下。到现在,已经讲了关于scaling function的基本理论知识,知道了信号空间可以分为不同精细度的子空间,这些子空间的basis集合就是scaling function或者频率变换之后的scaling function,如下图所示:
上图就是四个子空间的basis集合的展览。通过前面的讨论,我们还知道,一开始的scalingfunction可以通过更精细的子空间的scaling function(它们都是对应子空间的basis)来构建。比如
对于更加finer的scale:
依此类推。实际上,对于任何scale和translate过的scaling function,都可以用更加精细的scale层面上的scaling function构建出来。
然后,我们有各种scale下的scaling function了,该看看它们分别所对应的嵌套的空间序列了。先看看V0,自然就是以基本的scaling function为基础去span出来的:
这个不新鲜,刚才就讲过了。这个子空间代表什么样的信号?常量信号。道理很简单,这个scaling function在整个信号长度上,没有任何变化。继续往下看:
这个相比V0更加finer的子空间,代表着这样一种信号,它从1-4是常量,从5-8是另一个常量。同理我们有:
V2代表的信号,是分别在1,2; 3,4; 5,6; 7,8上有相同值的信号。那么V3呢?则表示任何信号,因为对于V3来讲,任何一个时间刻度上的值都可以不一样。而且现在,我们也可以通过上面的一些scaling functions的波形验证了之前提到的多解析度分析中的一个核心性质,那就是:
我们之前讲了一堆多解析度的理论,但直到现在,通过这些图形化的分析,我们可能才会真正理解它。那好,既然我们有一个现成的信号,那就来看看,对这个信号作多解析度分析是啥样子的:
你看,在不同的子空间,对于同一个信号就有不同的诠释。诠释最好的当然是V3,完全不损失细节。这就是多解析度的意义。我们可以有嵌套的,由scalingfunction演变的basis function集合,每一个集合都提供对原始信号的某种近似,解析度越高,近似越精确。
说到这里,可能你对scaling function以及多解析度分析已经比较理解了。但是,我们还没有涉及到它们在小波变换中的具体应用,也就是还没有回答刚才那个问题:凭空插了一个scaling function到小波basis组合中干嘛。也就是说,我们希望理解scaling function是怎么和小波函数结合的呢,多解析度能给小波变换带来什么样的好处呢。这其实就是是小波变换中的核心知识。理解了这个,后面的小波变换就是纯数学计算了。
好,我们已经知道,对于子空间V0,basis是scalingfunction:
看出什么规律了么?多看几次这三个图,你会惊讶地发现,在V0中的scaling function和wavelet function的组合,其实就是V1中的basis!继续这样推导,V1本来的的basis是:
他们的组合,本质上也就是V2的basis(参考图2)。你继续推导下去,会得到同样的结论:在scale j的wavelet function,可以被用来将Vj的basis扩展到V(j+1)中去!这是一个非常非常关键的性质,因为这代表着,对任何一个子空间Vj,我们现在有两种方法去得到它的orthonormal basis:
1. 一种就是它本来的basis ,对任意k。
2. 第二种就是它上一个子空间的basis,对任意k,以及上一级子空间的wavelet function ,对任意k。
第二种选择能给我们带来额外的好处,那就是我们可以循环不断地用上一级子空间的scaling function以及wavelet function的组合来作为当前子空间的基。换句话说,如果针对V3这个子空间,它实际上就有四种不同的,但是等价的orthonormal basis:
1. 本级(V3)的scalingfunction basis set
2. 上一级(V2)的scalingfunction + wavelet function;
3 。 上上一级(V1)的scalingfunction + 上上一级(V1)的waveletfunction + 上一级(V2)的waveletfunction;
4. 上上上一级(V0)的scalingfunction + 上上上一级(V0)的waveletfunction + 上上一级(V1)的waveletfunction + 上一级(V2)的waveletfunction
好,看看最后一种选取方式,有没有感到眼熟?对了,它就是我们之前提到的“针对此信号space的哈尔小波basis组合”,参见图1。现在我们知道了,这个scalingfunction不是凭空插进去的,而是通过不断的嵌套迭代出来的:
那为什么我们最后选定的是这种选取方式呢?实际上,刚才介绍的这个性质已经告诉我们,对于任何的scale j0,我们都可以给我们的signal space找到一组orthonormal basis,这个basis是通过组合scale j0上的scaling function以及所有在scale j,j》=j0上的wavelets得到的。这样,基于这个orthonormal basis,
所有信号空间中的信号都可以写成组成这个basis的functions的线性组合:
对应的系数的计算和平常一样:
这,就是最终的,也是最核心的,小波变换形式。不管是信号压缩,滤波,还是别的方式处理,只要是用小波变换,都逃不出这个基础流程:
1. 选取合适的wavelet function和scaling function,从已有的信号中,反算出系数c和d。
2. 对系数做对应处理
3. 从处理后的系数中重新构建信号。
这里的系数处理是区别你的应用的重点。比如图像或者视频压缩,就希望选取能将能量聚集到很小一部分系数中的小波,然后抛弃那些能量很小的小波系数,只保留少数的这些大头系数,再反变换回去。这样的话,图像信号的能量并没有怎么丢失,图像体积却大大减小了。
还有一个没有解释的问题是,为什么要强调尺度函数和小波函数组成一个orthonormal basis呢?计算方便是一方面,还有一个原因是,如果他们满足这个性质,就满足瑞利能量定理,也就是说,信号的能量,可以完全用每个频域里面的展开部分的能量,也就是他们的展开系数表示:
到这里,我们对小波变换的形式就讲完了。虽然是用的最简单的哈尔小波为例子,但举一反三即可。我们着重介绍了多解析度分析以及它给小波变换带来的杀手锏:时域频域同时定位。结束之前,再多说几句小波变换的意义。我们拿刚才例子中V3子空间的第二种可选择的orthonormal basis作为例子:
左边这四个basis组成元素,也就是scaling functions,的系数,表征的是信号的local平均(想想它们和信号的内积形式),而右边的这四个basis组成元素,也就是wavelet functions,的系数则表征了在local平均中丢失的信号细节。得益于此,多解析度分析能够对信号在越来越宽的区域上取平均,等同于做低通滤波,而且,它还能保留因为平均而损失的信号细节,等同于做高通滤波!这样,我们终于可以解释了wavelet function和scaling function背后的物理意义了:wavelet function等同于对信号做高通滤波保留变化细节,而scalingfunction等同于对信号做低通滤波保留平滑的shape!
对小波变换的基础知识,我们就讲到这里。需要注意的是,这只是小波变换最基本最基本的知识,但也是最核心的知识。看完这里其实就是回到了最开始的介绍:小波变换是把信号分解成一系列的小波(经过原始小波伸缩和平移得到的),这里就告诉了我们伸缩和平移
六、小波的应用
小波是多分辨率理论的分析基础。而多分辨率理论与多种分辨率下的信号表示和分析有关,其优势很明显--某种分辨率下无法发现的特性在另一个分辨率下将很容易被发现。从多分辨率的角度来审视小波变换,虽然解释小波变换的方式有很多,但这种方式能简化数学和物理的解释过程。
对于小波的应用很多,我学习的的方向主要是图像处理,所以这里用图像的应用来举例。对于图像,要知道量化级数决定了图像的分辨率,量化级数越高,图像越是清晰,图像的分辨率就高。
例一,哈尔小波图像分解
例二, 小波去噪平滑
例三, 小波的边缘检测
所谓的小波的小是针对傅里叶波而言,傅里叶波指的是在时域空间无穷震荡的正弦(或余弦波)。相对而言,小波指的是一种能量在时域非常集中的波,它的能量有限,都集...
2018-01-15 标签:小波变换 7.7万 0
小波变换(wavelet transform,WT)是一种新的变换分析方法,它继承和发展了短时傅立叶变换局部化的思想,同时又克服了窗口大小不随频率变化等...
2018-01-15 标签:小波变换 4.6万 0
小波变换(wavelet transform,WT)是一种新的变换分析方法,它继承和发展了短时傅立叶变换局部化的思想,同时又克服了窗口大小不随频率变化等...
2018-01-13 标签:小波变换 2.6万 0
短时傅里叶变换和小波变换差别 短时傅里叶变换(short-time Fourier transform,STFT)和小波变换(wavelet trans...
电流谐波畸变率怎么计算? 电流谐波畸变率是指电流中包含谐波电流的比例,它可以表示为谐波电流的有效值除以基波电流的有效值。电流谐波畸变率的计算方法取决于谐...
小波变换与傅里叶变换的区别和联系 1. 傅里叶变换和小波变换的定义 傅里叶变换(Fourier Transform,简称FT)是一种将信号在时域上的函...
小波变换是如何定义的? 小波变换是一种多尺度分析方法,它可以将信号分解成不同频率下的小波基函数。小波基函数可以表示信号的局部特征,如局部振幅和频率,而且...
本文设计了基于Datasoket技术的虚拟小波消噪仪,实现了小波消噪仪的共享,硬件平台可通过计算机与网络相连,通过对虚拟仪器软件编程实现仪器的的远程控制...
2011-11-03 标签:小波变换DataSocket消噪仪 1931 2
基于FPGA的快速9/7整形离散小波变换系统的设计过程与仿真
CCSDS图像数据压缩标准中采用9/7整形离散小波变换为核心算法,该算法结构简单,易于硬件设计实现。文中基于FPGA设计实现了9/7整数离散小波变换系统...
编辑推荐厂商产品技术软件/工具OS/语言教程专题
电机控制 | DSP | 氮化镓 | 功率放大器 | ChatGPT | 自动驾驶 | TI | 瑞萨电子 |
BLDC | PLC | 碳化硅 | 二极管 | OpenAI | 元宇宙 | 安森美 | ADI |
无刷电机 | FOC | IGBT | 逆变器 | 文心一言 | 5G | 英飞凌 | 罗姆 |
直流电机 | PID | MOSFET | 传感器 | 人工智能 | 物联网 | NXP | 赛灵思 |
步进电机 | SPWM | 充电桩 | IPM | 机器视觉 | 无人机 | 三菱电机 | ST |
伺服电机 | SVPWM | 光伏发电 | UPS | AR | 智能电网 | 国民技术 | Microchip |
开关电源 | 步进电机 | 无线充电 | LabVIEW | EMC | PLC | OLED | 单片机 |
5G | m2m | DSP | MCU | ASIC | CPU | ROM | DRAM |
NB-IoT | LoRa | Zigbee | NFC | 蓝牙 | RFID | Wi-Fi | SIGFOX |
Type-C | USB | 以太网 | 仿真器 | RISC | RAM | 寄存器 | GPU |
语音识别 | 万用表 | CPLD | 耦合 | 电路仿真 | 电容滤波 | 保护电路 | 看门狗 |
CAN | CSI | DSI | DVI | Ethernet | HDMI | I2C | RS-485 |
SDI | nas | DMA | HomeKit | 阈值电压 | UART | 机器学习 | TensorFlow |
Arduino | BeagleBone | 树莓派 | STM32 | MSP430 | EFM32 | ARM mbed | EDA |
示波器 | LPC | imx8 | PSoC | Altium Designer | Allegro | Mentor | Pads |
OrCAD | Cadence | AutoCAD | 华秋DFM | Keil | MATLAB | MPLAB | Quartus |
C++ | Java | Python | JavaScript | node.js | RISC-V | verilog | Tensorflow |
Android | iOS | linux | RTOS | FreeRTOS | LiteOS | RT-THread | uCOS |
DuerOS | Brillo | Windows11 | HarmonyOS |