按内容匹配重复图像并重命名(为重复的名称)

按内容匹配重复图像并重命名(为重复的名称)

我有 2 个文件夹,每个文件夹有超过 5,000 张照片:

  • 文件夹 1:原始文件质量良好,但名称易于理解(例如saigon_motorcycle_traffic.jpg
  • 文件夹 2:相同的文件,质量真的很差(宽度为 450px),但具有与数据库匹配的干净 ID(例如562634.jpg)。

目标是将高分辨率图片与数据库 ID 进行匹配。

我的问题:saigon_motorcycle_traffic.jpg将高分辨率版本重命名为低分辨率版本最快的方法是什么562634.jpg


我尝试了很多软件(例如重复照片清除器视觉图片、XnView、DupliFinder 等),它们都找到了重复项,但没有一个提供这种重命名的正确方法或合适的导出功能。

编辑:我没有尝试过任何脚本(如评论中所述),因为我不知道也没有找到任何脚本。如果您知道任何信息,请告诉我。

有些事情行不通:匹配图像尺寸行不通(大多数图像具有相同的尺寸),匹配创建日期行不通(全都搞乱了)并且手动完成行不通因为我想保持我的心理健康;-)

答案1

我最终编写了一个 PHP 例程(我不会发布完整的代码,因为这是一个非常不干净的解决方案),并解决了这个问题。

使用相位器我能够遍历所有图像文件并找到可疑的重复项:每个图像都转换为一个小的哈希值(基于 8x8 版本的图像)。然后可以比较这些哈希值。

需要记住两件事:

  • 由于这是一个嵌套循环,因此在进行实际比较之前,首先获取所有哈希值并缓存它们非常重要。否则它将花费很长时间。
  • 该方法并不能提供完美的结果。第一次运行中我的错误率很小。因此仍然需要进行一些错误检查。

答案2

听起来你对照片重复清理软件有一些令人沮丧的经历。你有没有考虑过使用重复照片修复器不仅可以查找重复项,还可以提供重命名和导出照片的功能?这些类型的工具可能更全面,并提供更好的整体体验。您可能需要研究并尝试一些不同的选项,以找到最适合您需求的选项。

相关内容