1 / 40

Digital Signal Processing II Lecture 6: Filter Banks - Preliminaries

Digital Signal Processing II Lecture 6: Filter Banks - Preliminaries. Marc Moonen Dept. E.E./ESAT, K.U.Leuven marc.moonen@esat.kuleuven.be homes.esat.kuleuven.be/~moonen/. Part-II : Filter Banks. : Preliminaries Filter bank set-up and applications

yule
Download Presentation

Digital Signal Processing II Lecture 6: Filter Banks - Preliminaries

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Digital Signal Processing IILecture 6: Filter Banks - Preliminaries Marc Moonen Dept. E.E./ESAT, K.U.Leuven marc.moonen@esat.kuleuven.be homes.esat.kuleuven.be/~moonen/

  2. Part-II : Filter Banks : Preliminaries • Filter bank set-up and applications • `Perfect reconstruction’ problem + 1st example (DFT/IDFT) • Multi-rate systems review (10 slides) : Maximally decimated FBs • Perfect reconstruction filter banks (PR FBs) • Paraunitary PR FBs : Modulated FBs • Maximally decimated DFT-modulated FBs • Oversampled DFT-modulated FBs : Special Topics • Cosine-modulated FBs • Non-uniform FBs & Wavelets • Frequency domain filtering Lecture-6 Lecture-7 Lecture-8 Lecture-9 Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  3. subband processing OUT subband processing subband processing H1 H2 H3 H4 subband processing H1(z) IN H2(z) + H3(z) H4(z) Filter Banks Introduction What we have in mind is this… : - Signals split into frequency channels/subbands - Per-channel/subband processing - Reconstruction : synthesis of processed signal - Applications : see below (audio coding etc.) - In practice, this is implemented as a multi-rate structure for higher efficiency (see next slides) Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  4. H1 H2 H3 H4 M=4 H1(z) H1 H2 H3 H4 IN H2(z) H3(z) H1 H2 H3 H4 H4(z) Filter Banks Introduction Step-1: Analysis filter bank - collection of M filters (`analysis filters’, `decimation filters’) with a common input signal - ideal (but non-practical) frequency responses = ideal bandpass filters - typical frequency responses (overlapping, non-overlapping,…) Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  5. Filter Banks Introduction Step-2: Decimators (downsamplers) - To increase efficiency, subband sampling rate is reduced by factor N (= Nyquist (bandpass) sampling theorem, see Lecture-7) - Maximally decimated filter banks (=critically downsampled): # subband samples= # fullband samples this sounds like maximum efficiency, but aliasing (see below)! - Oversampled filter banks (=non-critically downsampled): # subband samples> # fullband samples N=M N<M M=4 N=3 3 H1(z) IN 3 H2(z) 3 H3(z) 3 H4(z) Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  6. 3 3 3 3 Filter Banks Introduction Step-3: Subband processing - Example : coding (=compression) + (transmission or storage) + decoding - Filter bank design mostly assumes subband processing has `unit transfer function’ (output signals=input signals), i.e. mostly ignores presence of subband processing M=4 N=3 subband processing H1(z) IN subband processing H2(z) subband processing H3(z) subband processing H4(z) Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  7. M=4 N=3 N=3 3 3 subband processing H1(z) IN 3 3 subband processing H2(z) 3 3 subband processing H3(z) 3 3 subband processing H4(z) Filter Banks Introduction Step-4: Expanders (upsamplers) - restore original fullband sampling rate by N-fold upsampling (=insert N-1 zeros in between every two samples) Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  8. M=4 N=3 N=3 3 3 subband processing G1(z) H1(z) OUT IN 3 3 G2(z) subband processing H2(z) G1 G2 G3 G4 + 3 3 subband processing G3(z) H3(z) 3 3 subband processing G4(z) H4(z) Filter Banks Introduction Step-5: Synthesis filter bank - upsampling has to be followed by (interpolation) filtering (see below) - collection of M `synthesis’ (`interpolation’) filters, with a `common’ (summed) output signal - frequency responses : preferably `matched’ to frequency responses of the analysis filters, e.g., to provide perfect reconstruction (see below) Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  9. 3 M=4 N=3 N=3 y[k]=u[k-d]? 3 G1(z) output = input H1(z) 3 u[k] 3 G2(z) output = input H2(z) 3 + 3 output = input G3(z) H3(z) 3 3 G4(z) output = input H4(z) Aliasing versus Perfect Reconstruction - Assume subband processing does not modify subband signals (e.g. lossless coding/decoding) -The overall aim would be to have y[k]=u[k-d], i.e. that the output signal is equal to the input signal up to a certain delay -But: downsampling introduces ALIASING, especially so in maximally decimated (but also in non-maximally decimated) filter banks (see also Lecture-7) Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  10. 3 M=4 N=3 N=3 y[k]=u[k-d]? 3 G1(z) output = input H1(z) 3 u[k] 3 G2(z) output = input H2(z) 3 + 3 output = input G3(z) H3(z) 3 3 G4(z) output = input H4(z) Aliasing versus Perfect Reconstruction Question : Can y[k]=u[k-d] be achieved in the presence of aliasing ? Answer : YES !! PERFECT RECONSTRUCTION banks with synthesis bank designed to remove aliasing effects ! Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  11. Filter Banks Applications • Subband coding: Coding = Fullband signal split into subbands & downsampled subband signals separately encoded (e.g. subband with smaller energy content encoded with fewer bits) Decoding = reconstruction of subband signals, then fullband signal synthesis (expanders + synthesis filters) Example : Image coding (e.g. wavelet filter banks) Example : Audio coding e.g. digital compact cassette (DCC), MiniDisc, MPEG, ... Filter bandwidths and bit allocations chosen to further exploit perceptual properties of human hearing (perceptual coding, masking, etc.) Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  12. Filter Banks Applications • Subband adaptive filtering : - See Part III - Example : Acoustic echo cancellation Adaptive filter models (time-varying) acoustic echo path and produces a copy of the echo, which is then subtracted from microphone signal. = difficult problem ! * long acoustic impulse responses * time-varying Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  13. 3 H1(z) ad.filter + + + + + 3 ad.filter H2(z) 3 H3(z) ad.filter 3 H4(z) ad.filter 3 3 G1(z) H1(z) OUT 3 3 G2(z) H2(z) 3 3 G3(z) H3(z) 3 3 G4(z) H4(z) Filter Banks Applications • Subband adaptive filtering(continued): - Subband filtering = M (simpler?) subband modeling problems instead of one (more complicated?) fullband modeling problem - Perfect reconstruction guarantees distortion-free desired near-end speech signal Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  14. + signal-1 signal-1 5 G1(z) signal-2 signal-2 5 G2(z) transmission channel 5 G3(z) signal-3 signal-3 5 H1(z) 5 G4(z) signal-4 signal-4 5 H2(z) 5 H3(z) 5 H4(z) Filter Banks Applications: Transmux’s • Transmultiplexers : Frequency Division Multiplexing (FDM) in digital communications - M different source signals multiplexed into 1 transmit signal by expanders & synthesis filters (ps: here interpolation factor ) - Received signal decomposed into M source signals by analysis filters & decimators - Again ideal filters = ideal bandpass filters N>=M Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  15. Filter Banks Applications: Transmux’s • Transmultiplexers :(continued) - Non-ideal synthesis & analysis filters result in aliasing and distortion, as well as CROSS-TALK between channels, i.e. each reconstructed signal contains unwanted contributions from other signals - Analysis & synthesis are reversed here, but similar perfect reconstruction theory (try it!) (where analysis bank removes cross-talk introduced by synthesis bank, if transmission channel = distortion free) Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  16. + 4 u1[k],u1[k+1] u1[k-1],u1[k] u2[k],u2[k+1] u3[k],u3[k+1] u4[k],u4[k+1] Filter Banks Applications: Transmux’s • Transmultiplexers : (continued) PS: special case is Time Division Multiplexing (TDM), if synthesis and analysis filters are replaced by delay operators (and N=M) u1[k],u2[k],u3[k],u4[k],u1[k+1],u2[k+1]... 4 4 u2[k-1],u2[k] 4 transmission channel 4 4 u3[k-1],u3[k] 4 4 u4[k-1],u4[k] 0,0,0,u4[k],0,0,0,u4[k+1]... Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  17. Filter Banks Applications: Transmux’s Skip this slide • Transmultiplexers : (continued) PS : special case is Code Division Multiple Access (CDMA), where filter coefficients=(orthogonal) user codes CDMA basics: (see digital coms courses)…… -Each user (i) is assigned a length-N pseudo-random code sequence -Transmission : For each symbol (k-th symbol for user-i), a `chip’ sequence is transmitted -Mostly binary codes ( ) with BPSK/QPSK symbols -Multiple access based on code-orthogonality (see below) Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  18. Filter Banks Applications: Transmux’s Skip this slide CDMA basics: -Reception : If (x) received signal = transmitted chip sequence (i.e. no channel effect, no noise), multiply chips with (synchronized) code sequence + sum. -Example (user i) transmitted symbols +1……… -1………. -1……… +1……… code sequence +1,+1,-1,-1 transmitted chips +1,+1,-1,-1 -1,-1,+1,+1 -1,-1,+1,+1 +1,+1,-1,-1 received chips +1,+1,-1,-1 -1,-1,+1,+1 -1,-1,+1,+1 +1,+1,-1,-1 +1,+1,-1,-1 (mult. with code & sum) received symbols (*1/4) +1………… -1…….…..-1…………+1 (x) PS: real-world CDMA is considerably more complicated (different channels for different users + channel dispersion, asynchronous users, scrambling codes, etc.) Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  19. + u1[k],u1[k+1] u2[k],u2[k+1] u3[k],u3[k+1] u4[k],u4[k+1] Filter Banks Applications: Transmux’s Skip this slide CDMA Transmission/reception block scheme : -transmitter code-multiplication may be viewed as filtering operation, with FIR transmit filter -receiver code-multiplication & summation may be viewed as filtering operation, with receive filter -PR for `flat’ channel H(z)=1 and if codes are orthogonal (prove it!) 4 4 4 4 u2[k+1],u2[k] Base station transmission channel User-2 terminal 4 4 4 4 Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  20. y[k]=u[k-d]? 4 4 G1(z) output = input H1(z) u[k] 4 4 G2(z) output = input H2(z) + 4 4 output = input G3(z) H3(z) 4 4 G4(z) output = input H4(z) PR-FB Example: DFT/IDFT Filter Bank • Fundamental question is..: Downsampling introduces ALIASING, then how can PERFECT RECONSTRUCTION (PR) (i.e. y[k]=u[k-d]) be achieved ? • Next slides provide simple PR-FB examples, to demonstrate that PR can indeed (easily) be obtained • Discover the magic of aliasing-compensation…. Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  21. u[k] u[0],0,0,0,u[4],0,0,0,... 4 4 4 u[-1],u[0],0,0,u[3],u[4],0,0,... 4 4 4 u[-2],u[-1],u[0],0,u[2],u[3],u[4],0,... + + + 4 4 u[-3],u[-2],u[-1],u[0],u[1],u[2],u[3],u[4],... u[k-3] DFT/IDFT Filter Bank First attempt to design a perfect reconstruction filter bank - Starting point is this : convince yourself that y[k]=u[k-3] … Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  22. + 4 4 u[k] 4 4 u[k-3] 4 4 4 4 DFT/IDFT Filter Bank - An equivalent representation is ... As y[k]=u[k-d], this can already be viewed as a perfect reconstruction filter bank (with aliasing in the subbands!) All analysis/synthesis filters are seen to be pure delays, hence are not frequency selective (i.e. far from ideal case with ideal bandpass filters….) ps: transmux version see p.16 Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  23. 4 4 u[k] 4 4 u[k-3] + 4 4 4 4 DFT/IDFT Filter Bank -now insert DFT-matrix (discrete Fourier transform) and its inverse (I-DFT)... as this clearly does not change the input-output relation (hence perfect reconstruction property preserved) Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  24. 4 4 u[k-3] 4 4 + 4 4 4 4 DFT/IDFT Filter Bank - …and reverse order of decimators/expanders and DFT-matrices (not done in an efficient implementation!) : =analysis filter bank =synthesis filter bank This is the `DFT/IDFT filter bank’. It is a first example of a maximally decimated perfect reconstruction filter bank ! u[k] Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  25. u[k] DFT/IDFT Filter Bank What do analysis filters look like? This is seen (known) to represent a collection of filters Ho(z),H1(z),..., each of which is a frequency shifted version of Ho(z) : i.e. the Hi are obtained by uniformly shifting the `prototype’ Ho over the frequency axis. Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  26. DFT/IDFT Filter Bank H1(z) Ho(z) The prototype filter Ho(z) is a not-so-great lowpass filter with first sidelobe only 13 dB below the main lobe. Ho(z) and Hi(z)’s are thus far from ideal lowpass/ bandpass filters. Hence (maximal) decimation introduces significant ALIASING in the decimated subband signals Still, we know this is a PERFECT RECONSTRUCTION filter bank (see construction p.21-24), which means the synthesis filters can apparently restore the aliasing distortion. This is remarkable! Other perfect reconstruction banks : see Lecture-7 Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  27. + DFT/IDFT Filter Bank What do synthesis filters look like? synthesis filters are (roughly) equal to analysis filters (details omitted, see also Lecture-7) PS: Efficient DFT/IDFT implementation based on FFT algorithm (`Fast Fourier Transform’). *(1/N) Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  28. Conclusions • Seen the general subband processing set-up + applications • Filter bank system is multi-rate structure, with decimators and expanders, hence ALIASING is a major concern • Seen a first (simple & not-so-great) example of a PERFECT RECONSTRUCTION filter bank (DFT/IDFT) • Sequel = other (better) PR structures Lecture 7: Maximally decimated filter banks Lecture 8: Modulated filter banks Lecture 9: Oversampled filter banks, etc.. • Reference: `Multirate Systems & Filter Banks’ , P.P. Vaidyanathan Prentice Hall 1993. Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  29. N u[0], u[N], u[2N]... u[0],u[1],u[2]... u[0], u[1], u[2],... N u[0],0,..0,u[1],0,…,0,u[2]... Review of Multi-rate Systems 1/10 • Decimation : decimator (downsampler) example : u[k]: 1,2,3,4,5,6,7,8,9,… 2-fold downsampling: 1,3,5,7,9,... • Interpolation : expander (upsampler) example : u[k]: 1,2,3,4,5,6,7,8,9,… 2-fold upsampling: 1,0,2,0,3,0,4,0,5,0... Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  30. 3 N N u[0], u[1], u[2],... u[0],0,..0,u[1],0,…,0,u[2]... Review of Multi-rate Systems 2/10 • Z-transform (frequency domain) analysis of expander `expansion in time domain ~ compression in frequency domain’ `images’ Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  31. 3 `images’ N u[0], u[1], u[2],... u[0],0,..0,u[1],0,…,0,u[2]... LP Review of Multi-rate Systems 2bis/10 • Z-transform (frequency domain) analysis of expander expander mostly followed by `interpolation filter’ to remove images (and `interpolate the zeros) interpolation filter can be low-/band-/high-pass (see Lecture-7) Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  32. Review of Multi-rate Systems 3/10 • Z-transform (frequency domain) analysis of decimator `compression in time domain ~ expansion in frequency domain’ N u[0], u[N], u[2N]... u[0],u[1],u[2]... N i=2 i=0 i=1 3 Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  33. LP Review of Multi-rate Systems 3bis/10 • Z-transform (frequency domain) analysis of decimator decimation introduces ALIASING if input signal occupies frequency band larger than , hence mostly preceded by anti-aliasing (decimation) filter anti-aliasing filter can be low-/band-/high-pass (see Lecture-7) N u[0], u[N], u[2N]... u[0],u[1],u[2]... i=2 i=0 i=1 3 Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  34. N Review of Multi-rate Systems 4/10 • Z-transform analysis of decimator (continued) - Note that is periodic with period while is periodic with period the summation with i=0…N-1 restores the periodicity with period ! - Example: Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  35. u1[k] N N N N + u2[k] N = N x x a a Review of Multi-rate Systems 5/10 • Interconnection of multi-rate building blocks : identities also hold if all decimators are replaced by expanders u1[k] N = + u2[k] u1[k] N = x u1[k] x u2[k] u2[k] Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  36. u[k] y[k] u[k] y[k] = N N Review of Multi-rate Systems 6/10 • `Noble identities’ (I) : (only for rational functions) Example : N=2 h[0],h[1],0,0,0,… Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  37. Review of Multi-rate Systems 7/10 • `Noble identities’ (II) : (only for rational functions) Example : N=2 h[0],h[1],0,0,0,… u[k] y[k] u[k] y[k] N = N Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  38. Review of Multi-rate Systems 8/10 Application of `noble identities : efficient multi-rate realizations of FIR filters through… • Polyphase decomposition: example :(2-fold decomposition) example :(3-fold decomposition) general: (N-fold decomposition) Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  39. 2 2 2 Review of Multi-rate Systems 9/10 • Polyphase decomposition: Example : efficient implementation of an FIR decimation filter i.e. all filter operations performed at the lowest rate H(z) u[k] + u[k] = + Version 2009-2010Lecture-6:Filter Banks - Preliminaries

  40. u[k] H(z) 2 2 2 + Review of Multi-rate Systems 10/10 • Polyphase decomposition: Example : efficient implementation of an FIR interpolation filter i.e. all filter operations performed at the lowest rate u[k] = + Version 2009-2010Lecture-6:Filter Banks - Preliminaries

More Related