本文已参与「新人创作礼」活动,一起开启掘金创作之路。 ——————————————————————————————————————————
1 小波变换简介
小波变换(wavelet transform,WT)是一种新的变换分析方法,它继承和发展了短时 傅立叶变换局部化的思想,同时又克服了窗口大小不随频率变化等缺点,能够提供一个随 频率改变的“时间-频率”窗口,是进行信号时频分析和处理的理想工具。它的主要特点是 通过变换能够充分突出问题某些方面的特征,能对时间(空间)频率的局部化分析,通过伸 缩平移运算对信号(函数) 逐步进行多尺度细化,最终达到高频处时间细分,低频处频率细 分,能自动适应时频信号分析的要求,从而可聚焦到信号的任意细节,解决了Fourier 变换 的困难问题,成为继Fourier 变换以来在科学方法上的重大突破。
2 小波变换原理
在详细阐述小波变换之前,我们有必要先介绍一下傅里叶变换、短时傅里叶变换。
2.1 傅里叶变换
傅里叶变换实际上是将信号 与一组不同频率的负正弦作内积,这一组负正弦是变 换的基向量,傅里叶系数或傅里叶变换是 在这一组基向量上的投影,离散傅里叶正、反变换的公式如下所示。
进一步地,我们可以通过图1来描述图像每一行进行傅里叶变换的过程。我们假设要处 理的图像为256 个灰度级的灰度图,提取其第一行的灰度数据 , 的第一个数据对应坐标系中 轴的 位置,第二个数据对应坐标系中 轴的 位置,依此类推。然后对 进行奇延拓,那么实际上我们所做的不就是用一系列正弦信号通过组合来重建 奇延拓后的结果吗?
既然如此,我们就再仔细观察一下前面的公式,其不就是先将 与某个频率的正弦信号相乘,得到 在该频率正弦信号下的系数嘛。再观察傅里叶反变换过程中所存在的 ,这里又是为什么呢? 回到前面的公式,我们可以知道的是 的实际长度为 ,也就是说 是与 个不同频率的正弦信号相乘,如果我们直接将 与不同频率的正弦信号相乘用于重建 ,那么是不是相当于将原始信号的幅值变为原来的 倍,所以,这也就是为什么傅里叶反变换过程中会存在 这样一个归一化因子。
2.2 短时傅里叶变换
到这里我们算是基本了解了傅里叶变换的原理,那么为什么我们要在傅里叶变换的基础上提出短时傅里叶变换、小波变换呢?
如图 2 所示,信号 1 和信号 2 在时域空间内是有着明显的不同的,但是经过离散傅里叶变换之后,其在频域的信号却极为相似,因此,我们可以这样讲——经过离散傅里叶变换后,我们丢失了时域信息,即我们不知道某个频率的信号发生于何处。
为了解决这个问题,后人又提出了短时傅里叶变换——其实就是加窗的傅里叶变换,通过分析窗口内信号的傅里叶变换,我们可以同时获取时域信息和频域信息。
如图 3 所示,通过在原始信号上平移窗口,我们间接地获取了时域信息(窗口平移量可表示信号在时域中的大概位置),但仔细观察后,我们发现问题并没有我们想象的那么简单。
在一次短时傅里叶变换中,我们所选择的窗口是固定的,那么问题来了,现实中的信号往往是分布在各个频率上。假设对于某低频信号,我们加窗分析后结果很不错——时域信息和频域信息都有了,但是对于高频信号呢?呜呼,我们发现还是丢了时域信息;换个角度,假设对于某高频信号,我们加窗分析后结果很不错——时域信息和频域信息都有了,但是对于低频信号呢?呜呼,我们发现又丢了频域信息。因此,我们已经发现了短时傅里叶变换的不足——对于一个信号,我们无法同时获取其时域信息和频域信息。
2.3 小波变换
那么我们能不能设计一个窗口,它是可以变化的,具体来讲就是它既可以检测低频信号又可以检测高频信号,那么它该如何实现呢?看到图 4 ,有没有什么想法,聪明的你也许已经发现了,这里面存在许多不同纵横比的长方形,有没有什么新的想法冒出来的?对的,这就是小波变换的基本思想呀——采用一系列不同大小窗函数对原信号 作离散傅里叶变换,但不要高兴的太早,实际上小波函数并非如此,其要复杂许多。 在详细解释小波变换之前,请先看一下图 5、图 6、图 7。是的,如你所猜测的那样,我们采用的是不同形状的小波。假设我们现在给定某尺度空间下的小波 ,那么更高尺度空间下的小波则是由 经过平移和放缩得到的——具体表现为高尺度空间下的小波要比低尺度空间下的小波更“瘦”更“高”。我们以常见的哈尔小波作示例,哈尔小波如图 8 所示。到这里,小波变换的原理基本介绍完了。需要注意的是,本文不去介绍小波变换的数学过程,如果对这些复杂冗长的内容感兴趣,请自行研究,当然,你也可以随时联系我,一起交流。