О правильных точках отсчета

Дней 10 назад, когда появились первые тестовые RAW от Olympus E-M1-II я в них заглянул и захотел про эту камеру написать, но заела текучка, может быть еще и напишу.

В процессе написания того текста, возник отдельный пунктик, на который хочется отдельно обратить внимание на реальных примерах.

Вот, к примеру, обсуждение:

Вот это вот «определенно лучше тянется вверх» нуждается в детальном комментарии (чтобы потом на него ссылаться как на готовый текст).

Начнем с фокуса, а потом займемся его разоблачением. Фокус будем показывать на кадрах от Olympus E-M1 (первой версии), которые я отобрал для сравнения с -II.

Фокус

Возьмем RAW-файл (Olympus E-M1) и два сделанных из него (разными средствами) DNG.

Убедимся, что RAW-данные полностью одинаковы (картинки кликабельны):

А потом откроем их в Adobe Camera Raw и посмотрим, как они выглядят (опять же, кликайте, иначе не видно):

Разницу видно сразу, глазом (даже в уменьшенном варианте), но для удобства я там поставил три пипетки, на три серых поля на колочекере. Если брать среднюю из пипеток, практически точно средний тон на первых двух (значение 119), то на третьем файле (значение 162) разница в яркости получается в 1.97 раза, то есть в целый фотографический стоп.

Отчего так? Два DNG-файла – это результат конверсии исходника (первый кадр) в DNG, RAW-данные сохранены, однако….

Отвечу сразу, прежде чем перейти к детальному объяснению. Разница в DNG-теге BaselineExposure:

  • у третьего кадра (более яркого) в теге написано
      | 29) BaselineExposure = 0 (0/100)
  • у второго кадра там не ноль (а что - узнаем ниже)
  • А у первого (оригинальный ORF) такого тега вовсе нет, но адобовский конвертор его «подразумевает»

Внимательный читатель, посмотревший на имена файлов в скриншотах, уже знает, что третий кадр сконвертирован в DNG при помощи digiKam, второй – Adobe (версия 9.7). Соответственно, конвертор Adobe поставил в DNG нужный тег (с таким значением, чтобы повторить собственный же процессинг ORF-файла), а digiKam – записал в него ноль.

Мораль

Если мы сравниваем две камеры (или разные настройки одной камеры; или даже один и тот же кадр с одной камеры, но обработанный разными путями) и делаем это путем рассматривания двух файлов в RAW-конверторе, нам необходимо

  1. Быть уверенным, что два изучаемых файла обработаны одинаково (и нет, одинаковые движки в конверторе не означают этого).
  2. А если обработаны разными путями – необходимо разобраться в чем же разница и таки «привести к общему знаменателю».

Потому что, знаете, пуш среднего тона на стоп (как в примере выше) – это большая разница.

То есть, конечно, в первую очередь стоит смотреть на исходные необработанные данные (RawDigger) и только разобравшись с разницей – переходить к сравнению результатов процессинга.

Объяснение фокуса

В данном случае объяснение очень простое:

  • Камера E-M1 в использованном режиме (ISO100 по EXIF) «переэкспонирует» кадр (про эту особенность низкого ISO у Olympus E-M5 я уже писал)
  • Программные средства Adobe корректируют это (скрытой экспопоправкой)
  • А digiKam – нет.

Это становится возможным по той простой причине, что «светочувствительность ISO» (*) для RAW-данных никак не определена. Существующий стандарт ISO 12232:2006 говорит о том, как должен себя вести JPEG-выход камеры, но ничего не говорит о RAW

На практике – значение RAW, соответствующее среднему тону – у разных камер разное. Более того, оно и у одной камеры может быть разным.

Вот на примере Олимпуса (этот вендор пишет «уровень серого» во второе поле тега Sensor Calibration, поэтому можно не угадывать, что там имел в виду производитель, а точно это знать), для рассматриваемой камеры:

  • ISO200 и выше: средний тон на уровне 290 или 7.5% от максимума данных камеры
  • ISO100: 646 или 17% (то есть на ~стоп с четвертью выше)

На практике это означает, что в одних и тех же световых условиях, при замере одним и тем же экспонометром, но в разных режимах камеры мы можем получить, к примеру:

  • Идеально экспонированный кадр на ISO200, света не выбиты, но прижаты к правому краю гистограммы.
  • Вылет в светах на ISO100.

Если мы возьмем другие камеры того же вендора, то выясним, что точка серого там скачет. Например, у E-M1-II в обычном режиме там уровень 206 т.е. на полстопа ниже, чем у E-M1. А вот режим ISO64 имеет ту же калибровку, что и у первой версии камеры (646).

То есть при использовании двух камер сразу, старой и новой, нужно не забывать вносить правильные поправки экспонометру, в зависимости от используемой установки чувствительности и разную для двух камер в обычном (не самое нижнее ISO) режиме.

Мне нравится! А вам?

Почему они (производители камер) это делают?

Because we can!

При занижении уровня среднесерого в RAW происходят два полезных следствия:

  • Цифирку ISO (для одного и того же режима работы) можно нарисовать повыше, что полезно для маркетинга.
  • За счет запаса в светах – у нас не будут выбиваться все блики, можно сжать света S-образной кривой и приблизить результат к тому, что фотографы имели на негативной пленке.

Но у всего есть цена:

  • За счет сдвига среднего тона в область меньшего сигнала (т.е. за счет недодержки) – растут шумы.

У современных камер шумы малы (относительно того, что было 5-10 лет назад) и цена признана приемлемой.

Но эту цену приходится платить всегда (при съемке «по экспонометру»), даже для неконтрастных сюжетов, которым дыра в светах совершенно не нужна.

Что происходит дальше, после съемки?

Внутрикамерный генератор JPEG вернет средний тон в правильное место. Потому что так велит стандарт.

Авторы RAW-конверторов – вынужденно сделают то же самое, потому что их (массовый) пользователь ожидает увидеть при открытии файла примерно то же самое, что видел на экране камеры (а если этого не происходит, то задалбывают вопросами, один из самых распространенных вопросов у свежих пользователей RPP это «а почему все такое темное»).

В случае продуктов Adobe это выражается в том, что

  • Для обычных RAW-файлов (не DNG) – вносится скрытая поправка к экспозиции.
  • Для DNG-конвертора эта поправка пишется в тег BaselineExposure. И в рассмотренном примере она такая:
      | 29) BaselineExposure = -0.84 (-84/100)
    Это в стопах, т.е. ACR или Lightroom «сдвинет движок Exposure» на -0.84 стопа и покажет его как «0»

Риторические вопросы

Вот допустим мы сравниваем кадры с камеры Canon и с Oly E-M1, два кадра сняты «на ISO100» (во всяком случае, в EXIF написано именно это). На самом деле у Oly была установлена чувствительность ~220 и на стоп с четвертью была передержка.

Так вот, разумно ли будет сравнивать эти два кадра по шумам?

Тут есть два ответа, конечно:

  • Нет, надо разбираться в том, что на самом деле происходит
  • Пользователь ленив и нелюбопытен и его интересует сочетание «камера + конвертор» и он рассматривает его как аналог «пленка Кодак + минилаб»

Оба ответа имеют право на жизнь, но второй из них, как мне кажется, сильно осложняет жизнь тем фотографам, кто пользуется двумя (и более) разными камерами одновременно или же просто меняет одну камеру на другую.

Ну и на закуску:

  • Крутилка ISO может быть фейковой т.е. не менять усиление в связке сенсор-(усилитель)-АЦП (но измененную чувствительность в экспонометр исправно передает):
    • Вообще во всем диапазоне чувствительностей (Sigma DPx Merrill)
    • В высоких чувствительностях (Fuji X-T10 выше 1600)
    • В низких чувствительностях (ISO 50 у Canon, Sony и подозреваю что не только у них)
    • В некоторых чувствительностях в ряду (160,320, 640 у Canon 6D, правда там еще и данные обрезаются сверху)
  • «Хитрые режимы расширения динамического диапазона» (ADL, DLO, ADO) – во многих случаях сделаны просто передачей в экспонометр завышенного значения чувствительности т.е. это просто недодержка на стоп(-другой). Но и тут бывают исключения.

Что еще более разнообразит задачу нахождения одинаковых «точек отсчета».

Вернемся к началу

Если кто еще помнит, данный текст начался с цитаты из обсуждения Olympus E-M1-II.

Эта камера – не поддерживается еще средствами Adobe и единственный способ загнать ее кадры в Lightroom/ACR – это конвертация при помощи digiKam и установки BaselineExposure в 0.

А файлы от «камер сравнения» - открываются в Lr/ACR сразу и им (как мы обсуждали выше) как-то двигают точку серого.

Получается, что сравнивается старая камера к файлам с которой применена какая-то экспокоррекция (несложно узнать какая, но никто не делает) и новая камера, файлы с нулевой коррекцией.

Результат такого сравнения может быть удивительным.

Comments

Любопытно в процитированном куске обсуждения сказано о связке "чистоты" и плотности пикселов. Она, конечно есть, эта связка. Но работает в сторону, протвуположную подразумеваемой. Меньше размер пиксела - меньше заряд (как правило) - выше коэффициент преобразования при пикселе. При практически постоянном уровне шума в цепи от пиксела к аналогово-цифровому преобразователю это улучшает, и заметно, соотношение "сигнал-шум".

но только в той части шума, которая не является частью сигнала.

Да, я о т.н. шуме считывания. С точки зрения фотонного шума практически ничего с плотностью пикселов не меняется, там эффективность микролинз и коэффициент использования площади поверхности + пропускание фильтров важны, а они от плотности пикселов в рассматриваемых камерах зависят мало.

Если "рассматриваемые камеры" это E-M1 двух версий, то да, там все должно быть похоже по емкости/площади пикселя.

Но ведь можно и с сильно другими сравнивать.

> Но ведь можно и с сильно другими сравнивать.

абстрактно конечно капнуть хорошо оптику на мелкий пиксель сложнее чем на крупный - чем крупнее тем всякие дефекты с преломлением лучей по краям микролинзы меньше влияют... плюс опять же угол падения на сенсели по краям сенсора добавляет сложнестей которые интуитивно наверно для мелких сенселей сложенее - там же можно начать смещать микролинзы уже вообще за пределы своего сенселя внизу

Z / V