README • Lecture notes will be animated by clicks. • Each click will indicate pause for audience to observe slide. • On further click, the lecturer will explain the slide with highlighted notes. STFT as Filter Bank Introduction to Wavelet Transform Yen-Ming Lai Doo-hyun Sung November 15, 2010 ENEE630, Project 1 Wavelet Tutorial Overview • DFT as filter bank • STFT as filter bank • Wavelet transform as filter bank Discrete Fourier Transform X (e ) jw x(n) e n jwn DFT for fixed w_0 X (e jwo ) x ( n) e n jwo n DFT for fixed w_0 X (e jwo ) x ( n) e jwo n n fix specific frequency w_0 DFT for fixed w_0 X (e jwo ) x ( n) e jwo n n pass in input signal x(n) DFT for fixed w_0 X (e jwo ) x ( n) e jwo n n modulate by complex exponential of frequency w_0 DFT for fixed w_0 X (e jwo ) x ( n) e jwo n n summation = convolve result with “1” Why is summation convolution? f g (k ) f (n) g (k n) n Why is summation convolution? f h( k ) f ( n ) h( k n) n start with definition Why is summation convolution? Let h( n) 1 n Why is summation convolution? f 1 f ( n) 1 n Why is summation convolution? f 1 f ( n) 1 n convolution with 1 equivalent to summation DFT for fixed w_0 X (e jwo ) x ( n) e jwo n n summation = convolve result with “1” DFT for fixed w_0 X (e jwo ) x ( n) e jwo n n output X(e^jw_0) is constant DFT for fixed w_0 DFT for fixed w_0 input signal x(n) DFT for fixed w_0 fix specific frequency w_0 DFT for fixed w_0 modulate by complex exponential of frequency w_0 DFT for fixed w_0 summation = convolve with “1” DFT for fixed w_0 Transfer function H(e^jw) DFT for fixed w_0 summation = convolution with 1 DFT for fixed w_0 i.e. impulse response h(n) = 1 for all n DFT for fixed w_0 H (e ) jw 1 e n jwn 2 ( w) DFT for fixed w_0 output X(e^jw_0) is constant Frequency Example Frequency Example Arbitrary example Frequency Example modulation = shift Frequency Example convolution by 1 = multiplication by delta DFT as filter bank X (e ) jw x(n) e n jwn DFT as filter bank X (e jwo ) x ( n) e jwo n n fix specific frequency w_0 DFT as filter bank one filter bank DFT as filter bank X (e ) jw x(n) e jwn n w continuous between [0,2pi) DFT as filter bank X (e x(n) jwo e jwo n X (e jw1 ) ) e jw1n X (e jw2 ) … e jw2 n uncountably many filter banks DFT as filter bank X (e x(n) jwo e jwo n X (e jw1 ) ) e jw1n X (e jw2 ) … e jw2 n Uncountable cannot enumerate all (even with infinite number of terms) DFT as filter bank X (e x(n) jwo e jwo n X (e jw1 ) ) e jw1n X (e jw2 ) … e jw2 n bank of modulators of all frequencies between [0, 2pi) DFT as filter bank X (e x(n) jwo e jwo n X (e jw1 ) ) e jw1n X (e jw2 ) … e jw2 n bank of identical filters with impulse response of h(n) = 1 Short-Time Fourier Transform X STFT (e , n) jw x ( k ) v ( k n )e k jwk Short-Time Fourier Transform X STFT (e , n) jw x ( k ) v ( k n )e k two variables jwk Short-Time Fourier Transform X STFT (e , n) jw x ( k ) v ( k n )e k frequency jwk Short-Time Fourier Transform X STFT (e , n) jw x ( k ) v ( k n )e k shift jwk Short-Time Fourier Transform X STFT (e , n) jw x ( k ) v ( k n )e jwk k shifted window function v(k) Short-Time Fourier Transform X STFT (e jwo , m) x(n) v(n m)e jwo n n let dummy variable be n instead of k Short-Time Fourier Transform X STFT (e jwo , m) x(n) v(n m)e n fix frequency w_0 and shift m jwo n Short-Time Fourier Transform X STFT (e jwo , m) x(n) v(n m)e n pass in input x(n) jwo n Short-Time Fourier Transform X STFT (e jwo , m) x(n) v(n m)e n multiply by shifted window and complex exponential jwo n Short-Time Fourier Transform X STFT (e jwo , m) x(n) v(n m)e n summation = convolve with 1 jwo n Short-Time Fourier Transform X STFT (e jwo , m) x(n) v(n m)e n output constant determined by frequency w_0 and shift m jwo n Short-Time Fourier Transform Short-Time Fourier Transform fix frequency w_0 and shift m Short-Time Fourier Transform pass in input x(n) Short-Time Fourier Transform multiply by shifted window and complex exponential Short-Time Fourier Transform summation = convolve with 1 Short-Time Fourier Transform output constant determined by frequency w_0 and shift m Short-Time Fourier Transform X STFT (e , n) jw x ( k ) v ( k n )e k jwk Short-Time Fourier Transform X STFT (e , n) jw x ( k ) v ( k n )e jwk k dummy variable k instead of n Short-Time Fourier Transform X STFT (e , n) jw x ( k ) v ( k n )e k shift is n (previously m) jwk Short-Time Fourier Transform X STFT (e , n) jw x ( k ) v ( k n )e k rewrite jwk Short-Time Fourier Transform X STFT (e , n) e jw jwn x ( k ) v ( k n)e k multiply by e^-jwn and e^jwn jw( n k ) Short-Time Fourier Transform X STFT (e , n) e jw jwn x ( k ) v ( k n)e k n is shift variable jw( n k ) Short-Time Fourier Transform X STFT (e , n) e jw LTI system jwn x(k ) v(kn)e k jw( n k ) h(k ) ( x h)(n) Short-Time Fourier Transform X STFT (e , n) e jw Impulse response jwn x(k ) v(kn)e jw( n k ) k h(k ) v(n)e jwn Short-Time Fourier Transform X STFT (e , n) e jw jwn flipped window modulated by +w x(k ) v(kn)e jw( n k ) k h(k ) v(n)e jwn Short-Time Fourier Transform X STFT (e , n) e jw jwn x(k ) v(kn)e k jw( n k ) h(k ) modulation by -w Short-Time Fourier Transform Short-Time Fourier Transform fixed shift n Short-Time Fourier Transform fixed frequency w_0 Short-Time Fourier Transform convolution with modulated window freq domain Multiplication by shifted window transform Short-Time Fourier Transform modulation by – w_0 freq domain shift by –w_0 input X(e^jw) transfer function (window transform shifted by +w_0) LTI system output final output after shift by –w_0 STFT as filter bank X STFT (e jwo , n) e jwn )e x(k ) v(kn k jwo ( n k ) h(k ) STFT as filter bank X STFT (e jwo , n) e jwn )e x(k ) v(kn k fixed shift n jwo ( n k ) h(k ) STFT as filter bank X STFT (e jwo , n) e jwn )e x(k ) v(kn k fixed frequency w_0 jwo ( n k ) h(k ) STFT as filter bank fixed shift n, fixed shift w_0 = one filter bank STFT as filter bank X STFT (e , n) e jw jwn x(k ) v(kn)e k jw( n k ) h(k ) STFT as filter bank X STFT (e , n) e jw jwn x(k ) v(kn)e k fixed shift n jw( n k ) h(k ) STFT as filter bank X STFT (e , n) e jw jwn x(k ) v(kn)e k let w vary between [0, 2pi) jw( n k ) h(k ) STFT as filter bank x(n) v(n)e jw0 n e jw0 n v(n)e jw1n X (e jw0 , n) X (e jw1 , n) e jw1n v(n)e jw2 n e X (e jw2 , n) jw2 n uncountably many filters since w in [0, 2 pi) STFT as filter bank x(n) v(n)e jw0 n e jw0 n v(n)e jw1n X (e jw0 , n) X (e jw1 , n) e jw1n v(n)e jw2 n e X (e jw2 , n) jw2 n bandpass filters separated by infinitely small shifts transfer function (window transform shifted by +w_0) STFT as filter bank x(n) v(n)e jw0 n e jw0 n v(n)e jw1n X (e jw0 , n) X (e jw1 , n) e jw1n v(n)e jw2 n e X (e jw2 , n) jw2 n demodulators STFT as filter bank x(n) v(n)e jw0 n e jw0 n v(n)e jw1n X (e jw0 , n) X (e jw1 , n) e jw1n v(n)e jw2 n e X (e jw2 , n) jw2 n segments of X(e^jw) final output after shift by –w_0 Fix number of frequencies 0 w0 w1 ... wM 1 2 STFT as filter bank x(n) v(n)e jw0 n e jw0 n v(n)e jw1n X (e jw0 , n) X (e jw1 , n) e jw1n v(n)e jwM 1n e jwM 1n bank of M filters X (e jwM 1 , n) STFT as filter bank x(n) v(n)e jw0 n e jw0 n v(n)e jw1n X (e jw0 , n) X (e jw1 , n) e jw1n v(n)e jwM 1n e X (e jwM 1 , n) jwM 1n M band pass filters M band pass filters Uniformly spaced frequencies 0 w0 w1 ... wM 1 2 0 w0 w1 w2 ... wM 1 2 STFT as filter bank x(n) v(n)e jw0 n e jw0 n v(n)e jw1n X (e jw0 , n) X (e jw1 , n) e jw1n v(n)e jwM 1n e X (e jwM 1 , n) jwM 1n bank of M filters becomes… STFT as filter bank uniform DFT bank … M band pass filters STFT as filter bank Let E_k(z)=1 for all k STFT as filter bank Let E_k(z)=1 for all k STFT as filter bank … … window becomes rectangle M samples long Uncertainty principle Uncertainty principle wide window Uncertainty principle narrow bandpass Uncertainty principle wide window poor time resolution Uncertainty principle good frequency resolution narrow bandpass Uncertainty principle narrow window Uncertainty principle wide bandpass Uncertainty principle narrow window good time resolution Uncertainty principle poor frequency resolution wide bandpass Special case narrowest window Special case widest bandpass Special case narrowest window perfect time resolution Special case no frequency resolution widest bandpass v(n)=delta(n) v(n)=delta(n) v(n)=delta(n) X STFT (e , n) jw x ( k ) v ( k n )e k v(n)=delta(n)=1 if n=0, 0 otherwise jwk v(n)=delta(n) X STFT (e ,0) jw x(k ) v(k 0)e k jwk v(n)=delta(n) X STFT (e ,0) jw x(k ) v(k 0)e k STFT DFT jwk v(m)=delta(m) v(0)=delta(0)=1 STFT DFT LTI system output band limited LTI system output band limited can decimate in time domain Decimation in time domain H o (z) M Decimation in time domain H o (z) LTI system output band limited M Decimation in time domain H o (z) M maximal decimation (total of M samples across M channels) Copies in frequency domain wo wo Copies in frequency domain wo LTI system output band limited wo Copies in frequency domain wo copies after maximal decimation wo Decimated STFT M M M Decimated STFT M M M uniformly spaced versions of same window filter Decimated STFT M M M constant maximal decimation Decimated STFT M M M decimation by M samples window shift of M Decimated STFT (sliding window) Decimated STFT (sliding window) time axis Decimated STFT (sliding window) frequency axis Decimated STFT (sliding window) shift window by integer multiples of M Decimated STFT M M M decimation by M samples window shift of M Decimated STFT (sliding window) calculate M uniformly spaced samples of DFT Decimated STFT M M M uniformly spaced versions of same window filter Decimated STFT (sliding window) Decimated STFT (sliding window) time axis Decimated STFT (sliding window) frequency axis Decimated STFT (sliding window) shift window by integer multiples of M Decimated STFT M M M decimation by M samples window shift of M Decimated STFT (sliding window) calculate M uniformly spaces samples of DFT Decimated STFT M M M uniformly spaced versions of same window filter Decimated STFT (sliding window) uniform sampling of time/frequency Decimated STFT (sliding window) M fixes sampling Decimated STFT M M M M versions of same window filter decimation by M samples Decimated STFT no n1 nM 1 let decimation vary Decimated STFT (sliding window) let window shifts vary Decimated STFT no n1 nM 1 let window transforms vary Decimated STFT (sliding window) let window transforms vary Wavelet Transform Wavelet Transform Wavelet Transform let decimation vary Wavelet Transform let window shifts vary Wavelet Transform let window transforms vary Wavelet Transform let window transforms vary Wavelet Transform let window transforms vary Summary Decimated STFT M M M M versions of same window filter decimation by M samples Decimated STFT (sliding window) M fixes sampling Decimated STFT (sliding window) uniform sampling of time/frequency Wavelet Transform let window transforms vary let decimation vary Wavelet Transform let window shifts vary let window transforms vary Wavelet Transform non-uniform sampling of time/frequency grid Reference • Multirate Systems and Filter Banks by P.P. Vaidyanthan, pp.457-486