小波变换(二): 小波基函数,母小波和父小波
系列文章列表
本文是《小波变换》系列的第2篇,主要介绍为什么需要小波.
- 小波变换(一): 为什么需要小波?
- 小波变换(二): 小波基函数,母小波和父小波
- 小波变换(三): 从实例代码看Haar小波分解和重构
- 小波变换(四): 常用小波特点及二维小波变换
- 小波变换(五): 小波,傅里叶与卷积的关系
小波级数展开与小波变换
上节我们给出了为啥需要小波变换,并给出了小波基函数,小波变换和小波级数的一般形式:
对于连续的信号,以为基函数的小波变换公式为:
对于离散的信号,以为基函数,进行小波级数展开:
注意二者的小波基函数或者,本质是一样的。
- ,以及都起到缩放函数的作用,因此都是尺度因子,对应于傅里叶变换中的的倒数(周期)。
- ,以及是平移因子。
已经了解了小波基函数的一般形式,那么其他各种网站,资料,论坛里说的母小波和父小波都是什么东西?
母小波的理解
下面以Haar小波为例,详细理解一下小波级数展开的过程,并介绍一下什么是母小波,什么是父小波。
以下是被好多好多人选择的小波:Haar小波。Haar函数(先记一下,其实Haar小波级数展开的母小波)为:
Haar函数在时域上不连续,性能一般,但胜在计算简单。
如果对其向右平移任意个单位(),构成一组函数, 该组函数两两相互正交,易证明
因此构成一组正交基,这组正交基的线性组合形成函数空间。
此时如果将的宽度缩小一半,同时保持缩放前后函数的总能量不变,则形成一组基函数,同样易证明这是另一组正交基,这组正交基的线性组合形成函数空间。
不断缩小尺度,可形成一组基函数,这组正交基的线性组合形成函数空间。
在Haar小波变换中,所使用的基函数是空间中的基函数(去除了的系数):
空间中的任意函数可以写作(中已经包含了,此式等同于式(2)):
现在,我们可以用这个阶梯状的函数去近似任意的原始的时域信号啦,不信你看!
注意,我们现在从式(3)的,经过一步步的缩放,平移形成了很多组基函数,这些基函数可以表达函数空间的任意函数。再形象一些,空间的任意函数都可以用变形过的组合得到,因此,就被定义为母小波。
好了,到这儿应该都没什么问题,那既然母小波已经完全可以表示空间中的任意函数,为啥还要搞出来一个父小波来pullze me? 接着往下看!
父小波的理解
在实际的信号处理实践中,使用公式(2)是比较难以操作的。例如,以下图的信号为例,高频的毛刺是我们不需要的,要滤除的。
haar小波基函数的越大,信号宽度越小,越接近噪声成分。因此,为了滤除噪声,需要很高的时间分辨率。但在低频部分,需要不太高的时间分辨率,要小一些。
因此我们需要一种属于但不属于的尖峰函数,以匹配原始时域信号中的毛刺。
通过观察得到,函数空间的任意基函数可以被空间中的基函数线性组合得到(如下图(a)),因此是的子空间。以此类推,容易得到
于是也是的子空间。那么就有。
如果定义如上图(b)所示的,则是空间中的一个函数:
容易发现,对于空间的任意的基函数,都有。事实上,对平移个单位后得到的函数,都与空间正交。函数的线性组合也都与空间正交。
进一步地,空间中的函数
与空间的所有函数均正交。以公式(8)中函数的线性组合,形成的空间,是的子集。
当很大时,空间表示的尖峰就与信号中的噪声十分相似了,为了滤掉噪声,可以把中的项设为0。
接下来证明空间是空间与空间的直和(如果中的元素不属于,就一定属于)。
令式(8)中,并联立式(6),容易得到
因此有
因此,容易得到
这表示中的任意函数,可以写作中的函数和中函数的线性组合。因此是的正交补:与相互正交,且互为补集。
公式(10)意思就是:如果使用公式(2)进行信号近似,本质上是使用和不同尺度的进行近似,也就是使用阶梯和毛刺近似了任意信号。根据公式(9),有
看到了吗,任意一个函数,可以用经过一系列缩放、平移形成的函数,和经过平移形成的函数的线性组合来表达。
也就是说,这里我们只把母小波进行平移,把父小波进行缩放、平移,组合可以得到任意函数。
相信你已经理解父小波为什么还叫做尺度函数(scaling function)了吧!
为了强化记忆,我们把公式(11)抄写一遍:
事实上,在实践过程中,我们用的更多的是公式(12)而不是公式(2)。首先将信号转换为小波分量,要滤除对应的毛刺信号,需要将对应的分量置为0.然后进行小波反变换,转换为时域信号。
小结
小波分解:
母小波一般具有以下性质:
- 平移正交性:函数自身与平移后的函数相互正交,;
- 归一化:能量为1,。
父小波一般具有以下性质:
- 平移正交性:函数自身与平移后的函数相互正交,;
- 归一化:能量为1,。
- 与母小波正交。
留个问题:父小波是不是可以和母小波互换呢?
接下来你可能想看: 小波变换(三): 从实例代码看Haar小波分解和重构
参考内容
- 形象易懂讲解算法I-小波变换
- 《The Wavelet Tutorial》小波教程 中文翻译(上)
- python实现小波变换的一个简单例子
- 小波变换和motion信号处理(一)
- 小波变换和motion信号处理:第二篇