Different Devices Use Different Color Models

This site may earn affiliate commissions from the links on this page. Terms of use.

There are any numbers of approaches to describing colors using a mathematical model; each one qualifies as a color model. You can, for example, assign a specific hue, saturation, and brightness level to define a color (HSB color models); or a value of red, green, and blue (RGB color models); or a value of cyan, magenta, and yellow (CMY color models); or a value of cyan, magenta, yellow, and black (CMYK color models).

Within these general descriptions–HSB, RGB, CMY, CMYK, and more–any model can use any arbitrary number of steps for each parameter. Some schemes, for example, use 100 steps each. Others use 256 steps, a convenient number for the digital world because you can define 256 steps for each color by assigning 8 bits to each color.

All of these color models–and more–are widely used to describe colors, both by software and by various types of hardware like digital cameras, scanners, monitors, and printers. Unfortunately, most of these have historically been device-dependent models — meaning that the designation for a given color applies only to the particular device. And that makes it hard to move color information between devices without introducing errors.

Two device-dependent models can share the same name, but they won’t share the same descriptions for each color except by pure co-incidence. For example, some printers use CMYK color models. (Not all do. A printer can use an RGB color model, and translate the colors to the right amounts of cyan, magenta, yellow, and black ink.)

Suppose you define a color in a drawing program as cyan 120, magenta 75, and yellow 130, and then print on three printers, each of which uses a device-dependent version of a CMY or CMYK color model. You will usually find that the color prints as an obviously different color on each printer. Not only that, but each of the colors will usually be noticeably different from the color on your screen.

The issue is not that any of the printers is doing something wrong; it’s just that they each depend on a different color model, despite the fact that all the models share the same name. So the same designation–cyan 120, magenta 75, and yellow 130 in this case–defines a different color for each printer.

The problem gets worse if you need to translate between one kind of device-dependent color model and another. Scanners, for example, use red, green, and blue sensors, and most report colors using an RGB color model. So if you scan an image and open it in a paint program, the image’s color information is defined by an RGB model. If you want to print the image on a printer that uses a CMYK model, you have to translate the color information somewhere along the line.

To do the translation, your software has to make assumptions both about the RGB color model the information starts in and the CMYK model you’re moving it to. If either or both sets of assumptions are wrong–and they often will be–the colors can shift even more dramatically than when you move color information from one RGB model to another or one CMYK model to another without trying to redefine the color information in the process.

We can’t leave the subject of color models without mentioning that some color models are device-independent, either because they describe colors in terms of the human visual system or in terms of a standard reference. Models in the first category include those developed by or based on work by the Commission Internationale de L’Eclairage (CIE). These usually have the abbreviation CIE in their names, such as CIE LAB (pronounced “sealab.”) CIE LAB has been of most interest to professional artists and photographers. You’ll find support for the CIE LAB model in programs, like Photoshop, that are aimed at professionals; it also serves as the basis for the color profiles in color PostScript printers. (It was incorporated into PostScript starting with PostScript 2.) However, most computer applications don’t support this model.

Models in the second category include sRGB, which is supported by Windows and is becoming increasingly widespread. However, converting color information from a device-dependent color model to a device-independent model still requires assumptions that can introduce errors. There are, in fact, only two ways to overcome the problem of introducing errors when moving color information around: Either all the hardware and software has to use the same device-independent color model, or it has to come with a translation table–better known as a profile–that lets your software translate the device’s color information without having to make assumptions.

This site may earn affiliate commissions from the links on this page. Terms of use.

ExtremeTech Newsletter

Subscribe Today to get the latest ExtremeTech news delivered right to your inbox.

Email

This newsletter may contain advertising, deals, or affiliate links. Subscribing to a newsletter indicates your consent to our
Terms of Use and
Privacy Policy. You may unsubscribe from the newsletter at any time.