Y′UV , также пишется YUV , это цветовая модель , используемая в стандарте аналогового цветного телевидения PAL . Цвет описывается компонентом Y′ ( яркостью ) и двумя компонентами цветности U и V. Символ штриха (') обозначает, что яркость рассчитывается на основе гамма-скорректированного входного сигнала RGB и что она отличается от истинной яркости . [1] Сегодня термин YUV обычно используется в компьютерной индустрии для описания цветовых пространств, которые кодируются с помощью YCbCr . [2]
В телевизионных форматах цветовая информация (U и V) добавлялась отдельно через поднесущую, так что черно-белый приемник по-прежнему мог принимать и отображать цветное изображение в исходном черно-белом формате приемника, без необходимости в дополнительной полосе пропускания.
Что касается этимологии, Y, Y′, U и V не являются сокращениями. Использование буквы Y для обозначения яркости можно проследить до выбора основных цветов XYZ . Это естественным образом приводит к использованию той же буквы в яркости (Y′), которая аппроксимирует перцептуально однородный коррелят яркости. Аналогично, U и V были выбраны для дифференциации осей U и V от осей в других пространствах, таких как пространство цветности x и y. См. уравнения ниже или сравните историческое развитие математики. [3] [4] [5]
Область применения терминов Y′UV, YUV, YCbCr, YPbPr и т. д. иногда неоднозначна и пересекается.
Все эти форматы основаны на компоненте яркости и двух компонентах цветности, описывающих разницу цвета от серого. Во всех форматах, кроме Y′IQ, каждый компонент цветности представляет собой масштабированную версию разницы между красным/синим и Y; основное различие заключается в используемых коэффициентах масштабирования, которые определяются основными цветами и предполагаемым числовым диапазоном (сравните использование U max и V max в § SDTV с BT.470 с фиксированным 1/2 в YCbCr § R'G'B' в Y'PbPr ). В Y′IQ плоскость UV повернута на 33°.
Y′UV был изобретен, когда инженеры хотели цветное телевидение в черно-белой инфраструктуре. [6] Им нужен был метод передачи сигнала, совместимый с черно-белым (B&W) телевидением, но при этом позволяющий добавлять цвет. Компонент яркости уже существовал как черно-белый сигнал; они добавили к нему УФ-сигнал в качестве решения.
Представление цветности в ультрафиолетовом диапазоне было выбрано вместо прямых сигналов R и B, поскольку U и V являются цветоразностными сигналами. Другими словами, сигналы U и V сообщают телевизору, что нужно сместить цвет определенного пятна, не изменяя его яркости. Или сигналы U и V сообщают монитору, что нужно сделать один цвет ярче за счет другого и на сколько его следует сместить. Чем выше (или ниже, если они отрицательные) значения U и V, тем более насыщенным (красочным) становится пятно. Чем ближе значения U и V к нулю, тем меньше сдвигается цвет, что означает, что красный, зеленый и синий свет будут более одинаково яркими, создавая более серое пятно. В этом преимущество использования цветоразностных сигналов, то есть вместо того, чтобы сообщать, сколько красного в цвете, он сообщает, насколько он более красный, чем зеленый или синий.
В свою очередь, это означало, что когда сигналы U и V были бы нулевыми или отсутствовали, он бы просто отображал изображение в оттенках серого . Если бы использовались R и B, они имели бы ненулевые значения даже в черно-белой сцене, требуя всех трех сигналов, несущих данные. Это было важно в ранние дни цветного телевидения, потому что старые черно-белые телевизионные сигналы не имели сигналов U и V, то есть цветной телевизор просто отображал бы его как черно-белый телевизор из коробки. Кроме того, черно-белые приемники могли бы принимать сигнал Y′ и игнорировать цветовые сигналы U- и V-, делая Y′UV обратно совместимым со всем существующим черно-белым оборудованием, входом и выходом. Если бы стандарт цветного телевидения не использовал цветоразностные сигналы, это могло бы означать, что цветной телевизор делал бы смешные цвета из черно-белой трансляции или ему потребовались бы дополнительные схемы для преобразования черно-белого сигнала в цветной.
Необходимо было назначить более узкую полосу пропускания для канала цветности, поскольку не было доступной дополнительной полосы пропускания. Если бы часть информации о яркости поступала через канал цветности (как это было бы, если бы использовались сигналы RB вместо дифференциальных сигналов UV), разрешение B&W было бы скомпрометировано. [7]
Сигналы Y′UV обычно создаются из источника RGB ( красный , зеленый и синий ). Взвешенные значения R, G и B суммируются для получения Y′, меры общей яркости или светимости. U и V вычисляются как масштабированные разности между Y′ и значениями B и R.
Стандарт PAL (NTSC использовал YIQ , который был дополнительно повернут) определяет следующие константы [8] , полученные из основных цветов системы M BT.470 и белой точки с использованием SMPTE RP 177 (те же константы, называемые матричными коэффициентами, использовались позже в BT.601 , хотя он использует 1/2 вместо 0,436 и 0,615):
Сигналы PAL в Y′UV вычисляются из R'G'B' (только SECAM IV использовал линейный RGB [9] ) следующим образом:
Результирующие диапазоны Y′, U и V соответственно составляют [0, 1], [− U max , U max ] и [− V max , V max ].
Инвертирование вышеуказанного преобразования преобразует Y′UV в RGB:
Эквивалентно, подставляя значения вместо констант и выражая их в виде матриц, получаем следующие формулы для BT.470 System M (PAL):
При малых значениях Y' можно получить отрицательные значения R, G или B, поэтому на практике мы ограничиваем результаты RGB интервалом [0,1] или, что более правильно, ограничиваем их пределами Y'CbCr.
В BT.470 была допущена ошибка, поскольку для синего цвета вместо 0,114 использовалось 0,115, и вместо 0,492 получился результат 0,493. На практике это не повлияло на декодеры, поскольку использовалось приближение 1/2,03. [10]
Для HDTV ATSC решила изменить базовые значения для W R и W B по сравнению с ранее выбранными значениями в системе SDTV. Для HDTV эти значения предоставлены Rec. 709. Это решение дополнительно повлияло на матрицу для преобразования Y′UV↔RGB , так что ее значения членов также немного отличаются. В результате, в SDTV и HDTV обычно возможны два различных представления Y′UV для любой тройки RGB: SDTV-Y′UV и HDTV-Y′UV. Это означает в деталях, что при прямом преобразовании между SDTV и HDTV информация о яркости (Y′) примерно одинакова, но представление информации о канале цветности (U и V) требует преобразования. Все еще охватывая цветовое пространство CIE 1931, цветовое пространство Rec. 709 почти идентично Rec. 601 и охватывает 35,9%. [11] В отличие от этого UHDTV с Rec. 2020 охватывает гораздо большую область, и поэтому для YCbCr была выведена своя собственная матрица (YUV/Y′UV отсутствует, поскольку аналоговое телевидение выведено из эксплуатации).
BT.709 определяет следующие значения веса:
Значения U max и V max взяты из приведенных выше данных.
Матрицы преобразования для аналоговой формы BT.709 следующие, но нет никаких доказательств того, что они когда-либо применялись на практике (вместо этого используется только фактически описанная форма BT.709, форма YCbCr ):
Основным преимуществом систем яркости/цветности, таких как Y′UV и ее родственников Y′IQ и YDbDr , является то, что они остаются совместимыми с черно-белым аналоговым телевидением (во многом благодаря работе Жоржа Валенси ). Канал Y′ сохраняет все данные, записанные черно-белыми камерами, поэтому он выдает сигнал, подходящий для приема на старых монохромных дисплеях. В этом случае U и V просто отбрасываются. При отображении цвета используются все три канала, и исходная информация RGB может быть декодирована.
Еще одним преимуществом Y′UV является то, что часть информации может быть отброшена для уменьшения полосы пропускания . Человеческий глаз имеет довольно низкую пространственную чувствительность к цвету: точность информации о яркости канала яркости оказывает гораздо большее влияние на детализацию изображения, чем точность двух других. Понимая этот человеческий недостаток, такие стандарты, как NTSC и PAL, значительно уменьшают полосу пропускания каналов цветности. (Пропускная способность находится во временной области, но она переводится в пространственную область по мере сканирования изображения.)
Поэтому полученные сигналы U и V могут быть существенно «сжаты». В системах NTSC (Y′IQ) и PAL сигналы цветности имели значительно более узкую полосу пропускания, чем сигналы яркости. Ранние версии NTSC быстро переключались между определенными цветами в идентичных областях изображения, чтобы заставить их казаться складывающимися друг с другом для человеческого глаза, в то время как все современные аналоговые и даже большинство цифровых видеостандартов используют цветовую субдискретизацию , записывая цветовую информацию изображения с пониженным разрешением. Сохраняется только половина горизонтального разрешения по сравнению с информацией о яркости (называемая цветовой субдискретизацией 4:2:2), и часто вертикальное разрешение также уменьшается вдвое (давая 4:2:0). Стандарт 4:x:x был принят из-за самого раннего цветового стандарта NTSC, который использовал цветовую субдискретизацию 4:1:1 (где горизонтальное цветовое разрешение делится на четверть, а вертикальное имеет полное разрешение), так что изображение имело только четверть цветового разрешения по сравнению с разрешением яркости. Сегодня только высококлассное оборудование, обрабатывающее несжатые сигналы, использует цветовую субдискретизацию 4:4:4 с идентичным разрешением как для яркостной, так и для цветовой информации.
Оси I и Q были выбраны в соответствии с полосой пропускания, необходимой человеческому зрению, одна из осей требовала наибольшей полосы пропускания, а другая (к счастью, под углом 90 градусов) — минимальной. Однако настоящая демодуляция I и Q была относительно более сложной, требовала двух аналоговых линий задержки, и приемники NTSC редко ее использовали.
Однако эта стратегия цветовой модуляции является потерями , особенно из-за перекрестных помех от яркости к проводу, несущему цветность, и наоборот, в аналоговом оборудовании (включая разъемы RCA для передачи цифрового сигнала, поскольку все, что они передают, это аналоговое композитное видео , которое является либо YUV, YIQ, либо даже CVBS ). Кроме того, NTSC и PAL кодируют цветные сигналы таким образом, что сигналы цветности и яркости с высокой пропускной способностью смешиваются друг с другом в попытке сохранить обратную совместимость с оборудованием черно-белого телевидения, что приводит к сползанию точек и перекрестным цветовым артефактам. Когда стандарт NTSC был создан в 1950-х годах, это не было реальной проблемой, поскольку качество изображения ограничивалось оборудованием монитора, а не принимаемым сигналом с ограниченной пропускной способностью. Однако современное телевидение сегодня способно отображать больше информации, чем содержится в этих сигналах с потерями. Чтобы идти в ногу с возможностями новых технологий отображения, с конца 1970-х годов предпринимались попытки сохранить больше сигнала Y′UV при передаче изображений, например, с помощью разъемов SCART (1977) и S-Video (1987).
Вместо Y′UV в качестве стандартного формата для (цифровых) общих алгоритмов сжатия видео , таких как MPEG-2 , использовался Y′CbCr . Цифровое телевидение и DVD сохраняют свои сжатые видеопотоки в формате MPEG-2, который использует полностью определенное цветовое пространство Y′CbCr, хотя и сохраняет установленный процесс цветовой субдискретизации. Cinepak , видеокодек 1991 года, использовал модифицированное цветовое пространство YUV 4:2:0. Профессиональный цифровой видеоформат CCIR 601 также использует Y′CbCr с общей скоростью цветовой субдискретизации 4:2:2, в первую очередь для совместимости с предыдущими стандартами аналогового видео. Этот поток можно легко смешать с любым необходимым выходным форматом.
Y′UV не является абсолютным цветовым пространством . Это способ кодирования информации RGB, и фактический отображаемый цвет зависит от фактических красителей RGB, используемых для отображения сигнала. Поэтому значение, выраженное как Y′UV, предсказуемо только в том случае, если используются стандартные красители RGB (т. е. фиксированный набор первичных цветностей или определенный набор красного, зеленого и синего).
Кроме того, диапазон цветов и яркостей (известный как цветовая гамма и цветовой объем) RGB (будь то BT.601 или Rec. 709) намного меньше, чем диапазон цветов и яркостей, разрешенных Y′UV. Это может быть очень важно при преобразовании из Y′UV (или Y′CbCr) в RGB, поскольку приведенные выше формулы могут давать «недопустимые» значения RGB, т. е. значения ниже 0% или намного выше 100% диапазона (например, за пределами стандартного диапазона яркости 16–235 (и диапазона цветности 16–240) для телевизоров и HD-контента или за пределами 0–255 для стандартного разрешения на ПК). Если с этими значениями не работать, они обычно будут «обрезаться» (т. е. ограничиваться) допустимым диапазоном затронутого канала. Это изменяет оттенок цвета, что крайне нежелательно, поэтому часто считается целесообразным обесцветить проблемные цвета так, чтобы они попадали в гамму RGB. [12]
Аналогично, когда RGB с заданной битовой глубиной преобразуется в YUV с той же битовой глубиной, несколько цветов RGB могут стать одним и тем же цветом Y′UV, что приведет к потере информации.
Y′UV часто используется как термин для YCbCr . Однако, хотя они и связаны, это разные форматы с разными масштабными коэффициентами; кроме того, в отличие от YCbCr, Y'UV исторически использовал два разных масштабных коэффициента для компонента U и компонента V. [13] Немасштабированная матрица используется в PhotoYCC от Photo CD . U и V — это биполярные сигналы, которые могут быть положительными или отрицательными и равны нулю для серых оттенков, тогда как YCbCr обычно масштабирует все каналы либо до диапазона 16–235, либо до диапазона 0–255, что делает Cb и Cr беззнаковыми величинами, которые равны 128 для серых оттенков.
Тем не менее, связь между ними в стандартном случае проста. В частности, каналы Y' обоих линейно связаны друг с другом, оба Cb и U линейно связаны с (BY), а оба Cr и V линейно связаны с (RY).