1

我有一个 4x4 矩阵,我希望通过使用一级 Daubechies-4 小波变换将其分解为 4 个频带(LL、HL、LH、HH,其中 L=low、H=high)。作为变换的结果,每个频带应包含 2x2 系数。如何在 MATLAB 中做到这一点?我知道 MATLAB 具有dbauxdbwavf功能。但是,我不确定如何使用它们,而且我也没有小波工具箱。

任何帮助是极大的赞赏。

谢谢。

4

2 回答 2

2

I think Ivan Selesnick's wavelet software package pushes all the right buttons for you. It covers the separable 1D, 2D and 3D cases... both matlab implementation and tutorial! It does not require the Wavelet Toolbox, but it probably requires the Signal Processing Toolbox (not sure about the Image Processing Toolbox). It also provides code for more advanced wavelet transforms, so you can even explore alternative techniques.

于 2010-04-18T11:31:11.627 回答
0

你试过这个吗?

N = length(S);
S = transpose(S);
s1 = S(1:2:N-1) + sqrt(3)*S(2:2:N);
d1 = S(2:2:N) - sqrt(3)/4*s1 - (sqrt(3)-2)/4*[s1(N/2) s1(1:N/2-1)];
s2 = s1 - [d1(2:N/2) d1(1)];
s = (sqrt(3)-1)/sqrt(2) * s2;
d = (sqrt(3)+1)/sqrt(2) * d1;

礼貌http://en.wikipedia.org/wiki/Daubechies_wavelet#Implementation

于 2010-04-14T18:13:44.980 回答