Digital Signal Processing - Advanced Methods - Nicolas Dobigeon

34 downloads 97 Views 4MB Size Report
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