背景
相关系数其实就是皮尔森系数,一般是在概率中判断两个随机变量的相关性,公式为:
其中,Cov(X,Y)表示的是随机变量X,Y的协方差。D(X)与D(Y)则分别表示随机变量X,Y的方差。皮尔森系数的值域为[-1,1],系数越接近1表明这两个随机变量越相关,越接近-1表明这两个随机变量越不相关。讲到这里,突然想起概率中讲的一句话:。
然而也可以利用皮尔森系数计算两张图片的相关性。
代码
import numpy as np
import cv2
im1 = '1.png'
im2 = '0.png'
img1 = cv2.imread(im1)
img2 = cv2.imread(im2)
# 图片2的标准差
print(np.std(img2))
# 相关系数,这里使用的是有偏估计
print(np.mean(np.multiply((img1-np.mean(img1)),(img2-np.mean(img2))))/(np.std(img1)*np.std(img2)))
输出结果
Reference
1.NCC(Normalized Cross Correlation)归一化互相关原理和C++代码实现
2.图像配准】基于灰度的模板匹配算法(一):MAD、SAD、SSD、MSD、NCC、SSDA、SATD算法