小波变换三之Haar变换
什么是基(Basis)
数学上有一个常用神秘专有名词“基”,那么什么是“基”呢?举个例子:在平面直角坐标系中的的一个点$(x, y)$的坐标可以表示为$x\cdot{(1, 0)} + y\cdot{(0, 1)}$,这里的$(1, 0)$和$(0, 1)$就是二维直角坐标系中的基,因为任意的点都可以通过这两个向量的加权进行表示。
其实,数学中很多定理或者法则都有这样的表示形式。比如:泰勒公式将任意一个可微函数表示为在该函数在某点的各阶导数的多项式的和;傅里叶级数任何周期函数都可以用正弦函数和余弦函数构成的无穷级数来表示。这些定理都是用无穷项的和来毕竟一个函数,而无穷项中的每一项都是一个系数乘以一个给定的函数,这些函数一起构成了所谓的“基”。
Haar小波基
其实,小波变换也是有“基”的。我们先直观来看,然后给出形式化的定义。
看例子,对于一个信号$f = {4, 6, 10, 12, 8, 6, 5, 5}$,我们可以通过在《小波变换一之Haar变换》中讲述的方法计算其第一层的变换结果,我们也可以通过“基”辅助计算。
第一层的基
对于第一层的计算,Haar基是这样的:
对于近似表示的基,我们有:$$\begin{matrix}V_1^1 = (\frac{1}{\sqrt{2}}, \frac{1}{\sqrt{2}}, 0, 0, \cdots, 0) \ V_2^1 = (0, 0, \frac{1}{\sqrt{2}}, \frac{1}{\sqrt{2}}, \cdots, 0) \ V_{N/2}^1 = (0, 0, 0, 0, \frac{1}{\sqrt{2}}, \frac{1}{\sqrt{2}})\end{matrix}$$
所以,变换以后的近似系数为$a^1 = (fV_1^1, fV_2^1, \cdots, fV_{N/2}^1) = (5\sqrt{2}, 11\sqrt{2}, 7\sqrt{2}, 5\sqrt{2})$
类似的,对于细节表示的基,我们有:$$\begin{matrix}W_1^1 = (\frac{1}{\sqrt{2}}, -\frac{1}{\sqrt{2}}, 0, 0, \cdots, 0) \ W_2^1 = (0, 0, \frac{1}{\sqrt{2}}, -\frac{1}{\sqrt{2}}, \cdots, 0) \ W_{N/2}^1 = (0, 0, 0, 0, \frac{1}{\sqrt{2}}, -\frac{1}{\sqrt{2}})\end{matrix}$$
所以,变换以后的细节系数为$d^1 = (fW_1^1, fW_2^1, \cdots, fW_{N/2}^1) = (-\sqrt{2}, -\sqrt{2}, -\sqrt{2}, 0)$
第二层的基
对于第二层的计算(对$a_1$进行小波分解),Haar基是这样的:
对于近似表示的基,我们有:$$\begin{matrix}V_1^2 = (\frac{1}{2}, \frac{1}{2}, \frac{1}{2}, \frac{1}{2},0, 0, 0, 0, \cdots, 0, 0, 0, 0) \ V_2^2 = (0, 0, 0, 0, \frac{1}{2}, \frac{1}{2}, \frac{1}{2}, \frac{1}{2}, \cdots, 0, 0, 0, 0) \ V_{N/4}^2 = (0, 0, 0, 0, 0, 0, 0, 0, \cdots, \frac{1}{2}, \frac{1}{2}, \frac{1}{2}, \frac{1}{2})\end{matrix}$$
变换以后的近似系数为$a^2 = (fV_1^2, fV_2^2, \cdots, fV_{N/4}^2) = (16, 12)$
对于细节表示的基,我们有:$$\begin{matrix}W_1^2 = (\frac{1}{2}, \frac{1}{2}, -\frac{1}{2}, -\frac{1}{2},0, 0, 0, 0, \cdots, 0, 0, 0, 0) \ W_2^2 = (0, 0, 0, 0, \frac{1}{2}, \frac{1}{2}, -\frac{1}{2}, -\frac{1}{2}, \cdots, 0, 0, 0, 0) \ W_{N/4}^2 = (0, 0, 0, 0, 0, 0, 0, 0, \cdots, \frac{1}{2}, \frac{1}{2}, -\frac{1}{2}, -\frac{1}{2})\end{matrix}$$
变换以后的细节系数为$d^1 = (fW_1^2, fW_2^2, \cdots, fW_{N/4}^2) = (-6, 2)$
后面,如果要继续再分解的话,我们可以找到类似上面的“基”做进一步分解。
可以看到Haar小波基都是正交的(与除了自己以外的其它基的內积为0),而且都经过了单位化(模为1)。
母小波和父小波
在小波变换中有两个重要的术语:母小波(mother wavelet)和父小波(father wavelet),而我们的小波基就是由父小波和母小波经过平移和缩放得到的。母小波也叫做小波函数(wavelet function),对应着细节系数的基,父小波也叫做缩放函数(scaling function),对应着近似系数的基。
Haar小波的母小波定义为$$\psi(x) = \begin{cases}1, & 0 \le x \lt \frac{1}{2} \-1, & \frac{1}{2}\le x \lt 1\ 0, & \mathrm{其它}\end{cases}$$
Haar小波的父小波定义为$$\phi(x) = \begin{cases}1, & 0 \le x \le 1\ 0, & \mathrm{其它}\end{cases}$$
不止对于Haar小波,任何小波的基都是对其母小波和父小波缩放和平移后的集合。感兴趣的朋友可以在下面的网址中查看一下,如何对小波函数进行缩放和平移:Haar Functions