Якщо ви говорите про файли JPEG, то утиліта jpeginfo - саме те, що ви шукаєте. Він може перевірити файли на наявність різних типів JPEG-помилок та пошкоджень і або повернути код помилки (найкорисніший для сценаріїв), або просто видалити файли з помилками.
Я використовую це як частину моєї початкової передачі файлів, щоб переконатися, що все нормально скопійовано, не покладаючись на ручну перевірку. (Після цього я переконуюсь, що їх контрольні суми не змінюються в рамках мого звичайного резервного копіювання / бітроту захисту.)
Програма є командним рядком і надходить як вихідний код, але вона повинна бути простою у створенні та використанні на будь-якому дистрибутиві Linux або на Mac із належним чином налаштованим середовищем розробки. Я впевнений, що ви навіть могли це зробити в Windows з Cygwin або MinGW. (Наприклад, хоча я не можу порушити його цілісність, ця публікація блогу здається законною і включає попередньо складене завантаження.) Щоб створити її самостійно:
$ git clone https://github.com/tjko/jpeginfo.git
Cloning into 'jpeginfo'...
[...]
Checking connectivity... done
$ cd jpeginfo/
$ ./configure && make
Слід створити jpeginfo
команду, яку можна запустити на місці або скопіювати куди завгодно (можливо, використовуючи make install
).
Потім ви запускаєте його так:
$ ./jpeginfo -c *.jpg
test1.jpg 1996 x 2554 24bit Exif P 6582168 [OK]
test2.jpg 1996 x 2554 24bit Exif P 6582116 Premature end of JPEG file [WARNING]
test3.jpg Corrupt JPEG data: 1 extraneous bytes before marker 0xe2 1996 x 2554 24bit Exif P 6582169 [WARNING]
Тут test1.jpg ідеально добре, а test2.jpg я видалив кілька байт з кінця, а test3.jpg я змінив кілька випадкових байтів у заголовку.
Якщо у вас є файли RAW, ознайомтеся з цією сторінкою Американського товариства медіафотографів щодо перевірки DNG або однією з деталей перевірки даних , яка охоплює використання DNG-перетворювача Adobe для пакетної перевірки фірмових форматів RAW. (На жаль, це операція з графічним інтерфейсом і не обов'язково легко писати сценарій.)
Якщо у вас є камера, яка виводить 1.2 версію DNG, це ще краще, оскільки це включає вбудовану контрольну суму даних даних MD5. На жаль, це, здається, не зберігається з нормальними метаданими зображення - або, принаймні, exiftool і exiv2 не розпізнають їх, і вони взагалі читають 1,2 DNG-файли - це означає, що наскільки я зараз знаю перевірку Adobe Інструмент - єдиний спосіб скористатися цим.