Upload
etenia
View
37
Download
6
Embed Size (px)
DESCRIPTION
Digital Signal Processing II Lecture 6: Maximally Decimated Filter Banks. Marc Moonen Dept. E.E./ESAT, K.U.Leuven [email protected] homes.esat.kuleuven.be/~moonen/. Part-II : Filter Banks. : Preliminaries Applications - PowerPoint PPT Presentation
Citation preview
p. 1DSP-II
Digital Signal Processing II
Lecture 6:
Maximally Decimated Filter Banks
Marc Moonen
Dept. E.E./ESAT, K.U.Leuven
homes.esat.kuleuven.be/~moonen/
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 2
Part-II : Filter Banks
: 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
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 3
PART-II : Filter Banks
LECTURE-6 : Maximally decimated FBs • `Interludium’: Review of multi-rate systems
• Perfect reconstruction (PR) FBs– 2-channel case – M-channel case
• `Interludium’: Paraconjugation & paraunitary functions
• Paraunitary PR FBs
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 4
Review of Multi-rate Systems (1)
• 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...
N u[0], u[N], u[2N]...u[0],u[1],u[2]...
N u[0],0,..0,u[1],0,…,0,u[2]...u[0], u[1], u[2],...
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 5
Review of Multi-rate Systems (2)
• Z-transform (frequency domain) analysis of expander
`expansion in time domain ~ compression in frequency domain’ expander mostly followed by interpolation filter to remove all images
N u[0],0,..0,u[1],0,…,0,u[2]...u[0], u[1], u[2],...
N)(zU )( NzU
3
`images’
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 6
Review of Multi-rate Systems (3)
• Z-transform (frequency domain) analysis of decimator
decimation introduces ALIASING if input signal occupies frequency band larger than , for hence decimation mostly preceded by anti-aliasing (decimation) filter
N)(zU
1
0
21 ).(.1 N
i
NijN ezUN
3
N u[0], u[N], u[2N]...u[0],u[1],u[2]...
i=0i=2 i=1
N2
3
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 7
Review of Multi-rate Systems (4)
• 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:
)( jeU 2
)( /NjeU N22
0,)(][
1
1...(...).
1)(
1
1)(
0,][
1
1
0
1
kky
zNzY
zzU
kku
kN
N
N
i
k
N)(zU
1
0
21 ).(.1 N
i
NijN ezUN
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 8
PS: Filter bank set-up revisited
- analysis filters Hi(z) are also decimation (anti-aliasing) filters, to avoid aliased contributions in subband signals
- synthesis filters Gi(z) are also interpolation filters, to remove images after expanders (upsampling)
subband processing 3H1(z)
subband processing 3H2(z)
subband processing 3H3(z)
3
3
3
3 subband processing 3H4(z)
IN
G1(z)
G2(z)
G3(z)
G4(z)
+
OUT
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 9
Review of Multi-rate Systems (5)
• Interconnection of multi-rate building blocks :
identities also hold if all decimators are replaced by expanders
N x
a
Nx
a=
=
=
N+
u2[k]
Nx
u2[k]
u1[k]
u1[k]
N +
Nu2[k]
u1[k]
N x
Nu2[k]
u1[k]
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 10
Review of Multi-rate Systems (6)
• `Noble identities’ (I) : (only for rational functions)
Example : N=2 h[0],h[1],0,0,0,…
=N N)( NzH )(zHu[k] u[k]y[k] y[k]
]3[
]2[
]1[
]0[
.0100
0001.
)(
]1[0
]0[]1[
0]0[
...
]3[
]2[
]1[
]0[
.
)2(
]1[000
0]1[00
]0[0]1[0
0]0[0]1[
00]0[0
000]0[
.
010000
000100
000001
]2[
]1[
]0[
ngdownsampli fold-2
ngdownsampli fold-2
u
u
u
u
zH
h
hh
h
u
u
u
u
zH
h
h
hh
hh
h
h
y
y
y
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 11
Review of Multi-rate Systems (7)
• `Noble identities’ (II) : (only for rational functions)
Example : N=2 h[0],h[1],0,0,0,…
=N N )( NzH)(zHu[k] u[k]y[k] y[k]
]1[
]0[.
00
10
00
01
.
)2(
]1[000
0]1[00
]0[0]1[0
0]0[0]1[
00]0[0
000]0[
...]1[
]0[.
)(
]1[0
]0[]1[
0]0[
.
000
100
000
010
000
001
]5[
]4[
]3[
]2[
]1[
]0[
upsampling fold-2
upsampling fold-2
u
u
zH
h
h
hh
hh
h
h
u
u
zH
h
hh
h
y
y
y
y
y
y
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 12
Review of Multi-rate Systems (8)
Application of `noble identities : efficient multi-rate filter implementations through…
• Polyphase decomposition: example : (2-fold decomposition)
example : (3-fold decomposition)
general: (N-fold decomposition)
)(
421
)(
642
654321
21
20
)].5[].3[]1[(.)].6[].4[].2[]0[(
].6[].5[].4[].3[].2[].1[]0[)(
zEzE
zhzhhzzhzhzhh
zhzhzhzhzhzhhzH
)(
32
)(
31
)(
63
654321
32
31
30
)].5[]2[(.)].4[]1[(.)].6[].3[]0[(
].6[].5[].4[].3[].2[].1[]0[)(
zEzEzE
zhhzzhhzzhzhh
zhzhzhzhzhzhhzH
k
kl
N
l
Nl
l
k
k zlkNhzEzEzzkhzH ]..[)( , )(.].[)(1
0
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 13
Review of Multi-rate Systems (9)
• Polyphase decomposition: example : Efficient implementation of a decimation filter
i.e. all filter operations performed at the lowest rate
u[k]
2
)( 20 zE
)( 21 zE
1z+
H(z)
u[k]
2
1z
)(0 zE
)(1 zE +
= 2
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 14
Review of Multi-rate Systems (10)
• Polyphase decomposition:
example : Efficient implementation of an interpolation filter
i.e. all filter operations performed at the lowest rate
=
u[k]
2
)( 20 zE
)( 21 zE
1z
+
H(z)
u[k]
2
1z
+)(0 zE
)(1 zE
2
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 15
Refresh
General `subband processing’ set-up:
- analysis bank+ synthesis bank
- multi-rate structure: down-sampling after analysis, up-sampling for synthesis
- aliasing vs. ``perfect reconstruction”
- applications: coding, (adaptive) filtering, transmultiplexers
- PS: subband processing ignored in filter bank design
subband processing 3H0(z)
subband processing 3H1(z)
subband processing 3H2(z)
3
3
3
3 subband processing 3H3(z)
IN
F0(z)
F1(z)
F2(z)
F3(z)
+
OUT
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 16
Refresh
Two design issues :
- filter specifications, e.g. stopband attenuation, passband ripple, transition band, etc. (for each (analysis) filter!)
- perfect reconstruction property.
PS: Perfect reconstruction property as such is easily satisfied, if there aren’t any (analysis) filter specs, e.g. (see Lecture-5)
…but this is not very useful/practical. Stringent filter specs. necessary for subband coding, etc.
This lecture : Maximally decimated FB’s :
4444
+1z2z3z
1
u[k-3]444
1z
2z
3z4
1
u[k]
NM
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 17
Perfect Reconstruction : 2-Channel Case
It is proved that... (try it!)
• U(-z) represents aliased signals, hence the `alias transfer function’ A(z) should ideally be zero
• T(z) is referred to as `distortion function’ (amplitude & phase distortion). For perfect reconstruction, T(z) should ideally be a pure delay
H0(z)
H1(z)
2
2
u[k] 2
2
F0(z)
F1(z)+
y[k]
)(.
)(
)}()()().(.{2
1)(.
)(
)}()()().(.{2
1)( 11001100 zU
zA
zFzHzFzHzU
zT
zFzHzFzHzY
NM
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 18
Perfect Reconstruction : 2-Channel Case
• Requirement for `alias-free’ filter bank :
• Requirement for `perfect reconstruction’ filter bank (= alias-free + distortion-free): i)
ii)
• PS: if A(z)=0, then Y(z)=T(z).U(z), hence the complete filter bank behaves as a linear time invariant (LTI) system (despite up- & downsampling).
Remarkable !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
H0(z)
H1(z)
2
2
u[k] 2
2
F0(z)
F1(z)+
y[k]
0)( zA
zzT )(
0)( zA
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 19
Perfect Reconstruction : 2-Channel Case
• An initial choice is ….. :
so that
For the real coefficient case, i.e. which means the amplitude response of H1 is the mirror image of the amplitude response of Ho with respect to the quadrature frequency hence the name `quadrature mirror filter’ (QMF)
H0(z)
H1(z)
2
2
u[k] 2
2
F0(z)
F1(z)+
y[k]
)()( ),()( ),()( 010001 zHzFzHzFzHzH
)}()({2
1...)( 2
020 zHzHzT 0...)( zA
)(...)()
2(
0
)2
(
1
jjeHeH
2
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 20
Perfect Reconstruction : 2-Channel Case)
`quadrature mirror filter’ (QMF) :
hence if Ho (=Fo) is designed to be a good lowpass filter, then H1 (=-F1) is a good high-pass filter.
H0(z)
H1(z)
2
2
u[k] 2
2
F0(z)
F1(z)+
y[k]
2
Ho H1
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 21
Perfect Reconstruction : 2-Channel Case
• A 2nd (better) choice is: [Smith & Barnwell 1984] [Mintzer 1985]
i)
so that (alias cancellation) ii) `power symmetric’ Ho(z) (real coefficients case)
iii) so that (distortion function) ignore the details! This is a so-called`paraunitary’ perfect reconstruction bank (see below), based on a lossless system Ho,H1 :
H0(z)
H1(z)
22
u[k] 22
F0(z)
F1(z) +y[k]
)()( ),()( 0110 zHzFzHzF
1...)( zT
0...)( zA
1)()(
2)
2(
0
2)
2(
0
jjeHeH
][.)1(][ 01 kLhkh k
1)()(2
1
2
0 jj eHeH
This is already pretty complicated…
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 22
Perfect Reconstruction : M-Channel Case
It is proved that... (try it!)
• 2nd term represents aliased signals, hence all `alias transfer functions’ Al(z) should ideally be zero (for all l )
• H(z) is referred to as `distortion function’ (amplitude & phase distortion). For perfect reconstruction, H(z) should ideally be a pure delay
).(.
)(
)}()..({.1
)(.
)(
})().(.{1
)(1
1
1
0
1
0
lM
l
M
kk
lk
M
kkk WzU
zlA
zFWzHM
zU
zH
zFzHM
zY
H2(z)
H3(z)
4
4
4
4
F2(z)
F3(z)
y[k]
H0(z)
H1(z)
4
4u[k]
4
4
F0(z)
F1(z)
+
NM
Sigh !!…
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 23
Perfect Reconstruction : M-Channel Case
• A simpler analysis results from a polyphase description :
i-th row of E(z) has polyphase
components of Hi(z)
i-th column of R(z) has polyphase
components of Fi(z)
4444
+u[k-3]
1z
2z
3z
1
1z2z3z
1
u[k] 444
4
)( 4zE )( 4zR
)1(
1|10|1
1|00|0
1
0
:
1
.
)(
)(...)(
::
)(...)(
)(
:
)(
NNNN
NN
NN
N
N z
Nz
zEzE
zEzE
zH
zH E
)(
)(...)(
::
)(...)(
.
1
:
)(
:
)(
1|10|1
1|00|0)1(
1
0
Nz
zRzR
zRzRz
zF
zF
NNN
NN
NN
NTNT
N
R
Do not continue until you understand how formulae correspond to block scheme!
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 24
Perfect Reconstruction : M-Channel Case
• with the `noble identities’, this is equivalent to:
Necessary & sufficient conditions for i) alias cancellation ii) perfect reconstruction are then derived, based on the product
4444
+u[k-3]
1z
2z
3z
1
1z2z3z
1
u[k] 444
4
)(zE )(zR
)().( zz ER
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 25
Perfect Reconstruction : M-Channel Case
Necessary & sufficient condition for alias-free FB is…:
a pseudo-circulant matrix is a circulant matrix with the additional feature
that elements below the main diagonal are multiplied by 1/z, i.e.
..and first row of R(z).E(z) are polyphase cmpnts of `distortion function’ T(z) read on->
4444
+u[k-3]
1z
2z
3z
1
1z2z3z
1
u[k] 444
4)(zE )(zR
circulant'-`pseudo)().( zz ER
)()(.)(.)(.
)()()(.)(.
)()()()(.
)()()()(
)().(
031
21
11
1031
21
21031
3210
zpzpzzpzzpz
zpzpzpzzpz
zpzpzpzpz
zpzpzpzp
zz ER
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 26
Perfect Reconstruction : M-Channel Case
PS: This can be explained as follows:
first, previous block scheme is equivalent to (cfr. Noble identities)
then (iff R.E is pseudo-circ.)…
so that finally..
4444
+1z
2z
3z
1
1z2z3z
1
u[k] 444
4)().( 44 zz ER
)(.))()()()((.
1
...)(.
1
).().()(
43
342
241
140
3
2
1
3
2
144 zUzpzzpzzpzzp
z
z
zzU
z
z
zzz
zT
ER
44444
+1z2z3z
1
T(z)*u[k-3]444
1z
2z
3z
1u[k]
)(zT
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 27
Perfect Reconstruction : M-Channel Case
Hence necessary & sufficient condition for PR (where T(z)=pure delay):
In is nxn identity matrix, r is arbitrary
(Obvious) example :
4444
+u[k-3]
1z
2z
3z
1
1z2z3z
1
u[k] 444
4)(zE )(zR
10 ,0.
0)().(
1
NrIz
Izzz
r
rN
ER
NIzz )().( ER
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 28
Perfect Reconstruction : M-Channel Case
For conciseness, will use this from now on :
- Procedure: 1. Design all analysis filters (=DSP-II/Part-I). 2. This determines E(z) (=polyphase matrix). 3. Assuming E(z) can be inverted (?), choose synthesis filters
- Example : DFT/IDFT Filter bank (Lecture-5) : E(z)=F, R(z)=F^-1
- FIR E(z) generally leads to IIR R(z), where stability is a concern…
4444
444
4
+ u[k-3]1z
2z
3z
1
1z2z3z
1
u[k] )(zE )(zR
NIzz )().( ER
)()( 1 zz ER
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 29
Perfect Reconstruction : M-Channel Case
Question:
Can we find polynomial (FIR) matrices E(z) that have a FIR inverse?
Answer:
YES, so-called `unimodular’ matrices (where determinant=constant*z^-d)
Example:
where the Ei’s are constant (=not a function of z) invertible matrices
procedure : optimize Ei’s to obtain analysis filter specs (ripple, etc.)
enough) good( .)().(
.10
0...
10
0.....
10
0..)(
.0
0....
0
0..
0
0.)(
111
11
11
11
11
10
011
111
111
ML
LM
LMM
MML
ML
Izzz
IzIzIzz
z
I
z
I
z
Iz
ER
EEEER
EEEEE
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 30
Perfect Reconstruction : M-Channel Case
Question:
Can we avoid direct inversion, e.g. through the usage of (again FIR) E(z)
matrices with additional `special properties’ ?
(compare with (real) orthogonal or (complex) unitary matrices)
Answer:
YES, `paraunitary’ matrices (=special class of FIR matrices with FIR inverse)
See next slides….
In the sequel, will focus on paraunitary E(z)
leading to paraunitary PR filter banks
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 31
Paraunitary PR Filter Banks
Interludium : `PARACONJUGATION’
• For a scalar transfer function H(z), paraconjugate is i.e it is obtained from H(z) by - replacing z by 1/z - replacing each coefficient by its complex conjugate Example :
On the unit circle, paraconjugation corresponds to complex conjugation
paraconjugation = `analytic extension’ of unit-circle conjugation
)()(~ 1
* zHzH
zazHzazH .1)(~
.1)( *1
*1* })({)()(
~ jjj ezezez
zHzHzH
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 32
Paraunitary PR Filter Banks
Interludium : `PARACONJUGATION’• For a matrix transfer function H(z), paraconjugate is i.e it is obtained from H(z) by - transposition - replacing z by 1/z - replacing each coefficient by is complex conjugate Example :
On the unit circle, paraconjugation corresponds to transpose conjugation
paraconjugation = `analytic extension’ of unit-circle transpose conjugation
)()(~ 1
* zz THH
zbzazzb
zaz .1.1)(
~
.1
.1)( **
1
1
HH
H
ezez
T
ezjjj
zzz })({)()(~ 1
*
HHH
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 33
Paraunitary PR Filter Banks
Interludium : `PARAUNITARY matrix transfer functions’• Matrix transfer function H(z), is paraunitary if (possibly up to a scalar)
For a square matrix function
A paraunitary matrix is unitary on the unit circle
paraunitary = `analytic extension’ of unit-circle unitary.
PS: if H1(z) and H2(z) are paraunitary, then H1(z).H2(z) is paraunitary
Izz )().(~
HH
Izz jj ez
H
ez
})(.{})({ HH
1)}({)(~ zz HH
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 34
Paraunitary PR Filter Banks
- If E(z) is paraunitary
hence perfect reconstruction is obtained with
If E(z) is FIR, then R(z) is also FIR !! (cfr definition paraconjugation)
4444
+u[k-3]
1z
2z
3z
1
1z2z3z
1
u[k] 444
4
)(zE )(zR
NIzz )().( ER
)(~
)( zz ER
Izz )().(~
EE
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 35
Paraunitary PR Filter Banks
• Example: paraunitary FIR E(z) with FIR inverse R(z)
where the Ei’s are constant unitary matrices Procedure : optimize unitary Ei’s to obtain analysis filter specs. ps: 2-channel case with real coefficients, then
hence optimize phi’s... (=lossless lattice, see lecture-2)
M
HL
MHL
MHMH
MML
ML
Izz
IzIzIzz
z
I
z
I
z
Iz
)().(
.10
0...
10
0.....
10
0..)(
.0
0....
0
0..
0
0.)(
11
11
1
11
1
0
011
111
111
ER
EEEER
EEEEE
paraunitary
ii
iii
cossin
sincosE
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 36
Paraunitary PR Filter Banks
Properties of paraunitary PR filter banks:
• If polyphase matrix E(z) (and hence E(z^N)) is paranunitary, and
then vector transfer function H(z) (=all analysis filters) is paraunitary• If vector transfer function H(z) is paraunitary, then its components are
power complementary (lossless 1-input/N-output system)constant )(
1
0
2
N
k
jk eH
)1(
1|10|1
1|00|0
1
0
:
1
.
)(
)(...)(
::
)(...)(
)(
:
)(
)(NN
NNN
N
NN
N
N z
Nz
zEzE
zEzE
zH
zH
z
E
H
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 37
Paraunitary PR Filter Banks
Properties of paraunitary PR filter banks (continued):
• Synthesis filter coefficients are obtained by conjugating the analysis filter coefficients + reversing the order :
• Magnitude response of synthesis filter Fk is the same as magnitude response of corresponding analysis filter Hk:
• Analysis filters are power complementary (cfr. supra)• Synthesis filters are power complementary• example: DFT/IDFT bank, Lecture-5 example: 2-channel case, page 21• Great properties/designs.... (proofs omitted)
10 ],[][ * NknLhnf kk
10 ,)()( NkeHeF jk
jk
DSP-IIVersion 2005-2006 Lecture-6 Maximally Decimated Filter Banks p. 38
Conclusions
• Have derived general conditions for perfect reconstruction, based on polyphase matrices for analysis/synthesis bank
• Seen example of general PR filter bank design : Paraunitary PR FBs
• Sequel = other (better) PR structures
Lecture 7: Modulated filter banks
Lecture 8: Oversampled filter banks, etc..
• Reference: `Multirate Systems & Filter Banks’ , P.P. Vaidyanathan Prentice Hall 1993.