Развенчивая миф о невозможности увидеть RAW

"Нет смысла обсуждать программы просмотра RAW-имиджей - RAW вообще увидеть нельзя, т.к. RAW не является изображением".

Как часто, к сожалению, приходится сталкиваться с мифом о том, что RAW не является изображением. Этот миф широко используется теми, кто пытается объяснить и "объективно" доказать, почему в принципе невозможно существование raw-вьюера и почему вполне достаточно того, что показывает большинство программ просмотра изображений, а именно, встроенного JPEG вместо RAW; гистограммы этого JPEG вместо гистограммы RAW; а также определение зон недодержки и передержки все по тому же JPEG, а не по RAW.

На самом же деле, RAW - это изображение. Просто это изображение закодированно отличным от традиционных способом. Чем же, по мнению некоторых, RAW отличается от традиционных изображений настолько, что они отказывают ему в праве называться изображением?

1. "Цвет RAW - неправильный"

Это обычная ситуация несовпадения цветовых пространств.

Любое изображение всегда - явно или неявно - задано в некотором цветовым пространстве, и игнорировать это пространство нельзя. Чтобы показать изображение "правильно", мы должны конвертировать это изображение из ассоциированного с ним цветового пространства в цветовое пространство монитора, в противном случае цвет выглядит неправильно, а порой и просто странно.

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

2. "RAW очень темные"

Здесь мы имееем дело с проблемой несоответствия гаммы (γ).

RAW-изображение линейно, т.е. имеет γ = 1.0 и, следовательно, оно будет выглядеть темным (недодержанным) и малоконтрастным, если ему не присвоить эту правильную гамму.

Сильно ли это отличает RAW от других изображений? Нет, т.к. любое "привычное" изображение может быть записано с любым значением γ. Для того, чтобы правильно показать изображение - будь то RAW, TIFF, JPEG или PNG, мы всегда компенсируем значение γ, в противном случае изображение будет выглядеть передержанным или недодержанным, с неверным контрастом.

Задачи 1. и 2. выше - это банальные задачи color management. Значит, тут мы отличий RAW от, скажем, TIFF не имеем вовсе никаких.

3. "RAW-данные - баеровская мозаика, полноцветного изображения в них нет"

Да, RAW-данные часто представляют собой байеровскую мозаику RGBG - иными словами, они не содержат тройки (R,G,B) для каждого пиксела. Что из того? Обычно для изображений в формате JPEG мы тоже не имеем полных цветовых данных для каждого пиксела. Более того, в JPEG вообше нет данных RGB, они получаются после распаковки, интерполяции и конвертации. Следовательно, в обоих случаях - и JPEG, и RAW - чтобы показать изображение, мы должны применить к нему некоторую раскодировку и интерполяцию. Однако при этом JPEG почему-то является признанным форматом изображений, а вот RAW почему-то нет. Не стоит ли признать, что RAW имеет не меньше прав считаться изображением, чем JPEG?

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

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