sYCC
{{short description|Standard RGB color space}}
{{Lowercase title}}
{{Infobox technology standard
| title = sYCC
| long_name = IEC 61966-2-1 Default YCC encoding transformation for a standard luma-chroma-chroma colour space
| native_name_lang = English
| image =
| caption =
| status = Published
| year_started = 1996
| first_published = {{Start date and age|1999|10|18}}
| version = 61966-2–1 Amend. 1
| version_date = 2003
| preview =
| preview_date =
| organization = {{abbr|IEC|International Electrotechnical Commission}}
| committee = {{abbr|TC|Technical Committee}}/{{abbr|SC|Sub-committee}}: TC 100/TA 2
| editors =
| authors =
| base_standards = IEC 61966 Colour Measurement and Management in Multimedia Systems and Equipment
| related_standards =
| abbreviation = sRGB
| domain = Color space, color model
| license =
| website = {{URL|https://webstore.iec.ch/publication/6169}}
}}
sYCC is a standard numerical encoding of colors, similar to the CIE YCbCr encoding, It uses three coordinates: a luma value , that is roughly proportional to perceived brighness of the color, and two chroma values and , which are roughly the "blueness" and "redness" of the hue. Each coordinate is represented by an integer with some number of bits, which is interpreted as either unsigned (for ) or signed (for and ).
The space is defined by Annex F of the International Electrotechnical Commission (IEC) standard 61966-2-1 Amendment 1 (2003), as a linear transformation of the non-linear sRGB color space defined by the same document.
The official conversion from sYCC to sRGB may result in negative R, G, or B values; meaning that not all sYCC triplets represent colors that can be displayed on a computer screen, printed, or even perceived by the human eye.
sYCC definition
The three unsigned integers of an sYCC encoded color represent fractional coordinates according to the formulas
:
:
:
where the scale factor is the maximum unsigned -bit integer, and the offset is (as in the usual two's complement representation of signed integers). Conversely, the encoded integer values are given by
:
:
:
with the resulting values clipped to the range .
In particular, for (which is the normal bit size), one gets and . Thus the fractional luma ranges from 0 to 1, while the fractional chroma coordinates range from to .
The standard specifies that these fractional values are related to the non-linear fractional sRGB coordinates by a linear transformation, described by the matrix product
:
\begin{bmatrix} Y' \\ C_b' \\ C_r' \end{bmatrix}
=
\begin{bmatrix}
+0.2990 & +0.5870 & +0.1140 \\
-0.1687 & -0.3313 & +0.5000 \\
+0.5000 & -0.4817 & -0.0813
\end{bmatrix}
\begin{bmatrix} R' \\ G' \\ B' \end{bmatrix}
This correspondence is the same as the RGB to YCC mapping specified by the old TV standard ITU-R BT.601-5, except that the coefficients of are here defined with four decimal digits instead of just three.
The non-linear fractional sRGB coordinates can be computed from the fractional sYCC coordinates by inverting the above matrix. The standard gives the approximation
:
\begin{bmatrix} R' \\ G' \\ B' \end{bmatrix}
=
\begin{bmatrix}
+1.0000 & 0.0000 & +1.4020 \\
+1.0000 & -0.3441 & -0.7141 \\
+1.0000 & +1.7720 & 0.0000
\end{bmatrix}
\begin{bmatrix} Y' \\ C_b' \\ C_r' \end{bmatrix}
which is expected to be accurate enough for bits per component. For bit sizes greater than 8, the standard recommends using a more accurate inverse. It states that the following matrix with 6 decimal digits is accurate enough for :
:
\begin{bmatrix} R' \\ G' \\ B' \end{bmatrix}
=
\begin{bmatrix}
+1.000000 & +0.000037 & +1.401988 \\
+1.000000 & -0.344113 & -0.714104 \\
+1.000000 & +1.771978 & +0.000135
\end{bmatrix}
\begin{bmatrix} Y' \\ C_b' \\ C_r' \end{bmatrix}
The same standard specifies the relation between the non-linear fractional coordinates and the CIE 1931 XYZ coordinates. The connection entails the transfer function ("gamma correction") that maps to the linear R, G, B coordinates, and then a 3D linear transformation that relates these to the CIE .
Since the linear transformation from sRGB to sYCC is defined in terms of non-linear (gamma-encoded) values (), rather than the linear ones (), the component of sYCC is not the CIE Y coordinate, not even a function of it alone. That is, two colors with the same CIE Y value may have different sYCC values, and vice-versa.
=Particular values=
The integer encoded sYCC triplet represents the color black whereas is white (more precisely, the CIE illuminant D65). More generally, triplets , for in 0..255, represent shades of gray.
Note that the 8-bit integer sYCC triplet has fractional coordinates , which, according to these matrices, has fractional non-linear sRGB coordinate , and therefore is not realizable or perceivable. Similarly, the sYCC triplet has and .
References
{{cite web |url=https://webstore.iec.ch/publication/6168 |title=IEC 61966-2-1:1999 Multimedia systems and equipment – Colour measurement and management – Part 2-1: Colour management – Default RGB colour space – sRGB: Amendment 1 |date=2003 |publisher=International Electrotechnical Commission}} Replaces the version IEC 61966-2-1:1999, introducing the sYCC encoding for YCbCr color spaces, an extended-gamut RGB encoding bg-sRGB, and a CIELAB transformation.
{{Color space}}