Digital Audio Signal Processing Lecture3 Microphone Array Processing

  • Slides: 26
Download presentation
Digital Audio Signal Processing Lecture-3: Microphone Array Processing - Adaptive Beamforming Marc Moonen Dept.

Digital Audio Signal Processing Lecture-3: Microphone Array Processing - Adaptive Beamforming Marc Moonen Dept. E. E. /ESAT-STADIUS, KU Leuven marc. moonen@esat. kuleuven. be homes. esat. kuleuven. be/~moonen/

Overview Lecture 2 – Introduction & beamforming basics – Fixed beamforming Lecture 3: Adaptive

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. 2

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

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 Digital Audio Signal Processing Version 2014 -2015 Lecture-3: Microphone Array Processing p. 3

Introduction Data model & definitions • Microphone signals • Output signal after `filter-and-sum’ is

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 Digital Audio Signal Processing Version 2014 -2015 Lecture-3: Microphone Array Processing p. 4

Overview Lecture 2 – Introduction & beamforming basics – Fixed beamforming Lecture 3: Adaptive

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. 5

Optimal & Adaptive Filters Review 1/6 Digital Audio Signal Processing Version 2014 -2015 Lecture-3:

Optimal & Adaptive Filters Review 1/6 Digital Audio Signal Processing Version 2014 -2015 Lecture-3: Microphone Array Processing p. 6

Norbert Wiener Optimal & Adaptive Filters Review 2/6 Digital Audio Signal Processing Version 2014

Norbert Wiener Optimal & Adaptive Filters Review 2/6 Digital Audio Signal Processing Version 2014 -2015 Lecture-3: Microphone Array Processing p. 7

Optimal & Adaptive Filters Review 3/6 Digital Audio Signal Processing Version 2014 -2015 Lecture-3:

Optimal & Adaptive Filters Review 3/6 Digital Audio Signal Processing Version 2014 -2015 Lecture-3: Microphone Array Processing p. 8

Optimal & Adaptive Filters Review 4/6 Digital Audio Signal Processing Version 2014 -2015 Lecture-3:

Optimal & Adaptive Filters Review 4/6 Digital Audio Signal Processing Version 2014 -2015 Lecture-3: Microphone Array Processing p. 9

Optimal & Adaptive Filters Review 5/6 (Widrow 1965 !!) Digital Audio Signal Processing Version

Optimal & Adaptive Filters Review 5/6 (Widrow 1965 !!) Digital Audio Signal Processing Version 2014 -2015 Lecture-3: Microphone Array Processing p. 10

Optimal & Adaptive Filters Review 6/6 Digital Audio Signal Processing Version 2014 -2015 Lecture-3:

Optimal & Adaptive Filters Review 6/6 Digital Audio Signal Processing Version 2014 -2015 Lecture-3: Microphone Array Processing p. 11

Overview Lecture 2 – Introduction & beamforming basics – Fixed beamforming Lecture 3: Adaptive

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. 12

LCMV-beamforming • Adaptive filter-and-sum structure: – Aim is to minimize noise output power, while

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 : + Digital Audio Signal Processing : Version 2014 -2015 Lecture-3: Microphone Array Processing p. 13

LCMV-beamforming LCMV = Linearly Constrained Minimum Variance – f designed to minimize power (variance)

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 (**) Digital Audio Signal Processing Version 2014 -2015 Lecture-3: Microphone Array Processing p. 14

LCMV-beamforming LCMV = Linearly Constrained Minimum Variance – With (**) (for sufficiently large J)

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. . ): Digital Audio Signal Processing Version 2014 -2015 Lecture-3: Microphone Array Processing p. 15

Overview Lecture 2 – Introduction & beamforming basics – Fixed beamforming Lecture 3: Adaptive

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. 16

Frost Beamforming Frost-beamformer = adaptive version of LCMV-beamformer – If Ryy is known, a

Frost Beamforming 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 Digital Audio Signal Processing Version 2014 -2015 Lecture-3: Microphone Array Processing p. 17

Frost Beamforming Frost-beamformer = adaptive version of LCMV-beamformer – If Ryy is unknown, an

Frost Beamforming 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) Digital Audio Signal Processing Version 2014 -2015 Lecture-3: Microphone Array Processing p. 18

Overview Lecture 2 – Introduction & beamforming basics – Fixed beamforming Lecture 3: Adaptive

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. 19

Generalized Sidelobe Canceler (GSC) GSC = alternative adaptive filter formulation of the LCMV-problem :

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 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 :

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) Digital Audio Signal Processing Version 2014 -2015 Lecture-3: Microphone Array Processing p. 21

Generalized Sidelobe Canceler GSC (continued) – Hence unconstrained optimization of fa can be implemented

Generalized Sidelobe Canceler GSC (continued) – Hence unconstrained optimization of fa can be implemented as an adaptive filter (adaptive linear combiner), with filter inputs (=‘lefthand sides’) equal to and desired filter output (=‘right-hand side’) equal to – LMS algorithm : Digital Audio Signal Processing Version 2014 -2015 Lecture-3: Microphone Array Processing p. 22

Generalized Sidelobe Canceler GSC then consists of three parts: • Fixed beamformer (cfr. fq

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 Digital Audio Signal Processing Version 2014 -2015 Lecture-3: Microphone Array Processing p. 23

Generalized Sidelobe Canceler A popular GSC realization is as follows y 1 Postproc y.

Generalized Sidelobe Canceler A popular GSC realization is as follows y 1 Postproc y. M 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). Digital Audio Signal Processing Version 2014 -2015 Lecture-3: Microphone Array Processing p. 24

Generalized Sidelobe Canceler • Math details: (for Delta’s=0) select `sparse’ blocking matrix such that

Generalized Sidelobe Canceler • Math details: (for Delta’s=0) select `sparse’ blocking matrix such that : =input to multi-channel adaptive filter =use this as blocking matrix now Digital Audio Signal Processing Version 2014 -2015 Lecture-3: Microphone Array Processing p. 25

Generalized Sidelobe Canceler • Blocking matrix Ca (cfr. scheme page 24) – Creating (M-1)

Generalized Sidelobe Canceler • 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) Griffiths-Jim Walsh • 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! Digital Audio Signal Processing Version 2014 -2015 Lecture-3: Microphone Array Processing p. 26