如何search看起来像上传图片的图片

我有一个数据库,索引一千张照片。 他们受到应用程序的支持,所以我修改了照片。 现在我想实现一个search,find看起来像给定的图片的图片。 我可以使用时间戳,但图片或图片元数据中的细微差别将阻止find正确的图像。

所以我需要一个命令行工具,它可以find看起来像给定图片的图片,如果这个图片与另一个灵魂但是内容相同的图片相匹配,它也是最佳的。

最后我会实现这个在轨道应用程序使用system的ruby,但我不认为这是一个问题,如果我有一个匹配的工具。

也许你可以检查建议 。 从github页面:

建议是基于ruby / redis的推荐引擎 – 建议可以在多个主机上逐步更新/处理。 这个工作人员用普通的红宝石和本机C来实现。

这里还有一个照片匹配的例子

我认为像Tin Eye这样的大多数图像相似引擎都使用某种形式的局部敏感哈希 。 我不确定是否有任何红宝石库,但一个简单的算法是压缩图像,比如16×16。 通过将一个像素块平均到一个像素来做到这一点。 然后,您可以使用差异总和(或平方差的总和…)来获取任意两张图片之间的差值。

我找到了一个适合我的解决方案。 一个让我远离使用基于web的endine的东西是这些图片包含有信心的数据,所以我需要一个本地工作的服务,而不需要任何连接到外部服务。

我安装了一个isk-Daemon服务,它附带一个小型Web服务器,一个SOAP和一个XML-RPC引擎来处理它。 所以我还写了一个IskClient类,它将图像添加到数据库并将它们连接到MySQL数据库中的图像,并运行查询以获得相似的图像。 我可能会从这个班级建立一个宝石。