wname = 'db2' % load image load detfingr [m,n] = size(X); m = m-rem(m,8); n = n-rem(n,8); X = X(1:m,1:n); % compute DWT [CA1,CH1,CV1,CD1] =dwtper2(X,wname); [CA2,CH2,CV2,CD2] =dwtper2(CA1,wname); [CA3,CH3,CV3,CD3] =dwtper2(CA2,wname); % normalize CA1m = CA1-min(CA1(:)); CV1m = CV1-min(CV1(:)); CH1m = CH1-min(CH1(:)); CD1m = CD1-min(CD1(:)); CA1m = CA1m/max(CA1m(:)); CV1m = CV1m/max(CV1m(:)); CH1m = CH1m/max(CH1m(:)); CD1m = CD1m/max(CD1m(:)); CA2m = CA2-min(CA2(:)); CV2m = CV2-min(CV2(:)); CH2m = CH2-min(CH2(:)); CD2m = CD2-min(CD2(:)); CA2m = CA2m/max(CA2m(:)); CV2m = CV2m/max(CV2m(:)); CH2m = CH2m/max(CH2m(:)); CD2m = CD2m/max(CD2m(:)); CA3m = CA3-min(CA3(:)); CV3m = CV3-min(CV3(:)); CH3m = CH3-min(CH3(:)); CD3m = CD3-min(CD3(:)); CA3m = CA3m/max(CA3m(:)); CV3m = CV3m/max(CV3m(:)); CH3m = CH3m/max(CH3m(:)); CD3m = CD3m/max(CD3m(:)); figure(1) imshow(X,[]); title('original'); pause figure(2) imshow([CA1m,CV1m; CH1m,CD1m],[]); title('stage 1'); pause figure(3) imshow([[CA2m,CV2m; CH2m,CD2m],CV1m; CH1m,CD1m],[]); title('stage 2'); pause figure(4) imshow([[[CA3m,CV3m; CH3m,CD3m],CV2m; CH2m,CD2m],CV1m; CH1m,CD1m],[]); title('stage 3');