如何针对图像相似度优化OpenCV直方图比较?

时间:2018-05-18 18:02:57

标签: opencv histogram image-comparison

我使用example code来比较使用EMD的HSV直方图。

我想在人们(移动)图片库中找到类似的图片。人们拍摄相同主题的几张图像(连续)只是略有变化是很常见的:放大/缩小一点,不同的角度,由于改变位置而产生的不同曝光,其他姿势...... ..

我选择了4组4个相似的图像来测试这个算法。当比较集合内的图像时,我得到22个EMD-L1值,大约在0.25和2.25之间(平均1.47),2个异常值在7.2左右。

当我在集合之间进行交叉比较时,我得到2到15之间的值,平均值大约为8。

是的,两个结果集之间存在显着的差异。但我感到失望的是,这些范围之间没有(差距),而是一个小的重叠[2.0,2.25]。我希望改进算法。

如何针对特定用例优化比较?有各种直方图形式,各种直方图比较算法,然后每个都有各种参数。

OpenCV是否实现了最快的已知EMD算法?我很惊讶一些直方图的比较花了一秒钟;特别是相对较小的箱号。

然后,一些交叉比较给出了良好的EMD结果,但具有完全不同的RGB直方图。这是两张图片:

enter image description here

enter image description here

我目前的EMD-L1表示1.95,但RGB直方图完全不同。

1 个答案:

答案 0 :(得分:0)

可能您已经完善了比较方法。但这可能并不明显,您可以将图像划分为重叠的子区域,然后计算所有4个部分的EMD。