Filter Banks II. Prof. Dr.-Ing. G. Schuller. Fraunhofer IDMT & Ilmenau University of Technology Ilmenau, Germany

Similar documents
Filter Banks II. Prof. Dr.-Ing Gerald Schuller. Fraunhofer IDMT & Ilmenau Technical University Ilmenau, Germany

Filter Banks with Variable System Delay. Georgia Institute of Technology. Atlanta, GA Abstract

Module 4 MULTI- RESOLUTION ANALYSIS. Version 2 ECE IIT, Kharagpur

Perfect Reconstruction Two- Channel FIR Filter Banks

Digital Speech Processing Lecture 10. Short-Time Fourier Analysis Methods - Filter Bank Design

Quadrature-Mirror Filter Bank

Lecture 10, Multirate Signal Processing Transforms as Filter Banks. Equivalent Analysis Filters of a DFT

Course and Wavelets and Filter Banks. Filter Banks (contd.): perfect reconstruction; halfband filters and possible factorizations.

The basic structure of the L-channel QMF bank is shown below

Multirate signal processing

Basic Multi-rate Operations: Decimation and Interpolation

Subband Coding and Wavelets. National Chiao Tung University Chun-Jen Tsai 12/04/2014

Filter structures ELEC-E5410

ECSE 512 Digital Signal Processing I Fall 2010 FINAL EXAMINATION

Digital Image Processing

Detailed Solutions to Exercises

Multiresolution image processing

! Introduction. ! Discrete Time Signals & Systems. ! Z-Transform. ! Inverse Z-Transform. ! Sampling of Continuous Time Signals

Digital Signal Processing 2/ Advanced Digital Signal Processing, Audio/Video Signal Processing Lecture 10, Frequency Warping, Example

Direct Design of Orthogonal Filter Banks and Wavelets

Design of Nonuniform Filter Banks with Frequency Domain Criteria

Multi-rate Signal Processing 3. The Polyphase Representation

Digital Signal Processing

Digital Signal Processing:

Chapter 7 Wavelets and Multiresolution Processing. Subband coding Quadrature mirror filtering Pyramid image processing

# FIR. [ ] = b k. # [ ]x[ n " k] [ ] = h k. x[ n] = Ae j" e j# ˆ n Complex exponential input. [ ]Ae j" e j ˆ. ˆ )Ae j# e j ˆ. y n. y n.

representation of speech

Multi-rate Signal Processing 7. M-channel Maximally Decmiated Filter Banks

1 1.27z z 2. 1 z H 2

Introduction p. 1 Compression Techniques p. 3 Lossless Compression p. 4 Lossy Compression p. 5 Measures of Performance p. 5 Modeling and Coding p.

Multimedia Signals and Systems - Audio and Video. Signal, Image, Video Processing Review-Introduction, MP3 and MPEG2

New Design of Orthogonal Filter Banks Using the Cayley Transform

Wavelets and Multiresolution Processing

MULTIRATE DIGITAL SIGNAL PROCESSING

UNIVERSITY OF OSLO. Faculty of mathematics and natural sciences. Forslag til fasit, versjon-01: Problem 1 Signals and systems.

Multirate Digital Signal Processing

EE482: Digital Signal Processing Applications

Transforms and Orthogonal Bases

Lecture 11: Two Channel Filter Bank

Lapped Unimodular Transform and Its Factorization

Multiscale Image Transforms

DISCRETE-TIME SIGNAL PROCESSING

Design of Orthonormal Wavelet Filter Banks Using the Remez Exchange Algorithm

Digital Signal Processing

Digital Signal Processing

Designs of Orthogonal Filter Banks and Orthogonal Cosine-Modulated Filter Banks

OLA and FBS Duality Review

Citation Ieee Signal Processing Letters, 2001, v. 8 n. 6, p

LINEAR-PHASE FIR FILTERS DESIGN

L6: Short-time Fourier analysis and synthesis

EXTENDED LAPPED TRANSFORMS: PROPERTIES, APPLICATIONS, AND FAST ALGORITHMS

E : Lecture 1 Introduction

Time Series Analysis: 4. Digital Linear Filters. P. F. Góra

! Circular Convolution. " Linear convolution with circular convolution. ! Discrete Fourier Transform. " Linear convolution through circular

( ) John A. Quinn Lecture. ESE 531: Digital Signal Processing. Lecture Outline. Frequency Response of LTI System. Example: Zero on Real Axis

Review of Fundamentals of Digital Signal Processing

Digital Signal Processing

EE482: Digital Signal Processing Applications

Signal Analysis. Filter Banks and. One application for filter banks is to decompose the input signal into different bands or channels

OLA and FBS Duality Review

Two Channel Subband Coding

Optimal Design of Real and Complex Minimum Phase Digital FIR Filters

IB Paper 6: Signal and Data Analysis

Towards Global Design of Orthogonal Filter Banks and Wavelets

ECE-700 Review. Phil Schniter. January 5, x c (t)e jωt dt, x[n]z n, Denoting a transform pair by x[n] X(z), some useful properties are

Filter Design Problem

1 The Continuous Wavelet Transform The continuous wavelet transform (CWT) Discretisation of the CWT... 2

Wavelets and Filter Banks

The Dual-Tree Complex Wavelet Transform A Coherent Framework for Multiscale Signal and Image Processing

2. Typical Discrete-Time Systems All-Pass Systems (5.5) 2.2. Minimum-Phase Systems (5.6) 2.3. Generalized Linear-Phase Systems (5.

Lecture 19 IIR Filters

Lecture 04: Discrete Frequency Domain Analysis (z-transform)

UNIVERSITY OF OSLO. Please make sure that your copy of the problem set is complete before you attempt to answer anything.

Review: Continuous Fourier Transform

Phase Factor Influence on Amplitude Distortion and Aliasing of Pseudo-QMF Banks

DIGITAL SIGNAL PROCESSING UNIT III INFINITE IMPULSE RESPONSE DIGITAL FILTERS. 3.6 Design of Digital Filter using Digital to Digital

On the Frequency-Domain Properties of Savitzky-Golay Filters

How to manipulate Frequencies in Discrete-time Domain? Two Main Approaches

Design of Biorthogonal FIR Linear Phase Filter Banks with Structurally Perfect Reconstruction

ECG782: Multidimensional Digital Signal Processing

Frequency Response and Continuous-time Fourier Series

ONE-DIMENSIONAL (1-D) two-channel FIR perfect-reconstruction

Digital Signal Processing IIR Filter Design via Bilinear Transform

Filter Analysis and Design

Wavelet Filter Transforms in Detail

Let H(z) = P(z)/Q(z) be the system function of a rational form. Let us represent both P(z) and Q(z) as polynomials of z (not z -1 )

Discrete-time Signals and Systems in

EEO 401 Digital Signal Processing Prof. Mark Fowler

Communications and Signal Processing Spring 2017 MSE Exam

-Digital Signal Processing- FIR Filter Design. Lecture May-16

UNIVERSITI SAINS MALAYSIA. EEE 512/4 Advanced Digital Signal and Image Processing

POLYNOMIAL-BASED INTERPOLATION FILTERS PART I: FILTER SYNTHESIS*

Digital Signal Processing Lecture 9 - Design of Digital Filters - FIR

Index. p, lip, 78 8 function, 107 v, 7-8 w, 7-8 i,7-8 sine, 43 Bo,94-96

Cast of Characters. Some Symbols, Functions, and Variables Used in the Book

Fourier Series Representation of

Oversampling Converters

E2.5 Signals & Linear Systems. Tutorial Sheet 1 Introduction to Signals & Systems (Lectures 1 & 2)

Topic 7: Filter types and structures

DFT-Based FIR Filtering. See Porat s Book: 4.7, 5.6

Transcription:

Filter Banks II Prof. Dr.-Ing. G. Schuller Fraunhofer IDMT & Ilmenau University of Technology Ilmenau, Germany Page

Modulated Filter Banks Extending the DCT The DCT IV transform can be seen as modulated filter bank with window h(n): π x ( mn + n ) cos k + n + N 2 2 n= π yk (m) = x(mn + n) h(n) cos k + n + 2 2 n= N y k ( m) = N with a simple window function (independent of k!) defined as n =...N h( n ) = else Page 2

Modulated Filter Banks In general: yk ( m ) = n = x( mn + n) h(n) Φ k (n) window function (not necessarily limited in length) Φ k (n) modulation function, for instance the cosine function h(n) frequency index Page 3

Modulated Filter Banks The resulting filters of this cosine modulated filter bank are: π hk (n) = h(n) cos (k +.5)(n +.5) N With the cosine modulation, the resulting frequency responses of the filters of the filter bank are: H k (ω ) = H (ω ) δ 2 Multiplication in time becomes convolution in frequency π π ω k + + δ ω + k + N 2 N 2 Delta functions from cosine term Page 4

Modulated Filter Banks π π = H ω k + + H ω + k + N 2 N 2 Shift in frequency Hence: Modulated filter banks obtain their filters by shifting a baseband filter h(n) in frequency π < ω < π. Page 5

Modulated Filter Banks: Frequency Shifts The subbands of the filter bank are frequency- shifted versions of the window frequency response: Place passband in frequency, depending on the modulation function, for Subbands k and k+. Page 6

Modulated Filter Banks: The Window Function Frequency response of the rectangular window function of the DCT: ideal stopband Page 7

Modulated Filter Banks Improve filter banks: - make window longer - different window shape Examples (all have the same principle): - TDAC (time domain aliasing cancellation) (Princen and Bradley 986&987) - LOT (lapped orthogonal transform) (Malvar 989) - MDCT (modified DCT) (Bernd Edler 988) Page 8

Analysis Polyphase Matrix Remember: the analysis polyphase matrix is: H, ( z ) H, ( z ) H ( z) H ( z),, H ( z) = H N, N ( z ) with the analysis polyphase components H k,n ( z ) = hk (n + mn ) z m m= Page 9

MDCT The analysis polyphase matrix of the MDCT can be written with π N hk (n) = h(n) cos k + n + 2 2 2 N for n=,,2n-; k=,,n- as h () + z h ( N ) h () + z h ( N ) h ( ) + z h ( N + ) h ( ) + z h ( N + ) H ( z) = h ( N ) + z h ( 2 N ) N N Still square matrix, still invertible, NxN observe: this hk (n) has length 2N, and is more general than the rectangular window (not just or ) H (z ) is composed of st order polynomials Goal: find good h(n) Page

MDCT Fortunately, the MDCT polyphase matrix can be decomposed into a product of matrices, hence easier to invert to obtain perfect reconstruction: matrix h ( ) h( N ) z inverse is inverse of each entry! N h( ) h(.5 N ) z 2 H ( z) = T N h(.5 N ) h( ) 2 ( N ) h( 2 N ) h Fa, real valued [ ][ ] [ ] 2 = 2 3 3 4 9 Delay matrix D(z) DCT4-Matrix [ ][ 2 3 Page ][ ] = /2 /3

MDCT Observe the diamond shaped form of the matrix F a (z )and the sparse structure Beneficial for an efficient implementation Page 2

MDCT synthesis The MDCT synthesis Polyphase matrix can be similarly decomposed into a product of matrices. Needs to be the inverse and a delay for Perfect Reconstruction (PR). N N g ( ) g( ) 2 2 g ( ) g ( N ) G ( z ) = T z g(n ) g (2 N ) g (. 5 N ) g (. 5 N ) z D ( z ) z Fs z-: Delay by one time step (past) z: Looking into the future non-causal not practical hence mult. with z- (delay!) cause of signal delay Page 3

Graphical Interpretation of Analysis Matrix Fa time h() h( N ) z h() h( N ) [ DCT ] = [ y ] z [ x ] 4 h(2 N ) h( N ) h( N ) h(2 N ) subbands Fa - D(z ) Folding the upper and lower quarter of the signal into a length N block (aliasing components) Invertible by matrix inversion containing overlap-add Page 4

MDCT DCT matrix T and the delay matrix D(z) are easily invertible for perfect reconstruction. System Delay results from making inverse of D(z) causal (one block), and the blocking delay of N-. Fa is also easily invertible, with some simple matrix algebra: g ( n) = h( n) h ( n ) h ( 2 N n ) + h ( N + n) h( N n ) g ( N + n) = h( N + n) h ( n ) h ( 2 N n) + h ( N + n ) h ( N n ) with n=,,n- Page 5

MDCT Filter Banks () Modified Discrete Cosine Transform (MDCT): g(n)=h(n) Denominator= Example which fulfills this condition: Sine window h(n) = sin( π (n +.5)) for n=,,2n- 2N System delay=2n-=23 for N=52 (from the delay matrices, block of N, and the blocking delay of N-) Page 6

Sine-Window Frequency Response sinusoidal function Modulation of a rectangular window of length 2N sine window Better attenuation length 2N outside of passband Page 7 than with simple sinc

MDCT, Advantages Improved frequency responses, higher stopband attenuation Easy to design filter banks with many subbands (for instance N=24 for audio coding) Efficient implementation with the shown sparse matrices and a fast DCT. Important for large number of subbands, as in audio coding. Page 8

MDCT Filter Banks (2) Examples: filter impulse responses h7(n), h5(n), N=24 bands, sine window. Page 9

MDCT Filter Banks (3) Magnitude response 7th band Magnitude response 5th band indeed better filters! Page 2

Extending the Length of the MDCT Longer filters are obtained with higher order polynomials in the polyphase matrix Approach to obtain easily invertible polyphase matrices multiply MDCT polyphase matrix with more easily invertible matrices with polynomials of st order To control the resulting system delay: design different matrices with different needs for delay to make them causal Page 2

Extending the Length Take the MDCT Polyphase matrix with a general window function h(n) (not nec. Sine window): H MDCT (z ) This matrix contains polynomials of first order. Multiply it with another matrix with polynomials of first order (Schuller, 996, 2): L( z ) H MDCT ( z ) Page 22

Extending the Length This matrix needs to have a form such that again a modulated filter bank results. Diamond shaped form needs to be maintained Page 23

Extending the Length, Zero-Delay Matrix This matrix fulfills the conditions Zero-Delay Matrix: z l z l N / 2 L( z ) = Page 24

Extending the Length, Zero-Delay Matrix Its inverse is causal, hence does not need a delay to make it causal: L ( z) = z l N / 2 z l still increases filter length! Page 25

Extending the Length, Zero-Delay Matrix Observe: Since the matrix has a causal inverse, it can increase the filter length of the resulting filter bank without increasing the system delay! Hence adds zeros inside unit circle The coefficients h(n) and ln don t affect the delay or the PR property, but the frequency response of the resulting filter bank Coefficients need to be found by numerical optimization. Page 26

Extending the Length, Maximum-Delay Matrix Consider the following matrix Maximum-Delay Matrix: H ( z ) = z L( z ) Its inverse and delay for causality is H ( z ) z 2 = z L ( z ) Observe: This matrix and its inverse need a delay of 2 blocks to make it causal. Hence adds zeros outside the unit circle Page 27

Extending the Length, Design Method Determine the total number of Zero-Delay Matrices and Maximum-Delay Matrices according to the desired filter length Determine the number of Maximum-Delay Matrices according to the desired system Delay Determine the coefficients of the matrices with numerical optimization to optimize the frequency response Page 28

Example Comparison for 28 subbands. Dashed line: Orthogonal filter bank, filter length 256, system delay 255 samples. Solid line: Low delay filter bank, length 52, delay 255 Page 29

Block Switching Problem: In audio coding, Pre-echoes appear before transients - reason: blocks too long (too many bands) Page 3

Block Switching Approach: for fast changing signals use block switching to lower number of subbands less noise spread in time! Page 3

Accommodate Overlap-Add for Block Switching aliasing cancellation perfect reconstruction 24 window 28 Analysis switching bad frequency resolution Page 32

Block Switching Sequence of windows for switching the number of sub-bands window value h(n) both, analysis and synthesis Page 33

Wavelets, QMF Filter Banks Iterate 2-band system See also: Wavelet Packets (more general) Problem: Aliasing propagation reduces frequency selectivity! Important in image coding, but no big role in Audio Coding d (, n) h ( n) High-Pass d (2, n) h (n) c (, n) h (n) c(, n) High-Pass iterate Low-Pass c (2, n) h (n) Low-Pass Page 34

How to Obtain a Two Band Filter Bank Application: QMF filter banks, Wavelets, Analysis polyphase for a 2-band filter bank: H, ( z ) H, ( z ) H ( z) = H ( z ) H ( z ),, Observe: H, ( z ) contains the even coefficients of the low pass filter, and H, ( z ) its odd coefficients. Accordingly for the high pass filter Page 35

How to Obtain a Two Band Filter Bank Given the analysis filters, the synthesis filters can be obtained by inverting the analysis polyphase matrix, H, ( z ) H, ( z ) H ( z) = Det ( H ( z ) ) H, ( z ) H, ( z ) Observe: If the analysis filters have a finite impulse response (FIR), and the synthesis is desired to also be FIR, the determinant of the polyphase matrix needs to be a constant or a delay! Page 36

How to Obtain a Two Band Filter Bank det ( H ( z ) ) = H, ( z ) H, ( z ) H, ( z ) H, ( z ) = const or a delay Observe: This is the output of the lower band of the filter bank if the input signal is x( z ) = [ H, ( z ), H, ( z )] Hence the determinant can be formulated as a convolution This input is the high band filter coefficients, with the sign of the even coefficients flipped and switched places with the odd coefficients. Page 37

How to Obtain a Two Band Filter Bank Since this represents a critically sampled filter bank, the result represents every second sample of the convolution of the low band filter with the correspondingly modified high band filter. This modified high band filter is a low band filter (every second sample sign flipped). The desired output of this downsampled convolution is a single pulse (corresponding to a constant or a delay), hence flat in frequency Another interpretation: correlation of the 2 signals, where the even lags that appear after downsampling are zero, except for the one pulse Page 38

QMF (Quadrature Mirror Filter) This suggests a simple design strategy: Design a low pass filter for analysis and synthesis Obtain the high pass filters by flipping the low pass filters every second coefficient analysis FB: high pass: synth. FB low pass: h (n) = ( ) n h (n) g (n) = h (n) g (n) = h (n) n =,,..., N This is an early two band filter bank: QMF, Quadrature Mirror Filter (Croisier, Esteban, Galand, 976) For more than 2 bands: GQMF (Cox, 986), PQMF Page 39

QMF (2) Sign flipping to obtain the high band filter leads to the polyphase components: H, ( z ) = H, ( z ) H, ( z ) = H, ( z ) The resulting determinant is: det ( H ( z ) ) = H, ( z ) H, ( z ) H, ( z ) H, ( z ) = 2 H, ( z ) H, ( z ) Observe: This cannot be made a constant or delay for finite polynomials of order or greater, hence no PR for finite length filters! Page 4

QMF (3) The QMF accounts for the sign flipping in the determinant equation. But not for the trading places of even and odd coefficients Hence: No Perfect Reconstruction (only for simple Haar and IIR filters) High stopband attenuation needed to keep reconstruction error small Numerical optimization to obtain ( ) H e jω 2 ( ) + H e Page 4 jω 2

QMF (4) H (z ) lower band upper band fs 4 f Page 42

QMF: Example with Impulse Response of Length 96 Low-Pass High-Pass Page 43

CQMF (): Conjugate QMF To also accommodate for the trading places of odd and even coefficients, a natural choice is to also reverse the temporal order of the synthesis filter. h (n) = h ( L n)( ) n With L: filter length, and g (n) = h (n) g (n) = h (n) Introduced e.g. by Smith, Barnwell, 984 Page 44

CQMF (2) For the polyphase components this means H, ( z ) = z L / 2 H, ( z ) H, ( z ) = z L / 2 H, ( z ) And the input for our determinant calculation is [ x( z ) = z L / 2 H, ( z ), H, ( z ) ] This corresponds exactly to the time reversed low band filter! Page 45

CQMF Let's define A( z ) = H, ( z ) H, ( z ) The determinant is now det ( H ( z ) ) = H, ( z ) H, ( z ) H, ( z ) H, ( z ) = z L / 2 ( A( z ) + A( z )) Observe: This can be a constant if all even coefficients of A(z) are zero, except for the center coefficient! Page 46

CQMF (3) Remember: the determinant was the output of the low band with this input Hence: Every second sample of the convolution of the low band filter with its time reversed version. This is equal to every second value of the autocorrelation function of the low band filter! Determinant is a constant or a delay: only one sample of this downsampled autocorrelation function (all even coefficients) can be unequal zero (most even coefficients are zero) Page 47

CQMF (4) The Determinant is a constant means: The zeroth autocorrelation coefficient is a constant (unequal ), and all other even coefficients must be zero. Called Nyquist filter property -> Design method Page 48

CQMF (5) z-transform of ACF of low pass filter -> power spectrum In other terms: Define P(z) as the z-transform of this autocorrelation function, the Power Spectrum: P( z ) := H ( z ) H ( z ) Then all nonzero coefficients of P(z) are the zeroth coefficient and the odd coefficients. As a result: The odd coefficients cancel P( z ) + P( z ) = const Frequency reversal This is also called the halfband filter property. Design approach: Design P(z) accordingly, then H(z) Page 49

Pseudo-QMF (PQMF) So far we only had 2 subband QMF filter banks Only for the 2-band case we get perfect reconstruction (in the CQMF case) The PQMF extents the QMF approach to N>2 subbands But it has only Near Perfect Reconstruction, meaning a reconstruction error by the filter bank It is modulated filter band (like the MDCT), using a baseband prototype filter h(n) (a lowpass) Page 5

PQMF Its analysis filters are given by the impulse responses π L π hk (n) = cos (k +.5) n +.5 + ( ) k 2 4 N It is an orthogonal filter bank, which means that the synthesis filter impulse responses are simply the time inverses of the analysis impulse responses, f k (n) = hk ( L n) Page 5

PQMF Its baseband prototype filters h(n) are now designed such that aliasing cancels between adjacent neighbouring bands, jω 2 H (e ) + H ( e j (π / N Ω ) 2 ) =, for < Ω < π 2N beyond the adjacent bands, the attenuation should go towards infinity, jω 2 H (e ) =, for Ω > π N This leads to Near Perfect Reconstruction (there is a reconstruction error) Page 52

PQMF The PQMF filter bank is used in MPEG/2 Layer I and II and III. There it has N=32 subbands and filter length L=52 Also used in MPEG 4 for so-called SBR (Spectral Band Replication) and for parametric sourround coding. There it has N=32 or N=64 subbands, and filter length L=32 or L=64 Page 53

PQMF used in MPEG4 Impulse response of the baseband prototype (the window), with N=64 and L=64 Page 54

PQMF used in MPEG4 Frequency response of the baseband prototype (the window) Page 55