给我们一个信号时,我们从时域中观察这个信号时,我们得到的信息是信号的持续的时间,随着时间的变化,信号的幅度起起伏伏。如果我们更进一步,就是起伏速度较快的部分对应着信号中高频部分。变换缓慢的部分对应着代表信号中的频率低频部分。我们也可以估算信号中直流分量的大小。当然这都是我们直观的理解。这种单纯的从时域中的信号的波形得到的信息是不全面的。有的时候我们想要知道我们的信号中含有那些频率成分,相应频率的强度,相位。这就是从从频域的角度来看待我们的信号。这就需要一个数学变换的工具,将我们的信号变换到频域。这个强大的数学工具就是傅里叶变换,变换后我们希望我们还可以回到时域中,也就是我们的变换是可可逆的,事实上,傅里叶变换就有这个信息不损失的性质。如今傅里叶变换已经成为一个体系。一切来自于数学中的分解思想,在这里我们选择一组正交基。对我们信号函数的分解就像是对空间中某一一向量分解到三个坐标系一样,只不过函数的坐标是傅里叶系数而已。这样,我们经过傅里叶变换就可以知道我们的信号中含有的频率成分。但是这里有一个隐含的假设,或者说是傅里叶变换的致命弱点,那就是他潜在的假设了我们的信号是平稳信号。何为平稳信号?所谓的平稳信号就是信号的各种频率成分在信号的全部持续时间中都存在。举个例子,假如我们对一个持续时间在[0,100s]的平稳信号做傅里叶变换,得出信号中有59HZ,那么就说明,对该平稳信号,59HZ从0开始,在这100s中的任何一个时刻都存在。可是,当我们的信号不是平稳信号时,例如59HZ产生50s处,强度和上一个信号的完全相同,其他频率也完全相同,如果我们对这一个信号做傅里叶变换,由于傅里叶变换的积分域是从负无穷到正无穷,所以不幸的是,我们得到了和上一信号完全一样的结果,我们无法再从频域回到时域了。也就是FT并没有告诉我们非平稳信号的各种频率分别出现在那个时间段上。事实上,在现实生活中,非平稳信号和平稳信号交织在一起的。例如心电图(ECG)、脑电图(EEG)和肌电图(EMG)。所以知道哪些频率出现在何种时间段的需求是那么的紧迫。换句话说,就是我们想要同时知道信号的时间信息和频率信息。解决方案就是FT的改进版:STFT(短时傅里叶变换)。小波变换:小波(wavelet)的意思是:asmallwave。FT中,我们选用的是exp(jwt)函数作为我们变换空间的一组标准正交基,exp(jwt)函数在时间轴上一直存在,从-∞到+∞上均存在的信号,不会衰减,而我们在小波变换中选用的小波不仅持续时间是有限的,即只在某一个时间段内存在,而且小波的频率也是有限的,即超过一定的频率之外,该频率的强度(幅度)会逐渐衰减到0。小波变换较之于傅里叶变换的优点可以归结为如下方面:1)使得信号的存储较之于傅里叶变换后再去存储更加的有效,也就是更易于压缩,进而传输图像。2)方便了对信号的分析,因为能够更好地去近似现实中的信号(nonstationarysignal)。3)当信号函数中有不连续的点的时候,如果用FT得到信号的近似,会有吉布斯现象(虽然在功率上会很好的近似,但是在不连续点附近却有一个固定的误差,无法进一步减小),比之于FT的这个缺点,我们的小波变换能够更好的对数据中的不连续点进行近似。作为小波变换前身,短时傅里叶变换(STFT)于1946年DennisGabor首次使用的。在介绍小波变换之前有必要去介绍一下STFT。STFT是FT的一种改进版本。在解决非平稳信号的时间信息和频率信息同时表示的问题上做了第一步的探索。STFT采用的技术就是给信号加窗(WindowingtheSignal),也就是一次只分析信号的一小段。在这个时间段的信号被看成是stationarysignal。截取之后,在做傅里叶变换。然后开始沿着时间轴去移动我们的窗口,直至信号的结束。(想想语音信号频域处理中,得到的二维语谱图)。在matlab中,我们最终得到的该变换的二维图像表示(或者三维,只不过另一维度用颜色标记出来,并没有第三个周)称为spectrogram。STFT是一个三维的变换,具体如下:可见最终变换后我们得到的是一个关于时间和频率的函数。注意由于STFT中,我们选用的窗口自始至终都是同一个窗子,同样的大小,同样的形状等等,所以每一小段窗口内,我们变换的时间分辨率和频率分辨率都是相同的,相当于图中所示的将时间-频率平面划分成一个个大小相同的矩形格子。从上面对STFT的介绍中,不难看出STFT的如下缺点:一旦选定了STFT的截取窗口后,那么STFT的自始至终,都会使用同一个窗口,那么我们就会陷入关于时间分辨率和频率分辨率的困境。具体解释如下图:从上述两幅图中,不难看出第一幅图,选择大的窗的窗口大小很小,换句话说,就是时间分辨率很大(时间段的倒数),然而频率轴上的频率分辨率却很小(有频率段有很大的的弥散)。第二幅图,窗口选择很大,换句话说,就是时间分辨率很小,那么进行STFT的变换后,得到的图像中,频率分辨率很大(几乎没有弥散),但是变换后的时间轴上却又很大的重叠(这和我们直观理解相同,选择时间大了,那么某一个频率出现后,可能会持续到下一个窗口内(从时域上看)。上述的这种dilemma可以用一个准则去描述,也就是,HeisenbergUncertaintyPrinciple:Cannotknowwhatfrequencyexistsatwhattimeinterval。幸运的是,上世纪80年代出现了一种新的变换:小波变换很好的解决了这个dilemma。下面介绍小波变换:小波变换属于多分辨率分析(MRA)的技术。所谓的MRA就是:对我们的信号的不同的频段(高,中,低频段)采用不同的分辨率去分析。例如,在信号高频段处选择较大的(好的)的时间分辨率(对应的窗口很小)和差的(较小的)频率分辨率进行分析,在信号低频段处选择好的(大的)时间分辨率和较差(小的)的频率分辨率进行分析。从直观上也很好理解这种分辨率的选择方法,例如高频信号(分量)在时域中对应的是剧烈的变换抖动,持续时间可能很短,所以选择很小的窗口(即很高的时间分辨率)去分析非常的合适。低频分量一般持续时间很长,选择窗口很大(也就是对应信号的时间分辨率较小)更加的合适。谈到了MRA,接下来谈谈MRA必不可少的分析工具---小波变换(WT)。所谓的WT就是将我们的信号(signal)分成(表示成)abunchofsignals。分成的每一个signal都对应着原始signal的不同频带(例如高,中低等频带,也可用区间划分频率轴),WT能够给出我们关于信号的哪个频带出现在哪一个时间段上的信息。上述只是直观的描述,下面给出连续小波变换(CWT)的数学表达式:对于该公式,解释如下:Wavelet(小波):小的波形,换句话说,就是持续的时间是有限的(finite)MotherWavelet(母小波):产生其他所有窗函数的原型(prototype),其他所有的窗函数都是母小波经过dilated(膨胀)或者压缩,移位(shift)而得到的。尺度(scale)s:S1:膨胀信号(dilate(膨胀)thesignal)S1:压缩信号(compressthesignal)信号不同的频带对应的窗函数,是母小波按照如下的尺度变换得到:1)低频段-需要的S较大-Non-detailedGlobalViewofSignal-SpanEntireSignal2)高频段-需要较小的尺度S-DetailedViewLastinShortTime(短时间的细节描述)知道了上述公式的意义后,下面我们说说CWT的计算问题(7大步):Step1:将wavelet(母小波本身)放置在信号出现的起始时刻,并且设定s=1(注意,在这里,S=1为母小波的最大的压缩版本(themostcompressedwavelet),也就是母小波本身);Step2:将这个scale为“1”的小波乘以我们要分析的信号,然后在整个时间轴上积分,注意由于小波持续时间有限,相当于对信号截取了然后对时间积分得到一个实数;Step3:移动这个scale=1的小波到t=τ,乘以我们要分析的信号,积分变换,得到t=τ,s=1时的变换数值(是一个实数);Step4:重复上述的步骤直到尺度为S=1的小波移动到要分析信号的结束为止;Step5:小步幅的增大尺度s到某一个s,然后重复上述步骤,最终得到所有的S对的所有变换值;Step6:上述对于每一个S值,我们通过计算得到的一组变换后的实数数值放在时间轴的一个行(row),Step7:最终计算出了所给信号的CWT。下面用一个图型来描述上述的过程:注:好的(就是大的)频率分辨率指的是我们能够分辨出较小的频率部分(低频)。注意观察每一个格子,格子的时间轴的长度越大(时间分辨率越小(差)),对应的频率轴上(即格子的高度)高度越矮(也就是频率分辨率越大)。下面给出一幅关于各大变换的时间,频率分辨率的比较图像:讲完了CWT理论,接下来就要讲到工程实现了。显然计算机无法处理连续的数据,这就需要计算量低的,容易implement的小波变换,这就是DWT。也就是对CWT的采样(尽管CWT的离散化并不是真正的离散变换,姑且这样说)。在DWT中尺度S是离散化为对数(常选择的因子是2,这样高度,1,2,4,。。等等,也即是前一个小波时候一个小波的时间分辨率的2倍,频率分辨率的1/2)的格子。这样利用DWT,我们将我们的信号按照不同的频率分辨率划分频带,我们将我们的信号分解为低频近似和高频细节。所以经过以上的分析,我们说MRA技术克服了Heisenberguncertaintyprinciple。最后说说基于MRA的子带编码(subbandcoding)如下图表示:注意:1)每一次我们都会将时间分辨率变为原来的一半(相当于采样间隔变大,),对于离散数据,我们对数据每一次都因子为2的下采样,使得数据变为原来的一般2)频域中,我们将频率分辨率变为原来的2倍,即格子的高度变为上一次的一半。对我们的信号进行小波变换后,我们在小波域中对我们的信号进行处理,压缩等等操作,接下来我们关心的就是能否返回到原始的信号中去。这一利用小波系数返回得到原始信号的过程称为合成(上面小波分解的过程称为分析)。由于waveletanalysis涉及到滤波和下采样,所以thewaveletreconstructionprocess涉及到滤波和上采样。这样就介绍完了小波变换,下面给出小波变换应用的各大领域: