Принципиальная недостаточность цветового пространства RGB усугубляется скромными аппаратными возможностями современных сенсоров и отображающих устройств. Реальная чувствительность сенсоров в цифровых фотокамерах, как правило, не превышает 1000:1 (теоретически она может быть и выше, в зависимости от матрицы, но ограничена сверху шумовыми эффектами). На выходе камера может давать хоть 12-битный, хоть 112-битный RAW, однако на динамический диапазон записанного в файл изображения это не повлияет, поскольку в нем просто физически нет необходимой информации.

Мониторов, способных корректно отобразить 48-битную картинку с заявленным динамическим диапазоном, скажем, 10000:1, сегодня также не существует (за редкими и дорогими исключениями, но о них ниже).

Дополнительный минус модели RGB (и, например, CMYK) в том, что она виртуальна и не привязана к реальным значениям, то есть является физически некорректной – и не может быть приведена к корректной модели без потерь, раз уж все показатели в ней задаются целыми числами, и их набор ограничен. Исправляет эту ситуацию схема HDRI (High Dynamic Range Imaging), в которой на каждый цветовой канал отводится 16 или 32 бита, а характеристики задаются не целыми, а вещественными числами, что позволяет полностью описывать доступный человеческому зрению диапазон с нужным уровнем детализации. Все остальные модели (включая RGB) называют моделями с низким динамическим диапазоном (Low Dynamic Range).

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

Журнал «Компьютерра» № 18 от 16 мая 2006 года - _638a16o2.jpg

Изначально главными пропагандистами и пользователями HDRI были специалисты по трехмерной графике (см., например, статью «Фотореализм» в «КТ» #628), поскольку использование HDR позволяет без потерь и ошибок рассчитать освещенность созданной сцены. И пусть большую часть этой информации отобразить не удастся – даже те крохи, которые дойдут до зрителя, все равно создадут должный эффект и сделают искусственную картинку более реалистичной. И сегодня аббревиатура HDR в применении к компьютерной графике означает прежде всего повышенную фотореалистичность изображения, близость к тому, что можно получить с помощью фотоаппарата или кинокамеры.

Как ни странно, применение схожей технологии в фотографии дает обратный результат. У фотографов, экспериментирующих с HDR, получаются безумно красивые снимки, не страдающие излишней реалистичностью. Собственно, первое, что приходит в голову при знакомстве с HDRI-фотографиями, – как же здорово эти люди научились рисовать в 3D.

Дело о недостаточной освещенности
Журнал «Компьютерра» № 18 от 16 мая 2006 года - _638o16o3.jpg

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

До последнего времени фотографу оставалось либо подобрать другую композицию, с меньшей разницей между светом и тенью, либо сложить штатив и пойти домой.

Наглядный пример подобной «неудобной» композиции – снимок из затемненной арки, сделанный в солнечный день. Человеческий глаз прекрасно различает и детали внутренней отделки, и то, что находится за ее пределами. Однако на снимке хорошо получится либо интерьер (при засвеченном выходе из туннеля), либо пейзаж, обрамленный в черную аркоподобную рамку (не исключены и промежуточные варианты, когда и в арке, и за ее пределами что-то можно разглядеть, но они обычно не более приятны глазу, нежели описанные крайности).

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

Любую инструкцию о создании HDR-изображений в домашних условиях можно свести к следующим пунктам:

1. Установите фотоаппарат на штатив.

2. Сделайте несколько снимков с разной экспозицией так, чтобы максимально охватить диапазон сцены (например: –2EV, оптимальное значение экспозиции, +2EV).

3. Полученные файлы совместите в одном из программных продуктов для работы с HDR-изображениями (HDRShop, PhotoMatrix, Photoshop CS2 и т. п.).

4. Преобразуйте ваше HDR-изображение в RGB для просмотра на обычном мониторе.

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

Журнал «Компьютерра» № 18 от 16 мая 2006 года - _638d16y4.jpg
Журнал «Компьютерра» № 18 от 16 мая 2006 года - _638j16l5.jpg

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

Самая большая проблема возникает на четвертом шаге, когда полученное HDR-изображение нужно приводить к печальному, но общему знаменателю. Другими словами, избавляться от плавающей запятой и возвращаться в цветовое пространство RGB, поскольку на непосредственно RGB-мониторе просмотреть HDR-изображение невозможно. Алгоритмы обратной конвертации могут работать как с учетом контекста, в котором размещен пиксел (локальные), так и без оного (глобальные), когда весь динамический диапазон HDR без затей проецируется на RGB.

Дело о недостаточной информации

Возникает вопрос: если задача только в том, чтобы добавить на снимок недостающие детали, то зачем нужны все эти лишние преобразования, раз конечный результат все равно выводится в RGB? Вопрос совершенно правомерен. Мы действительно можем взять всего два изображения (с экспозицией для «теней» и для «светлых областей») и сделать из них одно. Более того, такой подход скорее даст натурально выглядящий снимок, чем совмещение нескольких кадров в HDR и последующая конвертация в RGB. Но, во-первых, на сценах с широким диапазоном такой подход может и не сработать; во-вторых, это не так интересно; а в-третьих, HDR-изображения за последний год-два приобрели популярность, во многом благодаря некоторой искусственности. Во многих случаях ее наверняка можно было бы избежать или хотя бы уменьшить, однако авторы снимков порой специально выставляют настройки так, чтобы придать фотографиям некий налет «нездешности».

Журнал «Компьютерра» № 18 от 16 мая 2006 года - _638v16g6.jpg

Еще один способ обойтись без HDR при вытягивании фотографий – использование в качестве исходника одного файла RAW (который, конечно, содержит избыточную – по сравнению с JPEG или TIFF – информацию об изображении). В результате манипуляций с уровнями экспозиции при конвертации RAW действительно можно получить несколько отличающихся друг от друга изображений, а затем совместить их и создать некую общую картинку, взявшую все самое лучшее от этих полуфабрикатов. Однако недостающая информация о яркостном диапазоне сцены сама по себе ниоткуда не появится. Не исключено, что изображение действительно станет лучше (контрастней), но того же эффекта можно добиться и более простыми средствами. Тем не менее, эта технология многим симпатична, потому что, в отличие от HDR, позволяет «улучшать» кадры, на которых есть движущиеся объекты, да и необходимость в штативе отпадает.