1 function w = dualtree(x, J, Faf, af)
3 % Dual-tree Complex Discrete Wavelet Transform
6 % w = dualtree(x, J, Faf, af)
9 % 1) N is divisible by 2^J
10 % 2) N >= 2^(J-1)*length(af)
11 % J - number of stages
12 % Faf - filters for the first stage
13 % af - filters for the remaining stages
15 % w - DWT coefficients
16 % w{j}{1}, j = 1..J - real part
17 % w{j}{2}, j = 1..J - imaginary part
18 % w{J+1}{d} - lowpass coefficients, d = 1,2
22 % [Faf, Fsf] = FSfarras;
23 % [af, sf] = dualfilt1;
24 % w = dualtree(x, J, Faf, af);
25 % y = idualtree(w, J, Fsf, sf);
29 % WAVELET SOFTWARE AT POLYTECHNIC UNIVERSITY, BROOKLYN, NY
30 % http://taco.poly.edu/WaveletSoftware/
36 [x1 w{1}{1}] = afb(x, Faf{1});
38 [x1 w{j}{1}] = afb(x1, af{1});
43 [x2 w{1}{2}] = afb(x, Faf{2});
45 [x2 w{j}{2}] = afb(x2, af{2});