opencv之图像直方图的比较(图像的相关度)

(理解直方图比较的意义,对于图像的相似度是非常有意义的)
对于直方图来说,一个不可或缺的工具就是用某些具体的标准来比较两个直方图的相似度要对两个直方图进行比较,首先选择一个衡量直方图相似度的对比标准,我们用compareHist()函数来对比两个直方图的相似度:
对比直方图:compareHist()函数:
C++:double compareHist(InputArray h1,InputArray h2,int method)
前两个参数就是要比较的大小相同的直方图,第三个变量是所选择的距离标准,可以采用以下4中方法:
1.相关,CORRELATION method=COMP_CORREL;
2.卡方 method=COMP_CHISQR;
3.直方图相交 method=COMP_INTERSECT;
4.Bhattacharyya距离 method=COMP_BHATTACHARYYA
函数返回的double类型的数值
在进行直方图对比的时候首先要求取图像的直方图;calcHist()函数求取
然后要对求取的直方图进行归一化处理:normalize()归一化处理
最后才是进行直方图的对比:compareHist()
対两幅图像直方图的对比返回的数值代表两幅图像的相似度

猜你喜欢

转载自blog.csdn.net/nbxuwentao/article/details/86483424