sRGB - sRGB

sRGB
Стандартный RGB
Цветность SRGB CIE1931.svg
Цвета sRGB расположены в расчетной позиции на диаграмме цветности CIE 1931 . Яркость устанавливается таким образом, чтобы избежать появления ярких линий на дополнительных цветах основных цветов.
Родное имя
Положение дел Опубликовано
Впервые опубликовано 18 октября 1999 г . ; 21 год назад ( 1999-10-18 )
Организация IEC
Комитет TC / SC : TC 100 / TA 2
Домен Цветовое пространство , цветовая модель
Сокращенное название sRGB
Веб-сайт Интернет-магазин .iec .ch / публикации / 6169

sRGB - это стандартное цветовое пространство RGB (красный, зеленый, синий), которое HP и Microsoft совместно создали в 1996 году для использования на мониторах, принтерах и в Интернете . Впоследствии он был стандартизирован МЭК как IEC 61966-2-1: 1999. Его предшественник NIF RGB использовался во FlashPix и был почти таким же. Обычно предполагается, что это цветовое пространство для изображений, которые не содержат информации о цветовом пространстве, особенно если пиксели изображений хранятся в 8-битных целых числах на каждый цветовой канал .

sRGB использует основные цвета ITU-R BT.709 - такие же, как в студийных мониторах и HDTV - функцию передачи ( гамма ), типичную для ЭЛТ , и среду просмотра, разработанную для соответствия типичным условиям просмотра дома и в офисе. Эта спецификация позволяла напрямую отображать sRGB на типичных ЭЛТ-мониторах того времени, что в значительной степени способствовало его принятию. sYCC использует матрицу BT.601 YCbCr для кодирования в пространство расширенной гаммы, отрицательные значения R'G'B 'декодируются с использованием расширенной передаточной функции, sRGB не использует никакую матрицу Y'CbCr.

Цветовой охват sRGB

Цветность красный Зеленый Синий Белая точка
Икс 0,6400 0,3000 0,1500 0,3127
у 0,3300 0,6000 0,0600 0,3290
Y 0,2126 0,7152 0,0722 1,0000

sRGB определяет цветность красного, зеленого и синего основных цветов, цветов, в которых один из трех каналов не равен нулю, а два других равны нулю. Гамма из цветностей , которые могут быть представлены в SRGB является цветовым треугольник определяется этими праймериз. Как и в случае любого цветового пространства RGB , для неотрицательных значений R, G и B невозможно представить цвета за пределами этого треугольника, который находится внутри диапазона цветов, видимого человеку с нормальным трехцветным зрением.

Основные цвета поступают из HDTV ( Rec. 709 ), которое, в свою очередь, основано на цветном телевидении ( Rec. 601 ). Эти значения отражают приблизительный цвет потребительских люминофоров с ЭЛТ.

Функция передачи sRGB («гамма»)

На дисплее sRGB каждая сплошная полоса должна выглядеть такой же яркой, как и окружающий полосатый дизеринг. (Примечание: необходимо просматривать в исходном размере, 100% размер)

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

В отличие от большинства других цветовых пространств RGB, гамма sRGB не может быть выражена как одно числовое значение. Общая гамма составляет приблизительно 2,2, состоящая из линейного (гамма 1,0) участка рядом с черным и нелинейного участка в другом месте, включающего показатель степени 2,4 и гамму (наклон логарифмического выхода по сравнению с логарифмическим входом), изменяющийся от 1,0 до примерно 2,3. Назначение линейного участка состоит в том, чтобы кривая не имела бесконечного наклона в нуле, что могло бы вызвать численные проблемы.

Трансформация

От sRGB к CIE XYZ

Значения компонент SRGB , , находятся в диапазоне от 0 до 1 (значения в диапазоне от 0 до 255 следует разделить 255,0).

  • где находится , или .

Эти значения с расширенной гаммой (иногда называемые «линейными значениями» или «значениями линейного освещения») умножаются на матрицу для получения CIE XYZ:

Фактически это матрица для первичных цветов BT.709, а не только для sRGB, вторая строка - это коэффициенты матрицы BT.709-2 .

От CIE XYZ к sRGB

Значения CIE XYZ должны быть масштабированы так, чтобы Y для D65 («белый») был равен 1,0 ( X , Y , Z = 0,9505, 1,0000, 1,0890). Обычно это так, но некоторые цветовые пространства используют 100 или другие значения (например, в CIELAB , при использовании указанных точек белого).

Первым шагом в вычислении sRGB из CIE XYZ является линейное преобразование, которое может быть выполнено умножением матриц. (Числовые значения ниже соответствуют значениям в официальной спецификации sRGB, в которой исправлены небольшие ошибки округления в исходной публикации создателей sRGB, и предполагают использование стандартного колориметрического наблюдателя 2 ° для CIE XYZ.)

Эти линейные значения RGB не являются окончательным результатом; гамма-коррекция по-прежнему должна применяться. Следующая формула преобразует линейные значения в sRGB:

  • где находится , или .

Эти гамма-сжатые значения (иногда называемые «нелинейными значениями») обычно ограничиваются диапазоном от 0 до 1. Это ограничение может быть выполнено до или после расчета гаммы или как часть преобразования в 8 бит. Если требуются значения в диапазоне от 0 до 255, например, для отображения видео или 8-битной графики, обычным методом является умножение на 255 и округление до целого числа.

sYCC преобразование расширенной гаммы

Поправка 1 к МЭК 61966-2-1: 1999 описывает, как применять гамма-коррекцию к отрицательным значениям, применяя - f (- x ), когда x отрицательно (и f - линейные функции sRGB, описанные выше), как часть YCbCr определение. Это также используется scRGB .

Поправка 1 также рекомендует матрицу XYZ в RGB с более высокой точностью с использованием 7 десятичных знаков, чтобы более точно инвертировать матрицу RGB в XYZ (которая остается с точностью, показанной выше):

.

Теория трансформации

Ось x: закодированное значение
Левая ось y: эффективная локальная гамма
Правая ось y: интенсивность
График интенсивности sRGB в зависимости от числовых значений sRGB (красный) и наклон этой функции в логарифмическом пространстве (синий), который представляет собой эффективную гамму для каждого точка. Ниже сжатого значения 0,04045 или линейной интенсивности 0,00313 кривая является линейной, поэтому гамма равна 1. За красной кривой находится пунктирная черная кривая, показывающая точный степенной закон гаммы = 2,2.

Иногда говорят, что sRGB использует гамму 2,2, но приведенные выше преобразования показывают показатель степени 2,4. Это связано с тем, что чистым эффектом кусочного разложения обязательно является изменение мгновенной гаммы в каждой точке диапазона: она изменяется от гаммы = 1 при нуле до гаммы около 2,4 при максимальной интенсивности, со средним значением, близким к 2,2. Преобразование было разработано для аппроксимации гаммы около 2,2, но с линейной частью, близкой к нулю, чтобы избежать бесконечного наклона при K  = 0, который может вызвать численные проблемы.

Параметризуя кусочные формулы для использования 0,04045, 12,92 и 0,055, условие непрерывности в точке разрыва будет

Решение с помощью и стандартного значения дает два решения ≈ или . Стандарт IEC 61966-2-1 использует округленное значение , которое дает . Однако, если мы наложим условие, что и наклоны совпадают, тогда мы должны иметь

Теперь у нас есть два уравнения. Если мы возьмем за собой две неизвестные, и тогда мы сможем решить, чтобы дать

,

Подстановка и дает и с соответствующим порогом линейной области при . Эти значения, округленные до , и , иногда описывают преобразование SRGB. Публикации создателей sRGB округлены до и , следовательно (это также использовалось в FlashPix ), что привело к небольшому разрыву в кривой. Некоторые авторы приняли эти значения, несмотря на разрыв. Для стандарта округленное значение было сохранено, и значение было пересчитано, чтобы сделать полученную кривую непрерывной, как описано выше, что привело к разрыву наклона от 12,92 ниже точки пересечения до 12,70 выше.

Среда просмотра

Диаграмма цветности xy CIE 1931 , показывающая охват цветового пространства sRGB (треугольник). Внешняя кривая граница - это спектральный (или монохроматический) локус с длинами волн, показанными в нанометрах (отмеченными синим цветом). Это изображение нарисовано с использованием sRGB, поэтому цвета за пределами треугольника нельзя точно раскрасить, и они были интерполированы. D65 белая точка отображается в центре, и планковский локус показан с цветовой температурой , меченных в Кельвинах . D65 не является идеальным черным телом с температурой 6504 кельвина, потому что он основан на атмосферном фильтрованном дневном свете.
Параметр Ценить
Уровень яркости экрана 80 кд / м 2
Белая точка с подсветкой х = 0,3127, у = 0,3290 (D65)
Объемное отражение изображения 20% (~ средний серый)
Кодирование уровня внешней освещенности 64 люкс
Кодирование окружающей белой точки х = 0,3457, у = 0,3585 (D50)
Кодирование просмотра засветки 1,0%
Типичный уровень внешней освещенности 200 люкс
Типичная окружающая белая точка х = 0,3457, у = 0,3585 (D50)
Типичная обзорная вспышка 5,0%

Спецификация sRGB предполагает тускло освещенную среду кодирования (создания) с окружающей коррелированной цветовой температурой (CCT) 5003 K. Это отличается от CCT источника света (D65). Использование D50 для обоих сделало бы белую точку большинства фотобумаги чрезмерно синей. Другие параметры, такие как уровень яркости, характерны для типичного ЭЛТ-монитора.

Для получения оптимальных результатов ICC рекомендует использовать среду просмотра с кодированием (т. Е. Тусклое, рассеянное освещение), а не менее жесткую типичную среду просмотра.

использование

Сравнение некоторых цветовых гамм RGB и CMYK на диаграмме цветности xy CIE 1931

Из-за стандартизации sRGB в Интернете, на компьютерах и принтерах многие потребительские цифровые камеры и сканеры от низкого до среднего используют sRGB в качестве рабочего цветового пространства по умолчанию (или только доступного). Однако ПЗС потребительского уровня обычно не откалиброваны, а это означает, что даже несмотря на то, что изображение маркируется как sRGB, нельзя сделать вывод о том, что изображение является точным по цвету sRGB.

Если цветовое пространство изображения неизвестно, и это формат изображения от 8 до 16 бит, предположение, что оно находится в цветовом пространстве sRGB, является безопасным выбором. Профиль ICC может быть использован; ICC распространяет три таких профиля: два профиля, соответствующие версии 4 спецификации ICC, которую они рекомендуют, и один профиль, соответствующий версии 2, которая все еще широко используется. Версия 2 профиля ICC не поддерживает параметрическое кодирование кривой («пара»), поэтому для аппроксимации EOTF используется 1024 точки 1DLUT, что может быть неочевидно, чтобы увидеть, что это кусочно. Профиль Display P3 ICC кодирует передачу sRGB с использованием "para" кодирования g, a, b, c, d.

Поскольку гамма sRGB соответствует или превышает гамму струйных принтеров младшего класса , изображение sRGB часто считается удовлетворительным для домашней печати. Профессиональные издатели печатных изданий иногда избегают sRGB, потому что его цветовая гамма недостаточно велика, особенно в сине-зеленых тонах, чтобы включать все цвета, которые могут быть воспроизведены при печати CMYK . Изображения, предназначенные для профессиональной печати с использованием рабочего процесса с полным управлением цветом (например, допечатная подготовка ), иногда используют другое цветовое пространство, такое как Adobe RGB (1998) , которое обеспечивает более широкую гамму. Такие изображения, используемые в Интернете, можно преобразовать в sRGB с помощью инструментов управления цветом , которые обычно включены в программное обеспечение, работающее в этих других цветовых пространствах.

Два доминирующих интерфейса программирования для трехмерной графики, OpenGL и Direct3D , оба включают поддержку гамма-кривой sRGB. OpenGL поддерживает текстуры с SRGB гаммой цветовых компонентами закодированы (впервые введен с расширением EXT_texture_sRGB, добавленное к ядру в OpenGL 2.1) и рендерингом в SRGB гамма кодируются фреймбуфера (впервые введен с расширением EXT_framebuffer_sRGB, добавленное к ядру в OpenGL 3.0). Правильное отображение и интерполяция гамма-текстур sRGB имеет прямую аппаратную поддержку в модулях текстурирования большинства современных графических процессоров (например, nVidia GeForce 8 выполняет преобразование из 8-битной текстуры в линейные значения перед интерполяцией этих значений) и не имеет никакого снижения производительности.

использованная литература

Стандарты

  • IEC 61966-2-1: 1999 - официальная спецификация sRGB. Он предоставляет информацию о среде просмотра, кодировании и колориметрических характеристиках.
  • Поправка A1: 2003 к IEC 61966-2-1: 1999 описывает аналогичное кодирование sYCC для цветовых пространств YCbCr , кодирование RGB с расширенной гаммой и преобразование CIELAB .
  • sRGB , Международный цветовой консорциум
  • Четвертый рабочий проект IEC 61966-2-1 доступен в Интернете, но не является полным стандартом. Его можно скачать с www2.units.it .
  • Архивная копия sRGB.com , в настоящее время недоступная, содержит много информации о конструкции, принципах и использовании sRGB.

внешние ссылки