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?

Introduction to the ICC profile format

1. Background

A large number of companies and individuals, from a variety of industries, participated in the development of the ICC specification which is designed to provide developers and other interested parties with a clear description of the profile format. A nominal understanding of color science is assumed, such as familiarity with the CIELAB color space, general knowledge of device characterizations, and familiarity of at least one operating system level color management system. For those who require further background information on colorimetry, refer to An Introduction to Appearance Analysis by Richard Harold.

Device profiles provide color management systems with the information necessary to convert color data between native device color spaces and device independent color spaces. The specification divides color devices into three broad classifications: input devices, display devices and output devices. For each device class, a series of base algorithmic models are described which perform the transformation between color spaces. These models provide a range of color quality and performance results which provide different trade-offs in memory footprint, performance and image quality.

The device profiles obtain their openness by using a well-defined reference colour space and by being capable of being interpreted by any ICC operating system or application that is compliant with the specification. In combination with profiles for other devices colour transformations may be determined that enable colours captured on one device to be reproduced satisfactorily on many others. The information required in the profile is adequate to ensure the level of color fidelity selected by the user and for the design of a default color management module (CMM) to transform color information between native device color spaces. Such CMMs are found in many operating systems and applications

In addition to providing a cross-platform standard for the actual profile format, the specification also describes the convention for embedding these profiles within graphics documents and images. Embedded profiles allow users to transparently move color data between different computers, networks and even operating systems without having to worry if the necessary profiles are present on the destination systems. The intention of embedded profiles is to allow the interpretation of the associated color data.

2. Profile connection space (PCS)

A key component of the specification is a well-defined profile connection space. This standard color space is the interface which provides an unambiguous connection between the input and output profiles as illustrated in the diagram below. It allows the profile transforms for input, display, and output devices to be decoupled so that they can be produced independently. A well-defined PCS provides the common interface for the individual device profiles. It is the virtual destination for input transforms and the virtual source for output transforms. If the input and output transforms are based on the same PCS definition, even though they are created independently, they can be paired arbitrarily at run time by the color-management engine (CMM) and will yield consistent and predictable results when applied to color values.

The profile connection space is based on the CIE 1931 standard colorimetric observer. This experimentally derived standard observer provides a very good representation of the human visual system color matching capabilities. Unlike device dependent color spaces, if two colors have the same CIE colorimetry they will match if viewed under the same conditions as those defined for the colorimetry.

Because images are typically produced for a wide variety of viewing environments, it is necessary to go beyond simple application of the CIE system. The profile connection space is defined as the CIE colorimetry which, in the case of the perceptual rendering intent (defined later), will produce the desired color appearance if rendered on a reference imaging media and viewed in a reference viewing environment. This reference corresponds to an ideal reflection print viewed in a standard viewing booth conforming to ISO standard viewing conditions.

The default measurement parameters for the profile connection space and all other color spaces defined in this specification are based on the ISO 13655 standard, "Graphic technology - Spectral measurement and colorimetric computation for graphic arts images." Essentially this defines a standard illuminant of D50, the 1931 CIE standard colorimetric observer, and 0° /45° or 45° /0° measurement geometry measured with a black backing behind the print for the reflectance measurements. The reference viewing condition is that defined in ISO 3664 as viewing condition P2 using the recommended 20% surround reflectance. This is a graphics arts and photography print viewing environment with a D50 illumination level of 500 lux.

One of the first steps in profile building involves measuring a set of colors from some imaging media or display. If the imaging media or viewing environment differ from the reference, it will be necessary to adapt the colorimetric data to that appropriate for the profile connection space. These adaptations account for such differences as white point chromaticity and luminance relative to an ideal reflector, maximum density, viewing surround, viewing illuminant, and flare. Currently, it is the responsibility of the profile builder to do this adaptation. However, the possibility of allowing a variable illuminant in the PCS is under active consideration by the International Color Consortium.

3. Rendering intents

In general, actual device color gamuts (the range of all possible colors which can be represented or produced on the device) will not be large enough to reproduce the desired color appearances communicated by the PCS values. Four rendering intents (gamut mapping styles) are defined by the ICC in order to address this problem. Each one represents a different compromise. The colorimetric rendering intents enable within gamut colors to be reproduced accurately (though possibly with compensation for the whiteness of the media) at the expense of out-of?gamut colors. Compensation can be made for chromatic adaptation when the viewing condition assumed is different to the reference viewing environment. The other rendering intents modify the colorimetric values as-needed to account for any differences between devices, media, and viewing conditions.

3.1 Colorimetric Intents

As stated earlier, the colorimetric intents preserve the relationships between in-gamut colors at the expense of out-of-gamut colors. Mapping of out-of-gamut colors is not specified but should be consistent with the intended use of the transform.

It should be noted that in transforms for the media-relative and ICC-absolute colorimetric intents, the PCS values may represent a preferred color rendering of the actual original captured for input profiles rather than a faithful reproduction. Likewise for output profiles, the PCS values may be color rendered by the output device to the actual medium. However, wherever ICC profiles are used, the PCS values resulting from such transforms are interpreted as the colorimetry of the original and reproduction, regardless of whether such colorimetry is the actual colorimetry.

3.1.1 Media-Relative Colorimetric Intent

This intent rescales the in-gamut, chromatically adapted tristimulus values, such that the white point of the actual medium is mapped to the white point of the reference medium (for either input or output). It is useful for colors that have already been mapped to a medium with a smaller gamut than the reference medium (and therefore need no further compression). In transforms for the media-relative colorimetric intent the PCS values represent media-relative measurements of the captured original (for input profiles), or media-relative color reproductions produced by the output device (for output profiles).

3.1.2 ICC-Absolute Colorimetric Intent

For this intent, the chromatically adapted tristimulus values of the in-gamut colors are unchanged. It is useful for spot colors and when simulating one medium on another (proofing). In transforms for the ICC-absolute colorimetric intent the PCS values represent measurements of the captured original relative to a hypothetical perfectly reflecting diffuser (for input profiles), or color reproductions produced by the output device relative to a hypothetical perfectly reflecting diffuser (for output profiles).

Note that this definition of ICC-absolute colorimetry is actually called "relative colorimetry" in CIE terminology, since the data has been normalized relative to the illuminant.

3.1.3 Saturation Intent

The exact gamut mapping of the saturation intent is vendor specific and involves compromises such as trading off preservation of hue in order to perserve the vividness of pure colors. It is useful for images which contain objects such as charts or diagrams.

3.1.4 Perceptual Intent

The exact gamut mapping of the perceptual intent is vendor specific and involves compromises such as trading off preservation of contrast in order to preserve detail throughout the tonal range. It is useful for general reproduction of images, particularly pictorial or photographic-type images.

A profile that enables perceptual rendering and transcends the actual device needs to represent the desired appearance. It is difficult to know how to generate such a profile. It is helpful to conceptualize a "reference medium" which is a hypothetical medium on which the colors are being rendered. It has a large gamut and dynamic range which approximate the limits of current reflection-print technology. It is described using "realworld" specifications so that even though the medium is not real, it can be treated as if it were real. It is also necessary to define a "reference viewing environment" which is the environment in which the reference medium is to be viewed. This environment is used to determine the observer's adaptation state and establishes the connection between color stimulus and color appearance.

The concept of a reference medium viewed in the reference viewing environment helps the profile designer to understand how to produce "desired appearance" in the PCS. At the same time, it preserves the goal of decoupling the characteristics of actual media through a virtual intermediate reproduction description.

So, in perceptual transforms the PCS values represent hypothetical measurements of a color reproduction on a reference medium. It is defined as a hypothetical print on a substrate having a neutral reflectance of 89%. The darkest printable color on this medium shall have a neutral reflectance of 0,30911%, which is 0,34731% of the substrate reflectance. These are the white point and black point of the reference medium. The reference medium therefore has a linear dynamic range of 287,9:1 and a density range of 2,4593. By extension, for the perceptual intent, the PCS represents the appearance of that reproduction when viewed in the reference viewing environment by a human observer adapted to that environment. If the actual viewing environment differs from the reference viewing environment perceptual transforms need to include a compensation for the differences in viewing environments. Note: It is important to remember that the reference viewing condition and reference medium only apply to the perceptual transform.

Because perceptual renderings are vendor specific it is unlikely that profiles produced by different vendors will produce the same result. Users need to be aware of this and ensure that their workflows enable consistency when it is required (such as in distributed printing) by, for example, transmitting output profiles along with their images. There is currently no agreed ICC specification for this procedure and the onus is on the user. However, ICC are reviewing the needs of such workflows in conjunction with various standards groups.

4. Understanding and using the specification for perceptual rendering

As will be clear from the earlier section making profiles with a perceptual rendering intent is not easy. The key to effective use of the profile specification in this situation is an unambiguous definition of the PCS. However, there is probably no definition that will yield optimal results for all possible color-management scenarios involving all possible input media, all possible output media, and all possible market preferences. Where trade-offs are necessary, the preference has been to serve the needs of applications in graphic arts and desktop publishing. For this reason the PCS definition is biased somewhat toward scenarios that result in output to reflection-print media such as offset lithography, off-press proofing systems, computer-driven printers of various kinds, and photographic paper. Even with this bias, the PCS will provide good results in other applications such as video production, slide production, and presentation graphics.

These considerations led to the fundamental statement made earlier that the PCS for perceptual rendering intent represents desired appearance. The term "desired" implies that the PCS is oriented towards colors to be produced on an output medium. Obviously, "desired" is open to various interpretations. However, in order to enable the decoupling of input and output transforms, it must be interpreted in a way that, to the greatest extent possible, transcends the capabilities and limitations of the specific color-reproduction processes, devices, and media for which profiles are to be provided.

For instance, an input profile for a slide scanner should attempt to yield "desired" colors, represented in the PCS, that are independent of the gamut and aesthetics of any specific output medium. This independence, which decouples the PCS colors from the device colors, allows the input profile to be used in conjunction with any output profile. These desired colors will be based on the colors of the input slide but are not necessarily identical to those colors or limited to the gamut of the slide medium. They are the colors that would be desired on output if the characteristics of the potential output media could be transcended.

Similarly, the output profile for a color printer must reproduce the desired colors within the capabilities and limitations of the output medium and device. This reproduction may involve some adjustment of the colors, as defined by the rendering intent, but it transcends the characteristics of any specific input medium and permits the use of the output profile in conjunction with a variety of different input profiles.

With this PCS definition, it is the responsibility of the profile transforms to handle any required corrections or modifications to the colorimetry of a reproduction. Input profiles are responsible for modifying the colorimetry of the input media to account for adaptation, flare, and gamut limitations. They also must provide the artistic intent implicit in the word "desired", which allows latitude for variation. For instance, the "desired" colors may be a close facsimile of the original, an aesthetic re-rendering of the original, or a simulation of a specific reproduction medium different from both the input and output media.

Output profiles for media that are viewed in environments different from the reference are responsible for modifying the colorimetry to account for the differences in the observer's state of adaptation as well as any substantial differences in viewing flare present in these environments. This is needed in order to preserve color appearance. Profiles must also incorporate adjustments to the dynamic range and color gamut of the image in order to accommodate the limitations of the actual medium.

4.1 Brightness Adaptation and Tone-scale Correction

One of the most fundamental corrections that must be applied to the measured colorimetry has to do with issues of tone reproduction and overall brightness level. These issues involve adaptive effects, as well as aesthetic and pragmatic considerations. When viewing a reflection print under normal viewing conditions (i.e., where the print and the area surrounding the print are similarly illuminated), the observer becomes adapted to things perceived as white in the environment. A reflection print is perceived as an object in this environment in which the brightest areas in the image are those in which the paper (or other substrate) is blank (no colorant). However, the original scene which is being reproduced, may well have contained specular highlights, or other very bright objects, which can be several times brighter than 100% diffuse white in that scene. Since the diffuse white in the original scene is typically reproduced on the print with a density very close to that of the substrate, which itself is limited in reflectance (typically 85% to 90%), the reproduction viewed in normal viewing conditions cannot realistically create the appearance of these highlights. Thus, the highlights must be considerably compressed in the reproduction.

On the other hand, slides or movies projected in a darkened room do not suffer from the same limitation. In the absence of dominant external references, the observer's state of adaptation is controlled by the bright image on the screen. Thus, these media are designed to reproduce diffuse white at a lower luminance than the maximum attainable, which leaves some headroom for the reproduction of specular highlights and other very bright tones. To the adapted observer, these tones actually have the appearance of being brighter than 100% diffuse white; they sparkle and shine with a more realistic intensity than is possible for a print viewed under normal conditions. Thus, their representation in the PCS would require an apparent luminance greater than that of the white reference (Y > 1, or L* > 100). The same illusion is possible with back-lit transparencies and video, as long as the viewing environment is sufficiently dim that the observer is adapted primarily to the image, rather than the surround. Of course, there are limits to the apparent brightness that can be simulated by these media, but they are far higher than those of reflection prints in a normal surround - perhaps 200%, as compared with 90%, relative to diffuse white. The practical consequence of this difference is that the tonal compression of highlights is much less severe in the case of movies, slides, and video, than in the case of typical prints on paper.

All real media have a limit at the dark end of the tone scale, so that tonal compression is required in the shadows as well. Furthermore, the level of flare in the intended viewing environment has a strong effect on the apparent tone scale, particularly in the shadows and three-quarter tones; media designed for viewing conditions with different levels of flare tend to incorporate different amounts of flare compensation in their tone reproduction. PCS colorimetry must also be corrected to account for the change in color appearance caused by differences in the absolute luminance level. For example, the 500 lux illuminance of the reference viewing environment is similar to that of most actual home and office viewing environments but less than the 2000 lux often used in Graphic Arts and Photography. Corrections will typically be needed to correct for the brighter, more colorful appearance of reproductions when they are viewed at higher levels of illumination.

In photographic systems, the tone-reproduction characteristics are implemented in the construction of the sensitized layers and the chemistry of the emulsions and developers, or in the case of digital photography, in the image processing. In video, they are implemented in the electronics of the camera and receiver. Thus, a color management system usually deals with an image originating from a medium or device that has already imposed its own tone characteristic on the luminances captured from a scene, so that the highlights and shadows are already compressed. However, it is often necessary to reproduce the image on a different medium, for which the original compression may be less than ideal. In such cases, for best results, the tone scale of the image should be adjusted for the output medium. The PCS and its reference medium provide a convenient interface for these tone-scale adjustments. Input transforms apply adjustments to map the tone scale of the original medium onto that of the reference; output transforms incorporate adjustments to map the tone scale of the reference medium onto that of the output medium.

These adjustments can take on many different forms, depending on the aesthetic effect to be achieved. In some cases, the appearance of the original may be accurately preserved; in others, it may be preferable to make deliberate alterations in the appearance, in order to optimize the rendering for the output medium or to simulate a third medium. This range of possibilities is implicit in the phrase "desired color appearance" in the PCS definition for the perceptual intent. Output to media with a dynamic range different from that of the reference medium may be handled by tone-shaping techniques which compress or expand the tone scale to the range the device can handle. Furthermore, in output profiles, the different "rendering intents" can incorporate different adjustments. Some perceptual transforms, for example, can be designed to preserve the tone scale of the reference medium, clipping abruptly at the minimum reflectance if necessary, while other perceptual transforms may apply a more subtle reshaping of the highlight and shadow tones.

Input from media with a dynamic range different from the reference medium also may have tone-shaping techniques applied, along with luminance scaling to maintain brightness balance. These adjustments should be invertible (in the sense that they match the precision of the data and the computation) for high-quality output to the same devices. For instance, images with an extended highlight range (such as those from scanned photographic transparencies) must be remapped for the reference medium, so that the highlights will be compressed to the range of the PCS.

The details of these techniques may vary with the intended market, the specified "rendering intent", and aesthetic choices made by the profile builder. If the intent is to preserve the appearance of the original, adjustments to the tone scale can be limited to those compensating for differences between the actual viewing conditions and those of the reference environment. These include the effects of brightness adaptation, surround adaptation, and viewing flare. In other cases, there is plenty of latitude for profile vendors to differentiate their products with respect to aesthetic choices, while still basing their profile transforms on the common definition of the PCS. Thus, proprietary art can be fostered and encouraged in a context of interoperability.

5. iccMAX

For most workflows, the well-defined Profile Connection Space described above is an essential component of the color management system. However, in the twenty or so years since the first ICC specification many new needs have emerged. Users increasingly have access to spectral data, for example from multi-spectral and hyper-spectral image capture devices, and from spot colour measurement data. The D50 colorimetric PCS in ICC v4 limits the ability to work with such data, and also restricts users to a single PCS illuminant and colorimetric observer. The new iccMAX specification is no longer restricted to a fixed colorimetric PCS but supports different ways of using spectral data, both on input and output, and also enables the illuminant and colorimetric observer to be selected. It has robust methods of exchanging such data to ensure that there is no ambiguity in its interpretations and that it is always possible to connect to a v4 profile.

iccMAX also introduces many radical innovations, such as the ability to program the colour conversion function inside the profile, to describe properties such as texture and gloss as well as colour, and the ability to pass run-time parameters. It enhances the functionality of the profile specification in many other ways that will support new and emerging color management needs.