International Color Consortium
Getting Started
Making color seamles between devices and documents
ICC Specifications
Technical Notes
ICC Resource Center
ICC Slide Presentation
ICC Logos
Information on Profiles
ICC White Papers
Color Management Links
Member List
ICC Working Groups
Got a question about ICC Profiles or colour management?

Transforming via the ICC PCS

In most cases the RGB specifications as published do not use the same reference color space as that used by ICC. In such cases this means that the specifications provided for these three component color encoding specifications have had to be extended in this registry to provide the characterisation data necessary for building ICC profiles. These extensions follow each of the formal specifications in a section headed 'Hints for profile makers'.

Two types of extensions have been provided. The first is a chromatic adaptation correction to convert the data from the specified reference color space to the D50 Profile Connection Space (PCS) required for ICC profiles. In calculating this use has been made of a matrix (derived from the Bradford chromatic adaptation transformation) provided on the ICC web-site for converting D65 data to D50.

The second extension is appropriate when deriving tables for the colorimetric rendering intents in version 4 profiles. In order to understand this some background may be helpful. In earlier versions of the ICC specification a single PCS was assumed that was based on the concept of a virtual reflection print with no defined gamut or black point. In the latest version this has changed. While the PCS for the perceptual rendering intent is still assumed to be that of a reflection print (but with a defined dynamic range), the PCS for the colorimetric rendering intents is no longer assumed to be the colorimetry for any specific reference medium, but simply the colorimetry of the media as measured and chromatically adapted to D50.

However, for encoding purposes, many three component color encodings are scaled or normalized, often with the reference medium white scaled to Y=1 and the reference medium black scaled to Y=0. In some of the reference color encoding standards this scaling is explicitly provided, for example ISO 22028-2 (ROMM RGB) and the Adobe RGB (1998) Color Image Encoding Specification. In other cases the scaling is not provided, and in some cases the reference medium black point may not be clearly specified, but is required for making v4 profiles. In the latter case the information provided in this registry effectively extends the color encoding specification interpretation, and other interpretations may also be used. ISO 22028-1 provides additional information regarding some standard color encodings. This registry follows the ISO 22028-1 recommendations where provided.

Furthermore, it should be noted that common practice when making version 2 RGB profiles is to scale the encoding zero to zero in the PCS. Then, it is up to the output profile to know that if encoding zero maps to XYZ zero in the version 2 PCS, that this value probably represents the encoding black point. (One goal of the version 4 revision was to remove this ambiguity.)

Hints for profile makers

For each encoding in the registry, tristimulus values chromatically adapted to the ICC D50 PCS and normalized so that Y=1 for white are provided as the 'D50 adapted primaries' in the ICC Extensions section of the page for each encoding.

For D50 data it is necessary to first apply a chromatic adaptation matrix. Since this is a 3x3 matrix it can be combined with the 3x3 matrix above to produce a single matrix to convert XYZ to linear three-component values (i.e. prior to applying any non-linear function). The resultant matrix (obtained by the matrix multiplication of the inverse of the chad tag given on the web site and the matrix above - with slight modifications to produce 1,1,1 for the D50 white defined in the specification) is given as the 'Chromatic Adaptation Matrix' in the ICC Extensions section.

The above transformation produces 1 and 0 in each of RGB when XYZ is set to 0.9642, 1, 0.8249 and 0, 0, 0 respectively. However, in practice some degree of flare will be present if the color encoding is intended to represent a real viewing situation. The amount of this flare will vary with the actual conditions used. For measurement consistency a level of flare should be assumed for display RGB color encodings that is consistent with the 0:45 measurement condition assumed for ICC PCS measurements. The specified peak white luminance and other viewing condition parameters implies a reference black which corresponds to the luminance measured at the position of the observer. It is recommended that profile makers use this black point, which is given as a media-relative PCS value in the 'Assumed black point' in the ICC Extensions section.

This adjustment can be achieved by applying a correction to the computed RGB values, which is specified as 'Correction to RGB values for non-zero black' in the ICC Extensions section.