От фотонов до фотографии: от сырых данных к изображению

В коммерческих цифровых фотокамерах используются CMOS и CCD фотосенсоры, сходные с теми, которые используются в технических цифровых камерах. Отклик таких фотосенсоров прямо пропорционален зарегистрированному излучению (если только это не логарифмическая камера). Однако фотография, сделанная в линейном режиме, выглядит бледной и мало контрастной. Для того, чтобы такое изображение было похоже на фотографию, применяются различные методы обработки изображений: интерполяция, гамма-коррекция, контрастирования и прочие. В общем, если хотите узнать, что происходит внутри камеры и как получается изображение - читайте.

Большинство современных цифровых фотокамер поддерживают вывод данных в ``сыром'' формате. При использовании соответствующего программного обеспечения и параметров конвертации, возможно получить необработанные данные из ``сырых'' данных фотокамеры, которые необходимы для широкого круга задач обработки изображений. К таким программным конвертерам можно отнести конвертер RAW-файлов DCRAW.

Следует, впрочем, отметить, что не все RAW-файлы являются необработанными. В случае CMOS-фотосенсоров предварительное шумоподавление происходит уже на сенсоре (об этом чуть ниже). Более того, некоторые производители коммерческих цифровых камер применяют нелинейную компрессию RAW-файлов, например некоторые камеры Nikon:

Leaving off Uncompressed NEF is potentially significant--we've been
limited in our ability to post process highlight detail, since some of
it is destroyed in compression.<...> There is some loss of data, mostly in the form of lowered resolution in the highlights.
<...>

In another disturbing development in Nikon's RAW formats saga, it seems they are encrypting white balance information in the D2X and D50 NEF format.

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

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

0. Шумоподавление на чипе. Этот этап имеет место для CMOS фотосенсоров. Ещё до квантования из данных вычитается темновой пространственный шум (данные о шуме накапливаются в том же пикселе) и устраняется неоднородность усиления по столбцам (метод Correlated Double Sampling). Такие операции производятся прямо на пикселе (активные пиксели, технология 4/5Т) и электроникой камеры.

1. Квантование и запись сырых данных.
На этом этапе данные квантуются АЦП и записываются в память фотокамеры в виде RAW-файла. Этот файл содержит линейные данные и информацию об условиях съёмки (время экспозиции, диафрагма, значение ISO и проч.). Эти данные могут быть извлечены только специализированными конвертерами.

2. Удаление постоянной составляющей шума. На этом этапе конвертер вычитает из данных среднее значение шума чтения. Это значение вычисляется из данных ``вторичных пикселей'' (secondary pixels), закрытых от света и присутствующих на матрице (как правило, это ``рамка'' з пикселей толщиной 5-10 пикселей). Например, конвертер DCRAW при этом выводит диагностическое сообщение Scaling with black 256.

3. Цветовое масштабирование данных. Эта операция требуется для того, чтобы восстановить правильный баланс цветов на изображении. Для этого ``сырые'' данные в пикселях R G B G (составляющих баеровский шаблон светофильтров) умножаются на рассчитанные камерой константы. Например, DCRAW выводит такое диагностическое сообщение: multipliers 2.630775 1.000000 1.249379 1.000000, то есть пиксели R G B G умножаются соответственно на эти числа.

4. Цветовая интерполяция. Чтобы полутоновое изображение, каким является в RAW-файл, стало цветным, требуется восстановить недостающие цветовые компоненты для каждого пикселя: для пикселя R - синюю и зелёную компоненту, для G - красную и синюю, для B - красную и зелёную. Например, можно найти среднее между значениями ближайших соседних пикселей каждого цвета. Алгоритмы современных конвертеров более изощрённые, в результате чего артефактов на цветном изображении после интерполяции почти не заметно. Таким образом, изображение после интерполяции становится цветным.

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

6. Контрастирование.
Матрица фотоприёмника линейно реагирует на зарегистрированный свет, а отклик человеческого глаза на световое ощущение описывается сложной логарифмической кривой. Для того, чтобы изображение выглядело привычным для просмотра человеком, цветное изображение подвергается нелинейной коррекции яркости - гамма-коррекции. После этого цветное изображение, в котором учтён баланс белого, становится похожим на то, что видел глаз фотографа в видоискатель фотокамеры.

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

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



А казалось бы - простая вещь, цифровая фотокамера...

10 комментариев: |высказаться!| RSS-лента дискуссии.|
zbarassky комментирует...

Спасибо за сведение в единое место нужной информации, прекрасный материал.

virens комментирует...

2 zbarassky пишет...
Спасибо за сведение в единое место нужной информации, прекрасный материал.
Пожалуйста. На самом деле это материалы из моей кандидатской диссертации. Рад, что пригодилось :-)

Андрей комментирует...

приличный пост)

knyas комментирует...

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

Можно уточнить — каким пунктом заканчивается обработка в случае RAW-формата? 1 или 2?

tarusexpert комментирует...

Стараюсь не использовать шумоподавитель. Потому как пока эта опция глуповато работает. Может удалить какой-то нужный мелкий объект или появляется, как бы сказать, нарочитая сглаженность. Изображение становится "промытым".

virens комментирует...

2 knyas пишет...
Спасибо, отличная статья.
И вам спасибо :-)
На самом деле, этот пост из материалов моей диссертации, которую я надеюсь защитить :-)

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

Можно уточнить — каким пунктом заканчивается обработка в случае RAW-формата? 1 или 2?
Пунктом 2. Изображение с уже подавленными шумами (изображение 1 было имитировано мной).

2 tarusexpert пишет...
Стараюсь не использовать шумоподавитель.
Так там уже всё подавлено - это делается на электронике и ещё до RAW-формата. Так что RAW в современных CMOS-камерах не такой уж RAW.

Анонимный комментирует...

Т.е. в современных камерах "чистый" RAW уже никогда не получить?

virens комментирует...

2 Анонимный пишет...
Т.е. в современных камерах "чистый" RAW уже никогда не получить?
На CMOS камерах - никогда. Он уже с шумоподавлением. Даже в технических камерах это так (но меньше).

С другой стороны, а оно вам надо!?

Анонимный комментирует...

Спасибо за информацию! Очень познавательно.Если не затруднит ответить, хотелось бы узнать мнение: новая Кэнон 5Д Мк2 это только мегапиксели для "ширпотребов" или шаг вперед по сравнению с её мамой (вопрос возник по аналогии D400 vs D40)?
Сергей

Анонимный комментирует...

Спасибо за интересную статью! И кажется я знаю, кто может ответить на мой вопрос:) А вопрос такой - как
"бороться" с неотключаемым автобалансом белого в большинстве недорогих цифровых фотокамер? Допустим
при съемке я могу поместить с краю кадра белый лист
бумаги. Как/чем бы мне потом на полученной фотографии пересчитать цвета так, чтобы этот лист бумаги был белого(нейтрально-серого) цвета?

WatchCat

Отправить комментарий

Подписаться на RSS-ленту комментариев к этому посту.