ycbcr что это такое

YCbCr

Y’CbCr не является абсолютным цветовым пространством, скорее, это способ кодирования информации сигналов RGB. Для систем отображения используются сигналы основных цветов RGB (красный, зеленый и синий). Эти сигналы не являются эффективными для хранения и передачи изображений, так как они имеют большую избыточность. Поэтому перевод в систему Y’CrCb позволяет передать информацию о яркости с полным разрешением, а для цветоразностных компонент произвести субдискретизацию, то есть выборку с уменьшением числа передаваемых элементов изображения, так как человеческий глаз менее чувствителен к перепадам цвета. Это повышает эффективность системы, позволяя уменьшить поток видеоданных. Значение, выраженное в Y’CbCr будет предсказуемо, если первично использовались сигналы основных цветов RGB.

Содержание

Формулы преобразования

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

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

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

где KB и KR коэффициенты, которые обычно выводятся из определения соответствующего пространства RGB.

При представлении сигналов в цифровой форме, результат нормируется и округляется, и, как правило, добавляется смещение. Так, например, нормирование и смещение, применяемое к компоненте Y’ согласно спецификации (например, MPEG-2 [1] ), приводит к значению 16 для черного и значению 235 для белого при использовании 8-битного представления. Стандарт имеет 8-битные цифровые версии Cb и Cr, нормированные в другом диапазоне: от 16 до 240.

Так как в пространстве YCRCB можно представить существенно более широкую гамму значений сигнала, чем поддерживаемая в соответствующих диапазонах сигналов R, G и B, то существует вероятность получения таких сигналов Y, CR и CB, которые, несмотря на пригодность каждого из них по отдельности, могут, при преобразовании к RGB, привести к получению значений, лежащих вне допустимых пределов. Это можно предотвратить наложенив ограничения на сигналы Y, CR и CB, также такие ограничения применяются для поддержания значений яркости и цветовых оттенков, при этом субъективные искажения минимизируются посредством потери только насыщенности цвета.

Преобразования по рекомендации ITU-R BT.601

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

Из приведенных выше констант и формул, могут быть получены следующие уравнения для МСЭ-R BT.601. Преобразование аналоговых компонент R’G’B’ в аналоговые YPbPr происходит следующим образом:

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

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

Полученные сигналы находятся в диапазоне от 16 до 235, значения от 0 до 15 и от 236 до 255 формируют два запасных диапазона.

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

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

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

Преобразования по рекомендации ITU-R BT.709

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

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

Определения сигналов R’G’B’ также отличаются между BT.709 и BT.601. Также они различны в BT.601 в зависимости от типа применяемой телевизионной системы (625 строк, как в PAL и SECAM или 525 строк, как в NTSC ), и отличаются некоторыми характеристиками. В разных системах существуют различия при определении координат цветности R, G, B, точкой отсчета белого цвета, поддерживаемой цветовой палитры, гамма-коррекции для получения R’G’B’ из RGB, а также нормирования и смещения, которые должны применяться во время преобразования из R’G’B’ к Y’CbCr. [2]

Читайте также:  к чему снится иголка с ниткой в руке шить

JPEG преобразования

Формат обмена файлами JPEG позволяет использовать Y’CbCr, где Y, CB и CR имеют полный 8-битный диапазон 0-255: [3]

Источник

YCbCr

Из Википедии — свободной энциклопедии

YCbCr, Y′CbCr, или Y Pb/Cb Pr/Cr, также пишется как Y’CBCR или YCBCR — семейство цветовых пространств, которые используются для передачи цветных изображений в компонентном видео и цифровой фотографии.

Y’ — компонента яркости, CB и CR являются синей и красной цветоразностными компонентами. Y’ (с апострофом) отличается от Y, которой обозначают яркость без предыскажения. Апостроф означает, что интенсивность света кодируется нелинейно с помощью гамма-коррекции.

Y’CbCr не является абсолютным цветовым пространством; скорее это способ кодирования информации сигналов RGB. Для систем отображения используются сигналы основных цветов RGB (красный, зелёный и синий). Эти сигналы не являются эффективными для хранения и передачи изображений, так как они имеют большую избыточность. Поэтому перевод в систему Y’CbCr позволяет передать информацию о яркости с полным разрешением, а для цветоразностных компонент произвести субдискретизацию, то есть выборку с уменьшением числа передаваемых элементов изображения, так как человеческий глаз менее чувствителен к перепадам цвета. Это повышает эффективность системы, позволяя уменьшить поток видеоданных. Значение, выраженное в Y’CbCr будет предсказуемо, если первично использовались сигналы основных цветов RGB.

Источник

Видеоинтерфейсы. Композитный и Компонентный

Содержание

Содержание

Чтобы создать цветную картинку на экране, от источника проводится передача данных о цвете и яркости каждой точки монитора или дисплея. Все обилие цветовой палитры передается путем «смешивания» 3-х основных цветов различной яркости (RGB). Само сокращение RGB расшифровывается как Red, Green, Blue (красный, зеленый, синий). Три цвета при максимальной яркости дают белую точку на экране, а их полное отсутствие — черную.

В зависимости от типа соединения (интерфейса) применяются разные форматы передачи этих данных на принимающее устройство. Оба интерфейса (композитный и компонентный) используют разъемы, получившие название RCA. Компания Radio Corporation of America (RCA) предложила его для стандарта соединений аудиоаппаратуры еще в далеком 1940 году. В России эти разъемы известны под названиями «тюльпаны» или «колокольчики».

Проводником между разъемами является коаксиальный кабель. В кабелях этого типа защитный экран от помех выполнен в одной оси с сердечником-проводником (co — совместно и axis — ось).

Сами по себе кабель и разъемы RCA идентичны (взаимозаменяемы) в обоих интерфейсах.

Композитный интерфейс

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

Это считается основным недостатком «композита», который ограничивает качество передаваемого видеосигнала. Композитный кабель, как правило, трехжильный. Желтым цветом обозначается разъем RCA для передачи видео, белым и красным (моно и 2-й канал стерео) — звуковые проводники. Технических различий в свойствах всех 3 жил кабеля нет. Цветовая маркировка необходима для прослеживания концов одного провода (вход-выход), чтобы пользователь их не перепутал.

Компонентный интерфейс

По мере развития видеоиндустрии повысились требования к качеству сигнала. Избалованный пользователь готов платить за картинку высокого качества. Так почему бы не предоставить ему желаемое? Интерфейс, в котором данные о цветности и яркости передаются каждый по своему каналу, не смешиваясь между собой, называется компонентным. Он выполнен аналогично 3х-жильному «композиту» с одним каналом для видео и двумя для стереозвука с разъемами RCA, но в «компоненте» по всем 3 каналам передается информация о видео. Для передачи аудиосигнала можно купить отдельный кабель или взять компонентный из 5 жил: 3 для видео, 2 для аудио.

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

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

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

Читайте также:  к чему снится зашивать губу

Отличие компонентного YPbPr от YCbCr

Сам компонентный разъем на устройствах может иметь 2 обозначения: YPbPr или YCbCr. По каналу, обозначаемому Y, передается сигнал уровня яркости. По каналу с обозначением b (blue) передается сигнал разности между яркостью и синим, а по каналу r (red) — сигнал разности между яркостью и красным цветом. Буквы P и С обозначают различные алгоритмы записи и считывания информации о цветовом пространстве изображения (последовательность и очередность кодирования). Разница между этими обозначениями заключается в типах формирования видео на экране. Их всего два: чересстрочная (i– interlaced, «интерлейс») и как альтернатива, прогрессивная развертки. При интерлейсе каждый кадр видео формируется из 2 «полукадров», напоминающих жалюзи. В первом полукадре проходит сигнал для «четных» строк изображения, во втором для «нечетных».

Это позволяет при одной и той же пропускной способности канала увеличить частоту изображения в 2 раза, по сравнению с прогрессивной разверткой.

При прогрессивной (p — progpessive) развертке каждый кадр передается целиком, построчно. Это убирает эффекты искажения. Пропадает «гребенка» при просмотре динамичных сцен. Нет половины строк, ожидающих обновления, но необходима удвоенная пропускная способность канала. Интерфейс YPbPr компонентного разъема означает, что это порт «универсал». Он поддерживает и прогрессивную, и интерлейс развертки.

Маркировка YCbCr говорит о том, что разъем поддерживает только чересстрочную развертку. На это стоит обратить особое внимание при подборе компонентов домашнего кинотеатра или при подключении видеокамеры к монитору/телевизору. В этом случае во время воспроизведения видео с неподдерживаемым типом развертки могут возникнуть искажения, а иногда просмотр вообще будет невозможен.

Так что же лучше?

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

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

В споре компонентного и композитного интерфейсов несомненно лучше «не складывать все цвета в одну корзину» и выбрать YPbPr-компонент. Хотя с победным наступлением эры 4К оба эти интерфейса рано или поздно канут в лету, так как через «колокольчики» RCA максимум возможна передача сигнала только в HD-разрешении.

Источник

Поддержка Икбкр JPEG

YCbCr пиксель Data потребляет значительно меньше памяти, чем стандартные форматы пикселей BGRA. Кроме того, доступ к данным YCbCr позволяет разгрузить некоторые этапы конвейера декодирования и кодирования JPEG в DIRECT2D, который поддерживает процессор с ускорителем. С помощью YCbCrприложение может сократить потребление памяти JPEG и время загрузки для тех же образов размеров и качества. Или приложение может использовать более высокое разрешение изображений JPEG, не низкий от потерь производительности.

В этом разделе описывается, как работают данные YCbCr и как использовать их в WIC и Direct2D.

О формате JPEG YCbCr Data

В этом разделе объясняются некоторые основные понятия, необходимые для понимания того, как работает YCbCr в WIC и его основные преимущества.

Цветовая модель YCbCr

компонент WIC в Windows 8 и более ранних версий поддерживает четыре различные цветовые модели, наиболее распространенный из которых — RGB/BGR. Эта цветовая модель определяет цвет данных с помощью красного, зеленого и синего компонентов; также можно использовать Четвертый альфа-компонент.

Ниже приведено изображение, разстоящее в красном, зеленом и синем компонентах.

YCbCr — это альтернативная цветовая модель, определяющая цветовые данные с помощью компонента освещенности (Y) и двух компонентов чроминанце (cb и cr). Она обычно используется в сценариях работы с цифровыми изображениями и видео. Термин YCbCr часто используется с YUV, хотя эти два являются неизменными.

Плоские и чередующиеся макеты памяти

В этом разделе описываются некоторые различия между доступом и хранением данных пикселей RGB в памяти и YCbCr Data.

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

Ниже приведен рисунок, показывающий пиксельные данные типа RGBA, хранящиеся в макете памяти с чередованием.

Данные YCbCr обычно хранятся с помощью плоского макета памяти. Это означает, что каждый компонент цвета хранится отдельно в отдельной непрерывной плоскости для всего трех плоскостей. В другой распространенной конфигурации компоненты Cb и cr чередуются и хранятся вместе, а компонент Y остается в собственной плоскости, что составляет всего две плоскости.

Читайте также:  awe что значит сленг

Подвыборка чрома

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

Один из способов сделать это называется подвыборкой чрома. Плоскости Cb и cr являются подвыборкой (довнскалед) в одном или обоих горизонтальных и вертикальных измерениях. По историческим причинам каждый чрома режим подвыборки часто именуется с использованием трех частей Ж:а: b.

Режим подвыборки Горизонтальное довнскале Вертикальный довнскале Бит на пиксель*
4:4:4 1x 1x 24
4:2:2 2x 1x 16
4:4:0 1x 2x 16
4:2:0 2x 2x 12

В приведенной выше таблице при использовании YCbCr для хранения несжатых данных изображения можно добиться экономии памяти от 25% до 62,5% относительно 32 бит на пиксельные данные RGBA в зависимости от того, какой режим подвыборки чрома используется.

Использование JPEG для YCbCr

На высоком уровне конвейер распаковки JPEG состоит из следующих этапов:

Использование JPEG YCbCr Data

Использование изображений в формате JPEG YCbCr

Подавляющее большинство изображений JPEG хранится в виде YCbCr. Некоторые файлы JPEG содержат данные CMYK или градации серого и не используют YCbCr. Это означает, что обычно, но не всегда, может напрямую использовать уже существующее содержимое JPEG без каких-либо изменений.

Windows API компонентов работы с образами

ивикпланарбитмапсаурцетрансформ

ивикпланарбитмапфраминкоде

Ивикпланарбитмапфраминкоде предоставляет возможность кодирования плоских данных пикселей, в том числе Yc bC r Data. Этот интерфейс можно получить, вызвав QueryInterface в реализации ивикбитмапфраминкодекодека JPEG.

ивикпланарформатконвертер

Ивикпланарформатконвертер позволяет ивикформатконвертер использовать данные плоской точки, включая Yc bC r, и преобразовывать их в формат пикселей с чередованием. Он не предоставляет возможность преобразования чередующихся данных пикселей в плоский формат. этот интерфейс можно получить, вызвав QueryInterface на Windows предоставленной реализации ивикформатконвертер.

API-интерфейсы Direct2D

Определение, поддерживается ли конфигурация YCbCr

Как отмечалось ранее, приложение должно быть устойчивым к случаям, когда поддержка YCbCr недоступна. В этом разделе обсуждаются условия, которые должно проверить приложение. При сбое любой из следующих проверок приложение должно вернуться к стандартному конвейеру на основе BGRA.

Поддерживается ли запрошенное преобразование WIC для YCbCr?

Поддерживает ли графический драйвер функции, необходимые для использования YCbCr с Direct2D?

Пример кода

Ниже приведен пример кода, демонстрирующий Рекомендуемые проверки. Этот пример взят из оптимизации Икбкр JPEG в примере Direct2D и WIC.

Декодирование данных YCbCr Pixel

Образец кода

Ниже приведен пример кода, демонстрирующий действия по декодированию и визуализации данных YCbCr в Direct2D. Этот пример взят из оптимизации Икбкр JPEG в примере Direct2D и WIC.

Преобразование данных YCbCr Pixel

Преобразование данных YC bC r практически идентично декодированию, как и в случае с ивикпланарбитмапсаурцетрансформ. Единственное отличие заключается в том, какой объект WIC получил интерфейс. Windows предоставленный масштабируемый объект, перелистывание вращения и преобразования цветов поддерживают YCbCr access.

Объединение преобразований

WIC поддерживает понятие объединения нескольких преобразований. Например, можно создать следующий конвейер WIC:

Оптимизация кодека JPEG

Кроме того, при сцеплении одного или нескольких преобразований WIC после декодера JPEG он может использовать собственное масштабирование и вращение JPEG для удовлетворения запрошенной операции агрегирования.

Преобразования формата

Используйте ивикпланарформатконвертер для преобразования плоских данных Yc bв C пикселей в формат ПИКСЕЛЕЙ с чередованием, например GUID _ WICPixelFormat32bppPBGRA. WIC в Windows 8.1 не обеспечивает возможность преобразования в плоский YCbC в формате пикселей.

Кодирование YCbCr пиксель Data

Используйте ивикпланарбитмапфраминкоде для кодирования данных Yc bC r x в кодировщик JPEG. Кодировка YC bData ивикпланарбитмапфраминкоде похожа, но не идентична кодированию данных с чередованием с помощью ивикбитмапфраминкоде. Плоский интерфейс предоставляет возможность записи данных изображения с плоскими кадрами, поэтому следует продолжать использовать интерфейс кодирования фрейма для установки метаданных или эскиза и фиксации в конце операции.

В типичном случае необходимо выполнить следующие действия.

Декодирование данных YCbCr Pixel в Windows 10

Дополнительные сведения об использовании ID2D1ImageSourceFromWicсм. в образцепакета SDK Direct2D Photo корректировок.

Источник

Обзорно-познавательный сайт