B. Porat, A course in digital signal processing, Wiley, 1997. ▻ J. G. Proakis and D
. Manolakis, Digital Signal Processing -. Principles ... image processing.
Digital Signal Processing Advanced Methods
Nicolas Dobigeon University of Toulouse IRIT/INP-ENSEEIHT
http://www.enseeiht.fr/~dobigeon
[email protected]
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
1
/
205
Prerequisites Representation tools I
Complex variable and z transform
I
Laplace transform
Digital Signal Processing - Basics (TNS1) I
Discrete Fourier Transform (DFT/TFD) I I
I
Digital filtering I I I I I
Nicolas
properties fast algorithm linear filtering (time-invariant, causal) FIR and IIR filters direct synthesis of FIR filters (windowing) synthesis of IIR filters implementation (direct, canonical, serial and parallel structures)
Dobigeon
Digital Signal Processing - Advanced Methods
2
/
205
Bibliography
I
M. Bellanger, Traitement Num´erique du Signal - Th´eorie et Pratique, Masson, 1994.
I
F. Castanie, Traitement Num´erique du Signal - M´ethodes avanc´ees, Polycopi´e ENSEEIHT, 2002.
I
B. Porat, A course in digital signal processing, Wiley, 1997.
I
J. G. Proakis and D. Manolakis, Digital Signal Processing Principles, Algorithms and Applications, Pearson, 1996.
I
IEEEXplore Digital Library, http://ieeexplore.ieee.org.
I
www...
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
3
/
205
Examples of applications
I
signal processing I
I
image processing I I
I
edge enhancement, compression, notions of spatial frequency, 2D and 3D processing,...
array processing I
I
denoising, compression, detection,...
notion of wavefront,
digital communications (e.g., mobiles) I
notions of multipath, equalization...
⇒ Requires to implement linear filters!
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
4
/
205
Linear and time-invariant filter (LTI) Properties I
Linearity: F [ax1 (n) + bx2 (n)]
= aF [x1 (n)] + bF [x2 (n)] = ay1 (n) + by2 (n).
Necessary and sufficient condition: ∃h(n, k) = F [δ(n − k)]
such that
y (n) =
+∞ X
x(k)h(n, k)
k=−∞
I
Time-invariance: ∀n0 , y (n) = F [x(n)] ⇔ y (n − n0 ) = F [x(n − n0 )] .
(1)
Necessary and sufficient condition: ∀n, ∀k, h(n, k) = h(n − k). ⇒ Linear and time-invariant filter fully characterized by its impulse response h(k) (k ∈ Z) or its transfer function H(z) P = TZ [h(k)] ⇒ Filtering identity becomes y (n) = k x(k)h(n − k) = h(n) ∗ x(n) (temporal convolution) or Y (z) = H(Z )X (Z ) (“frequency” product). Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
5
/
205
Linear and time-invariant filter (LTI) Properties I
Linearity: F [ax1 (n) + bx2 (n)]
= aF [x1 (n)] + bF [x2 (n)] = ay1 (n) + by2 (n).
Necessary and sufficient condition: ∃h(n, k) = F [δ(n − k)]
such that
y (n) =
+∞ X
x(k)h(n, k)
k=−∞
I
Time-invariance: ∀n0 , y (n) = F [x(n)] ⇔ y (n − n0 ) = F [x(n − n0 )] .
(1)
Necessary and sufficient condition: ∀n, ∀k, h(n, k) = h(n − k). ⇒ Linear and time-invariant filter fully characterized by its impulse response h(k) (k ∈ Z) or its transfer function H(z) P = TZ [h(k)] ⇒ Filtering identity becomes y (n) = k x(k)h(n − k) = h(n) ∗ x(n) (temporal convolution) or Y (z) = H(Z )X (Z ) (“frequency” product). Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
5
/
205
Linear and time-invariant filter (LTI) Properties I
Linearity: F [ax1 (n) + bx2 (n)]
= aF [x1 (n)] + bF [x2 (n)] = ay1 (n) + by2 (n).
Necessary and sufficient condition: ∃h(n, k) = F [δ(n − k)]
such that
y (n) =
+∞ X
x(k)h(n, k)
k=−∞
I
Time-invariance: ∀n0 , y (n) = F [x(n)] ⇔ y (n − n0 ) = F [x(n − n0 )] .
(1)
Necessary and sufficient condition: ∀n, ∀k, h(n, k) = h(n − k). ⇒ Linear and time-invariant filter fully characterized by its impulse response h(k) (k ∈ Z) or its transfer function H(z) P = TZ [h(k)] ⇒ Filtering identity becomes y (n) = k x(k)h(n − k) = h(n) ∗ x(n) (temporal convolution) or Y (z) = H(Z )X (Z ) (“frequency” product). Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
5
/
205
Linear and time-invariant filter (LTI) Properties I
Linearity: F [ax1 (n) + bx2 (n)]
= aF [x1 (n)] + bF [x2 (n)] = ay1 (n) + by2 (n).
Necessary and sufficient condition: ∃h(n, k) = F [δ(n − k)]
such that
y (n) =
+∞ X
x(k)h(n, k)
k=−∞
I
Time-invariance: ∀n0 , y (n) = F [x(n)] ⇔ y (n − n0 ) = F [x(n − n0 )] .
(1)
Necessary and sufficient condition: ∀n, ∀k, h(n, k) = h(n − k). ⇒ Linear and time-invariant filter fully characterized by its impulse response h(k) (k ∈ Z) or its transfer function H(z) P = TZ [h(k)] ⇒ Filtering identity becomes y (n) = k x(k)h(n − k) = h(n) ∗ x(n) (temporal convolution) or Y (z) = H(Z )X (Z ) (“frequency” product). Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
5
/
205
Outline Optimization Non-optimal synthesis of FIR filter Non-optimal synthesis of IIR filter Optimization methods Stabilization of the solutions Digital effects Some reminders Input quantization Coefficient quantization Quantization in calculations Non-standard structures Ladder/lattice structures Fraction-based structures Multirate structures
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
6
/
205
Optimization
Outline
Optimization Non-optimal synthesis of FIR filter Direct synthesis Sampling in the frequency domain
Non-optimal synthesis of IIR filter Direct synthesis Pad´ e approximants
Optimization methods Least-square method Remez algorithm Eigenfilters
Stabilization of the solutions Digital effects Non-standard structures
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
7
/
205
Optimization Non-optimal synthesis of FIR filter
Outline
Optimization Non-optimal synthesis of FIR filter Direct synthesis Sampling in the frequency domain
Non-optimal synthesis of IIR filter Direct synthesis Pad´ e approximants
Optimization methods Least-square method Remez algorithm Eigenfilters
Stabilization of the solutions Digital effects Non-standard structures
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
8
/
205
Optimization Non-optimal synthesis of FIR filter
Some reminders on FIR I
Characterized by a finite impulse response: bk , k = 0, . . . , M h(k) = 0, otherwise.
I
Function transfer: H(z) =
M X k=0
I
bk z −k =
M X
h(k)z −k
k=0
Properties I
I
non-recursive computation → stability, weak digital sensivity linear phase possible if symetry of the IR h(k) = ±h(M − k), k = 0, . . . , M, (suivant parit´e de M)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
9
/
205
Optimization Non-optimal synthesis of FIR filter Direct synthesis
Direct synthesis (reminder) Let HI (z) z=e i2πf denote the ideal frequency transfer function. I Fourier series expansion of HI e i2πf → RI +∞ X HI e i2πf = ck e i2πf k=−∞
with ck = hI (k) ∝ I
R 1/2 −1/2
HI e
i2πf
e −i2πf df
Windowed truncation of the IR (filter order fixed to M = 2L + 1), h0 (k) = hI (k)w (k), k = −L, . . . , L
Optional steps: “Iterations” (order M et window w (·)), I
Shift of the IR to make it causal hN (k) = h0 (k − k0 ) (with k0 ≥ L)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
10
/
205
Optimization Non-optimal synthesis of FIR filter Direct synthesis
Direct synthesis (reminder) Influence of the order (natural window)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
11
/
205
Optimization Non-optimal synthesis of FIR filter Direct synthesis
Direct synthesis (reminder) Influence of the order (natural window)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
12
/
205
Optimization Non-optimal synthesis of FIR filter Direct synthesis
Direct synthesis (reminder) Influence of the window (order fixed to M = 22)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
13
/
205
Optimization Non-optimal synthesis of FIR filter Sampling in the frequency domain
Sampling in the frequency domain
Let a FIR filter whose transfer function HI (z) is specified by (M + 1) points z0 , . . . , zM . I
H = {HI (z0 ), . . . , HI (zM )} is the set of (strong) constraint.
I
Let the M-order polynomial approximation H(z) =
M X
Ln (z) HI (zn )
with
Ln (zm ) = δ (m − n)
n=0
Remark: we have H(zm ) = HI (zm ) (∀m) I
The (unique) Lagrange polynom is Ln (z) =
Nicolas
Dobigeon
M Y 1 − z −1 zm 1 − zn−1 zm m6=n
Digital Signal Processing - Advanced Methods
14
/
205
Optimization Non-optimal synthesis of FIR filter Sampling in the frequency domain
Sampling in the frequency domain I
HI (z) can be rewritten "
M Y H(z) = 1 − zn z −1
#"
n=0
M X m=0
with
Am 1 − zm z −1
#
HI (zm ) −1 n6=m 1 − zn zm
Am = Q I
If the constraints H are specified by equidistant points over the unit circle n zn = e i2π M+1 then we have M m 1 − z M+1 X i2π M+1 1 H(z) = HI e m i2π M+1 −1 M + 1 m=0 | 1 − e z {z }| {z } Gain
|
Nicolas
Dobigeon
1st-order cell
{z
}
Parallel 1st-order cells
Digital Signal Processing - Advanced Methods
15
/
205
Optimization Non-optimal synthesis of IIR filter
Outline
Optimization Non-optimal synthesis of FIR filter Direct synthesis Sampling in the frequency domain
Non-optimal synthesis of IIR filter Direct synthesis Pad´ e approximants
Optimization methods Least-square method Remez algorithm Eigenfilters
Stabilization of the solutions Digital effects Non-standard structures
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
16
/
205
Optimization Non-optimal synthesis of IIR filter
Some reminders on IIR
I
Characterized by the linear recurrence with constant coefficients: y (n) = −
M X
ak y (n − k) +
k=1
M X
bk x(n − k)
k=1
where ∃j ∈ {1, . . . , M} such that aj 6= 0 (with a0 = 1), I
Corresponding function transfer: PM +∞ X bk z −k H(z) = Pk=0 = h(k)z −k M −k a z k=0 k k=−∞
I
Properties: efficient ( ≈ selective) but I I I
Nicolas
(in)stability defined by the pole positions digital sensivity (error propagations) non-constant group delay
Dobigeon
Digital Signal Processing - Advanced Methods
17
/
205
Optimization Non-optimal synthesis of IIR filter Direct synthesis
Direct synthesis (reminder) Let the ideal transfer function HI (z) z=e i2πf I
Choice of a required feature I
Nicolas
Preserving the temporal response
Dobigeon
Digital Signal Processing - Advanced Methods
18
/
205
Optimization Non-optimal synthesis of IIR filter Direct synthesis
Direct synthesis (reminder) Let the ideal transfer function HI (z) z=e i2πf I
Choice of a required feature I I
Preserving the temporal response Preserving the harmonic response
I
Computing the analog template thanks to the transformation fE tan π f˜N fA = π
I
Synthesis of HA (p) (p = i2πfA ) ensuring the analog template (choosing order, prototype...)
I
Coming back in the Z-domain by the bilinear transform p = 2fE
Nicolas
Dobigeon
1 − z −1 1 + z −1
Digital Signal Processing - Advanced Methods
18
/
205
Optimization Non-optimal synthesis of IIR filter Pad´ e approximants
Pad´ e approximants
I
We propose the ideal transfer function P to approximate −k HI (z) = +∞ h(k)z by the the rational approximant k=−∞ Pm bk z −k Bm (z) , Gm,n (z) = = Pk=0 n −k An (z) k=0 ak z
with u0 = 1
where Bn (·) et Am (·) are polynomials of degrees n and m, resp. I
Gm,n (z) is then expanded into the serie +∞ X Gm,n (z) = g (k)z −k k=−∞
and we impose g (k) =
Nicolas
Dobigeon
h(k), any,
for k = 0, . . . , n + m; for k ≥ n + m + 1
Digital Signal Processing - Advanced Methods
19
/
205
Optimization Non-optimal synthesis of IIR filter Pad´ e approximants
Pad´ e approximants
I
If we write Pm m+n X bk z −k −k −(n+m+1) = h(k)z + O z Gm,n (z) = Pk=0 n −k k=0 ak z k=0
then, it comes m X
bk z −k =
k=0
| I
2n+m X
Nicolas
with
ck =
{z
degree m
}
|
X
aj h(k − j)
j=0
k=0
{z
}
degree 2n + m
Necessarily ck = 0
I
inf(k,n)
ck z −k +
∀k ∈ {m + 1, . . . , 2n + m} ,
We cancel all the terms ck for k = m + 1, . . . , 2n + m,
Dobigeon
Digital Signal Processing - Advanced Methods
20
/
205
Optimization Non-optimal synthesis of IIR filter Pad´ e approximants
Pad´ e approximants
I
with a0 = 1, we obtain the linear system h(m + 1) h(m + 2) . . . h(m + n) |
... ...
... {z
h(m − n + 2) h(m − n + 3) . . . h(m + 1)
a1 a2 . .. an } | {z
h(0) h(1) . . . h(m) |
−
=
}
|
h(m + 2) h(m + 3) . . . h(m + n + 1) {z
a
H1
and
0 h(0) . . . h(m − 1) {z
... ..
. ...
0 0
}
h
1 a1 . . 0 . h(0) an } | {z
H2
a2
}
b0 b1 . .. bm | {z
=
}
b
which yields a = −H−1 1 h and then b = H2 a2
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
21
/
205
Optimization Non-optimal synthesis of IIR filter Pad´ e approximants
Pad´ e approximants
Some remakds I When the orders n et m are fixed, if it exists1 , the couple {An , Bm } is unique2 (with a0 = 1), sometimes denoted by [m/n] (but the fraction Bm (z)/An (z) is not necessarily irreductible ). I The Pad´ e approximants Gn,m = Bm /An are grouped in the Pad´ e table indexed by n and m. I The matrices H1 and H2 are Toeplitz et lower triangular Toeplitz for which there are some efficient algorithms to perform inversion and product. I The approximant Gm,n (z) and the targeted transfer function HI (z) have IRs that coincide on their first (n + m + 1) points. Above, nothing is imposed. → Possible instability of the approximant!
See also: I C. S. Burrus, T. W. Parks, “Time Domain Design of Recursive Digital Filters”, IEEE Trans. Audio Electroacoustics, vol. AU-18, no. 2, June 1970.
1 Sufficient condition: det H 6= 0. 1 2 Frobenius, 1881. Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
22
/
205
Optimization Optimization methods
Outline
Optimization Non-optimal synthesis of FIR filter Direct synthesis Sampling in the frequency domain
Non-optimal synthesis of IIR filter Direct synthesis Pad´ e approximants
Optimization methods Least-square method Remez algorithm Eigenfilters
Stabilization of the solutions Digital effects Non-standard structures
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
23
/
205
Optimization Optimization methods
General principle Let HI (f ) the ideal transfer function. I
We introduce a parameter vector θ that fully characterizes the M-order digital filter HN (f ) (FIR or IIR) ,
I
We define the synthesis error e(f ) = HI (f ) − HN (f ),
I
If the specified constraints are not the same in all the frequency subbands, we introduce a weighting function P(f ) eP (f ) = P(f ) [HI (f ) − HN (f )] , and the corresponding “global” error criterion JeP (θ) = keP (f )k,
I
Then we are looking for θ opt that is solution of θ opt = argmin JeP (θ) θ∈Θ
Remarks: opt I H N (f ) may not satisfy the template → we iterate on M, I θ depends in the chosen synthesis structure.
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
24
/
205
Optimization Optimization methods
I
Direct structure: PM bk z −k , (with a0 = 1) HN (z) = Pk=0 M −k k=0 ak z → θD = [a1 , . . . , aM , b0 , . . . , bM ]T
I
Serial structure (after grouping conjugate complex roots): QM K −1 Y ) M k=1 (1 − zk z = b0 Hk (z), (with HN (z) = b0 QM ≤ K ≤ M) −1 2 ) k=1 (1 − pk z k=1 where Hk (z) =
1+bk,1 z −1 +bk,2 z −2 1+ak,1 z −1 +ak,2 z −2
are bi-quadratic structures,
→ θS = {θS,1 , . . . , θS,K } with θS,k = [ak,1 , ak,2 , bk,1 , bk,2 ]T I
Parallel structure (with simple pole): HN (z) = c +
K X
Hk (z),
k=1
where Hk (z) =
1+bk,1 z −1 1+ak,1 z −1 +ak,2 z −2
are bi-quadratic structures,
→ θP = {θP,1 , . . . , θP,K } with θP,k = [ak,1 , , ak,2 , bk,1 ]T Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
25
/
205
Optimization Optimization methods
General principle Let Soit HI (f ) the ideal transfer function. I
We introduce a parameter vector θ that fully characterizes the M-order digital filter HN (f ) (FIR or IIR) ,
I
We define the synthesis error e(f ) = HI (f ) − HN (f ),
I
If the specified constraints are not the same in all the frequency subbands, we introduce a weighting function P(f ) eP (f ) = P(f ) [HI (f ) − HN (f )] , and the corresponding “global” error criterion JeP (θ) = keP (f )k,
I
Then we are looking at θ opt that is solution of θ opt = argmin JeP (θ) θ∈Θ
Remarks: opt I H N (f ) may not satisfy the template → we iterate on M, I θ depends in the chosen synthesis structure.
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
26
/
205
Optimization Optimization methods
General principle Let Soit HI (f ) the ideal transfer function. I
We introduce a parameter vector θ that fully characterizes the M-order digital filter HN (f ) (FIR or IIR) ,
I
We define the synthesis error e(f ) = HI (f ) − HN (f ),
I
If the specified constraints are not the same in all the frequency subbands, we introduce a weighting function P(f ) eP (f ) = P(f ) [HI (f ) − HN (f )] , and the corresponding “global” error criterion JeP (θ) = keP (f )k,
I
Then we are looking at θ opt that is solution of θ opt = argmin JeP (θ) θ∈Θ
Remarks: opt I H N (f ) may not satisfy the template → we iterate on M, I θ depends in the chosen synthesis structure. Which norm? Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
27
/
205
Optimization Optimization methods Least-square method
`2 -norm: least-square method I
Let the error term defined in N0 frequency points eP (fn ) = P(fn ) [HI (fn ) − HN (fn )] , n = 0, . . . , N0 − 1,
I
The criterion can be written N0 −1
JeP (θ) = keP k22 =
X
P 2 (fn ) [HI (fn ) − HN (fn )]2 ,
n=0
where eP = [eP (f0 ), . . . , eP (fN0 −1 )]T , I
assumption: we have a sub-optimal initial solution θ (0) → local optimization.
I
From the initial solution θ (0) , we are looking for the growth ∆θ such that ∆θ = argmin JeP θ (0) + ∆θ ∆θ∈Θ
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
28
/
205
Optimization Optimization methods Least-square method
I
`2 -norm: least-square method We expand the criterion JeP θ (0) + ∆θ to the 1-st order N−1 X ∂Je P JeP θ (0) + ∆θ = JeP θ (0) + ∆θj ∂θj j=0 and all the gradient coordinates ∇JeP are set to 0: N−1
X ∂ 2 Je ∂JeP P + ∆θj = 0, k = 0, . . . , N − 1 ∂θk ∂θk ∂θj 0=1 I
We obtain the linear system E1 Pe + E1 PET1 ∆θ = 0 with e = [e(f0 ), . . . , e(fN0 −1 )]T , E1 =
Nicolas
Dobigeon
∂e(fn ) ∂θk
n o et P = diag P 2 (fn ) .
k,n
Digital Signal Processing - Advanced Methods
29
/
205
Optimization Optimization methods Least-square method
`2 -norm: least-square method
I
The solution is
−1 ∆θ = − E1 PET1 E1 Pe.
Remarks: I
n) , method that relies on the computation of ∂e(f ∂θk → explicit for most of the synthesis structures,
I
Bellanger3 provides the computation for a N-order FIR filter with the parameter vector θ = [H1 , . . . , HN−1 ]T where Hk = TFD [h(n)],
I
no constraints on the stability of the solution, → stability of the solution not ensures!
3 M. Bellanger, Traitement Num´ erique du Signal, Masson, 1994. Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
30
/
205
Optimization Optimization methods Least-square method
`2 -norm: least-square method Example of the synthesis of a FIR filter
→ Flexibility in the attenuated bands not exploited! Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
31
/
205
Optimization Optimization methods Least-square method
`2 -norm: least-square method Example of the synthesis of a FIR filter
→ Flexibility in the attenuated bands not exploited! Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
31
/
205
Optimization Optimization methods Remez algorithm
`∞ -norm: Remez algorithm I
Let consider the linear phase FIR filter HN (f ) =
M−1 X
hk cos (2πfk) ,
k=0
I
The criterion can be written for θ = [h0 , . . . , hM−1 ]T JeP (θ) = keP (f )k∞ = sup P(f ) [HI (f ) − HN (f )] , 1 f ∈[0, 2 ] Property keP (f )k∞ is minimum on a compact A ∈ [0, 21 ] m ∃ (f0 , . . . , fM ) ∈ AM+1 , ∀i ∈ {1, . . . , M}, e(fi ) = −e(fi−1 ) = ±δ et |e(fi )| = maxf ∈A |e(f )| = δ i.e., existence of (M + 1) extrema: e(fi ) is a maximum, e(fi+1 ) is a minimum,...
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
32
/
205
Optimization Optimization methods Remez algorithm
`∞ -norm: Remez algorithm I
If f0 , . . . , fM are known then θ are computed by matrix inversion: θ = θ opt ⇔ {e(fi ) = δ}i → On ne connaˆıt pas f0 , . . . , fM−1 !
I
New optimization problem: {δ, f, θ} = argmin P(fi ) [HI (fi ) − HN (fi )] − (−1)i δ δ,f,θ
i=0,...,M
with f = (f0 , . . . , fM ), I
Alternating minimization (iterative algorithm): n o h i (r −1) f (r ) = argmin P (f) HI (f) − HN (f) − (−1)i δ (r −1) f h n o i (r ) (r ) (r ) δ (r ) , θ (r ) = argmin P fi HI f i − H N fi − (−1)i δ δ,θ
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
33
/
i
205
Optimization Optimization methods Remez algorithm
`∞ -norm: Remez algorithm From a sub-otpimal solution θ (0) et δ (0) , at iteration r h i I computing the error e (r −1) (f ) = P(f ) HI (f ) − H (r −1) (f ) , N P I localizing the extrema of e (r −1) (f ), i.e., de f (r ) , . . . , f (r ) t.q. 0 P M (r −1)
eP I
(r ) > δ (r −1) , fi
computing θ (r ) and δ (r ) by resolution of the (M + 1) linear equations h i (r ) (r ) (r ) (r ) P fi HI fi − HN f i = ±δ (r ) i.e., system inversion
1 (r ) HI f0 . . = . . . . (r ) 1 HI fM
Nicolas
Dobigeon
(r ) cos 2πf0
...
. . . (r ) cos 2πfM
...
(r ) cos 2πf0 (M − 1)
(−1)0 (r ) P f 0
. . .
. . .
(r ) cos 2πfM (M − 1)
(−1)M (r ) P f M
Digital Signal Processing - Advanced Methods
(r ) h0 . . . (r ) hM−1 δ (r )
34
/
205
Optimization Optimization methods Remez algorithm
`∞ -norm: Remez algorithm Example of the synthesis of a FIR filter (iteration 1)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
35
/
205
Optimization Optimization methods Remez algorithm
`∞ -norm: Remez algorithm Example of the synthesis of a FIR filter (iteration 11)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
36
/
205
Optimization Optimization methods Remez algorithm
`∞ -norm: Remez algorithm Example of the synthesis of a FIR filter (iteration 12)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
37
/
205
Optimization Optimization methods Remez algorithm
`∞ -norm: Remez algorithm Example of the synthesis of a FIR filter (iteration 17)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
38
/
205
Optimization Optimization methods Remez algorithm
`∞ -norm: Remez algorithm Example of the synthesis of a FIR filter (iteration 21)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
39
/
205
Optimization Optimization methods Remez algorithm
`∞ -norm: Remez algorithm
Comparison `2 /`∞
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
40
/
205
Optimization Optimization methods Remez algorithm
`∞ -norm: Remez algorithm
Stopping rule: I I I
iteration number R,
error: epR (f ) < seuil,
error variation: epR−1 (f ) − epR (f ) < seuil,
Advantages: I
optimal method (!),
I
constant amplitude fluctuation in the attenuated and non-attenuated bands,
I
minimum filter order,
Drawbacks: I
Nicolas
Computationally intensive (iterative method, matrix inversion),
Dobigeon
Digital Signal Processing - Advanced Methods
41
/
205
Optimization Optimization methods Remez algorithm
`∞ -norm: Remez algorithm Regarding the synthesis method: I
convergence of the algorithm not demonstrated, → “correct” behavior if “correct” initialization → non-optimal solution required!
I
algorithm implemented with Matlab,
I
extension to the synthesis of a IIR filter proposed by Bellanger4 .
Some more general remarks: I
minimization of a `∞ -norm sometimes called Chebyshev approximation,
I
minimizing the error max.: minimax approximation,
I
general polynomial approximation method → for DSP, Parks-McClellan synthesis algorithm5 .
4 M. Bellanger, Traitement Num´ erique du Signal, Masson, 1994. 5 T. W. Parks et al., “Chebyshev approximation for non recursive digital filters with linear
phase”, IEEE. Trans. Circuit Theory, vol. 19, no. 2, March 1972. Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
42
/
205
Optimization Optimization methods Eigenfilters
Eigenfilters (FIR) I
Let consider a FIR filter with linear phase HN (f ) =
M−1 X
hk cos (2πfk) = θ T c(f ), with c(f ) = [cos (2πfk)]k ,
k=0
I
The criterion6 can be written θ = [h0 , . . . , hM−1 ]T Z f2 Je (θ) = ke(f )k22 = |HI (f ) − HN (f )|2 df , f1
I
If the ideal filter owns a constant transfer function HI (f1 ) ≈ θ T c(f1 ) in the subband [f1 , f2 ], Je (θ) can be rewritten Z f2 2 T T T Je (θ) = θ c(f1 ) − θ c(f ) df = θ Qrif θ f1
Z
f2
with Qrif =
[c (f1 ) − c (f )] [c (f1 ) − c (f )]T df
f1 6k Nicolas
· k2 is the `2 -norm in the functional space C 0 ([f1 , f2 ]) Dobigeon
Digital Signal Processing - Advanced Methods
43
/
205
Optimization Optimization methods Eigenfilters
Eigenfilters (FIR)
I
The synthesis problem consists of looking for θ opt = argmin Je (θ) ⇔ θ opt = argmin θ T Qrif θ θ∈Θ
θ∈Θ
→ the solution is given by analyzing the Rayleigh ratio RQrif (·) !
Property: Let A an hermitian matrix and RA (x) =
xT Ax xT x
then
min RA (x) = λmin
θ∈Θ
et xopt = argmin RA (x) ⇔ xopt = vmin θ∈Θ
where vmin is the eigenvector associated with the smallest eigenvalue λmin of A.
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
44
/
205
Optimization Optimization methods Eigenfilters
Eigenfilters (IIR) I
Let consider the IIR filter of transfer function PM−1 bk z −k HN (z) = Pk=0 , M−1 −k k=0 ak z
I
If x(n) = δ(n) is the input, we want y (n) = hI (n) (ideal IR) at the output7 : M−1 M−1 X X bk hI (n − k) ≈ ak δ(n − k) k=0
I
k=0
8
The error can be written for n = 0, . . . , N0 : e(n) =
M−1 X k=0
bk hI (n − k) −
M−1 X
ak δ(n − k),
k=0
7 S.-C. Pei and J.-J. Shyu, “Design of 1-D and 2-D IIR Eigenfilters”, IEEE Trans. Signal Processing, vol. 42, no. 4, April 1994. 8 Warning: e(n) 6= h (n) − h (n) ! I N Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
45
/
205
Optimization Optimization methods Eigenfilters
Eigenfilters (IIR) I
We define the parameter and error vectors: θ = [a0 , . . . , aM−1 , b0 , . . . , bM−1 ]T ,
I
Using a matrix formulation: Hθ = e with
hI (M) hI (M + 1) = . . .
hI (M − 1) hI (M) . . . hI (N0 − 1)
H1 H2 ... ..
. ... ...
−I 0
0 0
0 hI (0)
,
, hI (1) hI (2)
...
0 hI (N0 − M + 1)
Digital Signal Processing - Advanced Methods
46
hI (N0 )
Dobigeon
H=
0 hI (0) . . . hI (M − 2)
=
H2
where
hI (0) hI (1) . . . hI (M − 1)
H1
Nicolas
e = [e(0), . . . , e(N0 )]T
.
/
205
Optimization Optimization methods Eigenfilters
Eigenfilters (IIR) I
The (weighted) quadratic criterion is: JeP (θ) = keP k22 =
N0 X
P 2 (n)e 2 (n),
n=0
I
with eP = [eP (0), . . . , eP (N0 )]T et eP (n) = P(n)e(n), Or keP k22 = eT Pe with P = diag P 2 (n) (et e = Hθ), so JeP (θ) = θ T Qrii θ, with Qrii = HPH,
I
The synthesis problem consists of looking for θ opt = argmin JeP (θ) ⇔ θ opt = argmin θ T Qrii θ θ∈Θ
θ∈Θ
→ The solution is given by analyzing the Rayleigh ratio RQrii (·) !
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
47
/
205
Optimization Optimization methods Eigenfilters
Optimization methods: summary Least-square method I I
θ depends of the synthesis structure, P JeP (θ) = keP k22 = n P 2 (fn ) [HI (fn ) − HN (fn )]2 ,
→ optimization by matrix inversion, Remez algorithm I I
θ = [h0 , . . . , hM−1 ]T for a FIR with linear phase, JeP (θ) = keP (f )kL∞ = supf P(f ) [HI (f ) − HN (f )] ,
→ iterative procedure: optimization by alternate optimization, Eigenfilters (FIR) I I
θ = [h0 , . . . , hM−1 ]T pour un FIR ` a phase lin´eaire, R Je (θ) = ke(f )k2L2 = |HI (f ) − HN (f )|2 df ,
→ optimization by spectral analysis (SVD of Qrif ), Eigenfilters (IIR) I I
θ = [a0 , . . . , aM−1 , b0 , . . . , bM − 1]T , 2 P P JeP (θ) = ke(f )k22 = n P 2 (n) k bk hI (n − k) − ak δ(n − k) ,
→ optimization by spectral analysis (SVD of Qrii ), Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
48
/
205
Optimization Stabilization of the solutions
Outline
Optimization Non-optimal synthesis of FIR filter Direct synthesis Sampling in the frequency domain
Non-optimal synthesis of IIR filter Direct synthesis Pad´ e approximants
Optimization methods Least-square method Remez algorithm Eigenfilters
Stabilization of the solutions Digital effects Non-standard structures
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
49
/
205
Optimization Stabilization of the solutions
Stabilization of the solutions
I
To ensure the stability of HN (z) = QM−1 k=0
V (z) , (1 − pk z −1 )
we should solve the constrained optimization problem M−1 min JeP (θ) such that |pk | < 1 k=0 θ∈Θ
→ possible with θ = [p0 , . . . , pM−1 ]T (structure s´erie/cascade), → otherwise? I
Nicolas
Alternative: unconstrained optimization, then stabilization.
Dobigeon
Digital Signal Processing - Advanced Methods
50
/
205
Optimization Stabilization of the solutions
Stabilization of the solutions I
Let p0 a unstable 1-st order, i.e., |p0 | > 1,
I
The transfer function HN (z) can be factorized: HN (z) =
I
1 0 HN (z), 1 − p0 z −1
0 with HN (p0 ) 6= 0
1 1 − p0 z −1 , p0 1 − 1∗ z −1 p
with |G (z)| = 1
Let the all-pass filter G (z) =
0
I
We define ˜ N (z) = G (z)HN (z) = H
p0 1 − I I I
Nicolas
1 1 p0∗
z −1
0 HN (z),
˜ N (z), p0 is not an (unstable) pole of H ∗ ∗ ˜ 1/p0 is a stable pole of HN (z) car |1/p0 | = 1/|p0 | < 1, ˜ N (z) = HN (z) . and H
Dobigeon
Digital Signal Processing - Advanced Methods
51
/
205
Optimization Stabilization of the solutions
Stabilization of the solutions
I
Interpretation in the C plan: p0 = r0 e iθ0 m 1 p0∗
I
=
1 iθ0 e r0
0 recursively on HN (z), each pole pk outside C(0, 1) is replaced with 1/pk∗ .
Remark Same procedure on the numerator V (z) ⇒ filter of minimum phase.
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
52
/
205
Optimization Stabilization of the solutions
Stabilization of the solutions
I
Interpretation in the C plan: p0 = r0 e iθ0 m 1 p0∗
I
=
1 iθ0 e r0
0 recursively on HN (z), each pole pk outside C(0, 1) is replaced with 1/pk∗ .
Remark Same procedure on the numerator V (z) ⇒ filter of minimum phase.
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
52
/
205
Digital effects
Outline
Optimization Digital effects Some reminders Fixed-point representation Digital effects
Input quantization Coefficient quantization Quantization in calculations Constant input Entr´ ees variables
Non-standard structures
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
53
/
205
Digital effects Some reminders
Outline
Optimization Digital effects Some reminders Fixed-point representation Digital effects
Input quantization Coefficient quantization Quantization in calculations Constant input Entr´ ees variables
Non-standard structures
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
54
/
205
Digital effects Some reminders Fixed-point representation
Some reminders Fixed-point representation I
Every number x is encoded integer part
z }| { xq = (±) , bnE , . . . , b0 , b−1 , . . . , bnF |{z} | {z } sign bit
fractional part
with bj ∈ {0, 1} I
Constraints: Quantum: Dynamic:
∆q = 2−nF nE X xqmax = 2j = 2nE +1 − 2−nF j=−nF
Example: nE = 2, nF = 2 xqmax
= 1 × 20 + 1 × 21 + 1 × 22 + 1 × 2−1 + 1 × 2−2 | {z } | {z } =7
=3/4
= 8 − 1/4 Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
55
/
205
Digital effects Some reminders Fixed-point representation
Some reminders Fixed-point representation I
(Un-)biased quantization,
Figure: Un-biased (left) and biased (right) quantizations.
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
56
/
205
Digital effects Some reminders Fixed-point representation
Some reminders Fixed-point representation
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
57
/
205
Digital effects Some reminders Fixed-point representation
Some reminders Fixed-point representation
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
58
/
205
Digital effects Some reminders Digital effects
Some reminders Digital effects Error of quantization eq (t) = x(t) − xq(t) I
deterministic model eq : |eq (t)| ≤
I
∆q, ∆q , 2
if biased quantization; if un-biased quantization.
random model eq (t) with with simplifying assumptions9 I I I
eq (t) independent of x(t), white noise: Req (τ ) = E [eq (t)eq (t − τ )] = σe2 δ(τ ), 1st 2nd order moments defined by: ∆q , if biased quantization; 2 E [eq (t)] = 0, if un-biased quantization. var [eq (t)]
= σe2 =
∆q 2 , 12
9 Conditions of validity: var [x] = σ 2 ∆q 2 , en pratique σ > 3∆q. x x Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
59
/
205
Digital effects Some reminders Digital effects
Some reminders Digital effects Overflow I
If x = x max + ∆q then −xqmax , xq = xqmax ,
without protection; with protection.
Figure: Overflow without (left) and with (right) protection. Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
60
/
205
Digital effects Input quantization
Outline
Optimization Digital effects Some reminders Fixed-point representation Digital effects
Input quantization Coefficient quantization Quantization in calculations Constant input Entr´ ees variables
Non-standard structures
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
61
/
205
Digital effects Input quantization
Input quantization
ANC ⇒ input noise ex (n) that propagates into the filter xq (n) ≈ x(n) + ex (n) ⇒ yq (n) ≈ y (n) + ey (n) Deterministic model (x(n) = constant) I
bounded ouptut error: |ey (n)|
X ex (n − k)h(k) = k X ≤ |ex (n − k)h(k)| k
∆q X ≤ |h(k)| 2
(if unbiased quantization)
k
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
62
/
205
Digital effects Input quantization
Input quantization
ANC ⇒ input noise ex (n) that propagates into the filter xq (n) ≈ x(n) + ex (n) ⇒ yq (n) ≈ y (n) + ey (n) Deterministic model (x(n) = constant) I
bounded ouptut error: |ey (n)|
X = ex (n − k)h(k) k X ≤ |ex (n − k)h(k)| k
∆q X ≤ |h(k)| 2
(if unbiased quantization)
k
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
62
/
205
Digital effects Input quantization
Input quantization Random model (x(t) 6= constant) I
White noise as input: Rex (τ ) =
I
∆q 2 ∆q 2 δ(τ ) ⇔ Sex (f ) = 12 12
Power spectral density (Wiener-Lee relation): Sey (f ) = |H(f )|2
I
∆q 2 12
Overall power: Z Pey =
1 2
− 12
Sey (f )df =
∆q 2 12
1 2
Z
|H(f )|2 df
− 12
and, from the Parseval identity: Pey =
Nicolas
Dobigeon
∆q 2 X |h(n)|2 . 12 n
Digital Signal Processing - Advanced Methods
63
/
205
Digital effects Coefficient quantization
Outline
Optimization Digital effects Some reminders Fixed-point representation Digital effects
Input quantization Coefficient quantization Quantization in calculations Constant input Entr´ ees variables
Non-standard structures
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
64
/
205
Digital effects Coefficient quantization
Coefficient quantization θq = θ + ∆θ ⇒ Hq (z) =
B(z)+∆B(z) A(z)+∆A(z)
Sensitivity: moving of the poles (and/or zeros) I
We introduce the polynomial: X Y A(z) = ak z −k = 1 − pm z −1 k
I
We can show that:
m
M−k pm ∂pm = Q ∂ak j6=m (pj − pm )
→ big displacement if ∃j 6= m s.t. pj − pm ≈ 0 I
Nicolas
consequence (for a stable IIR): if M ↑ ⇒ in the the circle C (0, 1), density of the poles ↑ ⇒ sensivity ↑ ! → in practice, implementation with 2nd-order cells (∀ structure)
Dobigeon
Digital Signal Processing - Advanced Methods
65
/
205
Digital effects Coefficient quantization
Coefficient quantization 2nd-order purely recursive filter −2 −1 −1 Aq (z) = 1 + a1,q z −1 + a2,q z = (1 q− p1,q z )(1 − p2,q z ) 2 with pi,q = 12 −a1,q ± a1,q − 4a2,q
Location of the stable poles in the z-space I
Finite numbers of couples (a1,q , a2,q ) such that pi,q in the unity circle.
Figure: Location of pole and zeros with quantization of quantum ∆q = 2−3 (left) and ∆q = 2−4 (right).
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
66
/
205
Digital effects Coefficient quantization
Coefficient quantization 2nd-order purely recursive filter Location of the stable poles in the space (a1 , a2 )
Figure: Location of stable poles and zeros with quantization of quantum ∆q = 2−2 . Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
67
/
205
Digital effects Coefficient quantization
Coefficient quantization 2nd-order purely recursive filter Location of the stable poles in the space (a1 , a2 )
Figure: Location of stable poles and zeros with quantization of quantum ∆q = 2−3 . Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
68
/
205
Digital effects Quantization in calculations
Outline
Optimization Digital effects Some reminders Fixed-point representation Digital effects
Input quantization Coefficient quantization Quantization in calculations Constant input Entr´ ees variables
Non-standard structures
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
69
/
205
Digital effects Quantization in calculations
Quantization in calculations
Figure:
Nicolas
Dobigeon
Position of the quantizers in a D-N structure.
Digital Signal Processing - Advanced Methods
70
/
205
Digital effects Quantization in calculations
Quantization in calculations
Figure:
Position of the quantizers in a D-N structure.
P → propagated error: wq (n) = Q − k Q [ak wq (n − k)] + x(n) Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
71
/
205
Digital effects Quantization in calculations Constant input
Quantization in calculations Constant input
P wq (n) = Q − k Q [ak wq (n − k)] + x(n) → recursive non-linear equation Several possible behaviors, depending on the initial conditions: I
point attractor (fixed point), → constant input ⇒ constant output
I
periodic attractor: limit-cycle, → not satisfying since periodic signal generator! → oscillation amplitude Aa bounded by Aa ≤
∆q X |h(k)| 2
et
A0a ≤
k
∆q sup |H(f )| 2 f
(for an un-biased quantizer) I
Nicolas
other attractors (strange, periodic-point,...): ...
Dobigeon
Digital Signal Processing - Advanced Methods
72
/
205
Digital effects Quantization in calculations Constant input
Quantization in calculations Constant input: 2nd-order purely recursive filter
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
73
/
205
Digital effects Quantization in calculations Constant input
Quantization in calculations Constant input: 2nd-order purely recursive filter
Figure: Trajectory of (x1 (n), x2 (n)) with L = 13. from [Ling et al, Int. J. Bifurcation and Chaos, 2003] Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
74
/
205
Digital effects Quantization in calculations Constant input
Quantization in calculations Constant input: 2nd-order purely recursive filter
Figure: Trajectory of (x1 (n), x2 (n)) with L = 16. from [Ling et al, Int. J. Bifurcation and Chaos, 2003] Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
75
/
205
Digital effects Quantization in calculations Constant input
Quantization in calculations Constant input: 2nd-order purely recursive filter
Figure: Trajectory of (x1 (n), x2 (n)) with L = 31. from [Ling et al, Int. J. Bifurcation and Chaos, 2003] Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
76
/
205
Digital effects Quantization in calculations Entr´ ees variables
Quantization in calculations Variable input Random model of the quantization noise
⇔
( with
Nicolas
Dobigeon
var [eq,x (t)] var [eq,y (t)]
2
= Mσe2 = M ∆q 12 2 = (M + 1)σe2 = (M + 1) ∆q 12
Digital Signal Processing - Advanced Methods
77
/
205
Digital effects Quantization in calculations Entr´ ees variables
Quantization in calculations Variable input I
Output quantization noise Bruit: ∆y = eq,x (t) ∗ h(t) + eq,y (t)
I
Spectral density of the output quantization noise: = |H(f )|2 Seq,x (f ) + Seq,y (f ) M +1 M∆q 2 |H(f )|2 + = 12 M
S∆y (f )
I
Power of the output quantization noise: 2 σ∆y
Z =
1 2
S∆y (f )df
− 12
=
M∆q 2 6
1 2
Z 0
M +1 |H(f )|2 + df M
→ Power linearly ↑ with M. Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
78
/
205
Digital effects Quantization in calculations Entr´ ees variables
Quantization in calculations Variable input Case of a serial structure (e.g., 2-order DN cells)
I
Transfer function between the jth cell and the output (rank M): M Y Hk (f ) Tj (f ) = k=j
I
where Hk (f ) = ABkk (f(f )) is the transfer function of an elementary cell. Recursively on the spectral density at the output of the Mth cell: (M−1) (M) S∆y (f ) = SeM (f )|HM (f )|2 + S∆y |HM (f )|2 as a consequence M M M X X Y (M) 2 2 Sej (f ) S∆y (f ) = Sej (f )|Tj (f )| = |Hk (f )| j=1
Nicolas
Dobigeon
j=1
Digital Signal Processing - Advanced Methods
k=j
79
/
205
Digital effects Quantization in calculations Entr´ ees variables
Quantization in calculations Variable input
Case of a serial structure (e.g., 2-order DN cells) M M M X X Y (M) Sej (f ) S∆y (f ) = Sej (f )|Tj (f )|2 = |Hk (f )|2 j=1
j=1
k=j
To minimize the overall quantization noise: Q 1. Minimization of |Tj (f )| = M k=j |Hk (f )|, i.e., supf |Hk (f )| → judicious matching between poles and zeros of Tj (f ), i.e., the couples {Ak (·), Bk (·)}k 2. Optimizing the arrangement of Hk (f ): HM (f ) filters M noises → ordering the cells such that supf |H1 (f )| ≥ . . . ≥ supf |HM (f )|
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
80
/
205
Non-standard structures
Outline
Optimization Digital effects Non-standard structures Ladder/lattice structures Theoretical foundations Application to the synthesis of FIR filters Application to the synthesis of IIR filters
Fraction-based structures Multirate structures Some theoretical notions 2-channel filter bank Generalization to M subbands And the discrete wavelet transform?
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
81
/
205
Non-standard structures
Non-standard structures
Non-standard?... ..., i.e., that are not I
direct (Direct Form 1),
Y (z) =
B(z) X (z) A(z)
thus y (n) = −
X
ak y (n−k)+
X
k
bk x(n−k)
k
⇒ (2M + 1) additions/multiplications + 2 lines of delay elements
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
82
/
205
Non-standard structures
Non-standard structures Non-standard?... ..., i.e., that are not I
direct (Direct Form 1),
I
canonical (Direct Form 2),
Y (z) =
B(z) X (z) = A(z)
X (z) B(z) A(z) | {z }
W (Z )
thus y (n) w (n)
= =
P P k bk w (n − k) − k ak w (n − k) + x(n)
⇒ (2M + 1) additions/multiplications + 1 line of delay elements
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
83
/
205
Non-standard structures
Non-standard structures Non-standard?... ..., i.e., that are not I
direct (Direct Form 1),
I
canonical (Direct Form 2),
I
decomposed : series/cascade or parallel.
Factorization w.r.t. poles/zeros Y H(z) = G Hk (z) k
Partial fraction decomposition X H(z) = C + Hk (z) k
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
84
/
205
Non-standard structures
Non-standard structures
Non-standard?... ..., i.e., that are not I
direct (Direct Form 1),
I
canonical (Direct Form 2),
I
decomposed : series/cascade or parallel.
Motivations I
weaker sensitivity face to digital errors/effects, same objective as in the cascade structure: matching the poles/zeros10
I
algorithm-architecture matching (AAM),
I
more “physical” interpretation of the parameters θ.
10 M. Bellanger, Traitement Num´ erique du Signal, Masson, 1994. Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
85
/
205
Non-standard structures Ladder/lattice structures
Outline
Optimization Digital effects Non-standard structures Ladder/lattice structures Theoretical foundations Application to the synthesis of FIR filters Application to the synthesis of IIR filters
Fraction-based structures Multirate structures Some theoretical notions 2-channel filter bank Generalization to M subbands And the discrete wavelet transform?
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
86
/
205
Non-standard structures Ladder/lattice structures Theoretical foundations
Some ideas drawn from linear prediction Let Pm (z) denote the z-polynomial defined by (m = 1, . . . , M) Pm (z) =
m X
pm,k z −k
with pm,0 = 1.
k=0
We introduce the associated reciprocal polynomial ˜ m (z) = z −m Pm 1 P z m X = pm,m−k z −k k=0
Example (m = 3): P3 (z)
= p3,0 + p3,1 z −1 + p3,2 z −2 + p3,3 z −3
˜ 3 (z) P
= p3,3 + p3,2 z −1 + p3,1 z −2 + p3,0 z −3
⇔
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
87
/
205
Non-standard structures Ladder/lattice structures Theoretical foundations
Some ideas drawn from linear prediction
We introduce the inner product between 2 polynomials: Z 1 hF (z), G (z)i = RM (z)F (z)G † (z)z −1 dz 2πj C(0,1) where I
P P G (z) = k gk z −k ⇔ G † (z) = k gk∗ z k (= G (1/z) dans le cas de coefficients r´eels)
I
C(0, 1) est le cercle unit´e −1 RM (z) = PM (z) PM z −1
I
It can be also written hF (z) , G (z)i =
Nicolas
Dobigeon
1 2π
Z
π
RM e jθ F e jθ G ∗ e jθ dθ
−π
Digital Signal Processing - Advanced Methods
88
/
205
Non-standard structures Ladder/lattice structures Theoretical foundations
Some ideas drawn from linear prediction n o ˜ 0 (z), . . . , P ˜ M (z) denote 2 families of Let {P0 (z), . . . , PM (z)} and P reciprocal polynomial generated as follows ˜ m−1 (z) Pm (z) = Pm−1 (z) + km z −1 P ˜ m (z) = km Pm−1 (z) + z −1 P ˜ m−1 (z) P ˜ 0 (z) = 1. with m = 1, . . . , M and P0 (z) = P A matrix formulation of this forward recursive scheme is Pm (z) Pm−1 (z) 1 km z −1 = −1 ˜ m (z) ˜ m−1 (z) km z P P or, equivalently, (|km | 6= 1), the backward recursive scheme is Pm−1 (z) Pm (z) 1 1 −km = ˜ m (z) ˜ m−1 (z) −km z z P P 1 − km2
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
89
/
205
Non-standard structures Ladder/lattice structures Theoretical foundations
Some ideas drawn from linear prediction n o ˜ 0 (z), . . . , P ˜ M (z) denote 2 families of Let {P0 (z), . . . , PM (z)} and P reciprocal polynomial generated as follows ˜ m−1 (z) Pm (z) = Pm−1 (z) + km z −1 P ˜ m (z) = km Pm−1 (z) + z −1 P ˜ m−1 (z) P ˜ 0 (z) = 1. with m = 1, . . . , M and P0 (z) = P A matrix formulation of this forward recursive scheme is Pm (z) Pm−1 (z) 1 km z −1 = −1 ˜ m (z) ˜ m−1 (z) km z P P or, equivalently, (|km | 6= 1), the backward recursive scheme is Pm−1 (z) Pm (z) 1 1 −km = ˜ m (z) ˜ m−1 (z) −km z z P P 1 − km2
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
89
/
205
Non-standard structures Ladder/lattice structures Theoretical foundations
Some ideas drawn from linear prediction n o ˜ 0 (z), . . . , P ˜ M (z) denote 2 families of Let {P0 (z), . . . , PM (z)} and P reciprocal polynomial generated as follows ˜ m−1 (z) Pm (z) = Pm−1 (z) + km z −1 P ˜ m (z) = km Pm−1 (z) + z −1 P ˜ m−1 (z) P ˜ 0 (z) = 1. with m = 1, . . . , M and P0 (z) = P A matrix formulation of this forward recursive scheme is Pm (z) Pm−1 (z) 1 km z −1 = −1 ˜ m (z) ˜ m−1 (z) km z P P or, equivalently, (|km | 6= 1), the backward recursive scheme is Pm−1 (z) Pm (z) 1 1 −km = ˜ m (z) ˜ m−1 (z) −km z z P P 1 − km2
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
89
/
205
Non-standard structures Ladder/lattice structures Theoretical foundations
Some ideas drawn from linear prediction Then the following properties hold11,12 : I
I
n o ˜ 0 (z), . . . , P ˜ M (z) are the polynomial series {P0 (z), . . . , PM (z)} and P orthogonal to the canonical basis, i.e.,
Pm (z), z −k = 0, k = 1, . . . , m D E −k ˜ m (z), z P = 0, k = 1, . . . , m the polynomial series
n
˜ 0 (z), . . . , P ˜ M (z) P
o
is an orthogonal basis, i.e.,
D E αj , ˜ j (z), P ˜ k (z) = αj δ(j − k) = P 0,
si j = k; otherwise.
11 A. H. Gray, Jr. and J. D. Markel, “Digital Lattice and Ladder Filter Synthesis,” IEEE Trans. Audio. Electroacoust., vol. 21, no. 6, pp. 491-500, Dec. 1973. 12 A. H. Gray, Jr., and J. D. Markel, “On Autocorrelation Equations as Applied to Speech Analysis,” IEEE Trans. Audio. Electroacoust., vol. 21, no. 2, pp. 69-79, April 1973. Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
90
/
205
Non-standard structures Ladder/lattice structures Theoretical foundations
Some ideas drawn from linear prediction
Moreover, I
If |km | 6= 1 (m = 1, . . . , M), the series {k0 , . . . , kM } is fully defined by the series {pM,0 , . . . , pM,M } ⇒ Any polynomial PM (z) is uniquely represented by {pM,0 , . . . , pM,M } ou {k1 , . . . , kM } !
I
The roots z1 , . . . , zM of PM (z) are in the unit circle under the following necessary and sufficient condition: ∀m ∈ {1, . . . , M} , |zm | < 1 ⇔ ∀m ∈ {1, . . . , M} , |km | < 1
I
Nicolas
Computation of the km : Levinson-Durbin recursion ( 1 pm−1,j = 1−k 2 (pm,j − km pm,m−j ) , ∀j ∈ {1, . . . , m − 1} m km = pm,m , ∀m ∈ {1, . . . , M}
Dobigeon
Digital Signal Processing - Advanced Methods
91
/
205
Non-standard structures Ladder/lattice structures Application to the synthesis of FIR filters
Application to the synthesis of FIR filters Let the FIR filter to be implemented with transfer function H(z) = PM (z) and ˜ ˜ M (z). The outputs YM (z) and Y ˜M (z) the reciprocal transfer function H(z) =P of filters with input X (z) are YM (z) = PM (z)X (z) ˜M (z) = P ˜ M (z)X (z) Y The forward recursion is written h i YM (z) = PM−1 (z) + kM z −1 P ˜ M−1 (z) X (z) h i Y ˜M (z) = kM PM−1 (z) + z −1 P ˜ M−1 (z) X (z) thus
˜M−1 (z) YM (z) = YM−1 + kM z −1 Y ˜M (z) = kM YM−1 + z −1 Y ˜M−1 (z) Y
˜M−1 (z) = P ˜ M−1 (z)X (z). with YM−1 (z) = PM−1 (z)X (z) and Y
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
92
/
205
Non-standard structures Ladder/lattice structures Application to the synthesis of FIR filters
Application to the synthesis of FIR filters Let the FIR filter to be implemented with transfer function H(z) = PM (z) and ˜ ˜ M (z). The outputs YM (z) and Y ˜M (z) the reciprocal transfer function H(z) =P of filters with input X (z) are YM (z) = PM (z)X (z) ˜M (z) = P ˜ M (z)X (z) Y The forward recursion is written h i YM (z) = PM−1 (z) + kM z −1 P ˜ M−1 (z) X (z) h i Y ˜M (z) = kM PM−1 (z) + z −1 P ˜ M−1 (z) X (z) thus
˜M−1 (z) YM (z) = YM−1 + kM z −1 Y ˜M (z) = kM YM−1 + z −1 Y ˜M−1 (z) Y
˜M−1 (z) = P ˜ M−1 (z)X (z). with YM−1 (z) = PM−1 (z)X (z) and Y
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
92
/
205
Non-standard structures Ladder/lattice structures Application to the synthesis of FIR filters
Application to the synthesis of FIR filters
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
93
/
205
Non-standard structures Ladder/lattice structures Application to the synthesis of FIR filters
Application to the synthesis of FIR filters
Summary - synthesis method of FIR filter with transfer function H(z) = PM (z) I
We define the coefficients {pM,0 , . . . , pM,M },
I
We set kM = pM,M ,
I
For m = M, . . . , 2, backward Levinson-Durbin recursion I
For j = 0, . . . , m − 1, we compute the coefficients Pm (z) pm−1,j =
I
I
Nicolas
1 (pm,j − km pm,m−j ) 1 − km2
We set km−1 = pm−1,m−1
Implementation of the treillis.
Dobigeon
Digital Signal Processing - Advanced Methods
94
/
205
Non-standard structures Ladder/lattice structures Application to the synthesis of IIR filters
Application to the synthesis of IIR filters Purely recursive filters
Let the IIR filter of transfer function H(z) =
1 A nM (z)
to be implemented. o and the
˜ 0 (z), . . . , A ˜ M (z) A
We generate the polynomial orthogonal basis initial forward recurstion system ˜ m−1 (z) Am (z) = Am−1 (z) + km z −1 A −1 ˜ ˜ Am (z) = km Am−1 (z) + z Am−1 (z) is rewritten as
Nicolas
Dobigeon
˜ m−1 (z) Am−1 (z) = Am (z) − km z −1 A −1 ˜ ˜ Am (z) = km Am−1 (z) + z Am−1 (z)
Digital Signal Processing - Advanced Methods
95
/
205
Non-standard structures Ladder/lattice structures Application to the synthesis of IIR filters
Application to the synthesis of IIR filters Purely recursive filters
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
96
/
205
Non-standard structures Ladder/lattice structures Application to the synthesis of IIR filters
Application to the synthesis of IIR filters
Let the IIR filter of transfer function H(z) = We generate the polynomial orthogonal basis
PM (z) A nM (z)
to be implemented. o ˜ 0 (z), . . . , A ˜ M (z) and we A
decompose PM (z) on this basis PM (z) =
M X
˜ m (z) νm A
⇒
H(z) =
m=0
M X
νm
m=0
˜ m (z) A . AM (z)
where the initial forward recurstion system ˜ m−1 (z) Am (z) = Am−1 (z) + km z −1 A ˜ m (z) = km Am−1 (z) + z −1 A ˜ m−1 (z) A is rewritten as
Nicolas
Dobigeon
˜ m−1 (z) Am−1 (z) = Am (z) − km z −1 A ˜ m (z) = km Am−1 (z) + z −1 A ˜ m−1 (z) A
Digital Signal Processing - Advanced Methods
97
/
205
Non-standard structures Ladder/lattice structures Application to the synthesis of IIR filters
Application to the synthesis of IIR filters
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
98
/
205
Non-standard structures Ladder/lattice structures Application to the synthesis of IIR filters
Application to the synthesis of IIR filters
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
99
/
205
Non-standard structures Ladder/lattice structures Application to the synthesis of IIR filters
Application to the synthesis of IIR filters
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
100
/
205
Non-standard structures Ladder/lattice structures Application to the synthesis of IIR filters
Application to the synthesis of IIR filters
In the decomposition on the basis PM (z) =
M X
˜ m (z) νm A
m=0
the coefficients {ν0 , . . . , νM } are computed thanks to the the backward recursion (m = M, . . . , 2) ˜ m−1 (z) Pm−1 (z) = Pm (z) − νm P νm−1,m−1 = pm−1,m−1 . where Pm (z) =
Nicolas
Dobigeon
Pm
k=0
pm,k z −k and ν0 = p0,0 .
Digital Signal Processing - Advanced Methods
101
/
205
Non-standard structures Fraction-based structures
Outline
Optimization Digital effects Non-standard structures Ladder/lattice structures Theoretical foundations Application to the synthesis of FIR filters Application to the synthesis of IIR filters
Fraction-based structures Multirate structures Some theoretical notions 2-channel filter bank Generalization to M subbands And the discrete wavelet transform?
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
102
/
205
Non-standard structures Fraction-based structures
Continued fraction expansion
Let the filter of transfer function PM bk z k H(z) = Pk=0 M k k=0 ak z to be implemented. We want to write H(z) as a continued fraction expansion... Several solutions exist13 , for example H(z) = A0 +
1 B1 z +
1 A1 +
1 .. . BM z +
1 AM
13 See the conditions stated by Mitra & Sherwood (1972). Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
103
/
205
Non-standard structures Fraction-based structures
Continued fraction expansion We introduce the elementary sections I
Uk (z) =
1 Bk z+Tk (z)
I
Tk (z) =
1 , Ak +Uk+1 (z)
Nicolas
Dobigeon
(k = 1, . . . , M)
(k = 1, . . . , M − 1) with TM (z) =
Digital Signal Processing - Advanced Methods
1 AM
.
104
/
205
Non-standard structures Fraction-based structures
Continued fraction expansion The transfer function H(z) = A0 +
1 B1 z +
1 A1 +
1 .. . BM z +
1 AM
can be rewritten H(z) = A0 + U1 (z) with I
U1 (z) =
1 , B1 z+T1 (z)
I
T1 (z) =
1 , A1 +U2 (z)
I
U2 (z) =
1 , B2 z+T2 (z)
I
...
I
TM (z) =
Nicolas
Dobigeon
1 AM
. Digital Signal Processing - Advanced Methods
105
/
205
Non-standard structures Fraction-based structures
Continued fraction expansion This results in the following ladder structure with U1 (z) =
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
1 B1 z+T1 (z)
106
/
205
Non-standard structures Fraction-based structures
Continued fraction expansion This results in the following ladder structure with T1 (z) =
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
1 A1 +U2 (z)
107
/
205
Non-standard structures Fraction-based structures
Continued fraction expansion This results in the following ladder structure with U2 (z) =
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
1 B2 z+T2 (z)
108
/
205
Non-standard structures Fraction-based structures
Continued fraction expansion This results in the following ladder structure with T2 (z) =
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
1 A2 +U3 (z)
109
/
205
Non-standard structures Fraction-based structures
Continued fraction expansion This results in the following ladder structure
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
110
/
205
Non-standard structures Fraction-based structures
Continued fraction expansion Computing the {A0 , . . . , AM } and {B1 , . . . , BM } Recursive Euclide algorithm: Euclidean division + remainder inversion. Exemples
H(z)
= =
72z 2 + 78z + 9 24z 2 + 18z 2 + 1 1 3+ z + 2+ 1 1 3z+ 1 4
H(z)
= =
720z 2 + 240z + 12 720z 3 + 600z 2 + 72z + 1 1 z + 2+ 1 1 3z+
Nicolas
Dobigeon
4+
1 1 5z+ 1 6
Digital Signal Processing - Advanced Methods
111
/
205
Non-standard structures Multirate structures
Outline
Optimization Digital effects Non-standard structures Ladder/lattice structures Theoretical foundations Application to the synthesis of FIR filters Application to the synthesis of IIR filters
Fraction-based structures Multirate structures Some theoretical notions 2-channel filter bank Generalization to M subbands And the discrete wavelet transform?
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
112
/
205
Non-standard structures Multirate structures
Multirate systems?
Monorate system I
amplifier (×),
I
summation (+),
I
delay (×z −1 ).
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
113
/
205
Non-standard structures Multirate structures
Multirate systems?
Monorate system I
amplifier (×),
I
summation (+),
I
delay (×z −1 ).
Multirate system Additional operations: I
downsampling (decimation),
I
upsampling (stretch).
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
113
/
205
Non-standard structures Multirate structures Some theoretical notions
Down-sampling (decimation) Let yD (n) denote a down-sampled version of the signal x(n) by a factor M: yD (n) = x(nM),
n ∈ Z.
In the z-space, the down-sampled signal is represented by YD (z) =
M−1 1 X M1 k X z ωM M k=0
where ωM = e
j2π M
.
Proof I
We introduce xM (n) = x(n)uM (n) where
1, 0,
uM (n) =
1
M−1 1 X −kn if n divisible by M; = ωM otherwise. M
I
Then YD (z) = XM z M ,
I
We can show that XM (z) =
Nicolas
Dobigeon
k=0
1 M
PM−1 k=0
k X ωM z .
Digital Signal Processing - Advanced Methods
114
/
205
Non-standard structures Multirate structures Some theoretical notions
Down-sampling (decimation) Let yD (n) denote a down-sampled version of the signal x(n) by a factor M: yD (n) = x(nM),
n ∈ Z.
In the z-space, the down-sampled signal is represented by YD (z) =
M−1 1 X M1 k X z ωM M k=0
where ωM = e
j2π M
.
Proof I
We introduce xM (n) = x(n)uM (n) where
1, 0,
uM (n) =
1
M−1 1 X −kn if n divisible by M; = ωM otherwise. M
I
Then YD (z) = XM z M ,
I
We can show that XM (z) =
Nicolas
Dobigeon
k=0
1 M
PM−1 k=0
k X ωM z .
Digital Signal Processing - Advanced Methods
114
/
205
Non-standard structures Multirate structures Some theoretical notions
Down-sampling (decimation)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
115
/
205
Non-standard structures Multirate structures Some theoretical notions
Up-sampling (stretch)
Similarly, let yE (n) denote a up-sampled version of the signal x(n) by a factor L (interpolation by zero insertion): x Ln , if n is divisible par L; yE (n) = 0, otherwise.
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
116
/
205
Non-standard structures Multirate structures Some theoretical notions
Up-sampling (stretch)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
117
/
205
Non-standard structures Multirate structures Some theoretical notions
Up-sampling (stretch)
Similarly, let yE (n) denote a up-sampled version of the signal x(n) by a factor L (interpolation by zero insertion): x Ln , si n est divisible par L; yE (n) = 0, otherwise. In the z-space, the up-sampled signal is represented by YE (z) = X z L .
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
118
/
205
Non-standard structures Multirate structures Some theoretical notions
Noble identities14
14 P. P. Vaidyanathan, “Multirate digital filters, filter banks, polyphase networks, and applications: a tutorial,” Proc. of the IEEE, vol. 78, no. 1, pp. 56-93, Jan. 1990. Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
119
/
205
Non-standard structures Multirate structures Some theoretical notions
Polyphase representation15 We decompose the impulse response into two sub-series of samples with odd and even indexes: {h(n)}n∈Z = {h(2m)}m∈Z ∪ {h(2m + 1)}n∈Z The resulting transfer function is X H(z) = h(n)z −n n∈Z
X
=
h(2m)z −2m +
X
m
|
h(2m + 1)z −(2m+1)
m
{z E0 (z 2 )
}
|
{z
z −1 E1 (z 2 )
}
with the two sub-series E0 (z)
= TZ [e0 (n)]
= TZ [h(2m)]
E1 (z)
= TZ [e1 (n)]
= TZ [h(2m + 1)]
15 M. Bellanger, Traitement Num´ erique du Signal, Masson, 1994. Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
120
/
205
Non-standard structures Multirate structures Some theoretical notions
Polyphase representation To generalize, we decompose the IR onto the M (polyphase) sub-series coming from down-sampling of order M: {h(n)}n∈Z =
M−1 [
{h (Mm + `)}m∈Z
`=0
The resulting transfer function is X H(z) = h(n)z −n n∈Z
= =
E0 z M + z −1 E1 z M + . . . + z −(M−1) EM−1 z M M−1 X
z −` E` z M
`=0
with the M sub-series (` = 1, . . . , M − 1): E` (z) = TZ [e` (m)]
Nicolas
Dobigeon
with
e` (m) = h(Mm + `).
Digital Signal Processing - Advanced Methods
121
/
205
Non-standard structures Multirate structures Some theoretical notions
Polyphase representation Example M = 4 Let consider a FIR filter of order 11 H(z)
=
10 X
bk z −n
n=0
=
E0 (z 4 ) + z −1 E1 (z 4 )
+
z −2 E2 (z 4 ) + z −3 E3 (z 4 )
with E0 (z)
=
b0 + b4 z −1 + b8 z −2
E1 (z)
=
b1 + b5 z −1 + b9 z −2
E2 (z)
=
b2 + b6 z −1 + b10 z −2
E3 (z)
=
b3 + b7 z −1
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
122
/
205
Non-standard structures Multirate structures Some theoretical notions
Polyphase representation
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
123
/
205
Non-standard structures Multirate structures Some theoretical notions
Outline
Optimization Digital effects Non-standard structures Ladder/lattice structures Theoretical foundations Application to the synthesis of FIR filters Application to the synthesis of IIR filters
Fraction-based structures Multirate structures Some theoretical notions 2-channel filter bank Generalization to M subbands And the discrete wavelet transform?
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
124
/
205
Non-standard structures Multirate structures Some theoretical notions
Multirate and filter banks
Filter-banks: analysis
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
125
/
205
Non-standard structures Multirate structures Some theoretical notions
Multirate and filter banks
Vocoder LPC (Lecture “Compression parole et musique”, Corinne Mailhes)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
126
/
205
Non-standard structures Multirate structures Some theoretical notions
Multirate and filter banks
I
Issue no. 1: computational complexity
Filter-banks: analysis
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
127
/
205
Non-standard structures Multirate structures Some theoretical notions
Multirate and filter banks
I
Issue no. 1: computational complexity ⇒ decrease the rate (down-sampling)
Filter-banks: analysis
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
128
/
205
Non-standard structures Multirate structures Some theoretical notions
Multirate and filter banks
I
Issue no. 1: computational complexity ⇒ decrease the rate (down-sampling)
I
Issue no. 2: reconstruction (⇔ synthesis))
Filter-banks: analysis/synthesis
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
129
/
205
Non-standard structures Multirate structures Some theoretical notions
Multirate and filter banks Applications
I
Vocoders16 , Ici, slide 43 Ici, slide 27-28
I
Decomposition into subbands: lossy coding17 , Ici, slide 39
I
Decomposition into subbands: multi-resolution analysis18 , Ici
I
Decomposition into subbands: spectral estimation, Bonacci et al., ICASSP 2002. Bonacci et al., EUSIPCO 2002.
16 Lecture “Compression parole et musique”, Corinne Mailhes. 17 Lecture “Compression”, Corinne Mailhes. 18 Lecture “Repr´ esentation et analyse des signaux”, Marie Chabert. Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
130
/
205
Non-standard structures Multirate structures Some theoretical notions
Outline
Optimization Digital effects Non-standard structures Ladder/lattice structures Theoretical foundations Application to the synthesis of FIR filters Application to the synthesis of IIR filters
Fraction-based structures Multirate structures Some theoretical notions 2-channel filter bank Generalization to M subbands And the discrete wavelet transform?
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
131
/
205
Non-standard structures Multirate structures 2-channel filter bank
Problem of 2-channel analysis/synthesis ˆ (z) defined by Let consider the general problem of analysis/synthesis X (z) → X
From above (up/down-sampling): h i ( Ym (z) = 12 Xm z 1/2 + Xm −z 1/2 Zm (z) = Ym z 2
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
132
/
205
Non-standard structures Multirate structures 2-channel filter bank
Problem of 2-channel analysis/synthesis ˆ (z) = F0 (z)Z0 (z) + F1 (z)Z1 (z), it follows: With Xm (z) = Hm (z)X (z) and X 1 ˆ (z) = X [H0 (z)F0 (z) + H1 (z)F1 (z)] X (z) 2 1 + [H0 (−z)F0 (z) + H1 (−z)F1 (z)] X (−z) 2 = T (z)X (z) + A(z)X (−Z ) where T (z) A(z)
Nicolas
Dobigeon
= =
1 2 1 2
[H0 (z)F0 (z) + H1 (z)F1 (z)] [H0 (−z)F0 (z) + H1 (−z)F1 (z)]
Digital Signal Processing - Advanced Methods
is the distorsion function is the aliasing function
133
/
205
Non-standard structures Multirate structures 2-channel filter bank
Problem of 2-channel analysis/synthesis ˆ (z) = F0 (z)Z0 (z) + F1 (z)Z1 (z), it follows: With Xm (z) = Hm (z)X (z) and X 1 ˆ (z) = X [H0 (z)F0 (z) + H1 (z)F1 (z)] X (z) 2 1 + [H0 (−z)F0 (z) + H1 (−z)F1 (z)] X (−z) 2 = T (z)X (z) + A(z)X (−Z ) where T (z) A(z)
= =
1 2 1 2
[H0 (z)F0 (z) + H1 (z)F1 (z)] [H0 (−z)F0 (z) + H1 (−z)F1 (z)]
is the distorsion function is the aliasing function
But the operator R : X (z) → X (−Z ) is not a LTI filter, thus: It does not exist {t(n)}n∈Z such that xˆ(n) = t(n) ∗ x(n)...
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
134
/
205
Non-standard structures Multirate structures 2-channel filter bank
Problem of 2-channel analysis/synthesis ˆ (z) = F0 (z)Z0 (z) + F1 (z)Z1 (z), it follows: With Xm (z) = Hm (z)X (z) and X 1 ˆ (z) = X [H0 (z)F0 (z) + H1 (z)F1 (z)] X (z) 2 1 + [H0 (−z)F0 (z) + H1 (−z)F1 (z)] X (−z) 2 = T (z)X (z) + A(z)X (−Z ) where T (z) A(z)
= =
1 2 1 2
[H0 (z)F0 (z) + H1 (z)F1 (z)] [H0 (−z)F0 (z) + H1 (−z)F1 (z)]
is the distorsion function is the aliasing function
But the operator R : X (z) → X (−Z ) is not a LTI filter, thus: It does not exist {t(n)}n∈Z such that xˆ(n) = t(n) ∗ x(n)... ... except if the anti-aliasing condition is fulfilled: A(z) = H0 (−z)F0 (z) + H1 (−z)F1 (z) = 0
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
135
/
205
Non-standard structures Multirate structures 2-channel filter bank
Problem of 2-channel analysis/synthesis The anti-aliasing condition is: F0 (z) F1 (z) =− = C (z) H1 (−z) H0 (−z) At the end of the analysis/synthesis chain ˆ (z) X
=
1 H0 (z)H1 (−z) − H1 (z)H0 (−z) C (z)X (z) 2 | {z } | {z }
=
T (z)X (z)
V (z)
V (−z)
with T (z) = 21 [V (z) − V (−z)] C (z). A sufficient condition (but not necessary) is C (z) = 1, then F0 (z) = H1 (−z) F1 (z) = −H0 (−z)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
136
/
205
Non-standard structures Multirate structures 2-channel filter bank
Quadrature Mirror Filters (QMF)
Historical solution Quadrature Mirror Filters (QMF) defined by C (z) = 1 H1 (z) = H0 (−z)
(2)
In this case
h i ˆ (z) = 1 H0 (z)2 − H0 (−z)2 X (z) X 2 On the circle C (0, 1), the relation (2) can be rewritten H1 e 2iπf = H0 −e 2iπf = H0 e 2iπ(f +1/2) If we consider the modulus of H1 and H0 , then it comes H1 e 2iπf is the reflection of H0 e 2iπf relatively to the plan f = 41 . → If H0 is a low-pass filter, then H1 is a high-pass filter.
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
137
/
205
Non-standard structures Multirate structures 2-channel filter bank
Quadrature Mirror Filters (QMF)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
138
/
205
Non-standard structures Multirate structures 2-channel filter bank
Quadrature Mirror Filters (QMF) Polyphase representation
With H1 (z) = H0 (−z): h i ˆ (z) = 1 H0 (z)2 − H0 (−z)2 X (z) X 2 H0 (z) is decomposed with respect to its 2 polyphase terms: H0 (z) = E0 (z 2 ) + z −1 E1 z 2 . The analysis filters are written: H0 (z) 1 = 1 H1 (z)
Nicolas
Dobigeon
1 −1
E0 (z 2 ) z E1 z 2
−1
Digital Signal Processing - Advanced Methods
139
/
205
Non-standard structures Multirate structures 2-channel filter bank
Quadrature Mirror Filters (QMF) Polyphase representation
Problem of analysis/synthesis:
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
140
/
205
Non-standard structures Multirate structures 2-channel filter bank
Quadrature Mirror Filters (QMF) Polyphase representation
Non-aliasing condition and polyphase decomposition:
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
141
/
205
Non-standard structures Multirate structures 2-channel filter bank
Quadrature Mirror Filters (QMF) Polyphase representation
Noble identities:
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
142
/
205
Non-standard structures Multirate structures 2-channel filter bank
Problem of 2-channel analysis/synthesis
On the circle C (0, 1), we write T e 2iπf = T e 2iπf e iφ(2πf ) Several possible interesting cases: I If T (z) is a all-pass, i.e, T e 2iπf = d, then ˆ 2iπf 2iπf X e = d X e −→ Amplitude preserving filters (but phase distorsion). I
If T (z) is a linear phase filter, i.e, φ(2πf ) = α2πf + β, then h h i i ˆ e 2iπf ˆ e 2iπf arg X = arg T e 2iπf + arg X h i ˆ e 2iπf = α2πf + β + arg X −→ Phase preserving filters (but amplitude distorsion).
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
143
/
205
Non-standard structures Multirate structures 2-channel filter bank
Problem of 2-channel analysis/synthesis
I
If there is no amplitude distorsion and no phase distorsion ∃L ≥ 1, T (z) = Kz −L Then, at the ouput ˆ 2iπf X e h i 2iπf ˆ e arg X
= K X e 2iπf = arg X e 2iπf − L2πf
−→ Output delayed and amplified/attenuated. −→ Perfect reconstruction filter bank.
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
144
/
205
Non-standard structures Multirate structures 2-channel filter bank
Perfect reconstruction filter bank
We introduce the product filter V (z) = H0 (z)H1 (−z)
ˆ (z) = 1 X H0 (z)H1 (−z) − H1 (z)H0 (−z) X (z) 2 | {z } | {z } V (z)
V (−z)
To obtain T (z) = Kz −L in the analysis/synthesis chain (L odd): T (z) =
1 2
[V (z) − V (−z)] = Kz −L
⇔
v (2n + 1) v (2n)
= K δ(2n + 1 − L) any
⇔ V (z) = Kz −L +
Nicolas
Dobigeon
P
n
v (2n)z −2n .
Digital Signal Processing - Advanced Methods
145
/
205
Non-standard structures Multirate structures 2-channel filter bank
Perfect reconstruction filter bank
3 synthesis methods: 1. We build V (z) such that v (n) =
K δ(n − L) any
if n odd si n even
then we factorize V (z) = H0 (z)H1 (z). 2. We fix H0 (z) and we solve (matrix computation) H0 (z)H1 (−z) − H0 (−z)H1 (z) = Kz −L 3. We choose {H0 (z), H1 (z)} in appropriate filter families → CQF...
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
146
/
205
Non-standard structures Multirate structures 2-channel filter bank
Conjugate quadrature filters (CQF)
We choose H0 and H1 such that −1 −1 H0 (z)H0 (z ) + H0 (−z)H0 (−z ) = 1 (a) −1 −1 H1 (z)H1 (z ) + H1 (−z)H1 (−z ) = 1 (b) H0 (z)H1 (z −1 ) + H0 (−z)H1 (−z −1 ) = 0 (c) Properties Let H0 (z) a FIR filter that follows (a). Then19 I
H0 (z) is of even length (odd order),
I
A NSC for having H1 (z) a FIR that follows (b) and (c) is H1 (z) = ±z −L H0 (−z −1 ),
L odd
In this case, T (z) = z −L .
19 Vetterli, Nicolas
IEEE Trans. SP, 1992.
Dobigeon
Digital Signal Processing - Advanced Methods
147
/
205
Non-standard structures Multirate structures 2-channel filter bank
Conjugate quadrature filters (CQF) “Classical” solution from Smith and Barnwell (for L odd and z = e 2iπf ): ˜ 0 (−z) with H ˜ 0 (z) = H0 1 H1 (z) = −z −L H z Then we have I
Nicolas
symmetry with respect to the power 2 2 j2πf j(2πf +π) H0 e + H0 e = 1.
Dobigeon
Digital Signal Processing - Advanced Methods
148
/
205
Non-standard structures Multirate structures 2-channel filter bank
Conjugate quadrature filters (CQF)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
149
/
205
Non-standard structures Multirate structures 2-channel filter bank
Conjugate quadrature filters (CQF)
“Classical” solution from Smith and Barnwell (for L odd and z = e 2iπf ): ˜ 0 (−z) with H ˜ 0 (z) = H0 1 H1 (z) = −z −L H z Then we have I
symmetry with respect to the power 2 2 j(2πf +π) j2πf = 1. + H0 e H0 e
I
complementariry with respect to the power 2 2 j2πf j2πf H0 e + H1 e = 1.
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
150
/
205
Non-standard structures Multirate structures 2-channel filter bank
Conjugate quadrature filters (CQF)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
151
/
205
Non-standard structures Multirate structures 2-channel filter bank
Conjugate quadrature filters (CQF)
Filter bank fully defined by H0 (z): h0 (n) h1 (n) f0 (n) f1 (n)
fixed = (−1)n h0 (L − n) = h0 (L − n) = −(−1)n h0 (n)
Remarks I
I
Nicolas
If H0 (z) is a stable IIR, H1 (z) is unstable! → can not be implemented with IIR... → implemented with FIR. If H0 (z) is a causal filter, H0 − z1 is anti-causal. Thus, there is delay introduced z −L ! (H1 (z) becomes causal if L ≥order of the FIR H0 (z)).
Dobigeon
Digital Signal Processing - Advanced Methods
152
/
205
Non-standard structures Multirate structures 2-channel filter bank
Conjugate quadrature filters (CQF) Spectral factorization synthesis ˜ 0 (−z) (half-band filter). Then, it comes: We set P(z) = H0 (z)H P(z) + P(−z) = 1, i.e., P(z) =
1 X + p(2k + 1)z −(2k+1) . 2 k
1. Synthesis of a zero-phase half-band filter Q(z) such that Q(e j2πf ) + Q(e j(2πf +π) ) = 1.
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
(3)
153
/
205
Non-standard structures Multirate structures 2-channel filter bank
Conjugate quadrature filters (CQF) Spectral factorization synthesis
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
154
/
205
Non-standard structures Multirate structures 2-channel filter bank
Conjugate quadrature filters (CQF) Spectral factorization synthesis ˜ 0 (−z) (half-band filter). Then, it comes: We set P(z) = H0 (z)H P(z) + P(−z) = 1, i.e., P(z) =
1 X + p(2k + 1)z −(2k+1) . 2 k
1. Synthesis of a zero-phase half-band filter Q(z) such that Q(e j2πf ) + Q(e j(2πf +π) ) = 1.
(4)
2. We set q 0 (n) = q(n) + δ(n) such that Q 0 (e j2πf ) = |H0 (e j2πf )|2 ≥ 0.
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
155
/
205
Non-standard structures Multirate structures 2-channel filter bank
Conjugate quadrature filters (CQF) Spectral factorization synthesis
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
156
/
205
Non-standard structures Multirate structures 2-channel filter bank
Conjugate quadrature filters (CQF) Spectral factorization synthesis ˜ 0 (−z) (half-band filter). Then, it comes: We set P(z) = H0 (z)H P(z) + P(−z) = 1, i.e., P(z) =
1 X + p(2k + 1)z −(2k+1) . 2 k
1. Synthesis of a zero-phase half-band filter Q(z) such that Q(e j2πf ) + Q(e j(2πf +π) ) = 1.
(5)
2. We set q 0 (n) = q(n) + δ(n) such that Q 0 (e j2πf ) = |H0 (e j2πf )|2 ≥ 0. Q 3. We factorize Q 0 (z) = A i (1 − ai z −1 )(1 − ai−1 z −1 ) (with |ai | ≤ 1) 4. We defineqthe minimum phase spectral factor Q −1 A ). H0 (z) = 1+2 i (1 − ai z
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
157
/
205
Non-standard structures Multirate structures 2-channel filter bank
Conjugate quadrature filters (CQF) Other method proposed by Daubechies20 : P(z) = (1 + z −1 )k (1 + z)k R(z) under the constraints I
R(z) symetric (R(z −1 ) = R(z)),
I
R(z) positive for z = e j2πf
I
R(z) of minimal degree.
Then factorization of P(z) with zeros inside C (0, 1) → Family of Daubechies’ minimym phase filters. Drawbacks of the CQF: I
only 1 degree of freedom for the analysis/synthesis: H0 (z),
I
no filter bank with linear phase analysis and synthesis filters.
20 Daubechies, Nicolas
Dobigeon
Comm. Pure Appl. Math., 1998. Digital Signal Processing - Advanced Methods
158
/
205
Non-standard structures Multirate structures 2-channel filter bank
Bi-orthogonal filter bank
We choose H0 and H1 such that C (z) = −z −L and H0 (z)F0 (z) + H0 (−z)F0 (−z) = 2 H1 (z) = −z L F0 (z −1 ), L impair F1 (z) = z −L H0 (−z) In this case, T (z) = z L . We set P(z) = H0 (z)F0 (z) and it comes: P(z) + P(−z) = 2 Synthesis method: 1. We choose P(z) (half-band, zero phase, real coefficients) 2. We factorize P(z) = H0 (z)F0 (z) → 2 degrees of freedom. → linear phase filter bank possible.
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
159
/
205
Non-standard structures Multirate structures 2-channel filter bank
Outline
Optimization Digital effects Non-standard structures Ladder/lattice structures Theoretical foundations Application to the synthesis of FIR filters Application to the synthesis of IIR filters
Fraction-based structures Multirate structures Some theoretical notions 2-channel filter bank Generalization to M subbands And the discrete wavelet transform?
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
160
/
205
Non-standard structures Multirate structures Generalization to M subbands
Full tree decomposition
(Wave packet decomposition)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
161
/
205
Non-standard structures Multirate structures Generalization to M subbands
Full tree decomposition
(Wave packet decomposition)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
162
/
205
Non-standard structures Multirate structures Generalization to M subbands
Full tree decomposition
(Wave packet decomposition)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
163
/
205
Non-standard structures Multirate structures Generalization to M subbands
Full tree decomposition
(Wave packet decomposition)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
164
/
205
Non-standard structures Multirate structures Generalization to M subbands
Full tree decomposition
(Wave packet decomposition)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
165
/
205
Non-standard structures Multirate structures Generalization to M subbands
Full tree decomposition
(Wave packet decomposition)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
166
/
205
Non-standard structures Multirate structures Generalization to M subbands
Full tree decomposition
(Wave packet decomposition)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
167
/
205
Non-standard structures Multirate structures Generalization to M subbands
Dyadic decomposition
(Dyadic discrete wavelet decomposition)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
168
/
205
Non-standard structures Multirate structures Generalization to M subbands
Dyadic decomposition
(Dyadic discrete wavelet decomposition)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
169
/
205
Non-standard structures Multirate structures Generalization to M subbands
Dyadic decomposition
(Dyadic discrete wavelet decomposition)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
170
/
205
Non-standard structures Multirate structures Generalization to M subbands
Dyadic decomposition
(Dyadic discrete wavelet decomposition)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
171
/
205
Non-standard structures Multirate structures Generalization to M subbands
Dyadic decomposition
(Dyadic discrete wavelet decomposition)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
172
/
205
Non-standard structures Multirate structures Generalization to M subbands
Dyadic decomposition
(Dyadic discrete wavelet decomposition)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
173
/
205
Non-standard structures Multirate structures Generalization to M subbands
Dyadic decomposition
(Dyadic discrete wavelet decomposition)
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
174
/
205
Non-standard structures Multirate structures Generalization to M subbands
Optimal subband decomposition
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
175
/
205
Non-standard structures Multirate structures Generalization to M subbands
Optimal subband decomposition
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
176
/
205
Non-standard structures Multirate structures Generalization to M subbands
Optimal subband decomposition
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
177
/
205
Non-standard structures Multirate structures Generalization to M subbands
Optimal subband decomposition
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
178
/
205
Non-standard structures Multirate structures Generalization to M subbands
Optimal subband decomposition
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
179
/
205
Non-standard structures Multirate structures Generalization to M subbands
Optimal subband decomposition
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
180
/
205
Non-standard structures Multirate structures Generalization to M subbands
Optimal subband decomposition
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
181
/
205
Non-standard structures Multirate structures Generalization to M subbands
Direct M-channel decomposition
The parts “analysis” and “synthesis” own M filters in parallel.
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
182
/
205
Non-standard structures Multirate structures Generalization to M subbands
Direct M-channel decomposition
As previously, the properties of down/up-sampling lead to: " # M−1 M−1 X 1 X m m ˆ X (z) = X (ωM z) Hk (ωM z)Fk (z) M m=0 k=0
=
M−1 X
m X (ωM z) Am (z)
m=0
with Am (z) =
Nicolas
Dobigeon
1 M
PM−1 k=0
m Hk (ωM z)Fk (z).
Digital Signal Processing - Advanced Methods
183
/
205
Non-standard structures Multirate structures Generalization to M subbands
Direct M-channel decomposition With matrix notations: ˆ (z) = a(z)T x(z) = 1 f(z)T H(z)T x(z) X M with |
A0 (z) A1 (z) .. . AM−1 (z) {z a(z)
1 = M }
|
h(z)T h(ωm z)T .. . M−1 T h(ωm z) {z
}|
H(z)
F0 (z) F1 (z) .. . FM−1 (z) {z f(z)
}
and
H0 (z) .. h(z) = . HM−1 (z)
Nicolas
Dobigeon
and
X (z) .. x(z) = .. . M−1 X (ωM z)
Digital Signal Processing - Advanced Methods
184
/
205
Non-standard structures Multirate structures Generalization to M subbands
Direct M-channel decomposition
However, the operators m Rm : X (z) → X (ωM z)
are not LTI filters (except for m = 0). The anti-aliasing conditions are: Am (z) = 0,
pour m 6= 0
If we choose the analysis filter (i.e., H(z)), the problem consists of solving T (z) 0 1 f(z) = H(z)−1 a(z) with a(z) = . M .. 0 In the perfect reconstruction problem, T (z) ∝ z −N .
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
185
/
205
Non-standard structures Multirate structures Generalization to M subbands
Direct M-channel decomposition Polyphase representation The polyphase representation of the synthesis and analysis filters are P −m Hk (z) = m−1 Ek,m z M m=0 z m−1 X −M−1−m P −m 0 M Fk (z) = m−1 z E z , zM z R k,m k,m m=0 m=0
We define the polyphase matrices tel que E zM R zM tel que
h i E zM = Ek,m z M k,m h i R zM = Rk,m z M k,m
and P(z) = R (z) E (z) .
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
186
/
205
Non-standard structures Multirate structures Generalization to M subbands
Direct M-channel decomposition Polyphase representation
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
187
/
205
Non-standard structures Multirate structures Generalization to M subbands
Direct M-channel decomposition Polyphase representation
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
188
/
205
Non-standard structures Multirate structures Generalization to M subbands
Direct M-channel decomposition Polyphase representation
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
189
/
205
Non-standard structures Multirate structures Generalization to M subbands
Direct M-channel decomposition Polyphase representation Vaidyanathan enounced numerous properties21,22 . Necessary and sufficient condition for anti-aliasing P(z) is pseudo-circulant, i.e., I
P(z) is Toeplitz,
I
Pk,0 (z) = z −1 P0,M−k (z), k = 1, . . . , M − 1
P(z) = [Pk,m (z)]k,m
P0 (z) z −1 PM−1 (z) = . . . −1 z P1 (z)
P1 (z) P0 (z) . . . ...
... ... .. . −1 z PM−1 (z)
PM−1 (z) PM−2 (z) . . . P0 (z)
In this case, the transfer function T (z) is T (z) = z −(M−1)
M−1 X
z −k P0,k z M .
k=0
21 Vaidyanathan, IEEE Trans. ASSP, 1987. 22 Vaidyanathan and Mitra, IEEE Trans. ASSP, 1988. Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
190
/
205
Non-standard structures Multirate structures Generalization to M subbands
Direct M-channel decomposition Polyphase representation Necessary and sufficient condition for perfect reconstruction We have T (z) ∝ z −L if and only if one of these conditions is ensured I
P(z) is para-unitary (and stable), i.e., ˜ P(z)P(z) = IM ˜ with P(z) =P
1 T z
(for real coefficient filters).
I
∃K ∈ Z, det [R(z)] det [E(z)] ∝ z −K ,
I
in case of FIR filters, ∃K ∈ Z, det [E(z)] ∝ z −K ,
One possible solution: para-unitary filters {H0 , . . . , HM−1 }: ˜ H(z)H(z) = IM , which leads to power-complementary filters: 2 2 j2πf ) + . . . + HM−1 (e j2πf ) = 1. H0 (e Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
191
/
205
Non-standard structures Multirate structures Generalization to M subbands
Outline
Optimization Digital effects Non-standard structures Ladder/lattice structures Theoretical foundations Application to the synthesis of FIR filters Application to the synthesis of IIR filters
Fraction-based structures Multirate structures Some theoretical notions 2-channel filter bank Generalization to M subbands And the discrete wavelet transform?
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
192
/
205
Non-standard structures Multirate structures And the discrete wavelet transform?
Case of the CQF filter bank
We remind that C (z) = 1, i.e., F0 (z) F1 (z)
= H1 (−z) = −H0 (−z)
Orthogonal filter bank (2 channels) −1 −1 H0 (z)H0 (z ) + H0 (−z)H0 (−z ) = 2 (a) −1 −1 H1 (z)H1 (z ) + H1 (−z)H1 (−z ) = 2 (b) H0 (z)H1 (z −1 ) + H0 (−z)H1 (−z −1 ) = 0 (c) is equivalent to hh0 (n), h0 (n − 2k)i hh1 (n), h1 (n − 2k)i hh0 (n), h1 (n − 2k)i P with ha(n), b(n)i = n a(n)b(n) (a and b
Nicolas
Dobigeon
= δ(k) = δ(k) =0
(a’) (b’) (c’)
real).
Digital Signal Processing - Advanced Methods
193
/
205
Non-standard structures Multirate structures And the discrete wavelet transform?
Case of the CQF filter bank
We introduce T
x = [. . . , x(−1), x(0), x(1), . . .] and the matrix ... H0 = ...
. . . 0 0 . . .
. . . h0 (M − 1) 0 . . .
. . . h0 (M − 2) 0 . . .
. . . h0 (M − 3) h0 (M − 1) . . .
... ...
. . . h(0) h(2) . . .
. . . 0 h(1) . . .
. . . 0 h(0) . . .
. . . 0 0 . . .
... ...
then
with h˜0 (n) = h0 (M − 1 − n) = f0 (n) (M odd). Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
194
/
205
Non-standard structures Multirate structures And the discrete wavelet transform?
Case of the CQF filter bank
What is the operator PH0 = H∗0 H0 ? I
From (a), we have H0 H∗0 = I,
I
→ Orthogonal projection onto the space V0 , hH∗0 i spanned by the columns of H∗0 , i.e., the rows of H0 .
Can we complete the space V0 in L2 (Z) , x(n), n ∈ Z/ kxk2 < ∞ ? I
From (c), we have H0 H∗1 = 0,
I
→ hH∗0 i ⊥ hH∗1 i
I
→ V0 and W0 , hH∗1 i are in orthogonal direct sum
Corollary H∗0 H0 + H∗1 H1 = I.
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
195
/
205
Non-standard structures Multirate structures And the discrete wavelet transform?
Case of the CQF filter bank
What is the operator PH0 = H∗0 H0 ? I
From (a), we have H0 H∗0 = I,
I
→ Orthogonal projection onto the space V0 , hH∗0 i spanned by the columns of H∗0 , i.e., the rows of H0 .
Can we complete the space V0 in L2 (Z) , x(n), n ∈ Z/ kxk2 < ∞ ? I
From (c), we have H0 H∗1 = 0,
I
→ hH∗0 i ⊥ hH∗1 i
I
→ V0 and W0 , hH∗1 i are in orthogonal direct sum
Corollary H∗0 H0 + H∗1 H1 = I.
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
195
/
205
Non-standard structures Multirate structures And the discrete wavelet transform?
Case of the CQF filter bank Interpretation The CQF filter bank define a decomposition into sub-spaces of L2 (Z).
L2 (Z) = V0 ⊕⊥ W0
We iterate: L2 (Z) = V0 ⊕⊥ W0 V0 = V1 ⊕⊥ W1 V1 = V2 ⊕⊥ W2 ... Nicolas
Dobigeon
⇔
L2 (Z) =
Digital Signal Processing - Advanced Methods
M M
Wi ⊕⊥ VM |{z} |{z}
i=0 details
approx.
196
/
205
Non-standard structures Multirate structures And the discrete wavelet transform?
Case of the CQF filter bank Interpretation The CQF filter bank define a decomposition into sub-spaces of L2 (Z).
L2 (Z) = V0 ⊕⊥ W0
We iterate: L2 (Z) = V0 ⊕⊥ W0 V0 = V1 ⊕⊥ W1 V1 = V2 ⊕⊥ W2 ... Nicolas
Dobigeon
⇔
L2 (Z) =
Digital Signal Processing - Advanced Methods
M M
Wi ⊕⊥ VM |{z} |{z}
i=0 details
approx.
196
/
205
Non-standard structures Multirate structures And the discrete wavelet transform?
Case of the CQF filter bank Dyadic decomposition
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
197
/
205
Non-standard structures Multirate structures And the discrete wavelet transform?
Case of the CQF filter bank Dyadic decomposition
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
198
/
205
Non-standard structures Multirate structures And the discrete wavelet transform?
Case of the CQF filter bank Dyadic decomposition
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
199
/
205
Non-standard structures Multirate structures And the discrete wavelet transform?
Case of the CQF filter bank Dyadic decomposition
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
200
/
205
Non-standard structures Multirate structures And the discrete wavelet transform?
Case of the CQF filter bank Dyadic decomposition
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
201
/
205
Non-standard structures Multirate structures And the discrete wavelet transform?
Case of the CQF filter bank Dyadic decomposition
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
202
/
205
Non-standard structures Multirate structures And the discrete wavelet transform?
Case of the CQF filter bank Dyadic decomposition
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
203
/
205
Non-standard structures Multirate structures And the discrete wavelet transform?
Case of the CQF filter bank Dyadic decomposition
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
204
/
205
Non-standard structures Multirate structures And the discrete wavelet transform?
Digital Signal Processing Advanced Methods
Nicolas Dobigeon University of Toulouse IRIT/INP-ENSEEIHT
http://www.enseeiht.fr/~dobigeon
[email protected]
Nicolas
Dobigeon
Digital Signal Processing - Advanced Methods
205
/
205