Title: Extension and Evaluation of Multidimensional Scaling MDS for Geometric Microphone Array Calibration
1Extension and Evaluation of Multidimensional
Scaling (MDS) for Geometric Microphone Array
Calibration
- Amarnag Subramanya and Stanley T. Birchfield
- Dept. of Electrical and Computer Engineering
- Clemson University
- Clemson, South Carolina USA
2Geometric (or Position) Microphone Array
Calibration
Problem Determine the 3D Euclidean coordinates
of all the microphones
When does problem arise? Cannot put mics in known
positions when constructing array (large arrays,
multiple arrays, dynamic scenes)
- Possible solutions
- Measure mics by hand, hoping room is rectilinear
- Use a calibration target (nonlinear function
optimization)
MDS (and BCMDS) Simple, global, non-iterative
technique
3Multidimensional scaling (MDS)
MDS Field of study for embedding points in
low-dimensional space using their interpoint
distances (psychology, biology, etc.)
Metric MDS Distances are metric (Euclidean)
Classical MDS Specific technique for solving
metric MDS problem Young Householder 1938,
Torgerson 1952
4Classical MDS algorithm
- To compute coordinates of n microphones in
- p-dimensional space from their pairwise
distances - Construct nxn squared-distance matrix D
- Compute inner product matrix B -1/2 JDJ,where
is double-centering
matrix - Decompose B as
- Extract first p eigenvalues and eigenvectors
- Coordinates are now in n x p matrix
(same as PCA)
Matlab code
n size(D,1) J eye(n) - ones( n)/n B
-(1/2) JDJ u,s,v svd(B) rows
1ndim Xout u(,rows)s(rows,rows)(1/2)
5A simple technique for geometric calibration
classical MDS
- Measure the n (n-1)/2 inter-microphone distances
- Construct D
- Run classical MDS algorithm
BCMDS
But what if n is large?
6Basis-point classical MDS (BCMDS)
Idea Exploit redundancy in D and B matrices
Automatically construct D using a subset
of D
A basis for a p-dimensional space can be
constructed from distances between p1 points
Example for p1
Q
A and B form a basis for this 1D space The
coordinates of any point Q can be computed by
its distance to A and B
d_AQ
d_BQ
d_AB
A
B
x_Q
origin
7A simple technique for calibrating a large array
- Measure the p (p1)/2 inter-microphone distances
ofthe p1 basis points - Measure the (p1)(n-p-1) distances between each
non-basis point and each basis point - Construct D
- Run classical MDS algorithm
8Evaluation and sensitivity analysis
9Response to noise
Gaussian noise s5mm
Impulse noise 1
BCMDS (n10)
BCMDS (n50)
10BCMDS needs well-separated basis points
Basis-point volume of W1
Basis-point area of W4
Using homogeneous coordinates, volume 1/6
abs( x_A x_B x_C x_D ) area ½ abs(x_A x_B
x_C)
11Nearly planar arrays
MDS (n8)
MDS (n25)
BCMDS (n8)
BCMDS (n25)
12Using a calibration target
13Conclusion
- Classical multidimensional scaling (classical
MDS) - Classical technique for computing coordinates of
points - from their interpoint distances
- Basis-point classical MDS (BCMDS)
- Extension requiring O(n) instead of O(n2)
distances - These techniques
- are simple, global, and non-iterative
- automatically determine the angles of hand
measurements - obviate the need for non-linear optimization
- can be used with hand measurements or a
calibration target - enable rapid recalibration for dynamic scenes
- provide good initial estimate for nonlinear
minimization