www.pudn.com > m_program.zip > myidwt2.m


function X=myidwt2(deccoef,wavename,N,mode) 
%myidwt2  2-D 多级非标准小波重构程序 
%X=myidwt2(deccoef,wavename) 
%输入   deccoef    三级分解的各级分解系数(1x3 struct array with fields:cA,cH,cV,cD,ex_size) 
%                  cA,cH,cV,cD分别保存低频、水平高频,垂直高频,斜线高频分解系数数值, 
%                  ex_size保存上一级分解矩阵大小 
%       wavename   用来作分解的小波名称,与Matlab的wavename定义一致 
%       N          分解级数 
%       mode       分解模式(sym,per,zpd,spd,sp0,ppd),缺省为系统缺省模式sym 
%                  (要与分解时对应才能正确重构) 
%输出   X          用分解系数直接重构的二维信号 
%说明:数组标号对应分解的级数 
 
%设置缺省分解模式 
if nargin<=3 
    mode='sym'; 
end 
reccoef(N+1).RX=deccoef(N).cA; 
for j=N:-1:1 
    %利用分解系数重构 
    reccoef(j).RX=idwt2(reccoef(j+1).RX,deccoef(j).cH,deccoef(j).cV,deccoef(j).cD,wavename,deccoef(j).ex_size,'mode',mode);    
end 
X=reccoef(1).RX;