YCbCr , Y'CbCr или Y Pb / Cb Pr / Cr , также записываемое как YC B C R или Y'C B C R , представляет собой семейство цветовых пространств, используемых как часть конвейера цветного изображения в видео и цифровой фотографии. системы. Y '- компонент яркости, а C B и C R - компоненты цветности синего и красного цветов . Y '(со штрихом) отличается от Y, который представляет собой яркость , что означает, что интенсивность света нелинейно кодируется на основегамма-коррекция основных цветов RGB .
Цветовые пространства Y'CbCr определяются математическим преобразованием координат из связанных основных цветов RGB и белой точки. Если базовое цветовое пространство RGB является абсолютным, цветовое пространство Y'CbCr также является абсолютным цветовым пространством ; наоборот, если пространство RGB не определено, то и Y′CbCr тоже. Преобразование определено в ITU-T H.273 . Тем не менее это правило не распространяется на основные цвета DCI-D65, используемые Netflix с матрицей BT.2020-NCL.
Обоснование
Дисплеи с электронно-лучевой трубкой управляются красным, зеленым и синим сигналами напряжения, но эти сигналы RGB неэффективны в качестве представления для хранения и передачи, поскольку они имеют большую избыточность .
YCbCr и Y'CbCr представляют собой практическое приближение к обработке цвета и единообразию восприятия, где основные цвета, примерно соответствующие красному, зеленому и синему, обрабатываются в воспринимаемую значимую информацию. Таким образом, последующая обработка, передача и хранение изображений / видео могут выполнять операции и вносить ошибки значимыми для восприятия способами. Y'CbCr используется для разделения сигнала яркости (Y '), который может храниться с высоким разрешением или передаваться с высокой пропускной способностью, и двух компонентов цветности (C B и C R ), которые могут быть уменьшены в полосе пропускания, субдискретизированы, сжаты, или иным образом обрабатываются отдельно для повышения эффективности системы.
Одним из практических примеров может быть уменьшение полосы пропускания или разрешения, выделенного для «цвета» по сравнению с «черно-белым», поскольку люди более чувствительны к черно-белой информации (см. Пример изображения справа). Это называется субдискретизацией цветности .
YCbCr
YCbCr иногда сокращается до YCC . Y'CbCr часто называют YPbPr при использовании для аналогового компонентного видео, хотя термин Y'CbCr обычно используется для обеих систем, с штрихом или без него.
Y'CbCr часто путают с цветовым пространством YUV , и обычно термины YCbCr и YUV используются взаимозаменяемо, что приводит к некоторой путанице. Основное различие состоит в том, что YUV для аналогового телевидения, а YCbCr для цифрового телевидения, разница также в том, что U max и V max в YCbCr оба являются.
Сигналы Y'CbCr (до масштабирования и смещения для преобразования сигналов в цифровую форму) называются YPbPr и создаются из соответствующего источника RGB (красный, зеленый и синий) с корректировкой гаммы с использованием трех определенных констант K R , K G , и K B следующим образом:
где K R , K G и K B обычно выводятся из определения соответствующего пространства RGB и требуются, чтобы удовлетворять.
Эквивалентная манипуляция с матрицей часто называется «цветовой матрицей»:
И его обратное:
Здесь символы со штрихом (') означают , что используется гамма-коррекция ; таким образом, R ', G' и B 'номинально находятся в диапазоне от 0 до 1, где 0 представляет минимальную интенсивность (например, для отображения черного цвета ), а 1 - максимальную (например, для отображения белого цвета ). Результирующее значение яркости (Y) будет иметь номинальный диапазон от 0 до 1, а значения цветности (P B и P R ) будут иметь номинальный диапазон от -0,5 до +0,5. Процесс обратного преобразования может быть легко получен путем обращения приведенных выше уравнений.
При представлении сигналов в цифровой форме результаты масштабируются и округляются, и обычно добавляются смещения. Например, масштабирование и смещение, применяемые к компоненту Y 'согласно спецификации (например, MPEG-2 [1] ), приводят к значению 16 для черного и значению 235 для белого при использовании 8-битного представления. В стандарте есть 8-битные оцифрованные версии C B и C R, масштабированные в другой диапазон от 16 до 240. Следовательно, изменение масштаба на дробь (235-16) / (240-16) = 219/224 иногда требуется при выполнении цветовая матрица или обработка в пространстве YCbCr, приводящая к искажениям квантования, когда последующая обработка не выполняется с использованием более высоких битовых глубин.
Масштабирование, которое приводит к использованию меньшего диапазона цифровых значений, чем то, что могло бы показаться желательным для представления номинального диапазона входных данных, допускает некоторые «выбросы» и «недолеты» во время обработки без необходимости нежелательного ограничения . Эти « высота » и «потолок» [2] также могут использоваться для расширения номинальной цветовой гаммы , как указано в xvYCC .
Значение 235 соответствует максимальному выбросу от черного к белому в размере 255-235 = 20 или 20 / (235-16) = 9,1%, что немного больше теоретического максимального выброса ( Феномен Гиббса ), составляющего около 8,9% от максимальный шаг. Подошва меньше, допуская только 16/219 = 7,3% перерегулирования, что меньше теоретического максимального перерегулирования 8,9%. Но поскольку значения 0 и 255 зарезервированы в HDMI, на самом деле это немного меньше.
Поскольку уравнения, определяющие Y'CbCr, сформированы таким образом, что весь номинальный цветовой куб RGB вращается и масштабируется так, чтобы соответствовать (большему) цветовому кубу YCbCr, в цветовом кубе Y'CbCr есть некоторые точки, которые не могут быть представлены в соответствующий домен RGB (по крайней мере, не в номинальном диапазоне RGB). Это вызывает некоторые трудности в определении того, как правильно интерпретировать и отображать некоторые сигналы Y'CbCr. Эти значения Y'CbCr вне диапазона используются xvYCC для кодирования цветов вне диапазона BT.709.
Преобразование ITU-R BT.601
Форма Y'CbCr, которая была определена для использования телевидения стандартной четкости в стандарте ITU-R BT.601 (ранее CCIR 601 ) для использования с цифровым компонентным видео , получена из соответствующего пространства RGB (ITU-R BT.470- 6 основных параметров System M) следующим образом:
Из приведенных выше констант и формул для ITU-R BT.601 можно вывести следующее.
Аналог YPbPr из аналога R'G'B 'получается следующим образом:
Цифровой Y'CbCr (8 бит на выборку) выводится из аналогового R'G'B 'следующим образом:
или просто покомпонентно
Результирующие сигналы колеблются от 16 до 235 для Y '(Cb и Cr колеблются от 16 до 240); значения от 0 до 15 называются пространством для ног , а значения от 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 . Более новая форма также используется в некоторых приложениях, ориентированных на компьютерные дисплеи, как sRGB (хотя матрица, используемая для формы sRGB YCbCr, sYCC , по-прежнему BT.601). В этом случае значения Kb и Kr различаются, но формулы их использования одинаковы. Для ITU-R BT.709 константами являются:
Эта форма Y'CbCr основана на модели RGB, которая более точно соответствует характеристикам излучения люминофора новых ЭЛТ и другого современного оборудования для отображения. [ необходима цитата ] Матрицы преобразования для BT.709 следующие:
Определения сигналов R ', G' и B 'также различаются между BT.709 и BT.601 и различаются в BT.601 в зависимости от типа используемой телевизионной системы (625 строк, как в PAL и SECAM или 525-строчный, как в NTSC ), а также отличаются другими характеристиками. В разных конструкциях есть различия в определениях координат цветности R, G и B, опорной белой точки, поддерживаемого диапазона гаммы, точных функций предварительной компенсации гаммы для получения R ', G' и B 'из R, G и B, а также в масштабировании и смещениях, которые должны применяться во время преобразования из R'G'B 'в Y'CbCr. Таким образом, правильное преобразование Y'CbCr из одной формы в другую - это не просто вопрос инвертирования одной матрицы и применения другой. Фактически, когда Y'CbCr спроектирован идеально, значения K B и K R выводятся из точной спецификации основных цветовых сигналов RGB, так что сигнал яркости (Y ') соответствует как можно ближе к гамма- скорректированное измерение яркости (обычно основанное на измерениях реакции зрительной системы человека на цветовые стимулы CIE 1931). [3]
Преобразование ITU-R BT.2020
Стандарт ITU-R BT.2020 определяет как Y'CbCr с гамма-коррекцией BT.709, так и использование одной и той же гамма-коррекции (за исключением Y ', который рассчитывается по-другому), но с постоянной яркостью Cb, Cr, называемой YcCbcCrc. [4]
Для обоих коэффициенты равны:
Матрица декодирования BT.2020-NCL с 14 знаками после запятой:
Меньшие значения в матрице не округляются, это точные значения. Для систем с ограниченной точностью (например, 8 или 10 бит) может использоваться более низкая точность указанной выше матрицы, например, с сохранением только 6 цифр после десятичной точки. [5]
YcCbcCrc может использоваться, когда высшим приоритетом является наиболее точное сохранение информации о яркости. [4] Цветовое представление имеет истинную постоянную яркость (CL), когда канал яркости (Y 'из Y'CbCr, закодированный с передаточной функцией BT.709 или PQ, например) совпадает с закодированной яркостью (BT.709 или PQ-кодированная яркость Y из XYZ), тем не менее , YcCbcCrc не обеспечивает постоянной интенсивности (CI), что делается в IC T C P . [6] [7] BT.2020 не определяет PQ и, следовательно, HDR, он дополнительно определен в SMPTE ST 2084 и BT.2100 .
Вывод коэффициентов BT.2020 из праймериз BT.2020 еще больше меняет пространство. [8]
Преобразование SMPTE 240M
Стандарт SMPTE 240M определяет YCC с этими коэффициентами:
Коэффициенты выводятся из основных цветов SMPTE 170M и точки белого, используемых в стандарте 240M.
Преобразование JPEG
Использование JFIF JPEG поддерживает измененную Рек. 601 Y'CbCr, где Y ', C B и C R имеют полный 8-битный диапазон [0 ... 255]. [9] Ниже приведены уравнения преобразования, выраженные с точностью до шести десятичных знаков. (Идеальные уравнения см. В ITU-T T.871. [10] ) Обратите внимание, что для следующих формул диапазон каждого входа (R, G, B) также является полным 8-битным диапазоном [0 ... 255].
И назад:
Коэффициенты для основных цветов BT.470-6 System B, G
Эти коэффициенты не используются и никогда не использовались. [11]
Системы яркости на основе цветности
H.273 также описывает системы постоянной и непостоянной яркости, которые получены строго из основных цветов и точки белого, поэтому такие ситуации, как основные цвета sRGB / BT.709 по умолчанию для JPEG, которые используют матрицу BT.601 (которая получена из BT.470- 6 Система М) не бывает.
Рекомендации
- ^ например, спецификация MPEG-2 , ITU H.262 2000 E стр. 44 год
- ^ «MFNominalRange (mfobjects.h) - приложения Win32» . docs.microsoft.com . Дата обращения 10 ноября 2020 .
- ^ Чарльз Пойнтон, Digital Video и HDTV , глава 24, стр. 291-292, Morgan Kaufmann , 2003.
- ^ а б «BT.2020: Значения параметров для телевизионных систем сверхвысокой четкости для производства и международного обмена программами» . Международный союз электросвязи . Июнь 2014 . Проверено 8 сентября 2014 .
- ^ «ITU-T H Suppl. 18» . Октябрь 2017 г. hdl : 11.1002 / 1000/13441 .
- ^ «Телевидение с высоким динамическим диапазоном для производства и международного обмена программами» . www.itu.int . Проверено 16 января 2021 .
- ^ "Что такое ICtCp - Введение?" (PDF) .
- ^ «H.273: Независимые от кодирования кодовые точки для идентификации типа видеосигнала» . www.itu.int . п. 10 . Проверено 9 апреля 2021 .
- ^ Формат обмена файлами JPEG Версия 1.02
- ^ T.871: Информационные технологии - Цифровое сжатие и кодирование неподвижных изображений с непрерывным тоном: Формат обмена файлами JPEG (JFIF) . ITU-T . 11 сентября 2012 . Проверено 25 июля 2016 .
- ^ «EBU Tech 3237, Приложение 1» (PDF) . п. 18 . Проверено 15 апреля 2021 года .
Внешние ссылки
- Калькулятор Y'CbCr , включая BT.1886
- Чарльз Пойнтон - Часто задаваемые вопросы о цветах
- Чарльз Пойнтон - Видеоинженерия
- Визуализация цветового пространства
- Энциклопедия журнала PC: YCbCr
- Цветовые пространства YUV, YCbCr, YPbPr.