两幅图像之间的相关性

use*_*805 3 matlab image-processing matrix correlation

我试图在两个图像f1和f2之间找到以下相关性,其中图像的大小是PXP.

我已经为此编写了一个for循环程序,但我认为内置函数会更快.

在此输入图像描述

matlab中的哪个函数可以帮助我计算这个?

此外,如果两个图像的大小都是MXN,有人可以告诉我这个公式将如何改变或者该功能是否能够处理它.

编辑:

有没有比xcorr2更快的功能,可以帮助我看到它需要太多的时间,当我只需要具有相关值的未移位图像....

Eit*_*n T 7

MATLAB xcorr2就是为了这个目的.我想你的代码看起来像:

r = xcorr2(f1, f2) / (P .^ 2)
Run Code Online (Sandbox Code Playgroud)

f1f2是两个图像.得到的矩阵r是(2P-1)×(2P-1)矩阵,并且当两个图像偏移对应于该元素偏离中心的偏移时,其每个元素反映f1和f2之间的相似性度量. .

请注意,如果您只对两个未移位图像之间的相关性感兴趣,那么您应该节省执行时间和使用corr2,就像@TheByzantine在他的回答中所建议的那样.


The*_*ine 7

这是用于在两个图像(矩阵)之间进行相关(系数)的函数:

r = corr2(A,B)计算A和B之间的相关系数,其中A和B是相同大小的矩阵或向量.

而xcorr2(A,B)解决了CROSS相关性问题.


bla*_*bla 6

使用 xcorr2功能.例如:

 C=xcorr2(A,B)
Run Code Online (Sandbox Code Playgroud)