我需要在Python中计算两个二进制图像之间的相关性。如果矩阵相同,脚本应返回1,如果它们完全不相关,则返回0。它应该类似于Matlab中的corr2
(http://www.mathworks.se/help/images/ref/corr2.html)。这是我正在使用的测试:
import numpy as np
from scipy import signal
A = np.matrix('1 0; 1 0')
B = np.matrix('1 0; 1 0')
cor = signal.correlate2d(A, B)
print cor
我怎样才能获得单个值而不是矩阵?
答案 0 :(得分:1)
试试corrcoef
。它将返回一个2 * 2矩阵,其中包含两个矩阵之间的非对角元素相关系数:
import numpy as np
A = np.matrix('1 1; 1 0')
B = np.matrix('1 0; 1 0')
cor = np.corrcoef(A.reshape(-1), B.reshape(-1))[0][1]
print cor