Обработка RAW

Власти скрывают!

5D-green-vs-ACR.jpg
Покрупнее

На картинке

  • слева - зеленый канал из фотографии мишени для оценки динамического диапазона, остальные каналы экспонированы меньше и жизни там больше.
    Получено программой 4channels из LibRaw, никаких преобразований кроме растягивания на полный диапазон.
    Кадр проэкспонирован так, чтобы основной фон был на грани переполнения, еще треть стопа и переполнение наступает.
  • справа - тот же кадр, проявленный Adobe Camera Raw 5.3 с настройками default: стандартная яркость, экспокоррекция 0, остальное неважно.

Мы видим, что в зеленом канале жизнь есть. Да, детали на полстопа ярче фона видны плохо (чтобы их увидеть - нужно контраст поднять, но они там есть). А вот в проявленном RAW детали в светах пожрал хомяк ACR. Нет, если покрутить Exposure или Recovery, то все появится, но хочется обратить внимание на совершенно другое:

5D Mark II: рабочее ISO

canon-eos-5d-mark-II-top.jpg Как-то нет сил и времени писать на эту тему полноценных текст, поэтому пока в телеграфном режиме.

В моих экспериментах получается, что наибольший динамический диапазон (далее ДД) и наименьший шум у Canon 5D Mark II получается при ISO200. Выигрыш относительно ISO100 и 400 - порядка 0.3-0.5 стопа.

При этом шум оценивался по стандартному отклонению на серой плашке (как оптимально экспонированной, так и недодержаной на 1-4 стопа). При ISO100 шум визуально чуть менее крупный, но чуть более цветной. При ISO400 шум чуть побольше чем на 100 (и, естественно, 200), но все еще очень маленький

То же самое, кстати, касается и 450D: тот же характер изменения шума (с визуальным минимумом "крупности" на ISO100 и инструментальным минимумом на ISO200) и та же рекомендация: оптимальной чувствительностью является ISO200. Я про это уже писал и грешил на шумодав, но следов шумодава я не вижу (а следовательно, малошумящий усилитель есть добро).

О ДД и о цвете одной строкой

Рассматривал поканально тестовые шкалы (серое по серому с известным контрастом), усреднял, рисовал таблицы линейности, родил утверждение:

Ошибкой было бы думать, что на уровне экспозиции -7-7.5EV от точки насыщения зеленого можно получить какой-то разумный цвет.

LibRaw Lite

почти копия анонса с сайта

По многочисленным заявкам нелюбителей GPL выпущена LibRaw-Lite

Как следует из названия, это облегченная версия LibRaw, основные отличия которой от полной версии таковы:

  • Лицензия LGPL, что позволяет использовать (немодифицированную) библиотеку в не-опенсорсных приложениях.
  • (увы) нет поддержки Foveon в силу лицензионных ограничений на этот кусок dcraw (откуда растут ноги у LibRaw). Мы работаем над этим и возможно предложим какую-то замену.
  • Нет целого ряда улучшений (сделанных нами относительно функциональности dcraw):
    • черная рамка (маскированные пикселы) не извлекается, эти пикселы приложению не доступны;
    • вычитание точки черного и прочая пред-интерполяционная обработка RAW-данных не отключается;
    • способ, которым получены цветовые данные (матрицы RGB-XYZ и т.п.) не запоминается;
    • нет поддержки OpenMP.

Другими словами, все то хорошее что мы сделали в расчете на разработчиков RAW-конверторов, анализаторов RAW и прочие программы, которым нужен доступ к исходным RAW-данным - в Lite-версии отсутствует.

Шумодав?

canon-450d.jpg Смотрю я, значит, на серый фон от своей любимой картинки снятый EOS 450D на двух чувствительностях, 100 и 200.

И видится мне, что на ISO100 оно заметно более шумное, стандартное отклонение в 1.5 раза отличается при одном уровне сигнала. И ладно бы, это было в обработанных кадрах, мало ли какой интеллект в конверторе, но ведь и в исходных данных разница в StdDev в те же полтора раза (смотрел в зеленом канале) при одном уровне сигнала. Разница устойчива и для кадров с недодержкой -1..-3EV, дальше не стал смотреть.

Никакого материалистического объяснения кроме шумодава перед записью RAW у меня нет, а у вас? Как детектировать шумодав, по мелким малоконтрастным деталям, которые должны съедаться? Какой бы объект поснимать.....

Динамический диапазон - 3

Одной строкой

Обрабатываю данные по ДД камеры 5D Mark II в духе вчерашнего текста. Получается что угадал с критерием (четко читаемый шрифт размером 20-25 пикселов и контрастностью 1 стоп):

Для более жесткого критерия (15 пикселов, 0.5 стопа) широта на ISO 25600 получилась бы 0 стопов, ибо читается только на одном кадре, который последний перед пересветом. И что с такой цифрой делать? Впрочем, что 25600 не предназначена для увеличений больше открытки я и так знал.

Динамический диапазон: вторая попытка

DR-image-8bit-small.jpg Эксперименты с газеткой дали мне вполне приличный объем данных о динамическом диапазоне камеры, однако продолжать упражняться с газеткой дальше (а ведь надо прощелкать полный диапазон чувствительностей, как минимум) мне не захотелось: критерии краев динамического диапазона все-таки были недостаточно четкими. Родилась идея сделать собственную мишень, для начала черно-белую.

Требований к такой мишени немного:

  • Известный контраст.
  • Несколько размеров деталей.
  • Отсутствие бликов.

Этим требованиям удовлетворяет мишень, напечатанная на струйном принтере "серым по серому" на матовой бумаге.

Динамический диапазон: первый подход к снаряду

Я уже столько раз ругался на измерения пресловутого ДД, что даже сбился со счета. Существующие в сети измерения меня не устраивают по куче причин:

  • Обычно методика описана очень приблизительно (при этом опубликованные результаты - странные).
  • Из (приблизительного) описания методики удается понять, что снималась контрастная мишень одним кадром, а такая съемка сама по себе проблемная по многим причинам:
  • Как правило, изучается различимость больших плашек, что не имеет большого смысла с точки зрения фотографической задачи: получения детализации в тенях и светах.

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

Еще раз о "динамическом диапазоне оптики"

5d-flare.jpg Эта тема уже обсуждалась, но на качественном уровне. Однако наделанный в последнее время инструментарий позволяет померять эффекты засветки количественно.

Сначала сформулируем вопросы:

  • Есть ли в системе оптика-камера значимое светорассеяние?
  • Каково же оно?

В прошлый раз я помещал в кадр светодиодный фонарик, который был стопов на 12 ярче сцены и получал подъем теней аж на стоп (это вполне видимо глазом на снимке). В этот раз захотелось измерить более тонкие эффекты и количественно, поэтому методика изменилась:

  • Берем монитор, заливаем его темно-серым (я брал R-G-B=6). Если ничем не заливать, то видна неравномерность подсветки.
  • Снимаем, чтобы это темно-серое гарантированно было выше уровня шумов камеры, но в глубокой тени. Я снимал с экспопоправкой (от спотметра) -5 EV, зная что общий динамический диапазон камеры (для больших плашек) никак не меньше 10 стопов, а вверх от спотметра есть запас чуть менее 4EV.
  • Выводим в углу монитора белый прямоугольник (см. картинку). На моем мониторе он на 8 стопов ярче "темно-серого", снимаем с той же экспозицией, что и в прошлый раз. Да, при этом контрасте белый прямоугольник еще не насыщен, даже в зеленом канале остается где-то треть стопа в светах. Т.е. можно говорить о довольно контрастной (8 стопов) сцене.
  • Усредняем серединки кадров необработанных данных (для извлечения необработанных данных использовалась программа 4channels из LibRaw, анализировался только зеленый канал) и сравниваем средние значения.

LibRaw 0.7 Release

Вышла LibRaw 0.7. В том смысле, что "не бета".

Поскольку эта версия полностью совместима (на уровне исходных текстов) с версиями 0.5 и 0.6, поддержка старых версий прекращается вот прямо сегодня.

Что нового

По отношению к 0.7-BETA5:
RAW-данные с сенсоров Fuji SuperCCD раскладываются по правильным цветовым каналам на этапе распаковки RAW, а не на фазе постпроцесинга, как оно было ранее.

Это важно для тех приложений, которые самостоятельно делают дебайеризацию и вообще постпроцессинг. Кроме того, пример 4channels стал правильно работать с файлами с вышеупомянутых камер.

По отношению к ветке 0.6.x:
  • Извлекаются (и доступны в приложении) данные черной рамки
  • Приложению доступны "совсем необработанные" RAW-данные: без вычитания точки черного, замазывания нулевых пикселов и наложенной тоновой кривой.
  • Новая input framework. На ее основе поддержано чтение из файла и из буфера в памяти, реализовать собственное чтение совсем несложно.
  • Для камер Fuji доступны исходные (неповернутые) позиции пикселов.
  • Новые тестовые приложения unprocessed_raw и 4channels, позволяющие посмотреть на непроцессированные данные.

Шумел камыш

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

Я на эту тему имею сказать следущее: у разных камер наблюдается существенная разница в понимании "чувствительности", что порождает серьезную методологическую проблему при оценке уровня шума.

Сначала о проблеме:

  • Вот, допустим, имеются камеры A и B, примерно одинаковой мегапиксельности и формата кадра.
  • Пусть, для удобства дальнейших рассуждений, максимальный уровень снимаемого сигнала (он же - приблизительно - разрядность АЦП) у этих камер одинаков, скажем 16000.
  • При формально одинаковой установленной чувствительности и одинаковой сцене - экспонометры на камерах покажут одинаковую экспозицию, совпадающую с показаниями внешнего экспонометра (разницей в методиках матричного замера пренебрежем, допустим мы замеряем серую карту спотметром).
  • Дальше мы экспонируем по экспонометру и получаем уровень сигнала в RAW для вышеупомянутой серой карты: для одной камеры - 1100, для другой - 2400 т.е. более чем вдвое (реальный headroom намеряный для современных 20+-мегапиксельных dSLR так и отличается, от 2.7 до 3.8 стопа).
  • В предположении, что уровень шума одинаков, получаем вдвое отличающееся отношение сигнал/шум.
  • Как следствие, при несколько разных методологиях мы можем получить заметно разные результаты (о чем я уже писал): одни напишут, что более шумная камера А, а другие - что камера B.

Другими словами, очень важное соображение о том, что "формальная" и "реальная" чувствительности - это две большие разницы не может игнорироваться методологией.

LibRaw 0.6.15 и 0.7-BETA5

Если вы используете LibRaw 0.6.14, то вам полезно было бы обновиться до 0.6.15. В предыдущей версии - обидная ошибка (переполнение) в генерации гамма-кривой.

Кроме того, в 0.6.15 и в 0.7-BETA5 инкорпорирована новая dcraw. Из существенного: улучшена и генерализована поддержка PEF-файлов Pentax.

качать отсюда

свежие версии LibRaw

Для читающих анонсы тут, а не на libraw.su/org

Вышли новые версии LibRaw. Все изменения довольно существенные:

  • Поддержан Pentax K2000/K-m
  • Поддержана правильная распаковка sRAW от Canon 5D Mark II с последней версией firmware
  • При использовании встроенного постпроцессинга можно задать свою gamma-curve (с опциональным линейным участком в начале)

Измерение чувствительности: работа с фильтрами

cc30m.jpgТретья статья из серии "экспонометрия цифровых камер" (точнее, конкретной камеры):

Экспозамер Canon 5D Mark II: дневной свет, magenta-фильтр

Как мы видели в статье про экспонометрию 5D Mark II при дневном свете, чувствительность цветовых каналов рассматриваемой цифровой камеры сильно отличается: разница в "экспонированности" зеленого и красного каналов составляет при дневном свете более одного "стопа", что в свою очередь приводит к заметному повышению относительного уровня шума в красном канале.

По всей видимости, производители ЦФК разбалансируют чувствительности вполне намеренно: при дневном свете освещения обычно достаточно, съемка ведется на невысоких чувствительностях и повышенный шум в красном канале незаметен. При искусственном же свете, которого обычно не хватает, эффективная чувствительность красного и зеленого почти выравниваются (т.к. спектральный состав освещения "более красный"), что при правильном экспонировании дает минимально-возможный уровень шумов в этих каналах.

Для некоторого выравнивания чувствительностей каналов в случае съемки при дневном свете можно использовать фильтр, поглощающий зеленый свет (т.е. цвета magenta, маркировка фильтра CCxxM). Конечно, такой фильтр имеет смысл только при достаточном освещении, когда использование фильтра не влечет увеличения используемой чувствительности. Для камер предыдущих поколений применение такого фильтра было весьма полезным.

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

читать статью →

5D Mark II и лампочка Ильича

lightbulb.jpg Проделал эксперименты с уровнем серого (или встроенной в камеру экспонометрией, это одно и то же) у Canon 5D Mark II при освещении лампой накаливания. Результаты мне кажутся вполне практическими.

Статья: Canon 5D Mark II: экспонометрия и запас в светах при свете ламп накаливания

Как и в прошлый раз, мне кажется разумным обсуждать под самим текстом статьи, но в качестве эксперимента оставляю разрешенными комментарии и тут.

Серая кошка в серой комнате

Эксперименты с определением точки серого у 5DmkII закончились вот таким вот текстом:

Уровень серого и "запас в светах" у цифровой камеры Canon 5D Mark II
Имеющиеся на сегодня способы определения чувствительности цифровых камер рассматривают не исходные RAW-данные, снятые с сенсора, а результат обработки RAW в конверторе (внешнем или внутрикамерном).

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

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

В то же время, очень простая серия экспериментов, не требующая никакого специального оборудования (кроме и так имеющихся у фотографа камеры и объектива) позволяет достаточно точно понять, как именно экспонирует ваша камера, а именно:

  • какой уровень сигнала (в терминах RAW-данных) получается при экспонировании "по экспонометру";
  • какой при этом остается "запас в светах" т.е. количество ступеней экспозиции от среднесерого уровня до уровня насыщения сенсора.

читать дальше →

Вообще, интересное соотношение. Минут 20 ушло на съемку тестов. Где-то часа полтора-два на обработку и построение графиков. А статья писалась всю неделю, естественно не целыми днями, а урывками по вечерам, но все-равно много.

Комментарии тут - закрываю, обсуждение - под статьей.

Познай свой инструмент: режимы замера у Canon 5D Mark II

583953.jpg Проделал эксперимент по съемке серой карты новой пятеркой, аналогичные тому, что я делал с Canon 450D. Удивился. Подумал о возможных источниках ошибок, переделал, контролируя все переменные. Опять удивился.

200 дятлов, склеенных встык

...представляют собой роскошное зрелище.

Если заниматься всякими странными измеризмами, то выясняется что у Nikon D3 сенсор склеен из двух половинок

И эти половинки - значимо разные, если снять ровную поверхность в расфокусе, то это отлично видно.

Загадка экспонометра

l4.jpg До сегодняшнего дня я был уверен, что с экспонометрией все более-менее просто и очевидно: меряем освещенность объекта и/или поток отраженного света от него, они отличаются в R(eflectance) раз, для некоего значения коэффициента отражения будут получаться одинаковые результаты замера, это самое R и есть константа калибровки экспонометра. Ну и в инструкции к экспонометру пишут эту самую R, называя ее K.

Чтение Тома Хогана укрепляло меня в уверенности что все несложно. При этом, я не задумывался, отчего у экспонометров почти всегда есть выбор между диском и сферой. Ну, из общих соображений понятно, что диск для одного основного источника, сфера - для нескольких и для рассеянного света.

Однако сегодня въедливые читатели указали, что не все так просто. Пришлось разбираться.

Еще о гистограммах

camera-histogram-2.jpg Почему-то никто из комментирующих вчерашний текст о чувствительности не захотел пойти дальше на один шаг. Все приходится делать самому:

Если точка серого занижена и конвертор (втч. внутрикамерный) делает пуш на 0.8-1.5 стопа, то ровно та же операция делается и для камерной гистограммы.

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

Уже где-то полгода мы вынашиваем планы по выпуску гаджета, который позволит кардинально улучшить качество съемки: это черная непрозрачная наклейка на экранчик камеры. Pro-версия должна быть не черной, а с характеристическими кривыми конкретной камеры при разных настройках и окошком для номера кадра.

Pages

Subscribe to Обработка RAW