Разрядность

Карпаты

Разрядность или глубина цвета цифрового изображения – это число двоичных разрядов (бит), используемых для кодирования цвета единичного пикселя.

Следует различать термины бит на канал (bpc – bits per channel) и бит на пиксель (bpp – bits per pixel). Разрядность по каждому из индивидуальных цветовых каналов измеряется в битах на канал, сумма же разрядов всех каналов выражается в битах на пиксель. Например, изображение в палитре Truecolor имеет разрядность 8 бит на канал, что эквивалентно 24 битам на пиксель, т.к. цвет каждого пикселя описывается тремя цветовыми каналами: красным, зелёным и синим (модель RGB).

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

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

Разрядность определяет максимальное количество оттенков, которые могут присутствовать в цветовой палитре данного изображения. Например, 8-битное чёрно-белое изображение может содержать до 28=256 градаций серого цвета. Цветное же 8-битное изображение может содержать по 256 градаций для каждого из трёх каналов (RGB), т.е. всего 28x3=16777216 уникальных комбинаций или цветовых оттенков.

Высокая разрядность особенно важна для корректного отображения плавных тональных или цветовых переходов. Любой градиент в цифровом изображении не является непрерывным изменением тона, а представляет собой ступенчатую последовательность дискретных значений цвета. Большое количество градаций создаёт иллюзию плавного перехода. Если же полутонов слишком мало, ступенчатость видна невооружённым глазом и изображение теряет реалистичность. Эффект возникновения визуально различимых скачков цвета в областях изображения, исходно содержащих плавные градиенты, называется постеризацией (от англ. poster – плакат), поскольку фотография, в которой недостаёт полутонов, становится похожей на плакат, отпечатанный с использованием ограниченного числа красок.

Разрядность в реальной жизни

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

1 бит
1 бит – 2 оттенка.

1 бит позволяет закодировать всего два цвета. В нашем случае это чёрный и белый.

2 бита
2 бита – 4 оттенка.

С появлением полутонов изображение перестаёт быть просто набором силуэтов, но всё равно смотрится довольно абстрактно.

3 бита
3 бита – 8 оттенков.

Уже различимы детали переднего плана. Полосатое небо – хороший пример постеризации.

4 бита
4 бита – 16 оттенков.

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

5 бит
5 бит – 32 оттенка.

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

6 бит
6 бит – 64 оттенка.

Горы уже почти в порядке, а вот небо по-прежнему выглядит ступенчато, особенно ближе к углам кадра.

7 бит
7 бит – 128 оттенков.

Мне не к чему придраться – все градиенты выглядят плавными.

8 бит
8 бит – 256 оттенков.

И вот перед вами исходная 8-битная фотография. 8 бит вполне достаточно для реалистичной передачи любых тональных переходов. На большинстве мониторов вы не заметите разницы между 7 и 8 битами, так что даже 8 бит могут показаться излишними. Но всё же стандартом для высококачественных цифровых изображений являются именно 8 бит на канал, чтобы с гарантированным запасом перекрыть способность человеческого глаза различать градации цвета.

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

При редактировании цифрового изображения тональные диапазоны могут как сжиматься, так и растягиваться, в результате чего часть значений постоянно отбрасывается или округляется, и в конечном итоге количество полутонов может упасть ниже того уровня, который необходим для плавной передачи тональных переходов. Визуально это проявляется в возникновении всё той же постеризации и прочих режущих глаз артефактов. Например, осветление теней на две ступени приводит к растягиванию диапазона яркостей в четыре раза, а значит, отредактированные участки 8-битной фотографии будут выглядеть так, как если бы они были взяты из 6-битного изображения, где ступенчатость очень даже заметна. Теперь представьте, что мы работаем с 16-битным изображением. 16 бит на канал означают 216=65535 цветовых градаций. Т.е. мы можем свободно выбросить большую часть полутонов и всё равно получить тональные переходы теоретически более плавные, чем в исходном 8-битном изображении. Информация, содержащаяся в 16 битах избыточна, но именно эта избыточность позволяет осуществлять самые смелые манипуляции с фотографией без видимых последствий для качества изображения.

12 или 14? 8 или 16?

Обычно фотограф сталкивается с необходимостью принимать решение о разрядности фотографии в трёх случаях: при выборе разрядности RAW-файла в настройках камеры (12 или 14 бит); при конвертации RAW-файла в TIFF или PSD для последующей обработки (8 или 16 бит) и при сохранении готовой фотографии для архива (8 или 16 бит).

Съёмка в RAW

Если ваша камера позволяет выбирать разрядность RAW-файла, то я однозначно рекомендую вам предпочесть максимальное значение. Обычно выбирать приходится между 12 и 14 битами. Дополнительные два бита лишь незначительно увеличат размер ваших файлов, но зато вы получите бо́льшую свободу при их редактировании. 12 бит позволяют закодировать 4096 уровней яркости, в то время как 14 бит – 16384 уровня, т.е. в четыре раза больше. Ввиду того, что самые важные и интенсивные преобразования снимка я провожу именно на стадии обработки в RAW-конвертере, мне бы не хотелось жертвовать ни единым битом информации на этом критическом для будущей фотографии этапе.

Конвертация в TIFF

Самый спорный этап – это момент конвертации отредактированного RAW-файла в 8- или 16-битный TIFF для дальнейшей обработки в Фотошопе. Весьма и весьма многие фотографы посоветуют вам конвертировать исключительно в 16-битный TIFF, и они будут правы, но только при условии, что вы собираетесь проводить в Фотошопе глубокую и всестороннюю обработку. Часто ли вы этим занимаетесь? Лично я – нет. Все фундаментальные преобразования я осуществляю в RAW-конвертере с 14-битным неинтерполированным файлом, а Фотошоп использую только для шлифовки деталей. Для таких мелочей, как точечная ретушь, избирательное осветление и затемнение, изменение размеров и повышение резкости обычно достаточно и 8 бит. Если я увижу, что фотография нуждается в агрессивной обработке (речь не идёт о коллажах и HDR), это будет означать, что я допустил серьёзную ошибку на стадии редактирования RAW-файла, и самым разумным решением будет вернуться и исправить её, вместо того, чтобы насиловать ни в чём не повинный TIFF. Если же фотография содержит какой-нибудь деликатный градиент, который я всё-таки захочу поправить в Фотошопе, то я без труда перейду в 16-битный режим, проведу там все необходимые манипуляции, после чего вернусь к 8 битам. Качество изображения при этом не пострадает.

Хранение

Для хранения уже обработанных фотографий я предпочитаю использовать либо 8-битный TIFF, либо JPEG, сохранённый в максимальном качестве. Мною движет стремление к экономии дискового пространства. 8-битный TIFF занимает вдвое меньше места, чем 16-битный, а JPEG, который в принципе может быть только 8-битным, даже в максимальном качестве примерно вдвое меньше 8-битного TIFF. Разница в том, что JPEG сжимает изображение с потерями данных, а TIFF поддерживает сжатие без потерь по алгоритму LZW. Мне не нужны 16 бит в финальном изображении, поскольку я не собираюсь его больше редактировать, иначе оно попросту не было бы финальным. Какую-то мелочь можно без труда поправить и в 8-битном файле (даже если это JPEG), но если мне приспичит провести глобальную цветокоррекцию или изменение контраста, то я скорее обращусь к исходному RAW-файлу, чем буду мучить уже сконвертированную фотографию, которая даже в 16-битном варианте не содержит всей необходимой для подобных преобразований информации.

Практика

Чтобы мои утверждения не показались вам голословными, проведём пару несложных экспериментов, а вы уж сами решите: нужны ли вам 16 бит или достаточно 8.

Лиственничная роща

Эта фотография сделана в лиственничной роще неподалёку от моего дома и сконвертированна с помощью Adobe Camera Raw. Открыв RAW-файл в ACR, я введу поправку экспозиции –4 EV, тем самым сымитировав недодержку в 4 ступени. Разумеется, никто в здравом уме не допускает подобных ошибок при редактировании RAW-файлов, но нам необходимо с помощью единственной переменной добиться идеально бездарной конвертации, которую мы затем попробуем исправить в Фотошопе. Изрядно потемневшее изображение я дважды сохраняю в формате TIFF: один файл с разрядностью 16 бит на канал, другой – 8.

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

-4 EV

Разница между 8 и 16 битами станет заметной только после того, как мы попытаемся осветлить фотографии, растягивая при этом диапазон яркостей. Для этого я воспользуюсь уровнями (Ctrl/Cmd+L).

Уровни

На гистограмме видно, что все тона изображения сконцентрированы в узком пике, прижавшемся к левому краю окна. Чтобы осветлить изображение, необходимо отсечь пустующую правую часть гистограммы, т.е. изменить значение точки белого цвета. Взявшись за правый ползунок входных уровней (точку белого), я подтягиваю его вплотную к правому краю сплющенной гистограммы, тем самым давая команду распределить все градации яркости между нетронутой точкой чёрного и заново обозначенной (15 вместо 255) точкой белого. Проделав эту операцию на обоих файлах, сравним результаты.

+4 EV, 16 бит
16 бит
+4 EV, 8 бит
8 бит

Даже в таком масштабе 8-битная фотография выглядит более зернистой. Увеличим до 100 %.

Исходное изображение
Исходное изображение
+4 EV, 16 бит
16 бит после осветления
+4 EV, 8 бит
8 бит после осветления

16-битное изображение неотличимо от оригинала, в то время как 8-битное сильно деградировало. Если бы мы имели дело с настоящей недодержкой, ситуация была бы ещё печальнее.

Очевидно, что столь интенсивные преобразования, как осветление фотографии на 4 ступени, действительно лучше проводить на 16-битном файле. Практическая же значимость этого тезиса зависит от того, как часто вам приходится исправлять подобный брак? Если часто, то вероятно вы что-то делаете не так.

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

Чтобы симулировать разрушительное, но потенциально обратимое редактирование, вновь обратимся к уровням.

Уровни

В ячейки выходных уровней (Output Levels) я ввожу 120 и 135. Теперь вместо доступных 256 градаций яркости (от 0 до 255) полезная информация будет занимать только 16 градаций (от 120 до 135).

- контраст

Фотография предсказуемо посерела. Изображение на месте, просто контраст уменьшился в 16 раз. Попробуем исправить содеянное, для чего снова применим к многострадальной фотографии уровни, но уже с новыми параметрами.

Уровни

Теперь я изменил входные уровни (Input Levels) на 120 и 135, т.е. придвинул точки чёрного и белого цвета к краям гистограммы, чтобы растянуть её на весь диапазон яркостей.

+ контраст, 8 бит

Контраст реанимирован, но постеризация заметна даже в мелком масштабе. Увеличим до 100 %.

+ контраст, 8 бит

Фотография безнадёжно испорчена. Оставшихся после безумного редактирования 16 полутонов явно недостаточно для хоть сколько-нибудь реалистичной сцены. Не означает ли это, что от 8 бит действительно нет никакого толку? Не торопитесь делать поспешные выводы – решающий эксперимент ещё впереди.

Вернёмся-ка снова к нетронутому 8-битному файлу и переведём его в 16-битный режим (Image>Mode>16 Bits/Channel), после чего повторим всю процедуру надругательства над фотографией, согласно описанному выше протоколу. После того, как контраст был варварски уничтожен, а затем вновь восстановлен, переведём изображение обратно в 8-битный режим.

+ контраст, 16 бит

Неужели всё в порядке? А если увеличить?

+ контраст, 16 бит

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

Иными словами, если вам предстоит ответственное редактирование 8-битной фотографии – превратите её в 16-битную и работайте, как ни в чём не бывало. Если даже настолько абсурдные манипуляции можно проводить с изображением не опасаясь за последствия для его качества, то уж тем более оно спокойно переживёт ту целесообразную обработку, которой вы действительно можете его подвергнуть.

Спасибо за внимание!

Василий А.

Post scriptum

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

Не забывайте о том, что данная статья является объектом авторского права. Перепечатка и цитирование допустимы при наличии действующей ссылки на первоисточник, причём используемый текст не должен ни коим образом искажаться или модифицироваться.

Желаю удачи!


Вернуться к разделу "Матчасть"

Перейти к полному списку статей