[ OP的编辑#1:事实证明,exiftool创建者/维护者Phil Harvey在ExifTool论坛上的重复线程中很好地回答了这个问题]
[ OP的#2编辑:来自ExifTool常见问题解答:尝试删除所有元数据时,不能保证ExifTool会从文件中完全删除元数据。请参阅“作家限制”。]
我想在旧硬盘上搜索当前备份驱动器上没有的照片。格式包括jpg,png,tif等...,以及各种原始格式(不同的相机型号和制造商)。
我只对图像本身的唯一性感兴趣,而对唯一性不感兴趣,例如由于exif标签的值,给定exif标签本身的存在与否,嵌入的缩略图等的差异而引起的唯一性……
即使我不希望在原本相同的图像的不同副本之间发现任何损坏/数据腐烂,但我还是想检测一下,以及由于调整大小和颜色变化而引起的差异。
[ OP的编辑#3:为澄清起见:少量的误报是可以容忍的(文件在不存在时被断定是唯一的),而误报是非常不希望的(错误地将文件断定为重复的)。 ]
我的计划是在剥离所有元数据后,根据md5sums识别唯一性。
如何删除元数据?
将exiftool -all= <filename>
足够?
find $dir -type f -regextype posix-extended -regex ".*\.(jpg|png|<...>|cr2|raw|raf|orf)"
where <...>
意思是一堆其他后缀。
convert image.jpg - | md5sum
(ImageMagick)为您提供适当的MD5和。
file
将无法发现RAW图像格式,并且find
仅适用于扩展名(更好地描述您所拥有的内容可能会有用)