我的目标是提供 2 个图像文件,并获得一个 true/false 的响应,以确定这两个文件是否可能相同(在可接受的确定性范围内)。
我意识到这个问题属于人工智能范畴,并且比看起来复杂得多,所以我非常怀疑我是否可以(或者甚至想)自己完成它。 我正在寻找的可能是一个库或一个类。 我正在使用 PHP。
提前感谢。
所有有用的答案/评论都会被赞。
更新:
我想知道我是否过于复杂化了,也许像 imageMagick (imagick) 这样更通用的库可以完成它? 有人更有 imageMagick 经验吗?
回答:
http://tineye.com/ 如果你只是比较你自己的图片,可能会很有用。
不过,你应该研究一下图像相似度算法,尽管任何高级算法都不适合像 PHP 这样的脚本语言。 最简单的比较方法是这样的:
- 如果两张图片大小不一样,就让它们一样。
- 比较每个对应的像素,并确定它们的相似程度。 最简单的方法是取红色值之间的差值,然后是蓝色值之间的差值,然后是绿色值之间的差值,并取平均值。
- 取所有像素的平均差值。 如果它低于你决定的某个阈值,那么图像是相同或相似的。 你需要用各种图像进行测试,以确定一个阈值。
我对 ImageMagick 和 PHP 的图像函数不是很熟悉,所以不确定你是否可以完成所有这些。