在Matlab中,二维多级小波变换共4种函数,分别为:
1.多级分解函数:wavedec2
2.系数提取函数:appcoef2和detcoef2
3.系数重构函数:wrcoef2
4.信号重构函数:waverec2
1.多级分解函数-wavedec2
将时域上的原始信号(图像)分解为小波域(实际不存在,类比于于傅里叶变换中的频域)上的低频近似成分和高频细节成分。
代码示例:
X=imread('photo.tif');%读取图像
[C,S] = wavedec2(X, 2, 'db1');%使用db1小波基函数对图像X进行2级小波分解
结果示意图:图1 引自 冈萨雷斯. 数字图像处理[M]
从左到右依次为:原图、1级小波分解结果示意图、2级小波分解结果示意图
1级小波分解,将原始信号分解为1个低频近似成分(左上),和三个高频细节成分(水平细节成分/右上、垂直细节成分/左下、对角线细节成分/右下)。
2级小波分解时将1级小波分解的近似低频成分再次进行相同的分解操作,进一步得到2级低频近似成分和三个2级高频细节成分。其余以此类推。
其中对于[C,S],C用于实际存储多级小波分解的各级结果,而S用于对C中存储的结果进行解释说明。如下图所示,在使用wavedec2进行小波分解之后,分解的各级低频与高频成分实际上是通过向量(一维数组)的形式全部存储在C(C也是一个一维数组)中。以2级小波分解为例,即假设图中n=2,分解得到的各级低