对输入的两张图像计算得到直方图H1与H2,归一化到相同的尺度空间,然后通过计算H1与H2之间的距离得到两个直方图的相似程度进而进行比较图像本身的相似度。OpenCV提供的比较方法有四种:
直方图比较方法
Correlation相关性比较
Chi-Squra卡方比较
Intersection十字交叉性
Bhattacharyya distance巴氏距离
直方图比较方法–相关性计算(CV_COMP_CORREL)
如果等于1说明完全一致,为0就是不相关。
直方图比较方法–卡方计算(CV_COMP_CHISQR)
等于0时表示完全相同。H1、H2表示两个图像的直方图数据。
直方图比较方法–十字计算(CV_COMP_CHISQR)
不常用
直方图比较方法–巴氏距离计算(CV_COMP_CHISQR)
0时完全一致
相关API
首先把图像从RGB色彩空间转换到HSV色彩空间cvtcolor
计算图像的直方图,然后归一化到[0~1]之间calcHist和normalize;
使用上述四种比较方法之一进行比较compareHilst
compareHistory(
InputArray src,
)