MATLAB: Need help in dwt2 ….

MATLAB

I had written this code to perform dwt2 on my image:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clc;
clear all;
X=double(imread('Lena.bmp'));
X=fix(X);
[LL1,HL1,LH1,HH1]=dwt2(X,'bior1.1');
[LL2,HL2,LH2,HH2]=dwt2(LL1,'bior1.1');
[LL3,HL3,LH3,HH3]=dwt2(LL2,'bior1.1');
Y=[[[LL3,HL3;LH3,HH3],HL2;LH2,HH2],HL1;LH1,HH1];
Y=fix(Y);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
but it doesn't worked with me when I tried filter ('bior4.4') which I needed in my work help me plz…and thank you in advance..
note:
the error appears in the following lines:
[LL1,HL1,LH1,HH1]=dwt2(X,'bior4.4');
and
Y=[[[LL3,HL3;LH3,HH3],HL2;LH2,HH2],HL1;LH1,HH1];

Best Answer

Hi, I think you are better off to use wavedec2 instead of iterating on the LL output with dwt2(). wavedec2() does that anyway.
load woman;
[C,S] = wavedec2(X,3,'bior4.4');
Then if you want to extract the details, detcoef2(), and appcoef2()
Or waverec2() to reconstruct projections.
If you really have some reason for iterating with dwt2(), please show the error you get.
Wayne
Related Question