Про DNG 1.4

Не прошло и полгода Прошло почти 7 месяцев с выпуска LightRoom 4, и Adobe таки выпустила в свет спецификации DNG 1.4 и DNG SDK той же версии (брать отсюда).

Существенные нововведения:

  • Lossy-компрессия. Правда вот такая вот:
    Lossy JPEG is allowed for IFDs that use PhotometricInterpretation=34892 (LinearRaw) and 8-bit integer data.
    То есть 8-битные линейные данные после демозаики. На практике этот режим полезен, пожалуй, только для какой-то quick-n-durty обработки, например в очень ограниченных ресурсах. Да и то, линейные 8 бит - это как-то не того, разве только тонововая кривая как-то спасет.
  • Поддержка floating point (16, 24 и 32 бита) - теперь в стандарте (не знаю, будут ли float-DNG от darktable быть совместимыми). К этой поддержке прилагается новый поддерживаемый формат сжатия (ZIP/Deflate), а к этому формату сжатия - новые предикторы 'Horizontal Difference X2 и X4', которые, по идее, позволят эффективно сжимать байеровские данные.
  • Transparency masks, которые позволяют, к примеру, удобно/эффективно хранить в DNG склеенные панорамы с неровным краем изображения.
  • ProxyDNG Files - файлы с низким разрешением, но содержащие указание на оригинальные размеры. Как следствие, всё редактирование, сделанное над Proxy - можно без изменений перенести на исходный файл. Если этот Proxy-вариант еще и пожать с потерями, то получается достаточно вкусно для многих применений (помимо работы на мелких ноутбуках и планшетах, в голову приходят еще всяческие операции с несколькими кадрами сразу: панораму или focus stacking делаем быстро из файлов низкого разрешения, а финальный рендер делаем в фоне).
Имею про это сказать:
  1. Мое отношение к DNG за четыре прошедших года изменилось не очень сильно:
    • Рассматривать этот формат как архивный (с уничтожением оригинальных RAW) не следует. В частности по той причине, что все формы жизни DNG так и не покрыл и сохранить в стандартных тегах DNG все что есть в исходных RAW - все еще невозможно (пример: в DNG один тег для баланса белого, а камеры Canon сохраняют сразу много настроек ББ, что потом бывает удобно использовать).
    • DNG Processing Model т.е. навязываемая Adobe схема обработки (с преобразованием в Kodak ProPhoto, в числе прочего) - мне продолжает не нравится. А цветовые теги в DNG заточены именно под эту схему работы.
  2. Несмотря на вышесказанное, DNG 1.4 как промежуточный формат выглядит очень вкусно:
    • Есть стандартные теги, пригодные для записи туда стандартных же данных (CFA Pattern, уровни черного-белого /в простых случаях/) и дальнейшего использования стандартным же образом.
    • Появление floating point - делает ненужным использование OpenEXR (и подобного) как промежуточного FP-формата. Потому что в фотографических целях DNG 1.4 позволяет сохранить те же самые данные и плюс - фотографические теги.
    • Тайловая структура позволяет эффективную многопоточную распаковку (да и паковку).
    • Low quality/Low resolution формат - может оказаться полезен (см. выше).
  3. DNG Opcodes позволяют стандартным образом закодировать некоторые коррекции: хроматику, геометрические искажения, локальные и глобальные "градиентные" фильтры (удивительно, но вот поворота всего изображения в opcodes - нету).
Понятно, что поддерживающий все это разнообразие софт появится не мгновенно, но появится же.

P.S. А кто-нибудь пытался скормить лайтруму DNG в плавающей точке?

Comments

спасибо, я какое-то время потупил на текст про DNG 1.4 и решил что вчитываться лень
а тут на блюдечке принесли :)

Не вполне понятно, что из этого счастья поддерживает LR/ACR/whatever.

"Появление floating point" - Лёша, значит ли это, что и LR/Photoshop тоже начали применять вычисления с плавающей точкой?

Упс, дочитал до конца... :о)

В фотошопе плавучка в некотором количестве есть.

А вот что будет, если в LR/ACR засунуть floating point tiff - это вопрос интересный и нуждается в изучении. По идее, там же даже color management в обработке может быть свой, т.е. сделать его в плавучке несложно.

Можно засунуть туда тестовый DNG и посмотреть на артефакты демозаики. Ну вот как тут вот мы делали: http://www.libraw.su/articles/festina-lente.html (плавучка) и http://www.libraw.su/articles/bayer-moire.html (целые).

Может быть по рисунку муара удастся увидеть "обычный целочисленный байер", как его уже было видно для ACR 6.3. А может и нет.

Я, как руки дойдут (т.е. вероятно - не очень скоро) сделаю такую же мишеньку-дикобраза, но в плавучке.

Муар алгоритма и муар исходника - это две большие разницы.

Да, естественно.

Но если условный ACR 7.x дает ту же примерно картинку "наведенного муара", что и ACR 6.3 (которая та же, что у Modified AHD) - это такой повод задуматься.

Понятно, что не доказательство, в суде не примут.

> P.S. А кто-нибудь пытался скормить лайтруму DNG в плавающей точке?

во всяком случае 32 bit .tiff из RPP ACR7 нормально воспринимает уже давно....

А что на счёт камер, где DNG -- родной? Я вот на Пентаксе снимаю в DNG -- но может я что-то теряю и мне нужен PEF?

Я про PEF знаю мало, никогда не вдавался в подробности. Может быть, что там WB тот же (или уровень черного или еще что) пишется богаче.

Можно почитать список тегов, известных exiftool-у, посмотреть какие реально присутствуют - и какие не могут быть при этом представлены в DNG родными DNG-шными тегами.

Там, понятно, в DNG можно засунуть и неродные теги в виде 'Private Data' или как оно на самом деле называется - но понятно, что кроме родного конвертора их мало кто поймет. Только если очень очень надо и без этого никак.

И всяких информационных тегов там навалом: http://owl.phy.queensu.ca/~phil/exiftool/TagNames/Pentax.html