+ All Categories
Home > Documents > Overview - KU Leuven3 Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array...

Overview - KU Leuven3 Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array...

Date post: 21-Jan-2021
Category:
Upload: others
View: 1 times
Download: 0 times
Share this document with a friend
13
1 Digital Audio Signal Processing Lecture-3: Microphone Array Processing - Adaptive Beamforming - Marc Moonen Dept. E.E./ESAT-STADIUS, KU Leuven [email protected] homes.esat.kuleuven.be/~moonen/ Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 2 Overview Lecture 2 Introduction & beamforming basics Fixed beamforming Lecture 3: Adaptive beamforming Introduction Review of “Optimal & Adaptive Filters” LCMV beamforming Frost beamforming Generalized sidelobe canceler
Transcript
Page 1: Overview - KU Leuven3 Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 5 Overview Lecture 2 – Introduction & beamforming basics – Fixed

1

Digital Audio Signal Processing

Lecture-3: Microphone Array Processing

- Adaptive Beamforming -

Marc Moonen Dept. E.E./ESAT-STADIUS, KU Leuven

[email protected] homes.esat.kuleuven.be/~moonen/

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 2

Overview

Lecture 2 –  Introduction & beamforming basics –  Fixed beamforming

Lecture 3: Adaptive beamforming •  Introduction •  Review of “Optimal & Adaptive Filters” •  LCMV beamforming •  Frost beamforming •  Generalized sidelobe canceler

Page 2: Overview - KU Leuven3 Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 5 Overview Lecture 2 – Introduction & beamforming basics – Fixed

2

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 3

Introduction Beamforming = `Spatial filtering’ based on microphone directivity patterns and microphone array configuration Classification

–  Fixed beamforming: data-independent, fixed filters Fm Example: delay-and-sum, filter-and-sum

–  Adaptive beamforming: data-dependent adaptive filters Fm Example: LCMV-beamformer, Generalized Sidelobe Canceler

F1(ω)

F2 (ω)

FM (ω)

z[k]

y1[k]

+ : dM

θ

dM cosθ

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 4

Introduction

Data model & definitions •  Microphone signals

•  Output signal after `filter-and-sum’ is

•  Array directivity pattern

•  Array gain =improvement in SNR for source at angle θ

)()().,(),( ωωθωθω NdY += S

)()}.,().({),().(),().(),(1

* ωθωωθωωθωωθω SYFZ HHM

mmm dFYF ===∑

=

),().()(),(),( θωω

ωθω

θω dFHSZH ==

)().().(),().(

),(2

ωωω

θωωθω

FΓFdF

noiseH

H

input

output

SNRSNR

G ==

Page 3: Overview - KU Leuven3 Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 5 Overview Lecture 2 – Introduction & beamforming basics – Fixed

3

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 5

Overview

Lecture 2 –  Introduction & beamforming basics –  Fixed beamforming

Lecture 3: Adaptive beamforming •  Introduction •  Review of “Optimal & Adaptive Filters” •  LCMV beamforming •  Frost beamforming •  Generalized sidelobe canceler

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 6

Optimal & Adaptive Filters Review 1/6

27

Optimal filtering/ Wiener filters

FIR filters (=tapped-delay line filter/‘transversal’ filter)

66

filter input

0

6

w0[k] w1[k] w2[k] w3[k]

u[k] u[k-1] u[k-2] u[k-3]

b w

aa+bw

+<

error desired signal

filter output

yk =N−1∑

l=0

wl · uk−l

yk = wT · uk

where

wT =[w0 w1 w2 · · · wN−1

]

uTk =

[uk uk−1 uk−2 · · · uk−N+1

]

Page 4: Overview - KU Leuven3 Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 5 Overview Lecture 2 – Introduction & beamforming basics – Fixed

4

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 7

5

1. Least Squares (LS) Estimation

Quadratic cost function

MMSE : (see Lecture 8)

JMSE(w) = E{e2k} = E{|dk − yk|2} = E{|dk −wTuk|2}

Least-squares(LS) criterion :if statistical info is not available, may use an alternative ‘data-based’ criterion...

JLS(w) =L∑

k=1

e2k =

L∑

k=1

|dk − yk|2 =∑L

k=1 |dk −wTuk|2

Interpretation? : see below

Optimal & Adaptive Filters Review 2/6

Nor

bert

Wie

ner

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 8

Optimal & Adaptive Filters Review 3/6

13

2.1 Standard RLS

It is observed that Xuu(L + 1) = Xuu(L) + uL+1uTL+1

The matrix inversion lemma states that

[Xuu(L + 1)]−1 = [Xuu(L)]−1 − [Xuu(L)]−1uL+1uTL+1[Xuu(L)]−1

1+uTL+1[Xuu(L)]−1uL+1

Result :

wLS(L + 1) = wLS(L) + [Xuu(L + 1)]−1uL+1︸ ︷︷ ︸Kalman gain

· (dL+1 − uTL+1wLS(L))︸ ︷︷ ︸

a priori residual

= standard recursive least squares (RLS) algorithm

Remark : O(N 2) operations per time update

Remark : square-root algorithms with better numerical propertiessee below

Xuu(L +1) =k=1

L+1

∑ uk.uTk

Page 5: Overview - KU Leuven3 Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 5 Overview Lecture 2 – Introduction & beamforming basics – Fixed

5

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 9

Optimal & Adaptive Filters Review 4/6

25

3.1 QRD-based RLS Algorithms

QR-updating for RLS estimation

[R(k + 1) z(k + 1)

0 ⋆

]← Q(k + 1)T ·

[R(k) z(k)uT

k+1 dk+1

]

R(k + 1) · wLS(k + 1) = z(k + 1) .

= square-root (information matrix) RLS

Remark . with exponential weighting[

R(k + 1) z(k + 1)0 ⋆

]← Q(k + 1)T ·

[λR(k) λz(k)uT

k+1 dk+1

]

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 10

Optimal & Adaptive Filters Review 5/6

6 6 6 6

b

b

-w

a-bw

w

input signal

6

a

6

µ

6

- - - -

b b

aw

w+ab

u[k] u[k-1] u[k-2] u[k-3]

w0[k-1] w1[k-1] w2[k-1] w3[k-1]

w0[k] w1[k] w2[k] w3[k]

output signal

e[k] d[k]

desired signal

(Widrow 1965 !!)

Page 6: Overview - KU Leuven3 Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 5 Overview Lecture 2 – Introduction & beamforming basics – Fixed

6

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 11

Optimal & Adaptive Filters Review 6/6

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 12

Overview

Lecture 2 –  Introduction & beamforming basics –  Fixed beamforming

Lecture 3: Adaptive beamforming •  Introduction •  Review of “Optimal & Adaptive Filters” •  LCMV beamforming •  Frost beamforming •  Generalized sidelobe canceler

Page 7: Overview - KU Leuven3 Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 5 Overview Lecture 2 – Introduction & beamforming basics – Fixed

7

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 13

LCMV-beamforming •  Adaptive filter-and-sum structure:

–  Aim is to minimize noise output power, while maintaining a chosen response in a given look direction

(and/or other linear constraints, see below). –  This is similar to operation of a superdirective array (in diffuse

noise), or delay-and-sum (in white noise), cfr (**) Lecture 2 p.21&29, but now noise field is unknown !

–  Implemented as adaptive FIR filter :

[ ] ]1[...]1[][][ T+−−= Nkykykyk mmmmy

∑=

==M

mm

Tm

T kkkz1

][][][ yfyf

[ ]TTM

TT kkkk ][][][][ 21 yyyy …=

[ ]TTM

TT ffff …21=[ ] ... T

1,1,0, −= Nmmmm ffff

F1(ω)

F2 (ω)

FM (ω)

z[k]

y1[k]

+ : yM [k]

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 14

LCMV-beamforming

LCMV = Linearly Constrained Minimum Variance –  f designed to minimize power (variance) of total output (read on..) z[k] :

–  To avoid desired signal cancellation, add (J) linear constraints

•  Example: fix array response in look-direction ψ for sample freqs wi, i=1..J (**)

Ryy[k]= E{y[k].y[k]T}

{ } fRfff

⋅⋅= ][min][min 2 kkzE yyT

FT (ωi ).d(ωi,ψ) =Lecture2-p17

f T d(ωi,ψ) = dT (ωi,ψ).f =1 i =1..J

JJMNMNT ℜ∈ℜ∈ℜ∈= × bCfbfC ,, .

Page 8: Overview - KU Leuven3 Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 5 Overview Lecture 2 – Introduction & beamforming basics – Fixed

8

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 15

LCMV-beamforming

LCMV = Linearly Constrained Minimum Variance

–  With (**) (for sufficiently large J) constrained total output power minimization approximately corresponds to constrained output noise power minimization (why?)

–  Solution is (obtained using Lagrange-multipliers, etc..):

( ) bCRCCRf 111 ][][ −−− ⋅⋅⋅⋅= kk yyT

yyopt

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 16

Overview

Lecture 2 –  Introduction & beamforming basics –  Fixed beamforming

Lecture 3: Adaptive beamforming •  Introduction •  Review of “Optimal & Adaptive Filters” •  LCMV beamforming •  Frost beamforming •  Generalized sidelobe canceler

Page 9: Overview - KU Leuven3 Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 5 Overview Lecture 2 – Introduction & beamforming basics – Fixed

9

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 17

Frost-beamformer = adaptive version of LCMV-beamformer

–  If Ryy is known, a gradient-descent procedure for LCMV is :

in each iteration filters f are updated in the direction of the constrained gradient. The P and B are such that f[k+1] statisfies the constraints (verify!). The mu is a step size parameter (to be tuned

Frost Beamforming

( ) BfRfPf +⋅⋅−⋅=+ ][][][]1[ kkkk yyµ

( ) TTI CCCCP ⋅⋅⋅−≡−1

( ) bCCCB ⋅⋅⋅≡−1T

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 18

Frost-beamformer = adaptive version of LCMV-beamformer –  If Ryy is unknown, an instantaneous (stochastic) approximation

may be substituted, leading to a constrained LMS-algorithm:

(compare to LMS formula)

Frost Beamforming

( ) ByfPf +⋅⋅−⋅=+ ][][][]1[ kkzkk µ

Ryy[k] ≈ y[k].y[k]T

( ) BfRfPf +⋅⋅−⋅=+ ][][][]1[ kkkk yyµ

Page 10: Overview - KU Leuven3 Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 5 Overview Lecture 2 – Introduction & beamforming basics – Fixed

10

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 19

Overview

Lecture 2 –  Introduction & beamforming basics –  Fixed beamforming

Lecture 3: Adaptive beamforming •  Introduction •  Review of “Optimal & Adaptive Filters” •  LCMV beamforming •  Frost beamforming •  Generalized sidelobe canceler

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 20

Generalized Sidelobe Canceler (GSC)

GSC = alternative adaptive filter formulation of the LCMV-problem : constrained optimisation is reformulated as a constraint pre-processing, followed by an unconstrained optimisation, leading to a simpler adaptation scheme –  LCMV-problem is

–  Define `blocking matrix’ Ca, ,with columns spanning the null-space of C

–  Define ‘quiescent response vector’ fq satisfying constraints

–  Parametrize all f’s that satisfy constraints (verify!) I.e. filter f can be decomposed in a fixed part fq and a variable part Ca. fa

bfCfRff

=⋅⋅⋅ Tyy

T k ,][min

f = fq −Ca.fa

)( JMNMNa

−×ℜ∈C

JJMNMN ℜ∈ℜ∈ℜ∈ × bCf ,,

CT .Ca = 0

fq =C.(CT .C)−1b

fa ∈ℜ(MN−J )

Page 11: Overview - KU Leuven3 Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 5 Overview Lecture 2 – Introduction & beamforming basics – Fixed

11

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 21

Generalized Sidelobe Canceler (GSC)

GSC = alternative adaptive filter formulation of the LCMV-problem : constrained optimisation is reformulated as a constraint pre-processing, followed by an unconstrained optimisation, leading to a simpler adaptation scheme

–  LCMV-problem is –  Unconstrained optimization of fa : (MN-J coefficients)

bfCfRff

=⋅⋅⋅ Tyy

T k ,][min

).].([.).(min aaqyyT

aaq ka

fCfRfCff −−

JJMNMN ℜ∈ℜ∈ℜ∈ × bCf ,,

f = fq −Ca.fa

fa ∈ℜ(MN−J )

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 22

GSC (continued)

–  Hence unconstrained optimization of fa can be implemented as an adaptive filter (adaptive linear combiner), with filter inputs (=‘left- hand sides’) equal to and desired filter output (=‘right-hand side’) equal to –  LMS algorithm :

Generalized Sidelobe Canceler

}))..][().][({min...).].([.).(min

2][~][

aa

kd

qaaqyyT

aaq

T

aakkEk fCyfyfCfRfCf

ky

TTff

!"!#$!"!#$ΔΔ==

−==−−

][~ ky

][kd

])[..][][..(][..][]1[][~][][~

kkkkkk a

k

aT

kd

Tq

k

Taaa

T

fCyyfyCffyy!"!#$"#$!"!#$ −+=+ µ

Page 12: Overview - KU Leuven3 Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 5 Overview Lecture 2 – Introduction & beamforming basics – Fixed

12

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 23

Generalized Sidelobe Canceler

GSC then consists of three parts: •  Fixed beamformer (cfr. fq ), satisfying constraints but not yet minimum

variance), creating `speech reference’ •  Blocking matrix (cfr. Ca), placing spatial nulls in the direction of the

speech source (at sampling frequencies) (cfr. C’.Ca=0), creating `noise references’

•  Multi-channel adaptive filter (linear combiner) your favourite one, e.g. LMS

][kd

][~ ky

qf

aC

+][1 ky][2 ky

][kyM

][kz

af

][kd

][~ ky

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 24

Generalized Sidelobe Canceler

A popular GSC realization is as follows

Note that some reorganization has been done: the blocking matrix now generates (typically) M-1 (instead of MN-J) noise references, the multichannel adaptive filter performs FIR-filtering on each noise reference (instead of merely scaling in the linear combiner). Philosophy is the same, mathematics are different (details on next slide).

Postproc

y1

yM

Page 13: Overview - KU Leuven3 Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 5 Overview Lecture 2 – Introduction & beamforming basics – Fixed

13

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 25

Generalized Sidelobe Canceler

•  Math details: (for Delta’s=0)

[ ][ ]

[ ]][.~][~

]1[~...]1[~][~][~

~...00:::0...~00...0~

][...][][][

]1[...]1[][][

][.][.][~

:1:1

:1:1:1

permuted,

21:1

:1:1:1permuted

permutedpermuted,

kk

Lkkkk

kykykyk

Lkkkk

kkk

MTaM

TTM

TM

TM

Ta

Ta

Ta

Ta

TMM

TTM

TM

TM

Ta

Ta

yCy

yyyy

C

CC

C

y

yyyy

yCyCy

=

+−−=

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

=

=

+−−=

==

=input to multi-channel adaptive filter

select `sparse’ blocking matrix

such that :

=use this as blocking matrix now

Digital Audio Signal Processing Version 2014-2015 Lecture-3: Microphone Array Processing p. 26

•  Blocking matrix Ca (cfr. scheme page 24) –  Creating (M-1) independent noise references by placing spatial nulls in

look-direction –  different possibilities (a la p.38)

(broadside steering)

Generalized Sidelobe Canceler

[ ]1111=TC

⎥⎥⎥

⎢⎢⎢

=

100101010011

TaC

⎥⎥⎥

⎢⎢⎢

−−

−−

−−

=

111111111111

TaC

•  Problems of GSC: –  impossible to reduce noise from look-direction –  reverberation effects cause signal leakage in noise references adaptive filter should only be updated when no speech is present to avoid

signal cancellation!

02000

40006000

8000 0 45 90 135 180

0

0.5

1

1.5

Angle (deg)

Frequency (Hz)

Griffiths-Jim

Walsh


Recommended