Бытует мнение, что «Canon краснит», а «Nikon зеленит». Безусловно, у каждой камеры есть свой характер цветопередачи, что особенно заметно при съемке в JPEG. Но нельзя недооценивать влияние процесса Raw-проявки, который обычно вносит существенные изменения в итоговую картинку. Основу цветового решения при этом составляет баланс белого.
Что такое баланс белого? Это поправка цвета, компенсирующая неспособность камеры к цветовой адаптации, которая является естественным свойством человеческого восприятия. В процессе Raw-конвертации это достигается установкой 4 коэффициентов экспозиции (умножения сигнала) для каждого канала исходных данных RGBG
Современные фотокамеры разрабатываются с учетом особенностей восприятия человека и при экспонировании отдают предпочтение зеленому каналу. По этой же причине зеленых пикселей на классической «байеровской» матрице в 2 раза больше, чем синих и красных. По сравнению с результирующим зеленым каналом (который вычисляется из двух) красный и синий экспонированы, как правило, меньше
В процессе расшифровки данных матрицы картинка приводится к привычному RGB-изображению. Для того чтобы при этом она перестала быть зеленой, необходимо подобрать определенные коэффициенты как минимум для красного и синего каналов. Это позволит привести все каналы в соответствие с результирующим зеленым и получить более-менее привычное по цвету изображение
Эта достаточно простая операция часто чрезмерно усложняется. Производители популярного программного обеспечения пытаются разрабатывать слишком сложные алгоритмы нелинейного вычисления баланса белого, далеко уходящие от простых коэффициентов умножения сигнала в каналах RGBG.
В результате этих сложных преобразований, дополненных к тому же неточной математикой (об этом чуть подробнее ниже) цвета часто определяются некорректно. Визуально это может выражаться, например, в чрезмерно красном цвете человеческих лиц и фиолетовом цвете теней, а также избыточном «расползании» нейтралей – нежелательном окрасе нейтральных областей паразитными оттенками.
Проблема некорректного баланса белого многократно усиливается при повышении контраста. Большинство операций, которые мы производим в конвертере, так или иначе сводятся к определенной форме контрастной кривой, которая применяется к изображению. Начиная от непосредственно кривой Curves, как правило, доступной в одной из панелей управления, и заканчивая основными ползунками – яркость, контраст, экспозиция, черная точка и другими.
Дело в том, что практически все (а может быть, вообще все) конвертеры сегодня используют алгоритмы работы со светлотой и контрастом через композитные кривые в одном из пространств RGB. Что при этом происходит с изначально неправильно рассчитанными, дисгармонично разбалансированными цветами? Рассмотрим пример.
Предположим, на определенном этапе обработки в Raw-конвертере мы решили сделать лица азиатских детей светлее и контрастнее
Посмотрим, что при этом произойдет
Изображение действительно стало светлее и контрастнее, но цвет лиц, на мой взгляд, получился слишком красным. Почему это произошло? Внимательно посмотрите на гистограмму лица мальчика в исходной фотографии
Обратите внимание на то, как распределяется информация по цветовым каналам в первоначальной картинке. Как видите, вклад красной составляющей в цвет данной области значительно больше, чем двух других. А применяем мы ко всем каналам одну и ту же кривую, так как работа ведется в пространстве RGB, где светлотой и контрастом управляет композитная RGB-кривая.
В итоге приведенная форма кривой перераспределяет светлотную информацию внутри каждого канала. Гистограмма красного канала показывает довольно сильный сдвиг вправо. В зеленом этот сдвиг значительно меньше, в синем минимален. То есть уже на этом этапе, еще до повышения контраста, цвет был избыточно красным. Это и есть проявление некорректной работы с балансом белого. Далее при повышении контраста этот исходный разбаланс мы делаем еще более заметным.