📄 iwa2sym.m
字号:
function x = iwa2sym(res,pat,tp)% iwa2sym - 2D inverse wave atom transform (symmetric version)% -----------------% INPUT% --% res is an array containing all the wave atom coefficients. If% tp=='ortho', then res is of size N-by-N. If tp=='% If tp=='directional', then res is of size N-by-N-by-2. If tp=='complex',% then res is of size N-by-N-by-4.% --% pat specifies the type of frequency partition which satsifies% parabolic scaling relationship. pat can either be 'p' or 'q'.% --% tp is the type of tranform.% 'ortho': orthobasis% 'directional': real-valued frame with single oscillation direction% 'complex': complex-valued frame% -----------------% OUTPUT% --% x is a real N-by-N matrix. N is a power of 2.% -----------------% Written by Lexing Ying and Laurent Demanet, 2007 if( ismember(tp, {'ortho','directional','complex'})==0 | ismember(pat, {'p','q','u'})==0 ) error('wrong'); end N = size(res,1); H = N/2; lst = freq_pat(H,pat); red = size(res,3); call = cell(length(lst),red); for i=1:red y = res(:,:,i); c = cell(length(lst),1); for s=1:length(lst) B = 2^(s-1); D = 2*B; nw = length(lst{s}); c{s} = cell(nw,nw); for I=0:nw-1 for J=0:nw-1 if(lst{s}(I+1)==0 & lst{s}(J+1)==0) c{s}{I+1,J+1} = []; else c{s}{I+1,J+1} = y( I*D+[1:D], J*D+[1:D] ); end end end end call(:,i) = c; end x = iwa2(call,pat,tp);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -