YCoCg - Википедия - YCoCg

В YCoCg цветовая модель, также известная как YCgCo цветовая модель, это цветовое пространство сформированный из простого преобразования ассоциированного RGB цветовое пространство в яркость значение (обозначается Y) и два цветность ценности, названные цветность зеленый (Cg) и цветность оранжевый (Со). Он поддерживается в проектах сжатия видео и изображений, таких как H.264 / MPEG-4 AVC, HEVC, ВВЦ, JPEG XR, и Дирак.[1] Прост в вычислении, имеет хороший преобразование выигрыша от кодирования, и может быть преобразован без потерь в RGB и обратно с меньшим количеством битов, чем требуется для других цветовых моделей. Версия с двусторонним масштабированием с еще более низким битовая глубина, YCoCg-R, также поддерживается в большинстве этих проектов и также используется в Сжатие потока дисплея. Более полное определение с переменной глубиной цвета Y и значениями цветности дано в ITU-T H.273.

Исходное изображение выше и представление отдельных компонентов Y, цветности зеленого Cg и цветности оранжевого Co.

История и нейминг

В самых ранних документах (около 2003 г.) эта цветовая модель обозначается как YCoCg. Впервые он был принят в качестве международного стандарта в H.264 / AVC (в его втором проекте профессиональных расширений), который в первую очередь был разработан для использования YCbCr цветовая модель. Когда он был принят, было отмечено, что компонент Co несет отклонение в сторону красного и, таким образом, более похож на Cr, чем на Cb, поэтому назначение сигнала и именование были переключены в стандарте, что привело к альтернативному имени YCgCo (YCgCo используется в ITU-T H.273).

Характеристики

Преимущества цветовой модели YCoCg перед YCbCr цветовая модель проще и быстрее вычисляется, лучше декорреляция цветовых плоскостей для улучшения качества сжатия и точной инвертируемости без потерь.[2][3]

Преобразование с использованием цветовой модели RGB

Три значения цветовой модели YCoCg вычисляются следующим образом из трех значений цвета цветовой модели RGB:

Значения Y находятся в диапазоне от 0 до 1, а Co и Cg находятся в диапазоне от -0,5 до 0,5, что типично для цветовых моделей "YCC", таких как YCbCr. Например, чистый красный цвет выражается в системе RGB как (1, 0, 0), а в системе YCoCg как (1/4, 1/2, −1/4).[2][3] Однако, поскольку коэффициенты матрицы преобразования являются простыми двоичными дробями, их легче вычислить, чем другие преобразования YCC. Для сигналов RGB с битовой глубиной п, либо результирующие сигналы затем округляются до п бит или обычно п+2 бита при обработке данных в таком виде (хотя п+1 бит будет достаточно для Co).

Обратная матрица преобразует цветовую модель YCoCg обратно в цветовую модель RGB:

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

tmp = Y   - Cg;р   = tmp + Co;грамм   = Y   + Cg;B   = tmp - Co;

Вариант YCoCg-R на основе лифтинга

Масштабированная версия преобразования, иногда называемая YCoCg-R (где «-R» означает обратимость), может быть эффективно реализована с уменьшенной битовой глубиной. В масштабированной версии используется схема подъема чтобы сделать его полностью обратимым, минимизируя битовую глубину трех компонентов цвета. Для сигналов RGB с битовой глубиной п, битовая глубина сигнала Y при использовании YCoCg-R будет п а битовая глубина Co и Cg будет п+1, в отличие от обычного YCoCg, который требует п+2 бита для Y и Cg и п+1 бит для Co.

Здесь возможные значения для Y все еще находятся в [0, 1], в то время как возможные значения для Co и Cg теперь находятся в [-1, 1].

Преобразование из RGB в YCoCg-R:

Co  = р - B;tmp = B + Co/2;Cg  = грамм - tmp;Y   = tmp + Cg/2;

Преобразование из YCoCg-R в RGB тогда:

tmp = Y - Cg/2;грамм   = Cg + tmp;B   = tmp - Co/2;р   = B + Co;

Повышение эффективности

Расширения кодирования содержимого экрана HEVC стандарт и ВВЦ Стандарт включают адаптивное преобразование цвета в процессе остаточного кодирования, которое соответствует переключению кодирования видео RGB в область YCoCg-R.

Использование цветового пространства YCoCg для кодирования видео RGB в HEVC кодирование содержимого экрана обнаружило значительный выигрыш при кодировании видео с потерями, но минимальный выигрыш при использовании YCoCg-R для кодирования видео без потерь.[4]

Литература

Рекомендации

  1. ^ «Спецификация Дирака» (PDF). BBC. п. 136. Архивировано с оригинал (pdf) на 2015-05-03. Получено 2010-05-04.
  2. ^ а б «YCoCg: цветовое пространство с обратимостью RGB» (ppt). Техасский университет в Арлингтоне. Получено 2010-05-02.
  3. ^ а б Яир Моше. «Поправка H.264: Расширение диапазона точности» (PDF). Лаборатория обработки сигналов и изображений (SIPL), Технион Израильский технологический институт. п. 15. Архивировано из оригинал (pdf) на 2014-10-06. Получено 2010-05-02.
  4. ^ Шань Лю; Сяочжун Сюй; Шаумин Лэй; Кевин Джоу (сентябрь 2015 г.). «Обзор расширений HEVC при кодировании содержимого экрана». п. 8.