Mauro Boscarol   Digital Color Management 
 
Color and the meaning of numbers

Digital color

Digital color management is the computer processing of color. The word digital is derived from digit which is in turn derived from the Latin digitus, meaning finger (fingers, as we know, often being used as an aid to counting and using numbers). In short, digital means "represented by numbers".

Digital is the opposite of analogical. A clock with hands is analogical, but if it has no hands, only numerals, it is digital. A photograph taken on a roll of film is analogical; a photograph taken with a digital camera is digital.

But what exactly is digital color? It is the color of digital images, that is, of images made up of numbers.

Let us consider, for example, an RGB digital image 100 X 200 pixels. How is this stored in RAM memory, or on disc? There are a total of 100 X 200 = 20,000 pixels, each of which has three components (one for each primary color RGB), and each component is given a value from 0 to 255. The image is thus stored in the computer memory as a series of 60,000 (20,000 X 3) numbers, each with a value somewhere between 0 and 255.

In the computer memory, the image is made up solely of numbers. In order to view the image, (either on the monitor or printed) what meaning should be given to these numbers? What color should a pixel with, for example, the values R = 153, G = 255, B=204 actually be displaying?

One might assume that the color will simply be whatever appears on whichever monitor is being used when those three numbers are processed in input. And, in fact, until recently, all applications did indeed work in this way (e.g.: Adobe Photoshop up to version 4). But monitors are all different from one another and identical numbers will produce different colors on different monitors. Thus, the same image viewed on different monitors, appears to be different.

In order to give an unambiguous meaning to the values, it is best to give a reference to a particular real or ideal monitor, (if the image is RGB), or a particular real or ideal printer, (if the image is CMYK). This reference is known as the profile and is incorporated into the image.

A digital RGB image is therefore made up of numbers and a profile; i.e. the numbers plus the reference necessary to give to each number the meaning (color) intended by the image creator.

When the image is viewed on the monitor (real or ideal) referred to in the profile, the colors will be accurate. When the image is viewed on another monitor, with other characteristics, the numbers will have to be modified. Indeed, the same numbers will produce different colors, so it will be necessary to modify the numbers in order to produce the colors originally intended.

An analogy

A similar problem to above occurs when we ask directions to a specific square in an unfamiliar town.

To reach Piazza Walther from the point circled in red, I must take the first turning on the right, and then the second on the left.

City map of Bolzano, Italy

These numbers (first right, second left) only lead me to my desired destination (Piazza Walther) if I start at the red circle. If the starting point changes, for example, to the blue circle, the numbers will need to be changed (to first left, and again first left) in order to arrive, as before, in Piazza Walther.

The analogy with colors on monitor is clear:

  • the desired color = the square I wish to reach;
  • the profile of the monitor = the starting point;
  • the RGB value = the route to follow.

Color conversion

One can therefore summarize digital color management as follows:

  • the image is made up of numbers;
  • the numbers refer to a specific profile;
  • the profile is the reference which gives meaning (i.e. the color) to the numbers;
  • when the image is transferred from one device to another (from the source to the destination) the reference changes;
  • in this case, it is necessary to change the numbers in order that the meaning (i.e. the color) remains unaltered.

The latter operation (changing the numbers) is the so-called color conversion (which is in fact a conversion of numbers) which can be carried out in various ways, either within the image processing application, or (if the destination is a printer) during the printing phase, or even within the printer itself. The conversion is actually carried out by a piece of software known as the color engine.

The profiles and the color engines may be available in the applications or in the operative system itself. In Mac OS (9 and X), color management is carried out by ColorSync, whilst in some Windows versions it is carried out by ICM.

   
Home | Comments to Mauro Boscarol | Last updated August 10, 2004