2

我无法理解一些pHash结果。

根据 pHash,两张真正相似的图像只有 75% 的共同点:

第一张图片&第二张图片

另外两张本应该没有共同点的图像具有 78% 的相似性:

第一张图片&第二张图片

有什么我可能做错的吗?我正在使用 ruby​​ 库(Similie、pHash、Phashion),但它们只是映射 pHash 函数。在其他一些示例中,结果令人满意。

4

1 回答 1

3

我认为结果可以解释为:

对于第一对图像,对图像的主要“攻击”是重新构图,它显着改变了创建 dct 哈希的频率数据。这是 dct 哈希方法的一个已知弱点,并记录在 pHash 网站上。

第二对图像的“相似性”可能是由于文件较小,其中一个图像中单一颜色的大块。根据我的主观经验,这些类型的文件通常会导致出现奇怪的“相似之处”。(品牌名称的图像对我来说是个问题)。不幸的是,我无法真正解释这种意外行为。

使用多种散列方法(如墨西哥帽或径向)和更大的源文件(如果可用)有助于降低“错误匹配”率。

更新:

从那以后,我在 ImageMagick 中尝试了新发布的 phash 功能。它允许您使用命令行调用来区分两个图像compare -metric phash image1 image2 diffimage

使用该工具,第一组(相似)图像的相似度得分为 19.78,而明显不相似的图像的得分为 258.58。建议作为“匹配阈值”的值为 21。与 dct 哈希不同,此 pHash 方法包含颜色信息。

此处有关新功能的信息:http ://www.fmwconcepts.com/misc_tests/perceptual_hash_test_results_510/index.html

于 2014-07-10T15:38:34.163 回答