Colour Management
A colour management system (CMS) transforms colours from an input source to an output destination. The colours from input source are characterised by an input profile, the colours on the output destination are characterised by an output profile. Additionally a rendering intent must be specified to control aspects of the transformation. A standard for colour profiles has been produced by the International Colour Consortium (ICC).
The range of colours that can be handled by a device is called the gamut. Differences in gamut is the major problem when transforming colours between different devices, and rendering intents are a way to influence how these differences should be handled.
Four rendering intents have been defined:
- Perceptual
Differences in colour values should be maintained at the cost of accuracy of colour values. Some kind of gamut mapping may be done, which shifts colours within the input gamut to colours withing the output gamut (in contrast to gamut clipping). - Relative colorimetric
The input media white point is transformed to the output media white point (using a Bradford transform). Colour values are shifted, but kept accurate relative to the white point. Colours out of gamut are clipped to the nearest colour within gamut. - Saturation
Colours are made more vivid by increasing the saturation useful in business graphics). - Absolute colorimetric
Absolute colour values are maintained. Colours out of gamut are clipped to the nearest colour within gamut.
Practical problems
White point is one of the more confusing concepts in colour management. See separate post about white point.
A CMS just has to do what is specified in the profiles, it does not know about the input and output gamut being used. Gamut mapping is already incorporated in the profiles, but the profiles only know about the gamut of the device they are for, so they cannot really make good decisions with respect to gamut mapping. In practice this means that the Perceptual rendering intent is often the same as Relative colorimetric with the addition of black point compensation (mapping the input black point on the output black point, which is a very useful addition to relative colorimetric. But it depends on the creator of a profile what is done for the Perceptual rendering intent, so this behaviour is not guaranteed. Adobe PhotoShop has an option to force black point compensation to be used together with the Relative colorimetric rendering intent.
The Saturation rendering intent is also ill-defined, and can produce different results depending on the profiles being used.