Отсечение динамического диапазона HDR и RAW, отображение и сжатие

Мое понимание рендеринга типичного файла RAW, который содержит 14 бит на канал, заключается в том, что он просто обрезается до 8 бит на канал, используемых большинством средств просмотра изображений. Предположительно камера по умолчанию должна брать среднюю часть этого диапазона, тогда как программы обработки позволяют пользователю сдвигать 8-битное «окно» влево и вправо.

Данные RAW можно рассматривать как частный случай данных HDR, которые могут быть созданы с 16 или более битами на канал. С помощью методов HDR мы не хотим обрезать данные, а вместо этого используем «тональную карту». Мое понимание тональной компрессии состоит в том, что это сюръективное преобразование, но оно требует построения пользователем. Т.е. нет тонального отображения по умолчанию.

Что мне интересно, так это то, предоставляют ли какие-либо программы отображение по умолчанию из HDR в 8-битные изображения, которое можно было бы назвать «сжатием», которое просто преобразует каждый пиксель HDR в 8-битный пиксель без обрезки (но, очевидно, теряет динамические детали по всему изображению). спектр).

Так, например, можно ли попросить «сжатый» рендеринг файла RAW в Lightroom? Для каждого канала это будет отображать 0 в 0 и 2 ^ 14 в 2 ^ 8, с другими значениями, отображаемыми линейно между ними.

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

14-битные данные подвергаются демозаике и градационной кривой (порядок может быть обратным), с применением цветового преобразования где-то после демозаики (то есть до применения градационной кривой или после нее). Вывод обычно 16-битный, промежуточные вычисления выполняются как минимум в 16-битном пространстве (сейчас все больше и больше конвертеров используют числа с плавающей запятой). Я ни разу не видел отсечения до 8 бит в конвертерах с 2001 года.
Ваше понимание «среднего среза» немного ошибочно. Данные с датчиков являются линейными, но зрители применяют S-образные кривые тонов. Нижняя треть или около того сжимается почти до тех же темных оттенков, середина сжимается лишь немного, а светлые участки снова сжимаются сильнее.
@МайклКларк: спасибо. Так что для RAW на каком-то этапе происходит нелинейное, но монотонное преобразование. Предположим, что это применяется до любого отсечения/отображения/сжатия, и тогда я считаю, что исходный вопрос остается в силе.
Не обязательно. Многие зрители предоставят вам «плоское» изображение, которое сжимает практически все 14 бит до 8 бит.
Ваше 8-битное окно можно сделать шире или уже, а также сдвинуть влево или вправо.
@MichaelClark Как изменить ширину окна в чем-то вроде Lightroom? Это настройка контраста?
Любая корректировка кривой блеска влияет на нее в той или иной степени. Я предполагаю, что один из способов взглянуть на это - ползунки уровня белого и уровня черного устанавливают «границы» с каждой стороны, ползунки контрастности устанавливают, насколько велика отображаемая разница между каждой границей, а ползунки яркости регулируют, где будет центр.

Ответы (1)

Данные RAW, линейно уменьшенные до 8 бит, приведут к очень плоскому, тусклому изображению с недостаточным контрастом. По этой причине конвертеры RAW применяют S-образную кривую, чтобы обеспечить гораздо больший контраст в средних тонах (если вы специально не просите что-то еще). В зависимости от того, где расположены конечные точки и плечи кривой, вы перемещаете область, которая получает максимальный контраст (контрастность определяется крутизной кривой в этой точке), увеличивая/уменьшая яркость и т. д.

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

Что мне интересно, так это то, предоставляют ли какие-либо программы отображение по умолчанию из HDR в 8-битные изображения, которое можно было бы назвать «сжатием», которое просто преобразует каждый пиксель HDR в 8-битный пиксель без обрезки (но, очевидно, теряет динамические детали по всему изображению). спектр).

«Изображение с высоким динамическим диапазоном» в прямом смысле ничем не отличается от изображения RAW (кроме шаблона Байера), они оба имеют более широкий динамический диапазон, чем могут быть отображены, просто у одного DR больше, чем у другого.

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

Представьте сценарий, о котором вы упоминали ранее, когда вы берете фрагмент данных для перехода от HDR к LDR, а теперь представьте, что окно смещается влево или вправо в зависимости от того, где вы находитесь на изображении. Это основы тональной компрессии. Происходит множество других вещей, но это то, что позволяет отображать HDR-изображение на устройстве с низким динамическим диапазоном (например, на обычном ЖК-мониторе).

Так, например, можно ли попросить «сжатый» рендеринг файла RAW в Lightroom? Для каждого канала это будет отображать 0 в 0 и 2 ^ 14 в 2 ^ 8, с другими значениями, отображаемыми линейно между ними.

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

Знаете ли вы, обрезаются ли данные RAW камерами, отображающими JPG, или Lightroom? Звучит так, как будто вы говорите, что они, вероятно, никогда не будут.
@feetwet Движок JPEG камеры, вероятно, немного обрезает тени, что касается лайтрума, это зависит от того, какие настройки вы применяете — если вы выкрутите ползунок экспозиции до упора, он обрежет блики!