sYCC
IEC 61966-2-1 Default YCC encoding transformation for a standard luma-chroma-chroma colour space | |
Abbreviation | sRGB |
---|---|
Status | Published |
Year started | 1996 |
First published | October 18, 1999[1] |
Latest version | 61966-2–1 Amend. 1 2003 |
Organization | IEC[1] |
Committee | TC/SC: TC 100/TA 2[1] |
Base standards | IEC 61966 Colour Measurement and Management in Multimedia Systems and Equipment |
Domain | Color space, color model |
Website | webstore |
sYCC is a standard numerical encoding of colors, similar to the CIE YCbCr encoding,[2] 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
[edit]The three unsigned integers of an sYCC encoded color represent fractional coordinates according to the formulas[2]
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
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.[2]
The non-linear fractional sRGB coordinates can be computed from the fractional sYCC coordinates by inverting the above matrix. The standard gives the approximation
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 :
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 corection") 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
[edit]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
[edit]- ^ a b c "IEC 61966-2-1:1999". IEC Webstore. International Electrotechnical Commission. Retrieved 3 March 2017.. The first official specification of sRGB.
- ^ a b c "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". International Electrotechnical Commission. 2003. 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.