120 likes | 352 Views
Fast Algorithms for Discrete Wavelet Transform. Review and Implementation. by Dan Li F2000. DWT and FWT: Significance. DWT Multi-resolution mode to access the information Extensively (and intensively) used in information processing Advantage over other transforms
E N D
Fast Algorithms for Discrete Wavelet Transform Review and Implementation by Dan Li F2000
DWT and FWT: Significance • DWT • Multi-resolution mode to access the information • Extensively (and intensively) used in information processing • Advantage over other transforms e.g. (in JPEG 2000), DWT provides 20-30% improvement in compression efficiency as oppose to DCT. • FWT • Multi-resolution mode to access the information • DWT: intensive computation and large memory requirement. • FWT makes DWT practicable in real applications • Main factors controlling the speed of DWT: • Filter length • Floating point operation vs. integer operation
FWT Algorithm: An Outline Mallat Straightfoward Filter Bank “Regular” Structure “Regular” Structure Polyphase Transversal Filters# (* based on FFT for fast filtering) Polyphase Short-length Filters* (* also known as “fast-running FIR algo”) Binomial QMF Filters Classical Lattice Filters “Irregular” Structure CORDIC Lattice Filters Lifting Scheme and Integer WT
D1 2 x[n] H(z) 2 D2 2 D1 2 D3 - - H0(z) 2 G(z) + + 2 x[n] H(z) A1 2 A2 A3 H(z) G0(z) 2 A1 H0(z)+H1(z) G(z) z-1 x0[n] + 2 G(z) A1 - - x[n] H1(z) + z-1 G1(z) 2 z-1 x1[n-1] D1 H0(z) H1(z) FWT Algorithm: An Overview (I) Mallat Filter Bank Transversal Filters Short-length Filters
cos L cos 0 cos 1 A1 c0 sinL sin0 sin1 x[n] ... -sinL -sin0 -sin1 c1 -1 A1 cos L D1 cos 0 cos 1 z-1 x0[n] c2 x[n] K’ -c2 K’ c1 (1-z-1)2 (1+z-1)2 (1+z-1)3 (1+z-1)2 (1-z-1)3 (1-z-1)2 (1+z-1)(1-z-1) (1+z-1)(1-z-1) -c0 p1(z) q1(z) p2(z) pM(z) qM(z) q2(z) D1 z-1 x1[n-1] 2 2 2 2 z-1 z-1 z-1 -2-4 2-16 2 2 2 2 x[n] 1 1 1 A1 -1 -2-2 2-2 2-8 1 2-2 -2-2 z-1 D1 1 1 1 -0 -2 2 s(1) s(0) s(2) s(M) K1 A1 x0[n] x[n] ... x1[n-1] K2 D1 d(0) d(2) d(M) z-1 d(1) FWT Algorithm: An Overview (II) Binomial QMF Classical Lattice CORDIC Lattice Lifting Ladder
Comput. Complexity: A Comparison • Arithmetic Complexity (per input point & per decomposition cell) # of mults # of adds Filter length L Filter length L • Computational Structure Complexity (per filter coefficient) # of adders needed Word length w (bits)
“Efficiency” in the sense of arithmetic complexity and computational structure Straightforward filter bank: classical and used in many commercial s/w Polyphase structure: more efficient than direct FB. (Worthy of further exploration!) FFT based filtering: efficient for medium or long filters Fast running FIR filter: good for short filters Binomial QMF: reduces the # of mults with expense of additional adds Lattice: easier to implement with each relatively simpler stages CORDIC: most suitable fore efficient VLSI implementation since only addition and shifts involved and least possible adders required Lifting scheme: lead to IWT which is faster than floating-point DWT and ideal for lossless coding/compression. Implementation focused on the following: Fast filtering for short and long filters Various formats of polyphase structures Reformulation of polyphase transversal filter with the consideration of reduced inter-channel communication Integer filter and IWT implementations Simulations Comments, Implementations, etc.