MUtiple SIgnal Classification (MUSIC) in the Browser
After successfully getting the conventional (Bartlett) beamformer and the MVDR (Capon) beamformer working in the browser, I have been trying to get the MUtiple SIgnal Classification (MUSIC) algorithm working. MUSIC is a classical subspace based algorithm whose details are briefly described as follows. Consider the following far-field narrow-band observation model:
where denotes the source signals, denotes the steering matrix of a -sensor array, and denotes the additive noise. Assuming that the additive noise is spatially and temporally uncorrelated white circularly-symmetric Gaussian, and that it is uncorrelated from the sources. The corresponding sample covariance matrix of the measurement vector is given by
where is the source covariance matrix.
Assuming that is full-rank. If , in (2) is not full-rank. Therefore, the eigendecomposition of the covariance matrix admits the following form:
where corresponds to the -dimensional signal subspace spanned by , and denote the -dimensional noise subspace. By orthogonality, , which implies that if corresponds to one of the DOAs (here we assume that is unambiguous). Therefore, we can obtain the DOAs by searching the peaks of the following pseudo-spectrum:
where is the estimated noise subspace obtained from .
The resulting interactive figure is shown below (again it also works on mobile devices). The underlying array is a uniform linear array with half-wavelength inter-element spacing. The snapshots are generated according to the unconditional/stochastic model. They are regenerated when any of the parameters changes. You can tinker with the sliders to see how the two MUSIC spectrum response as the parameters change. For comparison, I also included the pseudo-spectrum from the MVDR beamformer. It can be observed that under most circumstances MUSIC produces sharper peaks than the MVDR beamformer.
R. Schmidt, "Multiple emitter location and signal parameter estimation," IEEE Transactions on Antennas and Propagation, vol. 34, no. 3, pp. 276–280, Mar. 1986. ↩
P. Stoica and A. Nehorai, "Performance study of conditional and unconditional direction-of-arrival estimation," IEEE Transactions on Acoustics, Speech and Signal Processing, vol. 38, no. 10, pp. 1783–1795, Oct. 1990. ↩