Steered-response power explained

Steered-response power (SRP) is a family of acoustic source localization algorithms that can be interpreted as a beamforming-based approach that searches for the candidate position or direction that maximizes the output of a steered delay-and-sum beamformer.[1]

Steered-response power with phase transform (SRP-PHAT) is a variant using a "phase transform" to make it more robust in adverse acoustic environments.[2] [3]

Algorithm

Steered-response power

Consider a system of

M

microphones, where each microphone is denoted by a subindex

m\in\{1,...,M\}

. The discrete-time output signal from a microphone is

sm(n)

. The (unweighted) steered-response power (SRP) at a spatial point

x=[x,y,z]T

can be expressed as

P0(x)\triangleq\sumn\in\left\vert

M
\sum
m=1

sm(n-\taum(x))\right\vert2,

where

Z

denotes the set of integer numbers and

\taum(x)

would be the time-lag due to the propagation from a source located at

x

to the

m

-th microphone.

The (weighted) SRP can be rewritten as

P(x)=

1
2\pi
M
\sum
m1=1
M
\sum
m2=1
\pi
\int
-\pi
\Phi
m1,m2

(ej\omega

)S
m1

(ej\omega)

*
S
m2

(ej\omega

j\omega
\tau
m1,m2
(x)
)e

d\omega,

where

*

denotes complex conjugation,

Sm(ej\omega)

represents the discrete-time Fourier transform of

sm(n)

and
\Phi
m1,m2

(ej\omega)

is a weighting function in the frequency domain (later discussed). The term
\tau
m1,m2

(x)

is the discrete time-difference of arrival (TDOA) of a signal emitted at position

x

to microphones

m1

and

m2

, given by
\tau
m1,m2

(x)\triangleq\left\lfloorfs

\|x-
x
m1
\|-\|x-
x
m2
\|
c

\right\rceil,

where

fs

is the sampling frequency of the system,

c

is the sound propagation speed,

xm

is the position of the

m

-th microphone,

\|\|

is the 2-norm and

\lfloor\rceil

denotes the rounding operator.

Generalized cross-correlation

The above SRP objective function can be expressed as a sum of generalized cross-correlations (GCCs) for the different microphone pairs at the time-lag corresponding to their TDOA

P(x)=

M
\sum
m1=1
M
\sum
m2=1
R
m1,m2
(\tau
m1,m2

(x)),

where the GCC for a microphone pair

(m1,m2)

is defined as
R
m1,m2

(\tau)\triangleq

1
2\pi
\pi
\int
-\pi
\Phi
m1,m2

(ej\omega

)S
m1

(ej\omega)

*
S
m2

(ej\omega)ej\omegad\omega.

The phase transform (PHAT) is an effective GCC weighting for time delay estimation in reverberant environments, that forces the GCC to consider only the phase information of the involved signals:

\Phi
m1,m2

(ej\omega)\triangleq

1
\vert
S
m1
(ej\omega)
*
S
m2
(ej\omega)\vert

.

Estimation of source location

The SRP-PHAT algorithm consists in a grid-search procedure that evaluates the objective function

P(x)

on a grid of candidate source locations

l{G}

to estimate the spatial location of the sound source,

bf{x}s

, as the point of the grid that provides the maximum SRP:

\hat{x

}_s = \arg \max_ P(\mathbf).

Modified SRP-PHAT

Modifications of the classical SRP-PHAT algorithm have been proposed to reduce the computational cost of the grid-search step of the algorithm and to increase the robustness of the method. In the classical SRP-PHAT, for each microphone pair and for each point of the grid, a unique integer TDOA value is selected to be the acoustic delay corresponding to that grid point. This procedure does not guarantee that all TDOAs are associated to points on the grid, nor that the spatial grid is consistent, since some of the points may not correspond to an intersection of hyperboloids. This issue becomes more problematic with coarse grids since, when the number of points is reduced, part of the TDOA information gets lost because most delays are not anymore associated to any point in the grid.

The modified SRP-PHAT[4] collects and uses the TDOA information related to the volume surrounding each spatial point of the search grid by considering a modified objective function:

P'(x)=

M
\sum
m1=1
M
\sum
m2=1
u
L(x)
m1,m2
\sum
\tau=
l
L
m1,m2
(x)
R
m1,m2

(\tau),

where

l
L
m1,m2

(x)

and
u
L
m1,m2

(x)

are the lower and upper accumulation limits of GCC delays, which depend on the spatial location

x

.

Accumulation limits

The accumulation limits can be calculated beforehand in an exact way by exploring the boundaries separating the regions corresponding to the points of the grid. Alternatively, they can be selected by considering the spatial gradient of the TDOA

\nabla
\tau
m1,m2

(x)=

[\nabla
x\tau
m1,m2

(x),

\nabla
y\tau
m1,m2

(x),

\nabla
z\tau
m1,m2

(x)]T

, where each component

\gamma\in\left\{x,y,z\right\}

of the gradient is:
\nabla
\gamma\tau
m1,m2

(x)=

1
c

\left(

\gamma-
\gamma
m1
\|
x-x
m1
\|

-

\gamma-
\gamma
m2
\|
x-x
m2
\|

\right).

For a rectangular grid where neighboring points are separated a distance

r

, the lower and upper accumulation limits are given by:
l
L
m1,m2

(x)=

\tau
m1,m2

(x)-\|

\nabla
\tau
m1,m2

(x)\|d

u
L
m1,m2

(x)=

\tau
m1,m2

(x)+\|

\nabla
\tau
m1,m2

(x)\|d,

where

d=(r/2)min\left(

1
\vert\sin(\theta)\cos(\phi)\vert

,

1
\vert\sin(\theta)\sin(\phi)\vert

,

1
\vert\cos(\theta)\vert

\right)

and the gradient direction angles are given by

\theta=\cos-1\left(

\nabla(x)
z\tau
m1,m2
\|
\nabla
\tau
m1,m2
(x)\|

\right),

\phi=\arctan2\left(

\nabla
y\tau
m1,m2

(x),

\nabla
x\tau
m1,m2

(x)\right).

See also

Notes and References

  1. Book: Don H. Johnson . Dan E. Dudgeon . Array Signal Processing: Concepts and Techniques . 1993 . Prentice Hall . 978-0-13-048513-7.
  2. DiBiase . J. H.. 2000. A High Accuracy, Low-Latency Technique for Talker Localization in Reverberant Environments using Microphone Arrays . Ph.D.. Brown Univ..
  3. Silverman . H. F. . Yu . Y. . Sachar. J. M.. Patterson III. W. R.. 2005 . Performance of real-time source-location estimators for a large-aperture microphone array . IEEE Trans. Speech Audio Process.. IEEE . 13. 4 . 593–606. 10.1109/TSA.2005.848875 . 9506719 .
  4. Cobos . M. . Marti . A. . Lopez. J. J.. 2011 . A Modified SRP-PHAT Functional for Robust Real-Time Sound Source Localization With Scalable Spatial Sampling . IEEE Signal Processing Letters. IEEE . 18. 1. 71–74 . 10.1109/LSP.2010.2091502 . 2011ISPL...18...71C . 10251/55953 . 18207534 . free .