Top Banner
1 Digital Audio Signal Processing Lecture-2 Microphone Array Processing Marc Moonen Dept. E.E./ESAT-STADIUS, KU Leuven [email protected] homes.esat.kuleuven.be/~moonen/ Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 2 Overview Introduction & beamforming basics Data model & definitions Fixed beamforming Filter-and-sum beamformer design Matched filtering White noise gain maximization Ex: Delay-and-sum beamforming Superdirective beamforming Directivity maximization Directional microphones (delay-and-subtract) Adaptive Beamforming LCMV beamformer Generalized sidelobe canceler
20

Microphone Array Processing - homes.esat.kuleuven.behomes.esat.kuleuven.be/~dspuser/dasp/material/Slides_2015_2016/... · 1 Digital Audio Signal Processing Lecture-2 Microphone Array

Aug 08, 2018

Download

Documents

buidien
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Microphone Array Processing - homes.esat.kuleuven.behomes.esat.kuleuven.be/~dspuser/dasp/material/Slides_2015_2016/... · 1 Digital Audio Signal Processing Lecture-2 Microphone Array

1

Digital Audio Signal Processing

Lecture-2

Microphone Array Processing

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

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

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

Overview

•  Introduction & beamforming basics –  Data model & definitions

•  Fixed beamforming –  Filter-and-sum beamformer design –  Matched filtering

•  White noise gain maximization •  Ex: Delay-and-sum beamforming

–  Superdirective beamforming •  Directivity maximization

–  Directional microphones (delay-and-subtract)

•  Adaptive Beamforming –  LCMV beamformer –  Generalized sidelobe canceler

Page 2: Microphone Array Processing - homes.esat.kuleuven.behomes.esat.kuleuven.be/~dspuser/dasp/material/Slides_2015_2016/... · 1 Digital Audio Signal Processing Lecture-2 Microphone Array

2

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

Introduction

•  Directivity pattern of a microphone –  A microphone (*) is characterized by a `directivity pattern which specifies the gain & phase shift that the microphone gives to a signal coming from a certain direction (i.e. `angle-of-arrival’) –  In general the directivity pattern is a function of frequency (ω) –  In a 3D scenario `angle-of-arrival’ is azimuth + elevation angle –  Will consider only 2D scenarios for simplicity, with one angle-of arrival (θ), hence directivity pattern is H(ω,θ) –  Directivity pattern is fixed and defined by physical microphone design

(*) We do digital signal prcessing, so this includes front-end filtering/A-to-D/..

|H(ω,θ)| for 1 frequency

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 4

Introduction

•  Virtual directivity pattern –  By weighting or filtering (=freq. dependent weighting) and then

summing signals from different microphones, a (software controlled) virtual directivity pattern (=weigthed sum of individual patterns) can be produced

–  This assumes all microphones receive the same signals (so are all in the same position). However…

∑=

=M

mmm HFH

1virtual ),().(),( θωωθω

01000

20003000 0

4590

135180

0

0.5

1

Angle (deg)

Frequency (Hz)

F1(ω)

F2 (ω)

FM (ω)

z[k]

y1[k]

y2[k]

yM [k]

+ :

Fm (ω) = fm,n.e− jωn

n=0

N−1

Page 3: Microphone Array Processing - homes.esat.kuleuven.behomes.esat.kuleuven.be/~dspuser/dasp/material/Slides_2015_2016/... · 1 Digital Audio Signal Processing Lecture-2 Microphone Array

3

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 5

F1(ω)

F2 (ω)

FM (ω)

z[k]

y1[k]

+ : dM

θ

dM cosθ

Introduction

•  However, in a microphone array different microphones are in different positions/locations, hence also receive different signals

•  Example : uniform linear array i.e. microphones placed on a line & uniform inter-micr. distances (d) & ideal micr. characteristics (p.9) For a far-field source signal (plane waveforms), each microphone receives the same signal, up to an angle-dependent delay… fs=sampling rate c=propagation speed

][][ 1 mm kyky τ+=

Hvirtual (ω,θ ) = Fm (ω).e− jωτm (θ )

m=1

M

sm

m fc

d θθτ

cos)( =

dmdm )1( −=

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 6

F1(ω)

F2 (ω)

FM (ω)

z[k]

y1[k]

+ : dM

θ

dM cosθ

Introduction

•  Beamforming = `spatial filtering’ based on microphone characteristics (directivity patterns) AND microphone array configuration (`spatial sampling’)

•  Classification: Fixed beamforming: data-independent, fixed filters Fm e.g. delay-and-sum, filter-and-sum

Adaptive beamforming: data-dependent filters Fm e.g. LCMV-beamformer, generalized sidelobe canceler

Page 4: Microphone Array Processing - homes.esat.kuleuven.behomes.esat.kuleuven.be/~dspuser/dasp/material/Slides_2015_2016/... · 1 Digital Audio Signal Processing Lecture-2 Microphone Array

4

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 7

Introduction

•  Background/history: ideas borrowed from antenna array design and processing for radar & (later) wireless communications

•  Microphone array processing considerably more difficult than antenna array processing: –  narrowband radio signals versus broadband audio signals –  far-field (plane wavefronts) versus near-field (spherical wavefronts) –  pure-delay environment versus multi-path environment

•  Applications: voice controlled systems (e.g. Xbox Kinect), speech communication systems, hearing aids,…

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 8

Data model and definitions

Data model: source signal in far-field (see p.13 for near-field)

•  Microphone signals are filtered versions of source signal S(ω) at angle θ

•  Stack all microphone signals (m=1..M) in a vector d is `steering vector’ •  Output signal after `filter-and-sum’ is

[ ]TjM

j MeHeH )()(1 ).,(...).,(),( 1 θωτθωτ θωθωθω −−=d

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

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

mmm dFYF ===∑

=

H instead of T for convenience (**)

)( ..),(),(shift phase dep.-pos.

)(

pattern dir.

ωθωθω θωτ SeHY mjmm

!"!#$!"!#$−=

)().,(),( ωθωθω SdY =

Page 5: Microphone Array Processing - homes.esat.kuleuven.behomes.esat.kuleuven.be/~dspuser/dasp/material/Slides_2015_2016/... · 1 Digital Audio Signal Processing Lecture-2 Microphone Array

5

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 9

Data model: source signal in far-field •  If all microphones have the same directivity pattern Ho(ω,θ), steering

vector can be factored as…

•  Will often consider arrays with ideal omni-directional microphones : Ho(ω,θ)=1 Example : uniform linear array, see p.5

Data model and definitions

)().,(),( ωθωθω SdY =

[ ]!!!!! "!!!!! #$!"!#$positions spatial

)()(

pattern dir.

0 ...1.),(),( 2Tjj MeeH θωτθωτθωθω −−=d

microphone-1 is used as a reference (=arbitrary)

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 10

Data model and definitions

Definitions: (1) •  In a linear array (p.5) : θ =90o=broadside direction θ = 0o =end-fire direction

•  Array directivity pattern (compare to p.3) = `transfer function’ for source at angle θ ( -π<θ< π )

•  Steering direction = angle θ with maximum amplification (for 1 freq.)

•  Beamwidth (BW) = region around θmax with (e.g.) amplification > -3dB (for 1 freq.)

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

ωθω

θω dFHSZH ==

),(maxarg)(max θωωθ θ H=

Page 6: Microphone Array Processing - homes.esat.kuleuven.behomes.esat.kuleuven.be/~dspuser/dasp/material/Slides_2015_2016/... · 1 Digital Audio Signal Processing Lecture-2 Microphone Array

6

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 11

Data model and definitions

Data model: source signal + noise •  Microphone signals are corrupted by additive noise

•  Define noise correlation matrix as

•  Will assume noise field is homogeneous, i.e. all diagonal elements of noise correlation matrix are equal :

•  Then noise coherence matrix is

[ ]TMNNN )(...)()()( 21 ωωωω =N

})().({)( Hnoise E ωωω NNΦ =

iΦΦ noiseii ∀= , )()( ωω

⎥⎥⎥

⎢⎢⎢

==

1............1

)(.)(

1)( !ωωφ

ω noisenoise

noise ΦΓ

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

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 12

Data model and definitions

Definitions: (2) •  Array Gain = improvement in SNR for source at angle θ ( -π<θ< π )

•  White Noise Gain =array gain for spatially uncorrelated noise

(e.g. sensor noise) ps: often used as a measure for robustness •  Directivity =array gain for diffuse noise (=coming from all directions)

DI and WNG evaluated at θmax is often used as a performance criterion

⎟⎟⎠

⎞⎜⎜⎝

⎛ −=Γ

cddf ijsdiffuse

ij

)(sinc)(

ωω

skip this formula )(.).(

),().(),(

2

ωω

θωωθω

FFdFdiffusenoise

H

H

DIΓ

=

)().(),().(

),(2

ωω

θωωθω

FFdF

H

H

WNG =Iwhite

noise =Γ

|signal transfer function|^2

|noise transfer function|^2 )().().(),().(

),(2

ωωω

θωωθω

FΓFdF

noiseH

H

input

output

SNRSNR

G ==

PS: ω is rad/sample ( -Π≤ω≤Π ) ω fs is rad/sec

Page 7: Microphone Array Processing - homes.esat.kuleuven.behomes.esat.kuleuven.be/~dspuser/dasp/material/Slides_2015_2016/... · 1 Digital Audio Signal Processing Lecture-2 Microphone Array

7

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 13

•  Far-field assumptions not valid for sources close to microphone array –  spherical wavefronts instead of planar waveforms –  include attenuation of signals –  2 coordinates θ,r (=position q) instead of 1 coordinate θ (in 2D case)

•  Different steering vector (e.g. with Hm(ω,θ)=1 m=1..M) :

PS: Near-field beamforming

[ ]TjM

jj Meaeaea )()(2

)(1

21),( qqqqd ωτωτωτω −−−= …),( θωd

smref

m fc

pqpqq

−−−=)(τ

with q position of source pref position of reference microphone pm position of mth microphone

m

refma pq

pq−

−=

e

e=1 (3D)…2 (2D)

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 14

PS: Multipath propagation

•  In a multipath scenario, acoustic waves are reflected against walls, objects, etc..

•  Every reflection may be treated as a separate source (near-field or far-field)

•  A more realistic data model is then.. with q position of source and Hm(ω,q), complete transfer function from

source position to m-the microphone (incl. micr. characteristic, position, and multipath propagation)

`Beamforming’ aspect vanishes here, see also Lecture-3 (`multi-channel noise reduction’)

)()().,(),( ωωωω NqdqY += S

[ ]TMHHH ),(...),(),(),( 21 qqqqd ωωωω =

Page 8: Microphone Array Processing - homes.esat.kuleuven.behomes.esat.kuleuven.be/~dspuser/dasp/material/Slides_2015_2016/... · 1 Digital Audio Signal Processing Lecture-2 Microphone Array

8

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 15

Overview

•  Introduction & beamforming basics –  Data model & definitions

•  Fixed beamforming –  Filter-and-sum beamformer design –  Matched filtering

•  White noise gain maximization •  Ex: Delay-and-sum beamforming

–  Superdirective beamforming •  Directivity maximization

–  Directional microphones (delay-and-subtract)

•  Adaptive Beamforming –  LCMV beamformer –  Generalized sidelobe canceler

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 16

Filter-and-sum beamformer design

•  Basic: procedure based on page 10 Array directivity pattern to be matched to given (desired) pattern over frequency/angle range of interest

•  Non-linear optimization for FIR filter design (=ignore phase response)

•  Quadratic optimization for FIR filter design (=co-design phase response)

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

ωθω

θω dFHSZH ==

),( θωdH

[ ] ∑−

=

−==1

0,1 .)( , )(...)()(

N

n

jnnmm

TM efFFF ωωωωωF

θωθωθωθ ω

ddHH dNnMmf nm ),(),(min

2

1..0,..1,, ∫ ∫ −−==

( ) θωθωθωθ ω

ddHH dNnMmf nm ),(),(min 2

1..0,..1,, ∫ ∫ −−==

Page 9: Microphone Array Processing - homes.esat.kuleuven.behomes.esat.kuleuven.be/~dspuser/dasp/material/Slides_2015_2016/... · 1 Digital Audio Signal Processing Lecture-2 Microphone Array

9

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 17

Filter-and-sum beamformer design •  Quadratic optimization for FIR filter design (continued)

With optimal solution is

θωθωθωθ ω

ddHH dNnMmf nm ),(),(min

2

1..0,..1,, ∫ ∫ −−==

[ ] [ ]

[ ]!!!! "!!!! #$

!!! %!!! &'

(

),(

).1(

.0

1

11,0,

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

... , ...

θω

ω

ω

θωθωωωθωωθω

d

dfddF

ffffNMxM

jN

j

MxMTH

MHH

TTM

TTNmmm

e

eIFFH

ff

⎥⎥⎥

⎢⎢⎢

⊗===

==

∫ ∫∫ ∫ === −

θ ωθ ωθωθωθωθωθωθω ddHdd d

Hoptimal ),().,( , ),().,( , . *1 dpddQpQf

Kronecker product

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 18

Filter-and-sum beamformer design •  Design example

M=8 Logarithmic array N=50 fs=8 kHz

01000

20003000 0

4590

135180

0

0.5

1

Angle (deg)

Frequency (Hz)

Page 10: Microphone Array Processing - homes.esat.kuleuven.behomes.esat.kuleuven.be/~dspuser/dasp/material/Slides_2015_2016/... · 1 Digital Audio Signal Processing Lecture-2 Microphone Array

10

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 19

Matched filtering: WNG maximization

•  Basic: procedure based on page 12

•  Maximize White Noise Gain (WNG) for given steering angle ψ

•  A priori knowledge/assumptions: –  angle-of-arrival ψ of desired signal + corresponding steering vector –  noise scenario = white

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

arg{max)},(arg{max)(2

)()(MF

ωω

ψωωψωω ωω FF

dFF FF H

H

WNG ==

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 20

Matched filtering: WNG maximization

•  Maximization in is equivalent to minimization of noise output power (under white input noise), subject to unit response for steering angle (**)

•  Optimal solution (`matched filter’) is

•  [FIR approximation]

),(.),(

1)( 2MF ψω

ψωω d

dF =

1),().( s.t. ),().(min )( =ψωωωωω dFFFFHH

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

arg{max)(2

)(MF

ωω

ψωωω ω FF

dFF F H

H

=

ωωωω

dNnMmf nm ∫ −−==

2MF1..0,..1, )()(min

,FF

Page 11: Microphone Array Processing - homes.esat.kuleuven.behomes.esat.kuleuven.be/~dspuser/dasp/material/Slides_2015_2016/... · 1 Digital Audio Signal Processing Lecture-2 Microphone Array

11

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 21

Matched filtering example: Delay-and-sum

•  Basic: Microphone signals are delayed and then summed together

•  Fractional delays implemented with truncated interpolation filters (=FIR)

•  Consider array with ideal omni-directional micr’s Then array can be steered to angle ψ :

Hence (for ideal omni-dir. micr.’s) this is matched filter solution

1),( =ψωH

d

ψcos)1( dm −

Σ d

2Δ mΔ

M1

ψ

MeF

mj

m

Δ−

ω)(

∑=

Δ+=M

mmm ky

Mkz

1

][.1][

d(ω,ψ) = 1 e− jωτ 2 (ψ ) ... e− jωτM (ψ )"#$

%&'

T

)(ψτmm =Δ M),()( ψω

ωdF =

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 22

Matched filtering example: Delay-and-sum

•  Array directivity pattern H(ω,θ):

=destructive interference =constructive interference •  White noise gain :

(independent of ω)

For ideal omni-dir. micr. array, delay-and-sum beamformer provides WNG equal to M for all freqs. (in the direction of steering angle ψ).

)( 1),(1),(

),().,(1),(

maxθψψθω

θω

θωψωθω

===

=

HH

MH H dd

MWNG H

H

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

),(2

ωω

ψωωψθω

FFdF

ideal omni-dir. micr.’s

Page 12: Microphone Array Processing - homes.esat.kuleuven.behomes.esat.kuleuven.be/~dspuser/dasp/material/Slides_2015_2016/... · 1 Digital Audio Signal Processing Lecture-2 Microphone Array

12

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 23

02000

40006000

8000 045 90 135

180

0.2

0.4

0.6

0.8

1

Angle (deg)Frequency (Hz)

•  Array directivity pattern H(ω,θ) for uniform linear array:

H(ω,θ) has sinc-like shape and is frequency-dependent

Matched filtering example: Delay-and-sum

)2/sin()2/sin(

),(

2/

2/1

)cos(cos)1(

γγ

θω

γ

γ

ψθω

j

jM

M

m

fc

dmj

eMe

eH s

−=

−−−

=

= ∑

-20

-10

0

90

270

180 0

Spatial directivity pattern for f=5000 Hz

M=5 microphones d=3 cm inter-microphone distance ψ=60° steering angle fs=16 kHz sampling frequency

=endfire

γ

1),( ==ψθωH

ψ=60° wavelength=4cm

ideal omni-dir. micr.’s

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 24

0

2000

4000

6000

8000 050

100150

0.20.40.60.8

1

Angle (deg)

Frequency (Hz)

Matched filtering example: Delay-and-sum

For an ambiguity, called spatial aliasing, occurs. This is analogous to time-domain aliasing where now the spatial

sampling (=d) is too large. Aliasing does not occur (for any ψ) if

M=5, ψ=60°, fs=16 kHz, d=8 cm

)cos1.(

ψ+=d

cf

2.2min

max

λ==≤

fc

fcds

)cos1.(

.. and 0for occurs 2 then2

if 3)

)cos1.(.. and for occurs 2 then

2 if 2)

) all(for for 0 )1integer for 2 1),(

Details...

ψθγ

πψ

ψπθγ

πψ

ωψθγ

θω

−====≥

+====≤

==

==

dcfπ

dcfπ

pπ.pγiffH

ideal omni-dir. micr.’s

)cos1.(

ψ+≥d

cf

Page 13: Microphone Array Processing - homes.esat.kuleuven.behomes.esat.kuleuven.be/~dspuser/dasp/material/Slides_2015_2016/... · 1 Digital Audio Signal Processing Lecture-2 Microphone Array

13

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 25

Matched filtering example: Delay-and-sum

•  Beamwidth for a uniform linear array:

hence large dependence on # microphones, distance (compare p.24 & 25) and frequency (e.g. BW infinitely large at DC)

•  Array topologies: –  Uniformly spaced arrays –  Nested (logarithmic) arrays (small d for high ω, large d for small ω) –  2D- (planar) / 3D-arrays

with e.g. ν=1/sqrt(2) (-3 dB)

d

2d

4d

ψω

νsec)1(96

dMcBW

−≈

ideal omni-dir. micr.’s

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 26

Super-directive beamforming : DI maximization

•  Basic: procedure based on page 12

•  Maximize Directivity (DI) for given steering angle ψ

•  A priori knowledge/assumptions: –  angle-of-arrival ψ of desired signal + corresponding steering vector –  noise scenario = diffuse

})(.).(

),().(arg{max)},(arg{max)(

2

)()(SD

ωω

ψωωψωω ωω FF

dFF FF diffuse

noiseH

H

DIΓ

==

Page 14: Microphone Array Processing - homes.esat.kuleuven.behomes.esat.kuleuven.be/~dspuser/dasp/material/Slides_2015_2016/... · 1 Digital Audio Signal Processing Lecture-2 Microphone Array

14

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 27

•  Maximization in

is equivalent to minimization of noise output power (under diffuse input noise), subject to unit response for steering angle (**)

•  Optimal solution is

•  [FIR approximation]

})(.).(

),().(arg{max)(

2

)(SD

ωω

ψωωω ω FF

dFF F diffuse

noiseH

H

Γ=

1),().( s.t. ),().().(min )( =Γ ψωωωωωω dFFFFHdiffuse

noiseH

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

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

SD ψωωωψωωψω

dFdd

−−Γ

Γ= diffusenoisediffuse

noiseH

ωωωω

dNnMmf nm ∫ −−==

2SD1..0,..1, )()(min

,FF

Super-directive beamforming : DI maximization

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 28

•  Directivity patterns for end-fire steering (ψ=0):

Superdirective beamformer has highest DI, but very poor WNG (at low frequencies, where diffuse noise coherence matrix becomes ill-conditioned) hence problems with robustness (e.g. sensor noise) !

-20

-10

0

90

270

180 0

Superdirective beamformer (f=3000 Hz)

-20

-10

0

90

270

180 0

Delay-and-sum beamformer (f=3000 Hz)

M=5 d=3 cm fs=16 kHz

Maximum directivity=M.M obtained for end-fire steering and for frequency->0 (no proof)

ideal omni-dir. micr.’s

0 2000 4000 6000 80000

5

10

15

20

25

Frequency (Hz)

Direc

tivity

(line

ar)

SuperdirectiveDelay-and-sum

0 2000 4000 6000 8000-60

-50

-40

-30

-20

-10

0

10

Frequency (Hz)

Whit

e nois

e gain

(dB)

SuperdirectiveDelay-and-sum

WNG=M= 5

PS: diffuse noise ≈ white noise for high frequencies (cfr. ωèΠ and c/fs=λmin/2≈min(dj-di) in diffuse noise coherence matrix)

DI=WNG=5

DI=M 2=25

Super-directive beamforming : DI maximization

Page 15: Microphone Array Processing - homes.esat.kuleuven.behomes.esat.kuleuven.be/~dspuser/dasp/material/Slides_2015_2016/... · 1 Digital Audio Signal Processing Lecture-2 Microphone Array

15

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 29

•  First-order differential microphone = directional microphone 2 closely spaced microphones, where one microphone is delayed (=hardware) and whose outputs are then subtracted from each other

•  Array directivity pattern:

–  First-order high-pass frequency dependence –  P(θ) = freq.independent (!) directional response –  0 ≤ α1 ≤ 1 : P(θ) is scaled cosine, shifted up with α1 such that θmax = 0o (=end-fire) and P(θmax )=1

d

Σ τ

θ

+

_

)cos(1),( c

djeH

θτω

θω+−

−=

ωd/c <<π, ωτ <<π

cd /1 +=τ

τα

θααθ cos)1()( 11 −+=P

H (ω,θ ) ≈ jω.(τ + dc

cosθ ) = jωhigh-pass!

.(τ + dc

). P(θ )angle dependence!

Differential microphones : Delay-and-subtract

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 30

Differential microphones : Delay-and-subtract

•  Types: dipole, cardioid, hypercardioid, supercardioid (HJ84)

=endfire

=broadside

Dipole:

α1= 0 (τ=0) zero at 90o

DI=4.8dB

Cardioid:

α1= 0.5 zero at 180o

DI=4.8dB

Supercardioid:

α1= zero at 125o, DI=5.7 dB highest front-to-back ratio

35.02/)13( ≈−

Hypercardioid:

α1= 0.25 zero at 109o highest DI=6.0dB

Page 16: Microphone Array Processing - homes.esat.kuleuven.behomes.esat.kuleuven.be/~dspuser/dasp/material/Slides_2015_2016/... · 1 Digital Audio Signal Processing Lecture-2 Microphone Array

16

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 31

Overview

•  Introduction & beamforming basics –  Data model & definitions

•  Fixed beamforming –  Filter-and-sum beamformer design –  Matched filtering

•  White noise gain maximization •  Ex: Delay-and-sum beamforming

–  Superdirective beamforming •  Directivity maximization

–  Directional microphones (delay-and-subtract)

•  Adaptive Beamforming –  LCMV beamformer –  Generalized sidelobe canceler

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 32

LCMV beamformer

•  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. (**) p.20 & 27, 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]

Page 17: Microphone Array Processing - homes.esat.kuleuven.behomes.esat.kuleuven.be/~dspuser/dasp/material/Slides_2015_2016/... · 1 Digital Audio Signal Processing Lecture-2 Microphone Array

17

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 33

LCMV beamformer

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

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

Example: fix array response in look-direction ψ for sample freqs ωi

For sufficiently large J constrained output power minimization approximately corresponds to constrained output noise power minimization(why?)

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

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

ff⋅⋅= ][min][min 2 kkzE yy

T

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

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

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

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

yyopt

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 34

Generalized sidelobe canceler (GSC)

GSC = Adaptive filter formulation of the LCMV-problem Constrained optimisation is reformulated as a constraint pre-processing,

followed by an unconstrained optimisation, leading to a simple 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 18: Microphone Array Processing - homes.esat.kuleuven.behomes.esat.kuleuven.be/~dspuser/dasp/material/Slides_2015_2016/... · 1 Digital Audio Signal Processing Lecture-2 Microphone Array

18

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 35

Generalized sidelobe canceler

GSC = Adaptive filter formulation of the LCMV-problem Constrained optimisation is reformulated as a constraint pre-processing,

followed by an unconstrained optimisation, leading to a simple adaptation scheme –  LCMV-problem is

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

bfCfRff

=⋅⋅⋅ Tyy

T k ,][min JJMNMN ℜ∈ℜ∈ℜ∈ × bCf ,,

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

aaq ka

fCfRfCff −−

f = fq −Ca.fa

fa ∈ℜ(MN−J )

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 36

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 19: Microphone Array Processing - homes.esat.kuleuven.behomes.esat.kuleuven.be/~dspuser/dasp/material/Slides_2015_2016/... · 1 Digital Audio Signal Processing Lecture-2 Microphone Array

19

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 37

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

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 38

Generalized sidelobe canceler

A popular & significantly cheaper 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 20: Microphone Array Processing - homes.esat.kuleuven.behomes.esat.kuleuven.be/~dspuser/dasp/material/Slides_2015_2016/... · 1 Digital Audio Signal Processing Lecture-2 Microphone Array

20

Digital Audio Signal Processing Version 2015-2016 Lecture-2: Microphone Array Processing p. 39

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 2015-2016 Lecture-2: Microphone Array Processing p. 40

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

(broadside steering)

•  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!

[ ]1111=TC

⎥⎥⎥

⎢⎢⎢

=

100101010011

TaC

⎥⎥⎥

⎢⎢⎢

−−

−−

−−

=

111111111111

TaC 0

20004000

60008000 0 45 90 135 180

0

0.5

1

1.5

Angle (deg)

Frequency (Hz)

Griffiths-Jim

Walsh