XYZ Color Model
The XYZ color space is an international standard developed by the CIE (Commission Internationale de l'Eclairage). This model is based on three hypothetical primaries, XYZ, and all visible colors can be represented by using only positive values of X, Y, and Z. The CIE XYZ primaries are hypothetical because they do not correspond to any real light wavelengths. The Y primary is intentionally defined to match closely to luminance, while X and Z primaries give color information. The main advantage of the CIE XYZ space (and any color space based on it) is that this space is completely device-independent. The chromaticity diagram in Figure "CIE xyY Chromaticity Diagram and Color Gamut" is in fact a two-dimensional projection of the CIE XYZ sub-space. Note that arbitrarily combining X, Y, and Z values within nominal ranges can easily lead to a "color" outside of the visible color spectrum.
The position of the block of RGB-representable colors in the XYZ space is shown in Figure "RGB Colors Cube in the XYZ Color Space".
Intel IPP functions use the following basic equations [Rogers85], to convert between gamma-corrected R'G'B' and CIE XYZ models:
X = 0.412453*R' + 0.35758 *G' + 0.180423*B'
Y = 0.212671*R' + 0.71516 *G' + 0.072169*B'
Z = 0.019334*R' + 0.119193*G' + 0.950227*B'
The equations for X,Y,Z calculation are given on the assumption that R',G', and B' values are normalized to the range [0..1].
R' = 3.240479 * X - 1.53715 * Y - 0.498535 * Z
G' = -0.969256 * X + 1.875991 * Y + 0.041556 * Z
B' = 0.055648 * X - 0.204043 * Y + 1.057311 * Z
The equations for R',G', and B' calculation are given on the assumption that X,Y, and Z values are in the range [0..1].
XYZ / CIE Color Spaces
The biggest drawbacks of the color models presented are, that none of the models is capable for all possible colors and the models are dependent of devices.
The International Commission on Illumination (CIE - Commission Internationale de l'Éclairage) has addressed this problem and developed a color model, the CIE Norm Valent System, to assemble a relation between the human color perception (color) and the physical causes of a color stimulus (color valence), as well as stay device independent and make presentable the totality of all visible colors.
The commission determined the so-called normal observer without visual disturbances from some probands. Based on these persons, the virtual primary valences have been defined, which corresponds to the wavelengths of the basic colors of a color model. The primary valences in this system have been called "virtual", because unlike the other systems, they are not in the area of visible light. This makes it possible to represent all perceivable colors.
The X-value in this model represents approximately the red/green part of a color, the Y-value represents approximately the lightness and the Z-value corresponds roughly to the blue/yellow part. The X value accepts values from 0 to 95.047, the Y-value values from 0 to 100 and the Z-value values between 0 and 108.883.
In addition to these color values X, Y and Z, also color value proportions can be specified. These are written in lowercase and called x, y and z and they are calculated as follows:
x = X/(X+Y+Z)
y = Y/(X+Y+Z)
z = Z/(X+Y+Z)
In sum, x, y and z are always 1. So, for describing hue and saturation only two values are sufficient, because the third value can be calculated from the others. If also the brightness should be given the Y-value is added. In practice, the values for Y, x and y are denoted. Y ranges from 0 to 100 and x and y range from 0 to 1.
In the program pipette, both the color values X, Y and Z are declared as well as the color value proportions x, y and z. The color values can be found in the line "XYZ" and the proportions in the line "xyz". Without changing the settings, with the button behind the line, the corresponding values of XYZ and xyz are copied to the clipboard. Because in practice it is customary to give the values Yxy, the button behind the line "xyz" can be adjusted. Go to "Settings > Clipboard > Copy to Clipboard with Units" and choose between xyz and Yxy. Depending on which setting is active, another triple is copied.