我很难理解一些pHash结果。
根据pHash的数据,两幅非常相似的图片只有75%的共同点:

&

这两幅不应该有共同之处的图像有78%的相似性:

&

我可能做错了什么吗?我使用的是ruby库(Similie、pHash、Phashion),但它们只是映射pHash函数。在其他一些例子中,结果令人满意。
发布于 2014-07-10 15:38:34
我认为结果是可以解释的:
对于第一对图像,对图像的主要“攻击”是重新帧,这会显着地改变dct散列产生的频率数据。这是已知的离散余弦变换散列方法的一个弱点,并记录在pHash网站上。
第二对图像的“相似性”可能是小文件大小和其中一幅图像中单一颜色的大块的结果。在我的主观经验中,这些类型的文件常常导致奇怪的“相似”出现。(品牌形象对我来说是个问题)。不幸的是,我无法真正解释这种意想不到的行为。
使用多个散列方法(如墨西哥帽子或径向)和更大的源文件,如果可用,可以帮助降低“错误匹配”率。
更新:
从那时起,我就在ImageMagick中试验了新发布的phash功能。它允许您使用命令行调用compare -metric phash image1 image2 diffimage来区分两个图像。
使用该工具,第一组(相似)图像的相似度为19.78,而明显不同的图像的相似度为258.58。建议为“匹配阈值”的值为21。此pHash方法包含颜色信息,不像dct散列。
有关新功能的信息如下:510/index.html
https://stackoverflow.com/questions/21634559
复制相似问题