Цветовая субдискретизация понятным языком – немного отдаем, чтобы много выиграть

Автор: Michael J. McNamra, ProjectorCentral.com, 19 марта 2019

Вы когда-нибудь наблюдали сброс кадров или подзависания картинки во время воспроизведения фильмов в Full HD или 4K форматах с компьютера, медиасервера, или при трансляции потокового видео через интернет? Если да, то добро пожаловать в клуб! Это вполне обычные проблемы, связанные с пропускной способностью канала, которые, как правило, можно решить обновлением компьютера, интернет-службы, кабелей HDMI, или всех трех компонентов сразу.

Примечание ProjectorWorld: может быть проще понять данный термин, если вернуться к оригинальному английскому слову «subsampling». Если «Sampling» значит «брать замеры» — например параметры каждого пикселя, то с добавлением приставки «sub-» («под-») мы, стало быть, берем замеры не с каждого пикселя, а с некого их «подмножества». «Subsample» — это «выборка из выборки».

Однако, если бы не повсеместное использование цветовой субдискретизации и различных алгоритмов сжатия данных для хранения видео-данных на ваших Blu-ray и DVD-дисках, жестких дисках и серверах служб интернет-вещания, то проблема эта была бы куда более существенной и труднорешаемой. Все потому, что обе технологии работают сообща, существенно уменьшая требуемую пропускную способность канала и вычислительные мощности, необходимые для отображения видео в высоком разрешении и с частотой кадров 24, 30, 60, и даже 120 кадров в секунду. Без этих технологий лишь самые быстрые компьютеры и графические карты были бы в состоянии обработать и отобразить эти сотни мегабайт-в-секунду видео-данных, генерируемых фильмом в качестве 4K UHD HDR, при этом не сбрасывая кадры и без зависания картинки. К тому же, невероятно большой размер файлов, который потребовался бы для несжатых фильмов в Full HD и 4K, добавил бы много дополнительных часов или даже дней к времени их скачивания у служб потокового вещания; к тому же они бы быстро заполнили все дисковое пространство вашего ПК или медиасервера. Даже если ваше оборудование и интернет-подключение были бы в состоянии справиться с несжатым 4K-контентом, вам бы потребовались топовые кабели HDMI 2.1 и соответствующие интерфейсы у отображающего устройства, чтобы «пропихивать» несжатые видео-данные от плеера к устройству.

Цветовая субдискретизация использовалась с начала эпохи аналогового цветного телевидения, позволяя по узкой полосе пропускания, выделенной для каждого телеканала, одновременно передать черно-белое и цветное изображение, тем самым обеспечивая обратную совместимость с существующими черно-белыми телевизорами. Используемый в области аналогового сигнала термин «Y’UV» относится цветовой модели с субдискретизированным цветом, в которой подканал Y’ содержит нелинейный яркостный сингал* (информацию о яркости, соответствующую воспринимаемым яркости и детализации; в основном данные о яркости берутся из зеленого сигнала), тогда как субканалы U и V содержат цветовой компонент сигнала — красный и синий. Данная модель используется во всем мире для телевещания. Другая аналоговая модель, Y’PbPr, используется в основном для передачи компонентного видео по трем кабелям. В этой модели канал Y’ тоже содержит информацию о яркости (она же содержит основную часть данных, относящихся к цветности и детализации зеленого), тогда как каналы Pb и Pr содержат компонент цветовых данных «Синий минус яркость (Y)» и «Красный минус яркость»). Использование отдельного компонента сигнала для передачи информации о яркости в сочетании с двумя сигналами цветовых различий привело к экономии требуемой ширины канала по сравнению с аналоговым R, G, B сигналом, где каждый канал содержит собственный компонент яркости.

* Нелинейный сигнал, обозначаемый апострофом, означает, что к сигналу применена гамма-коррекция (прим. ProjectorWorld.ru)

Аналоговая модель Y’PbPr ближе соответствует современным цифровым моделям YCbCr и Y’Cb’Cr’ (яркость, цвет: синий; цвет: красный). Как и в аналоговых моделях, условный знак в виде апострофа означает, что изначальные значения для Красного, Зеленого и Синего пикселя, которые были получены камерой или сгенерированы в графическом приложении, были «субдискретизированы» нелинейным способом, который лучше учитывает различную чувствительность человеческого глаза к цветам и различным уровням яркости. Благодаря пониманию принципов работы глаза был сделан вывод, что именно данные о яркости являются наиболее важным компонентом, необходимым для того, чтобы видеть и различать объекты. При этом часть данных о цвете можно опустить без особого ущерба, в результате чего получаем сжатый сигнал, который экономит дисковое пространство и который проще передавать.

В данной статье мы сосредоточимся на трех наиболее широко используемых уровнях цветовой субдискретизации, которые можно обнаружить в рамках модели Y’Cb’Cr’. Эти уровни обычно выражаются в виде тройного отношения, которое соответствует значениям Y':C'b:C'r. Если вы истинный видеофил, то наверняка встречались с этими «4:4:4», «4:2:2» и «4:2:0». Такие отношения сообщают нам, примерно следующее: «4 доли яркости к 2-м долям цвета (синего) к 2-м долям цвета (красного).» Отношение 4:4:4 используется для описания «недискретизированных» данных R, G, B. Это означает, что в сигнале равные доли выделены на яркость, цветность синего и цветность красного. «4:4:4» полностью соответствует сигналу RGB, как показано на рисунке выше.

Высчитываем Y'C'bC'r: Таблица взята из описания стандарта BT.2100 и описывает, как значения Y'C'bC'r высчитываются из изначальных значений R’, G’ и B’, записанных камерой или созданных в графическом приложении. Обратите внимание, что яркостный компонент Y’ содержит преимущественно данные, полученные на основании зеленого канала цветности G’ и практически без участия данных из B’.

Алгоритмы цветовой субдискретизации были созданы чтобы использовать на практике более высокую чувствительность человеческого глаза к оттенкам зеленой части цветового спектра, чем к красной и синей. (Возможно, это результат долгой эволюции человеческого вида в окружении зеленых растений и лесов?) По этой причине яркостный компонент Y’ (см. таблицу выше) и содержит преимущественно данные, которые были получены из зеленого канала. По этой же причине зеленый канал в большинстве цифровых фотографий содержит больше полезных данных, на основании которых можно превратить цветную фотографию в черно-белую (см. фото ниже). Если вы снизите насыщенность цветов на телевизоре или проекторе, то полученные черно-белые изображения на экране будут созданы почти полностью из данных по яркостному каналу, в котором примерно 70% зеленого, 25% красного и лишь 5% синего. В связи с таким «перекосом» нашего зрения в сторону зеленого цвета, цветовая субдискретизация позволяет уменьшить объем информации по цветности, содержащейся в красном и синем каналах, экономя вплоть до 30% трафика (при использовании уровня сжатия 4:2:2) без заметной для большинства зрителей разницы в детализации, цвете или контрастности изображения.

Зеленый канал в большинстве цифровых фотографий вносит больший вклад в черно-белое изображение, чем красный или синий.

Сам по себе метод цветовой субдискретизации позволяет снизить размер файла и требования к полосе пропускания на 30-50% по сравнению с изначальным R, G, B форматом, не приводя при этом к значимой деградации качества изображения. Высший уровень качества 4:2:2 является практически «lossless-сжатием» (без потери качества), зачастую применяемым к изначальному видеоматериалу до монтажа и цветокоррекции, позволяя ускорить процесс редактирования и обработки. Запись у большинства полупрофессиональных видеокамер осуществляется именно в этом формате. В области профессионального кинопроизводства цветовая субдискретизация применяется лишь после того, как несжатый (4:4:4) RGB видеоряд смонтирован и сохранен в качестве мастер-копии. Затем, после цветовой субдискретизации, следует применение общего алгоритма сжатия, который может включать MJPEG, AVC, либо HEVC, каждый из которых потребует меньше вычислительных мощностей и времени для сжатия видео в 4:2:2, чем 4:4:4. Взятые вместе, эти различные методы сжатия данных способны уменьшить размер видеофайла в 5-20 раз, так и не достигнув уровня, при котором качество изображения станет неприемлемым.

Как работает цветовая субдискретизация?

4:4:4. В соответствии с приведенными выше толкованием стандарта BT.2100, данные по R, G, B, имеющиеся у каждого пикселя видеокадра, сперва используются для вычисления значений Y'C'bC'r для каждого пикселя. Рисунок выше показывает, как эти данные могли бы храниться в массивах по 8 ячеек – до того, как будет применена субдискретизация цветов. На данный момент нет никаких изменений ни относительно требуемого для хранения видеофайла пространства, ни качества изображения, ни точности цветов или их детализации.

4:2:2. Формат 4:2:2 считается навысшим уровнем субдискретизации и сохраняет всю информацию по каналу яркости Y’. (Все прочие описываемые нами уровни также сохраняют полную информацию по яркости, и лишь несколько записывающих устройств субдискретизируют яркостный канал до уровня 3 или 2). А вот значения C’b и C’r берутся в два раза реже по горизонтали, чем параметр яркости, и в итоге каждый второй пиксель в каждой строке массива пикселей хранится без данных C’b и C’r, экономя около 30% ширины канала и дискового пространства. Когда эти видеоданные открываются компьютерной программой, медиаплеером или способным напрямую обрабатывать видео в 4:2:2 устройством отображения, то сперва все доступные данные восстанавливаются в несжатом виде, а затем недостающие ячейки с данными C’b и C’r заполняются данными из соседних по горизонтали пикселей (это также называется интерполяцией).

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

4:2:0. Теперь все становится чуть запутаннее. При уровне субдискретизации 4:2:0, яркостному каналу все еще позволяется сохраняться в нетронутом виде, но C’b и C’r берутся в два раза реже – не только по вертикали, но и по горизонтали, что дает экономию полосы пропускания и места для хранения порядка 50%. Однако, для улучшения качества, данные, хранящиеся для каждого из оставшихся пикселей могут содержать «смесь» из выброшенных данных (см. рисунок). При этом используются два алгоритма. В итоге, при восстановлении исходного изображения видеоплеером, получается меньше артефактов, более плавные переходы между краями линий в изображении и более тонкие детали, чем если бы просто сохранялась цветность для одного пикселя из четырех (без «смешения» с соседними). Безусловно, более плавные края линий означают, что текст на контрастирующем фоне может выглядеть смазано или нечетко, но данный артефакт изображения также может быть виден при сравнении на компьютерном мониторе с его четким изображением форматов 4:2:2 и 4:4:4.

Заключительное слово по цветовой субдискретизации

Происходит ли заметно большее ухудшение качества изображение при использовании метода 4:2:0 по сравнению с 4:2:2, если наша цель — просмотр кинофильмов? Большинство зрителей, просмотревших любое количество Blu-ray дисков в 4K UHD (SDR и HDR) не согласятся с этим. Все потому, что формат цветовой субдискретизации 4:2:0 является неотъемлемой частью стандарта 4K UHD Blu-ray (наряду с невероятно эффективным общим алгоритмом сжатия HEVC) и используется для хранения практически всех фильмов, которые вы можете посмотреть с помощью сервисов кабельного ТВ или широкополосного интернет-вещания. Перед тем, как начать воспроизведение, обычный UHD Blu-ray 4K плеер проверяет информацию HDMI EDID, которая хранится в проекторе или другом устройстве, чтобы определить, способно ли оно напрямую работать с видео в формате 4:2:2. Большинство устройств способны работать с видео в 4:2:0 или 4:2:2, поэтому плеер сперва преобразует данные с диска в формат 4:2:2 перед тем, как отправлять их на экран. Если устройство отображения не совместимо с 4:2:2, то плеер может отправить на него данные в 4:2:0 или же преобразовать их в 4:4:4 перед отправкой на устройство.

Опираясь на эти крохи информации, большинство UHD Blu-ray плееров оказываются в состоянии отобразить видео даже в чуть лучшем качестве и с большей точностью цветов чем то, что вы можете получить с 4K UHD Blu-ray диска! Все что нужно – это 4K-видеокамера или цифровая зеркалка, либо графическое приложение, позволяющее записывать видео с глубиной цвета 10-12 бит на пиксель с использованием субдискретизации 4:2:2 (не 4:2:0) или даже 4:4:4. Отредактировав такие видеоролики и сохранив их в формате, таком как Apple ProRes 4:2:2, а затем сжав с использованием 10-битного HEVC, их после этого можно записать на USB 3.0 жесткий диск и подключить его к соответствующему разъему Blu-ray плеера, либо даже напрямую подключить этот диск к USB 3.0 разъему проектора или телевизора (если имеется). Поскольку плееру или отображающему устройству не приходится преобразовывать 4:2:0 в 4:2:2, то в тонких цветовых переходах должно сохраниться больше оттенков.

В любом случае, факт остается фактом: сжатие данных и цветовая субдискретизация в том или ином виде необходимы для того, чтобы позволить современным плеерам и отображающим устройствам справляться с видео в 4K-разрешении – и вы можете быть уверены, что эти технологии обретут еще большую значимость, когда широкого распространения достигнет 8K-контент и соответствующие отображающие устройства; особенно – учитывая ограничения по дисковым хранилищам и пропускной способности каналов широкополосного вещания. К счастью, в связи с большей плотностью пикселей у 8K-контента и дисплеев, видео в форматах 4:2:0 и 4:2:2 будет смотреться даже лучше чем сейчас, даже при отображения резкого текста на контрастирующем фоне.

Майкл Макнамара – бывший ответственный редактор технологического раздела журнала «Popular Photography» и признанный эксперт в таких областях, как оцифровка, хранение и технологии отображения. Он был удостоен ряда наград как фотограф и оператор и он также является владельцем In-Depth Focus Labs в Хопвелл Джанкшен, штат Нью Йорк.  

 

Нет комментариев

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.