Acoustic Source Localization and Beamforming: Theory and Practice
Acoustic Source Localization and Beamforming: Theory and Practice
Acoustic Source Localization and Beamforming: Theory and Practice
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>Acoustic</strong> <strong>Source</strong> <strong>Localization</strong><br />
<strong>and</strong> <strong>Beamforming</strong>: <strong>Beamforming</strong>:<br />
<strong>Theory</strong> <strong>and</strong><br />
<strong>Practice</strong><br />
150<br />
210<br />
120<br />
240<br />
Chen, Yao <strong>and</strong> Hudson<br />
Presented by Ran Kaftory<br />
90<br />
270<br />
1<br />
0.5<br />
2<br />
1.5<br />
180 0<br />
60<br />
300<br />
30<br />
330
“ML ML <strong>Source</strong>-<strong>Localization</strong> <strong>Source</strong> <strong>Localization</strong> <strong>and</strong> its<br />
lower bound” bound<br />
Definitions<br />
Cramer-Rao Cramer Rao bound on <strong>Source</strong>-<strong>Localization</strong><br />
<strong>Source</strong> <strong>Localization</strong><br />
ML <strong>Source</strong>-<strong>Localization</strong><br />
<strong>Source</strong> <strong>Localization</strong><br />
Example<br />
Demonstration
Definitions – planar sensor array<br />
Array center:<br />
Diffused noise:<br />
Near-Field<br />
Far-Field<br />
Near Field<br />
Far Field<br />
r<br />
c<br />
w p<br />
~<br />
1<br />
R<br />
N<br />
p<br />
R<br />
1<br />
r<br />
( 0,<br />
p<br />
2<br />
)<br />
r 1 =[x 1 ,y 1 ] T<br />
r 4 =[x 4 ,y 4 ] T<br />
r c =[x c ,y c ] T<br />
r R =[x R ,y R ] T<br />
s<br />
r 2 =[x 2 ,y 2 ] T<br />
r s =[x s ,y s ] T<br />
r 3 =[x 3 ,y 3 ] T
t<br />
cp<br />
( x<br />
Definisions – collected data<br />
Far-field Far field case<br />
Relative time delay:<br />
c<br />
x<br />
p<br />
) sin<br />
s<br />
v<br />
( y<br />
Collected data:<br />
x p c cp p<br />
c<br />
y<br />
p<br />
) cos<br />
( n)<br />
s ( n t ) w ( n)<br />
Frequency domain:<br />
X c<br />
( k)<br />
D(<br />
k)<br />
S ( k)<br />
( k)<br />
D(<br />
k)<br />
e<br />
2 kt<br />
n<br />
j2<br />
kt<br />
n<br />
j c1<br />
cR<br />
,.., e<br />
T<br />
s<br />
Near-field Near field case<br />
Relative time delay:<br />
t<br />
cp<br />
Collected data:<br />
x p<br />
p c cp p<br />
r<br />
s<br />
v<br />
( n)<br />
a s ( n t ) w ( n)<br />
Frequency domain:<br />
X c<br />
D(<br />
k)<br />
( k)<br />
D(<br />
k)<br />
S ( k)<br />
( k)<br />
a<br />
1<br />
e<br />
2 kt<br />
n<br />
r<br />
p<br />
R<br />
j2<br />
kt<br />
n<br />
j 1<br />
R<br />
,.., a<br />
e<br />
T
Cramer-rao Cramer rao bound<br />
“ Provides a lower bound on the estimator variance of an<br />
unbiased estimator” estimator<br />
Frequency domain in matrix form:<br />
X c<br />
( k)<br />
D(<br />
k)<br />
S ( k)<br />
( k)<br />
while<br />
Cramer-rao Cramer rao bound:<br />
X<br />
G(<br />
T<br />
H 2<br />
[ t cp,<br />
v,<br />
sc<br />
,...] R E[<br />
] L I<br />
s<br />
while H<br />
while<br />
G G G<br />
F 2 Re[ H R H ] H , , ,...<br />
s v<br />
1<br />
F<br />
s<br />
)<br />
c
Examples of CRB for DOA<br />
estimation (far-field (far field case)<br />
Known speed, unknown DOA:<br />
Geometry factor:<br />
SNR factor:<br />
s<br />
p<br />
R<br />
L<br />
1<br />
1<br />
[( x<br />
c<br />
2 N<br />
2<br />
v<br />
2<br />
k<br />
x<br />
/ 2<br />
1<br />
p<br />
( 2<br />
) cos<br />
k<br />
S<br />
c<br />
s<br />
( k)<br />
( y<br />
c<br />
/ N )<br />
y<br />
2<br />
p<br />
) sin<br />
s<br />
2<br />
]
Examples of CRB for DOA<br />
estimation (far-field (far field case)<br />
Unknown speed, unknown DOA:<br />
s<br />
Penalty term due to the unknown speed:<br />
z<br />
v<br />
p<br />
R<br />
1<br />
1<br />
t<br />
2<br />
cp<br />
p<br />
R<br />
1<br />
[( x<br />
c<br />
x<br />
p<br />
(<br />
1<br />
) cos<br />
zv<br />
s<br />
)<br />
( y<br />
c<br />
y<br />
p<br />
) sin<br />
s<br />
] t<br />
cp<br />
2
Examples of CRB for source<br />
localization (near-field (near field case)<br />
RMS error in source localization:<br />
2<br />
2<br />
x<br />
2<br />
y<br />
1<br />
1<br />
[ Fr<br />
, s ] 11 [ F<br />
s 0<br />
r , s0<br />
d s<br />
Known speed, unknown location:<br />
A<br />
Frs as in the near field case<br />
p<br />
R<br />
1<br />
a<br />
2<br />
p<br />
A<br />
u<br />
p<br />
u<br />
T<br />
p<br />
]<br />
22
Examples of CRB for source<br />
localization (near-field (near field case)<br />
Unknown speed, unknown location:<br />
when<br />
T<br />
Z v ( 1/<br />
t Aat<br />
)<br />
p<br />
s<br />
p<br />
F s ,<br />
r<br />
v<br />
t<br />
T<br />
A<br />
A<br />
a<br />
U<br />
1<br />
T<br />
t<br />
UA<br />
T<br />
A<br />
1<br />
[ r , v ] 11:<br />
DD ( A Zv<br />
F s<br />
UA<br />
s<br />
a<br />
tt<br />
T<br />
p<br />
A<br />
a<br />
U<br />
2 2<br />
u ( r r ) / r r A<br />
diag([<br />
a ,..., a ])<br />
T<br />
a<br />
a<br />
)<br />
t<br />
1<br />
1 R
Circular-array Circular array (far-field (far field case)<br />
r [ sin , cos ]<br />
p<br />
Geometry factor:<br />
p<br />
p<br />
T<br />
2<br />
R /<br />
Penalty term due to the unknown speed:<br />
SNR factor:<br />
2<br />
2<br />
2<br />
2 N<br />
The CRB for DOA estimation is<br />
independent of the speed <strong>and</strong><br />
source direction !<br />
L<br />
v<br />
k<br />
/ 2<br />
1<br />
( 2<br />
k<br />
S<br />
c<br />
p<br />
zv<br />
( k)<br />
/ N )<br />
s<br />
1<br />
2<br />
0
L(<br />
ML DOA Estimation<br />
Frequency domain in matrix form:<br />
)<br />
X<br />
G(<br />
- Is zero-mean zero mean complex white Gaussian<br />
log Likelihood(<br />
)<br />
ˆ L<br />
log( f ( X<br />
ML estimator: max ( )<br />
max ( L<br />
)<br />
min<br />
Which is equivalent to min f ( k)<br />
s , S<br />
c<br />
N<br />
k<br />
/ 2<br />
1<br />
))<br />
( ) k X<br />
f c<br />
( k)<br />
X ( k)<br />
D(<br />
k)<br />
S ( k)<br />
X<br />
G(<br />
)<br />
( ) c( ) k S k D<br />
for all k bins<br />
2<br />
)<br />
2<br />
const
while<br />
ML DOA Estimation<br />
min ( k)<br />
s<br />
f ( k)<br />
min X ( k)<br />
D(<br />
k)<br />
Sc<br />
, Sc ( k )<br />
s , Sc<br />
( k )<br />
ˆ k<br />
must satisfy 0<br />
( k)<br />
D ( k)<br />
X ( )<br />
H<br />
1 H<br />
D ( k)<br />
[ D(<br />
k)<br />
D(<br />
k)]<br />
D(<br />
k)<br />
s<br />
argmin<br />
argmax<br />
s<br />
S<br />
s<br />
f H<br />
c<br />
( k)<br />
( k)<br />
N<br />
k<br />
N<br />
k<br />
/ 2<br />
1<br />
/ 2<br />
1<br />
[ I<br />
[ D(<br />
k)<br />
D(<br />
k)<br />
D<br />
2<br />
D<br />
( k)]<br />
S c<br />
is the pseudoinverse<br />
( k)]<br />
X(<br />
k)<br />
X ( k)<br />
2<br />
2
Circular array – ML algorithm<br />
implementation (far-field (far field case)<br />
Definition: Normalized root weighted mean<br />
squared source frequency (nrwms ( nrwms): ):<br />
k<br />
nrwms<br />
2<br />
N<br />
N / 2<br />
k 1<br />
N / 2<br />
Definition: Effective beamwidth: beamwidth<br />
BW<br />
k<br />
k<br />
1<br />
2<br />
S<br />
S<br />
c<br />
v<br />
k<br />
c<br />
( k )<br />
( k )<br />
nrwms<br />
2<br />
2<br />
p
Circular array – ML algorithm<br />
implementation (far-field (far field case)<br />
i<br />
Define: i<br />
Calculate:<br />
iˆ<br />
argmax<br />
i<br />
s<br />
s<br />
N<br />
k<br />
/ 2<br />
1<br />
360<br />
BW<br />
[ D(<br />
k)<br />
D<br />
( k)]<br />
X ( k)<br />
2<br />
BW<br />
BW<br />
BW<br />
BW<br />
North<br />
Find ˆ<br />
s by quadratic polynomial interpolation<br />
iˆ<br />
î 1<br />
1<br />
between <strong>and</strong><br />
s<br />
s<br />
î<br />
s<br />
BW<br />
BW<br />
BW<br />
BW
3 arrays with 4 sensors<br />
Locating the source through<br />
cross bearing of 3 DOA’s DOA<br />
Outdoor experiment:<br />
White Gaussian signal from a<br />
stationary load speaker<br />
RMS error of 32 cm <strong>and</strong> 97 cm<br />
Authors example
3 arrays with 4 sensors<br />
Locating the source through<br />
cross bearing of 3 DOA’s DOA<br />
Outdoor experiment:<br />
Vehicle signal from a moving<br />
load speaker<br />
Authors example
Demonstration<br />
8 microphones circle array:<br />
p<br />
0.<br />
25<br />
m.<br />
amplifiers<br />
Sampling rate = 5 khz<br />
8 channel<br />
DAQ Board<br />
Computer (Matlab)
<strong>Source</strong> signal:<br />
Amplitude<br />
Demonstration<br />
3<br />
2.5<br />
2<br />
1.5<br />
1<br />
0.5<br />
Signal at Reference Microphone<br />
0<br />
0 500 1000 1500 2000 2500<br />
Frequency (Hz)
Demonstration<br />
Theoretical beam width:<br />
BW<br />
k<br />
nrwms<br />
345 /<br />
0.<br />
25<br />
0.<br />
1<br />
5000<br />
0.<br />
09<br />
0.<br />
82
Simulated beam width:<br />
Demonstration<br />
150<br />
210<br />
ML Beamformer Beamshape<br />
120<br />
240<br />
90<br />
270<br />
200<br />
100<br />
300<br />
180 0<br />
60<br />
300<br />
30<br />
330
RMS error in CRB:<br />
3<br />
2.5<br />
2<br />
RMS (degrees) 1.5<br />
1<br />
0.5<br />
0<br />
Demonstration<br />
1<br />
SNR<br />
array<br />
R<br />
SNR<br />
CRB for DOA estimation vs. Simulation<br />
SNR<br />
2<br />
3<br />
BW<br />
SNR<br />
R<br />
array<br />
N<br />
k<br />
CRB<br />
/ 2<br />
1<br />
S<br />
c<br />
Experimented<br />
( k)<br />
CRB<br />
2<br />
/<br />
L<br />
Experimented<br />
2
My Experiment
RMS Error<br />
(degrees)<br />
Experiment Results<br />
120<br />
100<br />
80<br />
60<br />
40<br />
20<br />
0<br />
1<br />
0.3<br />
0<br />
SNR<br />
3.7<br />
2<br />
RMS Error in Expermint<br />
0.9<br />
0.7<br />
112<br />
3<br />
2.7<br />
2.3<br />
106<br />
CRB<br />
Simulated<br />
Experimented<br />
CRB<br />
Simulated<br />
Experimented
Summary<br />
Theoretical CRB for source localization <strong>and</strong> DOA estimation was<br />
shown.<br />
ML beamforming shown to be effective especially for wide-b<strong>and</strong> wide b<strong>and</strong><br />
signals.<br />
Uniformly spaced circular array is preferred in most scenarios<br />
because:<br />
1. DOA variance does not degrade when speed of<br />
propagation is unknown.<br />
2. DOA variance does not depend on the source<br />
DOA .<br />
Simulation shows that ML beamforming is close to CRB on DOA<br />
estimation.<br />
Experiment shows that ML beamforming does not perform well in<br />
negative SNR