在13年内收集了大约600GB的照片 - 现在存储在freebsd zfs / server上。
照片来自家庭计算机,从几个部分备份到不同的外部USB HDD,来自磁盘灾难的重建图像,来自不同照片处理软件(iPhoto,Picassa,HP和许多其他:()在几个深度子目录中 - 很快= < em> TERRIBLE MESS 有许多重复项。
所以在我做的第一个:
这有很多帮助,但这里仍然有很多重复:
现在问题:
更复杂
我能够制作复杂的脚本 BASH 和“+ - ”:)知道 perl。。可以直接在服务器上使用FreeBSD / Linux实用程序,通过网络可以使用OS X(但是通过LAN使用600GB不是最快的方式)...
我粗略的想法:
use Image::ExifTool
脚本,用于根据图像创建日期和相机模型(也可能是其他exif数据)收集重复的图像数据。任何想法,帮助,任何(软件/算法)暗示如何在混乱中下订单?
PS:
这是几乎相同的问题:Finding Duplicate image files但我已经完成了答案(md5)。并寻找更精确的校验和图像比较算法。
答案 0 :(得分:2)
您可以使用ImageMagick工具集中的mogrify -strip
删除exif数据。所以你可以为每个图像复制它而不用exif,md5sum,然后比较md5sums。
当涉及到视觉上类似的消息时 - 例如,您可以使用比较(也来自ImageMagick工具集),并生成黑/白差异地图,如描述here,然后制作histogram差异,并检查是否有“足够的”白色表示它是不同的。
答案 1 :(得分:2)
您是否看过Randal Schwartz的this article?他使用带有ImageMagick的perl脚本来比较调整后的(4x4 RGB网格)版本的图片,然后将其进行比较以标记“相似”图片。
答案 2 :(得分:1)
假设您可以使用localy安装的FS:
rmlint
:我用来找到完全重复的最快工具findimagedupes
:自动化整个ImageMagick方式(作为Randal Schwartz的脚本,我还没有经过测试?似乎)dupeguru-pe
(gui):快速且工作出色的专用工具geeqie
(gui):我发现使用粒度重复数据删除选项可以快速/出色地完成工作。此外,您还可以生成有序的图像集合,使“图像”图像彼此相邻,从而可以“翻转”图像。在两者之间看到变化。答案 3 :(得分:0)