function y=IWT2D(level,wfil,w) [datalength_1,datalength_2]=size(w); y=w; for j=level:-1:1 m1=datalength_1/2^(j-1); m2=datalength_2/2^(j-1); y(1:m1,1:m2)=waverec(wfil,y(1:m1,1:m2)); y(1:m1,1:m2)=ipermute(waverec(wfil,permute(y(1:m1,1:m2),[2 1])),[2 1]); end