Generalized cross correlation problem
Show older comments
Hello everybody, I wrote a code for generilizrd cross correlation (GCC) to find the time delay between two signals but unfortunatly the index of the maximum value is always zero ,how can I solve this problem. This is my code :
fChannel1 = fft(x1);
fChannel2 = fft(x2);
conjFChannel2 = conj(fChannel2);
num = (fChannel1).*conjFChannel2;
den = abs((fChannel1).*(conjFChannel2));
fGeneralized = num./(den);
generalizedCrossCorrelation = ifft(fGeneralized);
[maxcorr max_index] = max(fftshift(generalizedCrossCorrelation));
Any help in this regard will be appreciated.
4 Comments
Image Analyst
on 1 Apr 2013
You forgot to supply the data (x1 and x2).
Shayan
on 1 Apr 2013
Image Analyst
on 1 Apr 2013
You do know that the cross correlation of two signals has a length that is equal to both the lengths of the component signals added together, don't you? Did you take that into account?
Shayan
on 1 Apr 2013
Answers (0)
Categories
Find more on Correlation and Convolution in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!