有一种方法可以计算两个图像之间的差异,称为"强度均方差" (MSD)。我在this研究论文中找到了它。我正在寻找一种使用opencv和C ++实现它的方法。任何关于此的参考都非常感谢。
答案 0 :(得分:2)
我猜它与matchTemplate
的CV_TM_SQDIFF
模式相同,但是以像素数为标准。可以如下计算图像A和B:
其中n - 图像上的像素数
我建议您不要使用matchTemplate
函数来计算。使用cv::norm
更有效,如下所示:
double MSD = cv::norm(A, B);
MSD = MSD * MSD / A.total();