Уже более десяти лет я использую exiftran
поворот изображений после получения их с камеры.
Нужен ли этот шаг сегодня?
Браузеры и другие приложения для работы с изображениями не поворачивают изображение правильно, не запуская exiftran для файлов.
Предыстория эксифтрана (со страницы эксифтранаman
):
exiftran — это утилита командной строки для преобразования цифровых изображений в формат JPEG. Он может выполнять повороты без потерь, как jpegtran, но в отличие от jpegtran он заботится о данных EXIF: он может автоматически поворачивать изображения, проверяя тег ориентации exif, при необходимости обновляет информацию exif (размер изображения, ориентация), а также поворачивает миниатюру exif. . Он может обрабатывать несколько изображений одновременно.
Уже более десяти лет я использую
exiftran
поворот изображений после получения их с камеры. Нужен ли этот шаг сегодня?
Да.
Браузеры и другие приложения для работы с изображениями не поворачивают изображение правильно, не работая
exiftran
с файлами.
Нет.
Как заявил @junkyardsparkle:
Лично я до сих пор время от времени испытываю боль, когда обнаруживаю, что реальная ориентация изображения не та, чем кажется, поэтому я стараюсь максимально устранить несоответствие в своих файлах.
И отметил @AK:
Могут быть ошибки (например, камера не записывает правильную ориентацию на конкретном снимке).
Кроме того, часто изображения могут отделяться от их данных Exif. Или изображения могут сохраняться повернутыми, но Exif не обновляется. Или несколько программ могут по-разному обрабатывать флаг поворота, что приводит к отображению разных ориентаций.
Лучший способ свести к минимуму неожиданности и максимизировать совместимость — использовать exiftran
поворот изображений. Можно написать скрипт для автоматического поворота всех файлов при импорте.
ОБНОВЛЕНИЕ: похоже, вам больше не нужно физически поворачивать изображения с помощью Firefox/Opera/Chromium в Linux. Например, это не работает с Chromium версии 73.0, но работает с Chromium версии 83.0. Я пересмотрел сценарии, которые я использую для размещения своих изображений в Интернете, и обнаружил, что причина, по которой они не работали, заключалась в вызове ImageMagick «mogrify -auto-orient», который я использовал для изменения размера исходного изображения для использования в Интернете. Теперь я вызываю mogrify без этой опции, и у меня нет проблем в последних браузерах, если ориентация, предоставленная вашей камерой, конечно, в порядке, что обычно и бывает. Так что обычно вам больше не нужны ни exiftran, ни jpegtran, ни exifautotran. Период.
УСТАРЕЛО: AFAIK поворот изображения все еще необходим в 2020 году в браузерах, но jpegtran выполняет эту работу так же хорошо, как exiftran. jpegtran сохраняет все теги до тех пор, пока используется параметр «-copy all», который не является новым: это стало возможным, начиная с версии 6b libjpeg, выпущенной 27 марта 1998 года. Если вам всегда требуется сохранение тегов/маркеров, вы можете использовать псевдоним:
alias jpegtran='jpegtran -copy all'
Вы также можете оставить комментарии только с помощью «jpegtran -копировать комментарии». Редактирование на месте не поддерживается с помощью jpegtran, но, конечно, это тоже не проблема. Вы также можете использовать exifautotran, который выполняет автоматическую настройку.
Так что ИМХО вам просто не нужно устанавливать exiftran, это отдельная программа, а просто использовать jpegtran, который идет в комплекте с libjpeg.
PS Нехорошо распространять дезинформацию, чтобы очернить конкурентов ;-)
Не все мои камеры довольны изображениями, повернутыми на компьютере, и отказываются отображать их вообще или, по крайней мере, использовать тот же способ их отображения, что и при изменении флажка поворота. Так что, по крайней мере, на картах памяти любые манипуляции с вращением должны выполняться в камере для достижения наилучших результатов, и это влияет только на флаг вращения, а не на данные.
Если бы просмотровые программы можно было научить делать поворот для карт памяти от конкретной камеры определенным образом (а для некоторых камер - только возясь с флажками поворота), то фиксацию поворота на картах памяти можно было бы делать на компьютере, а не на камера.
Напротив, большинство программ, с которыми я работаю, не имеют проблем с правильной интерпретацией флагов ротации. Итак, я считаю exiftran
, что в наши дни его использование совершенно вредно, по крайней мере, на исходных носителях. По общему признанию, мои камеры, как правило, намного старше, чем программное обеспечение на моем компьютере: это может сыграть свою роль.
свалкаблеск
АК
матдм
jpegtran
его производные могут взять этот флаг и фактически (без потерь) переписать изображение так, чтобы оно было ориентировано по-другому, заставляя его всегда отображаться в правильной ориентации. Вопрос здесь в том, нужно ли это по-прежнему, или значительная часть клиентского программного обеспечения теперь сама «достаточно умна».