1 function y = icplxdual3D(w, J, Fsf, sf)
3 % Inverse 3D Complex Dual-Tree Discrete Wavelet Transform
6 % y = icplxdual3D(w, J, Fsf, sf)
9 % Fsf - synthesis filter for last stage
10 % sf - synthesis filters for preceeding stages
15 % WAVELET SOFTWARE AT POLYTECHNIC UNIVERSITY, BROOKLYN, NY
16 % http://taco.poly.edu/WaveletSoftware/
20 [w{j}{1}{1}{1}{m} w{j}{2}{2}{1}{m} w{j}{2}{1}{2}{m} w{j}{1}{2}{2}{m}] = ...
21 pm4inv(w{j}{1}{1}{1}{m}, w{j}{2}{2}{1}{m}, w{j}{2}{1}{2}{m}, w{j}{1}{2}{2}{m});
22 [w{j}{2}{2}{2}{m} w{j}{1}{1}{2}{m} w{j}{1}{2}{1}{m} w{j}{2}{1}{1}{m}] = ...
23 pm4inv(w{j}{2}{2}{2}{m}, w{j}{1}{1}{2}{m}, w{j}{1}{2}{1}{m}, w{j}{2}{1}{1}{m});
27 y = zeros(2*size(w{1}{1}{1}{1}{1}));
33 lo = sfb3D(lo, w{j}{m}{n}{p}, sf{m}, sf{n}, sf{p});
35 lo = sfb3D(lo, w{1}{m}{n}{p}, Fsf{m}, Fsf{n}, Fsf{p});