Generalized cross-correlation
computes the time delay, tau = gccphat(sig,refsig)tau, between the signal,
sig, and a reference signal, refsig. Both
sig and refsig can have multiple channels. The
function assumes that the signal and reference signal come from a single source. To estimate
the delay, gccphat finds the location of the peak of the cross-correlation
between sig and refsig. The cross-correlation is
computed using the generalized cross-correlation phase transform (GCC-PHAT) algorithm. Time
delays are multiples of the sample interval corresponding to the default sampling frequency of
one hertz.
[___] = gccphat( or sig)[___]
= gccphat( returns
the estimated delays and cross correlations between all pairs of channels
in sig,fs)sig. If sig has M columns,
the resulting tau and R have M2 columns.
In these syntaxes, no reference signal input is used. The first M columns
of tau and R contain the
delays and cross correlations that use the first channel as the reference.
The second M columns contain the delays and cross-correlations
that use the second channel as the reference, and so on.
[1] Knapp, C. H. and G.C. Carter, “The Generalized Correlation Method for Estimation of Time Delay.” IEEE Transactions on Acoustics, Speech and Signal Processing. Vol. ASSP-24, No. 4, Aug 1976.
[2] G. C. Carter, “Coherence and Time Delay Estimation.” Proceedings of the IEEE. Vol. 75, No. 2, Feb 1987.