我希望在这里找到一些关于图像处理的帮助。
虽然我使用的是PHP,但我并不熟悉Python。 虽然我听说Python对于图像比较,调整大小等“更好”
现在,我正在寻找一个将图像与MySQL数据库进行比较的程序 为了找到类似的图像。 如果相似度高于某个数量(百分比?),则会将其标记为可能的副本。
接下来,我还要创建一个程序(在dupe-check之前运行),该程序应检查图像是否已损坏/不完整。
我查看了StackOverflow,但只找到了2008/2009年的答案, 而且我认为现在可能有一种更有效或更有效的做事方式。
感谢您花时间阅读本文,如果您碰巧回复我的问题,请提前致谢。 :)
修改 我注意到eyeBuy SDK“如何将边缘检测,颜色,强度和对比度信息组合成一个字符串”。这对我的重复图像检测是一个很好的解决方案吗?
答案 0 :(得分:1)
试图找出相似的照片在不同的光线,角度,视角下的相似程度需要很多算法,我认为这些算法在你的情况下是不必要的。没有简单的方法可以做到这一点。
但是,如果你有不同的图像,你调整大小或修改一点点,提到的脚本 Artjom Kurapov 将作为一个起点帮助你。如果您的数据库还包含 duplicates ,我会先尝试使用 MD5 进行比较,然后再尝试其他任何内容。
您应该使用一个简单的数据库来计算md5
哈希,记录到数据库并在数据库中搜索匹配,否则对于每个文件,您必须通过整个数据库,这将大大增加处理时间
如果您不想处理每个文件的整个图像数据库,您还需要从脚本中创建某种序列化,以便保存记录。
答案 1 :(得分:0)
如上所述,可以处理不同观点的算法将非常困难。它是许多(学术)研究的焦点。
简单的开始,您可以查看Python phash。
一个简单的基于DCT的算法,它对噪声和比例具有合理的弹性,可以做到以下几点:
这个主题的变体是