Уникальный хэш изображения, который не изменяется, если обновлена ​​информация EXIF

Я ищу способ создать уникальный хеш для изображений в python и php.

Я думал об использовании сумм md5 для исходного файла, потому что они могут быть сгенерированы быстро, но когда я обновляю информацию EXIF ​​(иногда часовой пояс выключен), он меняет сумму и изменения хэша.

Есть ли другие способы создать хэш для этих файлов, которые не будут меняться при обновлении информации EXIF? Эффективность вызывает беспокойство, поскольку я буду создавать хэши для ~ 500k 30MB изображений.

Возможно, есть способ создать хеш-файл md5, исключая часть EXIF ​​(я считаю, что она написана в начале файла?) Спасибо заранее. Пример кода оценивается.

Related of "Уникальный хэш изображения, который не изменяется, если обновлена ​​информация EXIF"

В Python вы можете использовать Image.tostring () для вычисления хеша md5 только для данных изображения без метаданных.

import Image import hashlib img = Image.open(filename).convert('RGBA') m=hashlib.md5() m.update(img.tostring()) print(m.hexdigest()) 

Imagemagick уже предоставляет метод для получения подписи изображения. Согласно документации PHP :

Создает дайджест сообщения SHA-256 для потока пикселов изображения.

Поэтому я понимаю, что на изменения подписи не влияют изменения в информации exif.

Кроме того, я проверил, что метод PythonMagick.Image.signature доступен в привязках python, поэтому вы должны иметь возможность использовать его на обоих языках.