Цветовые пространства YCbCr

YCbCr, Y’CbCr или Y Pb / Cb Pr / Cr , также записанный как YC B C R или Y’C B C R , представляет собой семейство цветовых пространств, используемых как часть контура цветного изображения в видео и цифровой фотографии системы. Y ‘- компонент яркости, а CB и CR — компоненты цветности с голубой и красной разностью. Y ‘(с простым) отличается от Y, что является яркостью, что означает, что интенсивность света нелинейно кодируется на основе гамма-коррекционных праймеров RGB.

Цветовые пространства Y’CbCr определяются математическим преобразованием координат из соответствующего цветового пространства RGB. Если базовое цветовое пространство RGB является абсолютным, цветовое пространство Y’CbCr также является абсолютным цветовым пространством;наоборот, если пространство RGB плохо определено, то и Y’CbCr.

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

YCbCr и Y’CbCr являются практическим приближением к обработке цвета и однородности восприятия, где первичные цвета, соответствующие примерно красным, зеленым и синим, обрабатываются в важную для восприятия информацию. Делая это, последующая обработка изображений, передачи и хранения изображений может выполнять операции и вводить ошибки с точки зрения восприятия. Y’CbCr используется для выделения сигнала яркости (Y ‘), который может быть сохранен с высоким разрешением или передан с высокой пропускной способностью, и двумя компонентами цветности (CB и CR), которые могут быть ограничены полосой, субдискретизированы, сжаты или иным образом обрабатываются отдельно для повышения эффективности системы.

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

YCbCr
YCbCr иногда сокращается до YCC. Y’CbCr часто называют YPbPr при использовании для аналогового компонентного видео, хотя термин Y’CbCr обычно используется для обеих систем с или без простого.

Y’CbCr часто путают с цветовым пространством YUV, и обычно термины YCbCr и YUV используются взаимозаменяемо, что приводит к некоторой путанице. Основное различие заключается в том, что YUV является аналоговым, а YCbCr является цифровым.

Сигналы Y’CbCr (до масштабирования и смещения, чтобы поместить сигналы в цифровую форму) называются YPbPr, и создаются из соответствующего гамма-настроенного RGB (красного, зеленого и синего) источника с использованием трех определенных констант KR, KG и KB следующим образом:


где K R , K G и K B обычно выведены из определения соответствующего пространства RGB и требуются для удовлетворения  ,(Эквивалентная матричная манипуляция часто упоминается как «цветовая матрица».)

Здесь используются простые «символы» гамма-коррекции; таким образом, R ‘, G’ и B ‘номинально находятся в диапазоне от 0 до 1, причем 0 представляет минимальную интенсивность (например, для отображения цветного черного) и 1 максимум (например, для отображения белого цвета).Полученное значение яркости (Y) будет иметь номинальный диапазон от 0 до 1, а значения цветности (PB и PR) будут иметь номинальный диапазон от -0,5 до +0,5. Обратный процесс преобразования может быть легко получен путем инвертирования приведенных выше уравнений.

При представлении сигналов в цифровой форме результаты масштабируются и округляются, и обычно добавляются смещения. Например, масштабирование и смещение, применяемые к компоненту Y для каждой спецификации (например, MPEG-2), приводят к значению 16 для черного, а значение 235 для белого — при использовании 8-битного представления. Стандарт имеет 8-битные оцифрованные версии CB и CR, масштабированные в различном диапазоне от 16 до 240. Следовательно, при выполнении цветовой матрицы иногда требуется масштабирование фракцией (235-16) / (240-16) = 219/224 или обработки в пространстве YCbCr, что приводит к искажениям квантования, когда последующая обработка не выполняется с использованием более высоких битовых глубин.

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

Значение 235 вмещает максимальное отклонение от черного к белому от 255 до 235 = 20 или 20 / (235 — 16) = 9,1%, что немного больше теоретического максимального превышения (феномен Гиббса) около 8,9% максимальный шаг. Носовая палата меньше, что позволяет преодолеть только 16/219 = 7,3%, что меньше теоретического максимального превышения 8,9%.

Так как уравнения, определяющие YCbCr, формируются таким образом, что он вращает весь номинальный цветовой куб RGB и масштабирует его, чтобы он соответствовал цветному кубу YCbCr (большие), в цветовом кубе YCbCr есть некоторые точки, которые не могут быть представлены в соответствующем домене RGB (по крайней мере, не в пределах номинального диапазона RGB). Это создает определенные трудности при определении того, как правильно интерпретировать и отображать некоторые сигналы YCbCr. Эти значения вне диапазона YCbCr используются xvYCC для кодирования цветов вне диапазона BT.709.

Преобразование RGB в YCbCr

Преобразование ITU-R BT.601
Форма Y’CbCr, которая была определена для использования телевидения стандартного разрешения в стандарте ITU-R BT.601 (ранее CCIR 601) для использования с цифровым компонентным видео, получена из соответствующего пространства RGB следующим образом:


Из приведенных выше констант и формул для ITU-R BT.601 может быть выведено следующее.

Аналоговый YPbPr из аналогового R’G’B ‘получается следующим образом:


Цифровой Y’CbCr (8 бит на образец) получается из аналогового R’G’B ‘следующим образом:


или просто покомпонентно


Результирующие сигналы варьируются от 16 до 235 для Y ‘(диапазон Cb и Cr от 16 до 240); значения от 0 до 15 называются footroom, тогда как значения от 236 до 255 называются запасами.

Альтернативно, цифровой Y’CbCr может быть получен из цифрового R’dG’dB’d (8 бит на образец, каждый из которых использует полный диапазон с нулем, представляющим черный, и 255, представляющий белый) в соответствии со следующими уравнениями:


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

Если цифровой источник R’d G’d B’d включает в себя пространство для ног и запас высоты, смещение 16 для ног должно быть вычтено сначала от каждого сигнала, а масштабный коэффициент  должен быть включен в уравнения.

Обратное преобразование:


Обратное преобразование без каких-либо округлений (используя значения, исходящие непосредственно из рекомендации ITU-R BT.601):


Эта форма Y’CbCr используется в основном для более старых телевизионных систем стандартного разрешения, поскольку она использует модель RGB, которая соответствует характеристикам излучения люминофора старых ЭЛТ.

Преобразование ITU-R BT.709
Другая форма Y’CbCr указана в стандарте ITU-R BT.709, в первую очередь для использования HDTV. Более новая форма также используется в некоторых приложениях, ориентированных на компьютер. В этом случае значения Kb и Kr различаются, но формулы для их использования одинаковы.Для МСЭ-R BT.709 константами являются:


Эта форма Y’CbCr основана на модели RGB, которая более точно соответствует характеристикам излучения люминофора новых ЭЛТ и другого современного дисплейного оборудования.

Определения сигналов R ‘, G’ и B ‘также различаются между BT.709 и BT.601 и различаются в пределах BT.601 в зависимости от типа используемой телевизионной системы (625 строк, как в PAL и SECAM или 525, как в NTSC), и в других спецификациях они отличаются друг от друга. В различных конструкциях существует различие в определениях R, G, и координата Б цветности, ссылка белой точка, поддерживаемый диапазон цветовой гаммы, точная гамма предкомпенсация функция для получения R «G» и B»из R, G и B, а также в масштабировании и смещениях, которые должны применяться при преобразовании из R’G’B ‘в Y’CbCr. Поэтому правильное преобразование Y’CbCr из одной формы в другую — это не просто вопрос обращения одной матрицы и применения другой. Фактически, когда Y’CbCr спроектирован идеально, значения KB и KR получены из точной спецификации первичных сигналов цвета RGB, так что сигнал яркости (Y ‘) максимально приближен к гамма-скорректированному измерению яркости (обычно на основе измерений CIE 1931 отклика зрительной системы человека на цветовые стимулы).

Преобразование ITU-R BT.2020
В стандарте ITU-R BT.2020 определяются как исправленные гамма-кодировкой Y’CbCr, так и линейно кодированная версия YCbCr, называемая YcCbcCrc.YcCbcCrc может использоваться, когда верхний приоритет является наиболее точным сохранением информации о яркости. Для YcCbcCrc коэффициенты:


Преобразование JPEG
Использование JFIF в формате JPEG поддерживает Y’CbCr, где Y ‘, CB и CR имеют полный 8-битный диапазон [0 … 255]. Ниже приведены уравнения преобразования, выраженные в шесть десятичных цифр точности. (Для идеальных уравнений см. ITU-T T.871.) Заметим, что для следующих формул диапазон каждого входа (R, G, B) также является полным 8-битным диапазоном [0 … 255].


И назад:

Плоскость CbCr при Y = 0,5

Y = 0,5

Примечание: когда Y = 0, R, G и B должны быть равны нулю, значит, Cb и Cr могут быть равны нулю. Аналогично, когда Y = 1, R, G и B должны быть равны единице, таким образом, Cb и Cr могут быть равны нулю.

В отличие от R, G и B значения Y, Cb и Cr не являются независимыми; выбирая значения YCbCr произвольно, может привести к одному или нескольким значениям RGB, которые не соответствуют гамме, т.е. больше 1,0 или менее 0,0.