Out of Gamut: Getting a Handle on Color Management

How Color Management Works
Color management systems try to solve both these problems — ambiguous color and unstable color — using three components:

  • A reference color space that represents color as we see it.
  • Device profiles, which describe a device’s color behavior.
  • A color engine, which is a piece of software that does the actual work of matching color from device to device.

Each of these components plays a key role in keeping colors consistent across devices.

Reference Color Space
Today’s color-management systems actually use two reference color spaces, known as CIE XYZ (1931) and CIE LAB (1976). You can find a more detailed explanation of the basis of CIE XYZ (and its later derivative, CIE LAB) in “Out of Gamut: Why is Color?” To understand how color management works, though, you really only need to know two things about CIE XYZ and CIE LAB:

  • LAB is a straightforward mathematical equivalent of XYZ
  • Both XYZ and LAB represent color in terms of human perception, rather than in terms of the control signals we use to make a given device produce color. In other words, both color spaces let us specify the color a human with normal vision can see. As a result, XYZ and LAB values define color unambigiously, unlike device-dependent color models such as RGB and CMYK.

Device Profiles
Device profiles provide us with descriptions of the way our color devices behave. At the risk of gross oversimplification (because profiles can be quite complex), a device profile is basically akin to a dual-language dictionary, with one language being the actual perceived color in XYZ or LAB and the other being the device-specific RGB or CMYK. The device profiles correlate the device control signals — the RGB or CMYK values — with the actual perceived color (expressed as LAB or XYZ values) that they produce.

Profiles are useful in two ways:

  • When we associate a device profile with a set of device-specific RGB or CMYK color values, we can use the profile to determine what actual color the values represent (in XYZ or LAB).
  • When we know the actual color we’re trying to reproduce (in XYZ or LAB), we can look at the profile for the device on which we’re trying to reproduce that color, and we can determine what device-specific RGB or CMYK values the device needs to reproduce that color.

The Color Engine
The color engine — also called the CMM, which has at various times stood for Color Matching Method and Color Management Module — is the piece of software that actually changes the numbers in our files as we go from device to device, with the goal of keeping the color consistent.

If we return to the example shown in Figure 1, the color that the scanner saw as R247, G160, B91 has LAB values of L* 76, a* 19, b* 46. Through top secret means I’ll never divulge, at least for a couple of paragraphs, I know that to make that same color appear on my monitor, I need to change the RGB values to R250, G175, B100. To print that same color on my Epson inkjet printer, I need to change the RGB values to R244, G192, B148.

Without a color management system, the only way to determine these values would be expensive, time-consuming trial and error. With color management, it’s almost an automatic process. Here’s how it works.

I ask the CMS (color management system) to convert my color from scanner RGB to monitor RGB by specifying a source profile (the scanner) and a destination profile (the monitor). The CMS looks first at the source profile and determines that the actual color represented by scanner R247, G160, B91 is LAB 76, 19, 46. Then it looks at the destination profile and determines that a color whose LAB values are 76, 19, 46 can be represented on the monitor by RGB values of R250, G175, B100. Then it converts the color, changing the RGB values from source RGB R247, G160, B91 to destination RGB R250, G175, B100.


Figure 2: The CMS uses the scanner profile to determine that the actual color represented by scanner RGB 247, 160, 91 is LAB 79, 19, 46. It uses the monitor profile to determine that the monitor needs RGB values of 250, 175, 100 to represent that same color. When we print, the CMS determines from the printer profile that the RGB values needed to print the color are R244, G192, B148.

Of course, usually color management systems operate on more than one color at once: By specifying source and destinations profiles, you give the CMS the information it needs to make all the colors in the source files appear as true as possible on the target device. And that, in a nutshell, is all that color management systems do: They change device-specific color values from a source profile’s color space to a destination profile’s color space in such a way that the perceived color remains consistent. You can, of course, make color management systems do more complex operations — for example, you can ask the CMS to show you on your monitor how an inkjet proof of a CMYK press will appear — but when you break it down, the operations always boil down to converting from one profile’s device-specific values to another profile’s device-specific values.

Bookmark
Please login to bookmark Close

This article was last modified on June 20, 2001

Comments (9)

Leave a Reply

Your email address will not be published. Required fields are marked *

Loading comments...