sRGB

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук
Спектр кольорів sRGB серед загального спектра доступних людському оку кольорів окреслено трикутником

sRGB — стандарт подання колірного спектру з використанням моделі 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 в sRGB використовується наступна матриця:


\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}

Тут R_\mathrm{linear}, G_\mathrm{linear} та B_\mathrm{linear} визначені в діапазоні [0,1]. Координати білої точки, таким чином, складають (X,Y,Z = 0.9505, 1.0000, 1.0890).

Далі, для кожного із значень R_\mathrm{linear}, G_\mathrm{linear} та B_\mathrm{linear} використовується формула

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} > 0.0031308
\end{cases}
  • де a = 0.055

Ці значення також приводяться до діапазону [0, 1], і для переведення до [0, 255] їх потрібно помножити на 255 і округлити. 3

Примітки[ред.ред. код]