Presentation is loading. Please wait.

Presentation is loading. Please wait.

Digital Signal Processing II Lecture 8: Filter Banks - Special Topics

Similar presentations


Presentation on theme: "Digital Signal Processing II Lecture 8: Filter Banks - Special Topics"— Presentation transcript:

1 Digital Signal Processing II Lecture 8: Filter Banks - Special Topics
Marc Moonen Dept. E.E./ESAT, K.U.Leuven homes.esat.kuleuven.be/~moonen/

2 Part-II : Filter Banks Lecture-5 Lecture-6 Lecture-7 Lecture-8
: Preliminaries Applications Intro perfect reconstruction filter banks (PR FBs) : Maximally decimated FBs Multi-rate systems review PR FBs Paraunitary PR FBs : Modulated FBs DFT-modulated FBs Cosine-modulated FBs : Special Topics Non-uniform FBs & Wavelets Oversampled DFT-modulated FBs Frequency domain filtering Lecture-5 Lecture-6 Lecture-7 Lecture-8 Version Lecture-8 Filter Banks – Special Topics

3 Topic-1: Non-Uniform FBs / Wavelets
Prelude Starting point is discrete-time Fourier transform: inversion/reconstruction/synthesis (=filter bank jargon) is.. `uncertainty principle’ says that if u[k] has a narrow support (i.e. is localized), then U(.) has a wide support (i.e. is non-localized), and vice versa Notion of `frequency that varies with time’ not accommodated Version Lecture-8 Filter Banks – Special Topics

4 Non-Uniform FBs / Wavelets
Prelude Tool to fill this need is `short-time Fourier transform’(STFT): where w[n] is your favorite window function (typically with `compact support’ (=FIR) ) Window slides past the data. For each window position n, compute discrete-time Fourier transform. PS: If w[n]=1 for all n, then STFT = discrete-time FT for all n Version Lecture-8 Filter Banks – Special Topics

5 Non-Uniform FBs / Wavelets
Prelude Rewrite STFT formula as… If we forget about the fase factor up front (meaning what?), then this corresponds to performing a convolution with a filter In practice, will compute this for a discrete set of (N) frequencies leading to a set of filters This is a DFT-modulated analysis bank, prototype filter = window function Version Lecture-8 Filter Banks – Special Topics

6 Non-Uniform FBs / Wavelets
Prelude Efficient implementation based on polyphase decomposition of prototype Ho + FFT-modulation Often window length=N, hence 1-tap polyphase components u[k] u[k] Version Lecture-8 Filter Banks – Special Topics

7 Non-Uniform FBs / Wavelets
Prelude If maximally decimated (M=N, decimation=`window shift’), this DFT-modulated analysis bank corresponds to a STFT xk[n] = decimated subband signals = STFT-coefficients With a corresponding (PR) synthesis filter bank (see Lecture 7) Ex: the reconstruction/synthesis formula (inverse STFT) is ..to be compared to page 3 H2(z) H3(z) 4 F2(z) F3(z) y[k] H0(z) H1(z) u[k] F0(z) F1(z) + Version Lecture-8 Filter Banks – Special Topics

8 Non-Uniform FBs / Wavelets
Now, for some applications (e.g. audio) would like to have a non-uniform filter bank, hence also with non-uniform (maximum) decimation, for instance non-uniform filters : low frequency resolution at high frequencies, high frequency resolution at low frequencies (as human hearing) non-uniform decimation : high time resolution at high frequencies, low time resolution at low frequencies H0 H3 H2 H1 H2(z) H3(z) 4 2 H0(z) H1(z) 8 u[k] Version Lecture-8 Filter Banks – Special Topics

9 Non-Uniform FBs / Wavelets
This can be built as a tree-structure, based on a 2-channel filter bank with u[k] 2 H0 H1 H2 H3 Version Lecture-8 Filter Banks – Special Topics

10 Non-Uniform FBs / Wavelets
Note that may be viewed as a prototype filter, from which a series of filters is derived The lowpass filters are then needed to turn these multi-band filters into bandpass filters (i.e. remove images) Version Lecture-8 Filter Banks – Special Topics

11 Non-Uniform FBs / Wavelets
Similar synthesis bank can be constructed with If and form a PR FB, then the complete analysis/synthesis structure is PR (why?) 2 + Version Lecture-8 Filter Banks – Special Topics

12 Non-Uniform FBs / Wavelets
Analysis bank corresponds to `discrete-time wavelet transform’ (DTWT) With a corresponding (PR) synthesis filter bank, the reconstruction/synthesis formula (inverse DTWT) is ..to be compared to page 3 & 7 Version Lecture-8 Filter Banks – Special Topics

13 Non-Uniform FBs / Wavelets
Reconstruction formula may be viewed as an expansion of u[n], using a set of basis functions (infinitely many) If the 2-channel filter bank is paraunitary, then this basis is orthonormal (which is a desirable property) : =`orthonormal wavelet basis’ Version Lecture-8 Filter Banks – Special Topics

14 Non-Uniform FBs / Wavelets
Example : `Haar’ wavelet (after Alfred Haar) Formulas for Ho, H1, H2, H3, … ? Formulas for Fo, F1, F2, F3, …? Paraunitary FB (orthonormal wavelet basis) ? Version Lecture-8 Filter Banks – Special Topics

15 Non-Uniform FBs / Wavelets
ignore details… Not treated here : `continuous wavelet transform’ (CWT) of a continuous-time function u(t) h(t)=prototype p,q are real-valued continuous variables p introduces `dilation’ of prototype, q introduces `shift’ of prototype `discrete wavelet transform’ (DWT) is CWT with discretized p,q T is sampling interval k,n are real-valued integer variables mostly a=2 Version Lecture-8 Filter Banks – Special Topics

16 Non-Uniform FBs / Wavelets
Not treated here : Theory - multiresolution analysis - wavelet packets - 2D transforms - etc … Applications : - audio: de-noising, … - communications : wavelet modulation - image : image coding Version Lecture-8 Filter Banks – Special Topics

17 Topic-2: Oversampled PR Filter Banks
So far have considered maximal decimation (M=N), where aliasing makes PR design non-trivial. With downsampling factor (N) smaller than the number of channels (M) , aliasing is expected to become a smaller problem, possibly negligible if N<<M. Still, PR theory (with perfect alias cancellation) is not necessarily simpler ! Will not consider PR theory as such here, only give some examples of oversampled PR FIR (!) DFT-modulated banks Version Lecture-8 Filter Banks – Special Topics

18 Oversampled PR Filter Banks
Starting point is (see Lecture-6): where E(z) and R(z) are NxN matrices (cfr maximal decimation) What if we try other dimensions for E(z) and R(z)…?? 4 + u[k-3] u[k] Version Lecture-8 Filter Banks – Special Topics

19 Oversampled PR Filter Banks
A more general case is : where E(z) is now MxN (`tall-thin’) and R(z) is NxM (`short-fat’) while still guarantees PR ! 4 + u[k] u[k-3] N=4 decimation M=6 channels Version Lecture-8 Filter Banks – Special Topics

20 Oversampled PR Filter Banks
The PR condition appears to be a `milder’ requirement if M>N for instance for M=2N, we have (where Ei and Ri are NxN matrices) which does not necessarily imply that meaning that inverses may be avoided, creating possibilities for FIR PR-FBs, which can even (see below) be modulated and paraunitary In the sequel, give 2 examples of oversampled DFT-modulated FBs Version Lecture-8 Filter Banks – Special Topics

21 Oversampled PR Filter Banks
Oversampled DFT-modulated PR FBs : Example-1 : # channels M = Ho(z),H1(z),…,H7(z) decimation N = 4 prototype filter Ho(z) will consider N’-fold polyphase expansion, with Should not really try to understand this… Version Lecture-8 Filter Banks – Special Topics

22 Oversampled PR Filter Banks
In general, it is proved that the M-channel DFT-modulated (analysis) filter bank can be realized based on an M-point DFT cascaded with an MxN polyphase matrix B, which contains the (N’-fold) polyphase components of the prototype Ho(z) ps: note that if M=N, then N’=N, and then B is a diagonal matrix (cfr. supra) Example-1 (continued): u[k] Version Lecture-8 Filter Banks – Special Topics Convince yourself that this is indeed correct..

23 Oversampled PR Filter Banks
With N-fold (N=4) decimation, this is… Perfect Reconstruction by paraunitariness ? - If E(z )=F*.B(z) is paraunitary, then PR is obtained with R(z)=B~(z).F (=NxM) - Analysis bank E(z) is paraunitary if B(z) (=MxN) is paraunitary - When is B(z) paraunitary ? u[k] 4 4 + u[k-3] u[k] Version Lecture-8 Filter Banks – Special Topics

24 Oversampled PR Filter Banks
Example 1 (continued) : From the structure of B(z) It follows that B(z) is paraunitary if and only if (for k=0,1,2,3) are power complementary, i.e. form a lossless (1 input, 2 output) system Solution & design procedure: FIR lattices In general : non-trivial FIR solutions exist for M>N (unlike for M=N, see Lecture 7). This is great news : oversampled PR-FBs can be at the same time DFT-modulated (`M filters for the price of 1’), FIR and paraunitary ! Version Lecture-8 Filter Banks – Special Topics

25 Oversampled PR Filter Banks
Example-2 : # channels M = Ho(z),H1(z),…,H5(z) decimation N = 4 prototype filter Ho(z) will consider N’-fold polyphase expansion, with Should not really try to understand this… Version Lecture-8 Filter Banks – Special Topics

26 Oversampled PR Filter Banks
Remember (page 18) that the DFT modulated (analysis) filter bank can be realized based on an M-point IDFT cascaded with an MxN polyphase matrix B, which contains the (N’-fold) polyphase components of the prototype Ho(z) u[k] Version Lecture-8 Filter Banks – Special Topics Convince yourself that this is indeed correct..

27 Oversampled PR Filter Banks
With N-fold (N=4) decimation, this is… Perfect Reconstruction by paraunitariness ? - E(z) paraunitary iff B(z) paraunitary. Etc…. - A bit more complicated here (hence skipped), but still leading to non-trivial solutions Conclusion : Oversampling provides additional design flexibility, not available in maximally decimated case. Hence can have it all at once : FIR, PR, DFT-modulated, paraunitariness! u[k] 4 Version Lecture-8 Filter Banks – Special Topics

28 Topic-3 : Frequency Domain Filtering
See DSP-I : cheap filtering based on frequency domain realization (`time domain convolution equivalent to component-wise multiplication in the frequency domain’), cfr. `overlap-add’ & `overlap-save’ procedures This can be cast in the subband processing setting, as a non-critically downsampled (2-fold oversampled) DFT-modulated filter bank operation! Leads to more general approach to performance/delay trade-off PS: formulae given for N=4, for conciseness (but without loss of generality) Version Lecture-8 Filter Banks – Special Topics

29 Frequency Domain Filtering
Have to know a theorem from linear algebra here: A `circulant’ matrix is a matrix where each row is obtained from the previous row using a right-shift (by 1 position), the rightmost element which spills over is circulated back to become the leftmost element example (4x4): The eigenvalue decomposition of a `circulant’ matrix is trivial…. with F the NxN DFT-matrix, this means that the eigenvectors are always equal to the column-vectors of the IDFT-matrix, and that the eigenvalues are obtained as the DFT of the first column of the circulant matrix (...proof by Matlab) Version Lecture-8 Filter Banks – Special Topics

30 Frequency Domain Filtering
Starting point is this (see Lecture-6) : meaning that a filtering with can be realized in a multirate structure, based on a pseudo- circulant matrix T(z)*u[k-3] u[k] 4 + Version Lecture-8 Filter Banks – Special Topics

31 Frequency Domain Filtering
Now some matrix manipulation… : Version Lecture-8 Filter Banks – Special Topics

32 Frequency Domain Filtering
A subband processing (8-channel filter bank) representation of this is... Analysis bank: Synthesis bank: Subband processing: This is a 2N-channel filter bank, with N-fold downsampling. The analysis filter bank is a 2N-channel uniform DFT filter bank. The synthesis bank is (different, but) matched to the analysis bank, for PR under 2-fold oversampling. u[k] 4 + y[k] Version Lecture-8 Filter Banks – Special Topics

33 Frequency Domain Filtering
This is known as an `overlap-save’ realization : Analysis bank: performs 2N-point DFT (FFT) of a block of (N=4) samples, together with the previous block of (N) samples (hence `overlap’) Synthesis bank: performs 2N-point IDFT (IFFT), throws away the first half of the result, saves the second half (hence `save’) Subband processing corresponds to `frequency domain’ operations (see next slide) `Overlap-add’ can be similarly derived (try it!) `block’ `previous block’ `throw away’ `save’ Version Lecture-8 Filter Banks – Special Topics

34 Frequency Domain Filtering
Standard `Overlap-add’ and `overlap-save’ realizations are derived when 0th order poly-phase components are used in the above derivation, i.e. each poly-phase component represents 1 tap of an N-tap filter T(z). The corresponding 0th order subband processing (H) then corresponds to what is usually referred to as the `component-wise multiplication’ in the frequency domain. Note that for an N-tap filter, with large N, this leads to a cheap realization based on FFT/IFFTs instead of DFT/IDFTs. However, for large N, as 2N-point FFT/IFFTs are needed, this may also lead to an unacceptably large processing delay (latency) between filter input and output. In the more general case, with higher-order polyphase components (hence N smaller than the filter length), a smaller complexity reduction is achieved, but the processing delay is also smaller. This provides an interesting trade-off between complexity reduction and latency. Version Lecture-8 Filter Banks – Special Topics


Download ppt "Digital Signal Processing II Lecture 8: Filter Banks - Special Topics"

Similar presentations


Ads by Google