【发布时间】:2014-03-05 06:24:19
【问题描述】:
我无法理解一些pHash 结果。
根据 pHash,两张非常相似的图像只有 75% 的共同点:
&
这两张本应没有共同点的图片有 78% 的相似度:
&
有什么我可能做错的吗?我正在使用 ruby 库(Similie、pHash、Phashion),但它们只是映射 pHash 函数。在其他一些示例中,结果令人满意。
【问题讨论】:
我无法理解一些pHash 结果。
根据 pHash,两张非常相似的图像只有 75% 的共同点:
&
这两张本应没有共同点的图片有 78% 的相似度:
&
有什么我可能做错的吗?我正在使用 ruby 库(Similie、pHash、Phashion),但它们只是映射 pHash 函数。在其他一些示例中,结果令人满意。
【问题讨论】:
我认为结果可以解释:
对于第一对图像,对图像的主要“攻击”是重新构图,它显着改变了创建 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
【讨论】: