sRGB
sRGB (standart RGB) является стандартом представления цветового спектра с использованием модели RGB. sRGB создан совместно компаниями HP и Microsoft в 1996 году для унификации использования модели RGB в мониторах, принтерах и Интернет-сайтах[1].
sRGB использует основные цвета, описанные стандартом BT.709, аналогично студийным мониторам и HD-телевидению, а также гамма-коррекцию, аналогично мониторам с электронно-лучевой трубкой. Такая спецификация позволила sRGB в точности отображаться на обычных CRT-мониторах и телевизорах, что стало в своё время основным фактором, повлиявшим на принятие sRGB в качестве стандарта[2].
В отличие от большинства других цветовых пространств RGB, гамма в sRGB не может быть выражена одним числовым значением, так как функция коррекции состоит из линейной части около чёрного цвета, где гамма равна 1.0, и нелинейной части до значения 2.4 включительно. Приблизительно можно считать, что гамма равна 2.2. Гамма может изменяться от 1.0 до 2.3[3].
Техническое описание стандарта
Для перевода линейных значений из пространства XYZ (CIE 1931 color space) в sRGB используется следующая матрица:
- [math]\displaystyle{ \begin{bmatrix} R_\mathrm{linear}\\G_\mathrm{linear}\\B_\mathrm{linear}\end{bmatrix}= \begin{bmatrix} 3.2406&-1.5372&-0.4986\\ -0.9689&1.8758&0.0415\\ 0.0557&-0.2040&1.0570 \end{bmatrix} \begin{bmatrix} X \\ Y \\ Z \end{bmatrix} }[/math]
Здесь [math]\displaystyle{ R_\mathrm{linear} }[/math], [math]\displaystyle{ G_\mathrm{linear} }[/math] и [math]\displaystyle{ B_\mathrm{linear} }[/math] определены в диапазоне [0,1]. Координаты белой точки, таким образом, составляют (X,Y,Z = 0.9505, 1.0000, 1.0890).
Далее, для каждого из значений [math]\displaystyle{ R_\mathrm{linear} }[/math], [math]\displaystyle{ G_\mathrm{linear} }[/math] и [math]\displaystyle{ B_\mathrm{linear} }[/math] используется формула
- [math]\displaystyle{ C_\mathrm{srgb}=\begin{cases} 12.92C_\mathrm{linear}, & C_\mathrm{linear} \le 0.0031308\\ (1+a)C_\mathrm{linear}^{1/2.4}-a, & C_\mathrm{linear} \gt 0.0031308 \end{cases} }[/math]
- где [math]\displaystyle{ a = 0.055 }[/math]
Эти значения также находятся в диапазоне [0, 1] и для перевода в [0, 255] их нужно умножить на 255 и округлить.
Альтернативы
Ввиду того, что многие современные телевизоры и мониторы имеют цветовой охват, значительно превышающий область sRGB, были выдвинуты альтернативы, одна из которых - AdobeRGB, принятая в 1998 году.
Переводить из sRGB в другие модели и обратно накладно и неудобно, поэтому Microsoft и HP расширили пространство sRGB, допустив отрицательные значения. Полный диапазон отдельного компонента: от -0,5 до 7,5. 80% цветов sRGB не имеют физического аналога, но физически достоверные можно закодировать. У scRGB стандартизованы линейные и нелинейные представления в 8, 12 и 16 битах, такие что преобразование между нелинейными scRGB и sRGB может быть произведено в целых числах.
Примечания
- ↑ A Standard Default Color Space for the Internet - sRGB . Дата обращения: 29 апреля 2012. Архивировано 23 августа 2011 года.
- ↑ Charles A. Poynton. Digital Video and HDTV: Algorithms and Interfaces (англ.). — Morgan Kaufmann, 2003. — ISBN 1558607927.
- ↑ A Standard Default Color Space for the Internet: sRGB Архивная копия от 29 апреля 2014 на Wayback Machine, Version 1.10, November 5, 1996. ICC