xbf.m

来自「基于matlab的小波变换的图象压缩」· M 代码 · 共 33 行

M
33
字号
function tu=xbf(B,l,n)
%把B矩阵做小波反变换,l为B的长度,n为小波变换时所用的层数,其值只有1,2,3
if n<1&n>3
   disp('n为小波变换时所用的层数,其值只有1,2,3');
else
   ca1=B(1:l/2,1:l/2);
   ch1=B(1:l/2,l/2+1:l);
   cv1=B(l/2+1:l,1:l/2);
   cd1=B(l/2+1:l,l/2+1:l);
   if n>1
      l=l/2;
      ca2=ca1(1:l/2,1:l/2);
      ch2=ca1(1:l/2,l/2+1:l);
      cv2=ca1(l/2+1:l,1:l/2);
      cd2=ca1(l/2+1:l,l/2+1:l);
   end
   if n==3
      l=l/2;
      ca3=ca2(1:l/2,1:l/2);
      ch3=ca2(1:l/2,l/2+1:l);
      cv3=ca2(l/2+1:l,1:l/2);
      cd3=ca2(l/2+1:l,l/2+1:l);
   end
   if n==3
      ca2=idwt2(ca3,ch3,cv3,cd3,'db1');
   end
   if n>1
      ca1=idwt2(ca2,ch2,cv2,cd2,'db1');
   end
   tu=idwt2(ca1,ch1,cv1,cd1,'db1');
end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?