Normalized Correlation

I have a vector A 1x512 and a matrix M 512 x 512. I need to value the normalized correlation between A and the ith row of the matrix M.
I think:
corr_rows = zeros(1,512);
for i=1:512
Row = A(i,:);
corr_rows(i) = corr2(A,Row);
end
Is It correct? And the normalization?
Thanks!!!

 Accepted Answer

Sean de Wolski
Sean de Wolski on 25 Oct 2011

0 votes

Looks almost right to me, does it look right to you?
Hint: you need to change A to M in the assignment to row. Okay, that was a really nice hint.

1 Comment

Row = M(i,:);
Just a write error, sorry. :-)

Sign in to comment.

More Answers (1)

Image Analyst
Image Analyst on 25 Oct 2011

0 votes

If you want normalized, then you'll have to use normxcorr2() instead of xcorr2.

1 Comment

But normxcorr2 creates a vector, corr2 a number. And corr_rows must be a vector, not a matrix.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!