find shift using cross correlation

8 vues (au cours des 30 derniers jours)
mustafa alnasser
mustafa alnasser le 1 Mai 2015
Commenté : Angel Romero le 21 Juin 2017
Dear all;
i have a confusion when i am using xcorr function in matlab , suppose i have attached two signals , is this function give the amount of shift in between signals ? is there any conversion factor that shall i use ?

Réponses (1)

Image Analyst
Image Analyst le 1 Mai 2015
I suggest you start with a simple example, like
signal1 = zeros(1, 10);
signal1(5) = 1;
signal2 = zeros(1, 10);
signal2(8) = 1;
Then look at the length of the output and where the max/peak/spike is located. You'll figure it out.
By the way, I don't think it's well known that the max of the correlation is not always when the two signals are optimally overlapped - it just tells you when the area under the curve of the multiplication of the two signals is greatest. I believe this is why normalized cross correlation was invented. This is done by the function normxcorr2 in the Image Processing Toolbox. (Demo available upon request).
  6 commentaires
Angel Romero
Angel Romero le 21 Juin 2017
Hi there! I tried to solve your problem but I wasn´t able. Any solution so far?
Angel Romero
Angel Romero le 21 Juin 2017
Were you able to fix it?. I'm looking forward to hearing from you. Thanks.

Connectez-vous pour commenter.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by