Как заставить Imagemagick отображать цветовое пространство как Некалиброванное / Неизвестное / Необъявленное, когда оно не объявлено?
Я использую identify
команда ImageMagick для извлечения exif фотографии. ImageMagick, в отличие от exiftool, возвращает sRGB
когда цветовое пространство не было объявлено. Как я могу заставить ImageMagick вернуться Uncalibrated
или же Unknown
или же Undeclared
когда это так?
1 ответ
Фред прав. Вам нужно будет использовать некоторые дополнительные утилиты (например, awk) в дополнение к некоторым -format [EXIF:*]
Магик.
identify -format '%[EXIF:Col*ce]\n' input_file.tif | \
awk '{ if (length($0)) { print $0; exit } else { print "Uncalibrated" }}'
Это работает, вызывая запрос (*
) символ, который будет пытаться вернуть список совпадений клавиш. Если ключ EXIF:Colorspace
установлено, awk распечатает его, иначе "Uncalibrated"
будет возвращен.
Другой вариант identify -debug Coder input_file.tif
который выгрузит все точки данных, извлеченные ImageMagick из формата изображения. Но это может быть излишним.