◩ Graphics & images

ICC profiles and color management: moving color between devices

How color management works: ICC profiles, the connection space, rendering intents, monitor calibration and soft proofing before a job goes to press.

A camera, a monitor and a printer "speak" different color languages: each has its own primaries, its own gamut, its own behaviour. Color management is the translation system that lets a photographed red remain the same red on screen and on paper, within the limits of what each device can do. At the heart of this system are ICC profiles.

What an ICC profile is

An ICC profile is a file, defined by a standard of the International Color Consortium, that describes in measurable terms how a device or color space reproduces color. In practice it answers one question: "when this device receives the values (R, G, B), what real color does it produce?" or, for a camera or scanner, "what real color corresponds to the values I recorded?"

There are several kinds of profile:

  • color space profiles, such as sRGB or Adobe RGB, describing an abstract space;
  • monitor profiles, created by measuring a specific screen;
  • print profiles, tied to a precise combination of printer, inks and paper;
  • input profiles, for cameras and scanners.

Profiles are found embedded in image files or installed in the operating system, which makes them available to applications.

The connection space

Translating directly from every device to every other would need a table for every pair. Color management instead uses a device-independent intermediary, the Profile Connection Space (PCS), based on colorimetric spaces such as CIE XYZ or CIE Lab, which describe colors as perceived by a standard observer.

Every conversion happens in two steps:

source values → (source profile) → PCS → (destination profile) → destination values

The program that performs the calculations is called the color management module (CMM). The same file, converted with correct profiles, produces different numbers for each device but, ideally, the same perceived color.

Rendering intents

The problem arises when the destination has a smaller gamut than the source: some colors cannot be reproduced. The standard provides four strategies, called rendering intents:

Intent What it does When to use it
Perceptual compresses the whole source gamut to fit, preserving relationships between colors photos with many out-of-gamut colors
Relative colorimetric reproduces exactly the colors that fit and clips the rest to the edge; adapts the white point most photos and graphics
Absolute colorimetric like relative, but without adapting white proofs simulating a specific paper
Saturation favours vivid colors over accuracy charts and presentations

Relative colorimetric, often combined with black point compensation, is a good starting point. Perceptual pays off when soft proofing shows large saturated areas that relative would flatten. The best choice is made by looking, not in advance.

Calibrating and profiling the monitor

The whole system holds up only if the monitor is described correctly. There are two distinct operations:

  1. Calibration: the screen is brought to a known, stable state (luminance, white point, curve) by adjusting the monitor's controls or the graphics card's tables.
  2. Profiling: with a measuring instrument (colorimeter or spectrophotometer) many patches are measured and a profile describing the calibrated screen is created.

Practical tips I use in my work:

  • let the screen warm up for half an hour before measuring;
  • for retouching aimed at print, choose a moderate luminance, because a screen at maximum brightness makes prints look dark;
  • repeat profiling periodically, because panels change with use;
  • keep the room lighting stable.

Soft proofing

Soft proofing simulates on screen how the image will look on a given output device. The program virtually converts the image to the print profile and then displays it through the monitor profile. You can thus see in advance colors that will turn dull, blacks that will become gray and the "white" of the paper, which is never the white of the screen.

Many programs also offer a gamut warning that highlights non-reproducible areas. They do not always need fixing: if the perceptual intent handles them well, the result may be fine as it is.

Where color management breaks

  • Applications without color management: they ignore the profile and send the numbers to the screen as they are. On a wide-gamut monitor, sRGB photos look oversaturated.
  • Missing profiles: a file without a profile forces the software to guess.
  • Double management when printing: if both the application and the printer driver apply a conversion, the colors come out wrong. It should be enabled in only one of the two places.
  • Generic profiles: a manufacturer's "standard" profile does not describe your specific monitor; it is better than nothing, but it is no substitute for a measurement.

In short

  • An ICC profile describes in measurable terms how a device or space reproduces color.
  • Conversions pass through a device-independent space (PCS) and are carried out by the CMM.
  • Rendering intents decide how to handle out-of-gamut colors; relative colorimetric is a good starting point.
  • Calibrating and profiling the monitor is essential for judging color.
  • Soft proofing shows the print result in advance; avoid double management between application and driver.
MM
Marco Marzaduri

Marco Marzaduri works in cybersecurity, digital forensics and web development. A computer science graduate, he combines rigorous technical analysis with attention to the people who use technology.

Read also