
sRGB - это стандартное [1] цветовое пространство RGB (красный, зеленый, синий), которое HP и Microsoft совместно создали в 1996 году для использования на мониторах, принтерах и в Интернете . Впоследствии он был стандартизирован МЭК как IEC 61966-2-1: 1999. [2] Его предшественник NIF RGB использовался во FlashPix и был почти таким же. [3] Часто это цветовое пространство «по умолчанию» для изображений, которые не содержат информации о цветовом пространстве, особенно если пиксели изображений хранятся в 8-битных целых числах на каждый цветовой канал .
SRGB использует ITU-R BT.709 праймериз, то же самое , как и в студийных мониторов и HDTV , [4] передаточная функция ( гамма ) , характерные для ЭЛТ и просмотра среда , предназначенная для соответствия типичных домашних и офисных условий просмотра. Эта спецификация позволяла напрямую отображать sRGB на типичных ЭЛТ-мониторах того времени, что в значительной степени способствовало его принятию.
Цветовой охват sRGB [ править ]
Цветность | красный | Зеленый | Синий | Белая точка |
---|---|---|---|---|
Икс | 0,6400 | 0,3000 | 0,1500 | 0,3127 |
y | 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 ("гамма") [ править ]
ось yL - эффективная локальная гамма;
ось yR - интенсивность.
График зависимости интенсивности sRGB от числовых значений sRGB (красный) и наклона этой функции в логарифмическом пространстве (синий), который представляет собой эффективную гамму в каждой точке. Ниже сжатого значения 0,04045 или линейной интенсивности 0,00313 кривая является линейной, поэтому гамма равна 1. За красной кривой находится пунктирная черная кривая, показывающая точный степенной закон гаммы = 2,2.
sRGB также определяет нелинейную передаточную функцию между интенсивностью этих основных цветов и фактическим сохраненным числом. Кривая похожа на гамма- отклик ЭЛТ- дисплея. Это нелинейное преобразование означает, что sRGB является достаточно эффективным использованием значений в целочисленном файле изображения для отображения различимых человеком уровней освещенности.
В отличие от большинства других цветовых пространств RGB, гамма sRGB не может быть выражена как одно числовое значение. Общая гамма составляет приблизительно 2,2, состоящая из линейного (гамма 1,0) участка рядом с черным и нелинейного участка в другом месте, включающего показатель степени 2,4 и гамму (наклон логарифмического выхода по сравнению с логарифмическим входом), изменяющуюся от 1,0 до примерно 2,3. Назначение линейного участка состоит в том, чтобы кривая не имела бесконечного наклона в точке нуля, что могло бы вызвать численные проблемы.
Спецификация трансформации [ править ]
Прямое преобразование (CIE XYZ в sRGB) [ править ]
Значения CIE XYZ должны быть масштабированы так, чтобы Y для D65 («белый») был равен 1,0 ( X , Y , Z = 0,9505, 1,0000, 1,0890). Обычно это так, но некоторые цветовые пространства используют 100 или другие значения (например, в CIELAB , при использовании указанных точек белого).
Первым шагом в вычислении sRGB из CIE XYZ является линейное преобразование, которое может быть выполнено умножением матриц. (Приведенные ниже числовые значения соответствуют значениям в официальной спецификации sRGB, [2] [5], которая исправляет небольшие ошибки округления в исходной публикации [1] создателями sRGB, и предполагают использование стандартного колориметрического наблюдателя 2 ° для CIE XYZ. [1] )
Эти линейные значения RGB не являются окончательным результатом; гамма-коррекция по-прежнему должна применяться. Следующая формула преобразует линейные значения в sRGB:
- где находится , или .
Эти гамма-сжатые значения (иногда называемые «нелинейными значениями») обычно ограничиваются диапазоном от 0 до 1. Это ограничение может быть выполнено до или после расчета гаммы или как часть преобразования в 8 бит. Если требуются значения в диапазоне от 0 до 255, например, для отображения видео или 8-битной графики, обычным методом является умножение на 255 и округление до целого числа.
Обратное преобразование [ править ]
Опять же значения компонент SRGB , , находятся в диапазоне от 0 до 1. (Значения в диапазоне от 0 до 255 просто можно разделить на 255,0).
- где находится , или .
Эти значения с расширением гаммы (иногда называемые «линейными значениями» или «значениями линейного освещения») умножаются на матрицу для получения CIE XYZ:
Теория трансформации [ править ]
Часто вскользь утверждают, что гамма декодирования для данных sRGB составляет 2,2, однако приведенное выше преобразование показывает показатель степени 2,4. Это связано с тем, что чистым эффектом кусочного разложения обязательно является изменение мгновенной гаммы в каждой точке диапазона: она изменяется от гаммы = 1 при нуле до гаммы 2,4 при максимальной интенсивности со средним значением, близким к 2,2. Преобразование было разработано для аппроксимации гаммы около 2,2, но с линейной частью, близкой к нулю, чтобы избежать бесконечного наклона при K = 0, который может вызвать численные проблемы. Условие непрерывности кривой , которая определена выше как кусочная функция от , есть
Решение с помощью и стандартного значения дает два решения ≈ или . Стандарт IEC 61966-2-1 использует округленное значение , которое дает . Однако, если мы наложим условие, что и наклоны совпадают, тогда мы должны иметь
Теперь у нас есть два уравнения. Если мы примем за два неизвестных, а затем сможем решить, чтобы дать
- ,
Подстановка или и дает и с соответствующим порогом линейной области при . Эти значения, округленные до , и , иногда описывают преобразование SRGB. [6] Публикации создателей sRGB [1] округлены до и , следовательно (это также использовалось в FlashPix ), что привело к небольшому разрыву в кривой. Некоторые авторы приняли эти значения, несмотря на разрыв. [7] Для стандарта округленное значение было сохранено, а значение было пересчитано, чтобы сделать результирующую кривую непрерывной, как описано выше, что привело к разрыву наклона от 12,92 ниже точки пересечения до 12,70 выше.
Среда просмотра [ править ]
Параметр | Ценить |
---|---|
Уровень яркости экрана | 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 для обоих сделало бы белую точку большинства фотобумаги чрезмерно синей. [8] Другие параметры, такие как уровень яркости, типичны для ЭЛТ-монитора.
Для получения оптимальных результатов ICC рекомендует использовать среду просмотра с кодированием (т. Е. Тусклое, рассеянное освещение), а не менее жесткую типичную среду просмотра. [1]
Использование [ править ]
Этот раздел требует дополнительных ссылок для проверки . Июль 2010 г. ) ( Узнайте, как и когда удалить этот шаблон сообщения ) ( |
Из-за стандартизации sRGB в Интернете, на компьютерах и принтерах многие потребительские цифровые камеры и сканеры от низкого до среднего используют sRGB в качестве рабочего цветового пространства по умолчанию (или только доступного). Однако ПЗС потребительского уровня обычно не откалиброваны, а это означает, что даже несмотря на то, что изображение маркируется как sRGB, нельзя сделать вывод о том, что изображение является точным по цвету sRGB.
Если цветовое пространство изображения неизвестно и это формат изображения от 8 до 16 бит, предположение, что оно находится в цветовом пространстве sRGB, является безопасным выбором. Профиль ICC может быть использован; ICC распространяет три таких профиля: [9] два профиля, соответствующие версии 4 спецификации ICC, которую они рекомендуют, и один профиль, соответствующий версии 2, которая все еще широко используется.
Поскольку гамма sRGB соответствует или превышает гамму струйных принтеров младшего класса , изображение sRGB часто считается удовлетворительным для домашнего использования и печати. Профессиональные издатели печатных изданий иногда избегают sRGB, потому что его цветовая гамма недостаточно велика, особенно в сине-зеленых тонах, чтобы включать все цвета, которые могут быть воспроизведены при печати CMYK . Изображения, предназначенные для профессиональной печати с использованием рабочего процесса с полным управлением цветом, например, допечатная подготовка , иногда используют другое цветовое пространство, такое как Adobe RGB (1998) , которое обеспечивает более широкую гамму. Такие изображения, используемые в Интернете, можно преобразовать в sRGB с помощью управления цветом. инструменты, которые обычно включены в программное обеспечение, работающее в этих других цветовых пространствах.
Два доминирующих интерфейса программирования для трехмерной графики, OpenGL и Direct3D , оба включают поддержку гамма-кривой sRGB. OpenGL опора текстура с SRGB гамма кодируются цветовые компонентами (впервые введенная с расширением EXT_texture_sRGB, [10] добавлена к ядру в OpenGL 2.1) и рендеринг в SRGB гамма кодируются фреймбуфера (впервые введен с расширением EXT_framebuffer_sRGB, [11] добавлен к ядру в OpenGL 3.0). Direct3D поддерживает как текстуры, так и рендеринг, начиная с DirectX 9. [ необходима цитата ] Правильное отображение mipmapping и интерполяциягамма-текстур sRGB имеет прямую аппаратную поддержку в модулях текстурирования большинства современных графических процессоров (например, nVidia GeForce 8 выполняет преобразование из 8-битной текстуры в линейные значения перед интерполяцией этих значений) и не имеет никакого снижения производительности. [12]
См. Также [ править ]
- Цветовое пространство RGB
- scRGB
- Цветовое пространство Adobe RGB
Ссылки [ править ]
- ^ а б в г д Майкл Стоукс; Мэтью Андерсон; Шринивасан Чандрасекар; Рикардо Мотта (5 ноября 1996 г.). «Стандартное цветовое пространство по умолчанию для Интернета - sRGB, версия 1.10» .
- ^ a b «IEC 61966-2-1: 1999» . Интернет-магазин IEC . Международная электротехническая комиссия . Проверено 3 марта 2017 года .
- ^ «Спецификация формата FlashPix» (PDF) .
- ^ Чарльз А. Пойнтон (2003). Цифровое видео и HDTV: алгоритмы и интерфейсы . Морган Кауфманн. ISBN 1-55860-792-7.
- ^ «Как интерпретировать цветовое пространство sRGB» (PDF) . color.org . Проверено 17 октября 2017 года .
- ^ Фил Грин и Линдси В. Макдональд (2002). Цветовая инженерия: получение цвета, независимого от устройства . Джон Вили и сыновья. ISBN 0-471-48688-4.
- ^ Джон У. Hardeberg (2001). Получение и воспроизведение цветных изображений: колориметрический и мультиспектральный подходы . Universal-Publishers.com. ISBN 1-58112-135-0.
- ^ Родни, Эндрю (2005). Управление цветом для фотографов . Focal Press. п. 121. ISBN. 978-0-240-80649-5.
Зачем калибровать монитор на D65, когда световая будка - D50
- ^ Профили sRGB , ICC
- ^ "EXT_texture_sRGB" . 24 января 2007 . Дата обращения 12 мая 2020 .
- ^ "EXT_framebuffer_sRGB" . 17 сентября 2010 . Дата обращения 12 мая 2020 .
- ^ «Самоцветы GPU 3: Глава 24. Важность линейности, раздел 24.4.1» . Корпорация NVIDIA . Проверено 3 марта 2017 года .
Стандарты [ править ]
- IEC 61966-2-1: 1999 - официальная спецификация sRGB. Он предоставляет информацию о среде просмотра, кодировании и колориметрических характеристиках.
- Поправка A1: 2003 к IEC 61966-2-1: 1999 описывает аналогичное кодирование sYCC для цветовых пространств YCbCr , кодирование RGB с расширенной гаммой и преобразование CIELAB .
- sRGB на сайте www.color.org
- Четвертый рабочий проект IEC 61966-2-1 доступен в Интернете, но не является полным стандартом. Его можно скачать с www2.units.it .
Внешние ссылки [ править ]
- Международный консорциум цвета
- Архивная копия http://www.srgb.com , в настоящее время недоступная, содержит много информации о конструкции, принципах и использовании sRGB.
- Стандартное цветовое пространство по умолчанию для Интернета - sRGB на w3.org
- Расширение OpenGL для гамма-текстур sRGB на sgi.com
( Копия Wayback Machine )
- Матрицы преобразования для преобразования RGB и XYZ
- Пожалуйста, встанет ли настоящий профиль sRGB?