Color Matching
M. David StoneEven on a darkened, wintry day, there's a colorful world out there. And between photos on Web pages, the growing popularity of digital cameras and scanners, the wide availability of color printers, and the rising expectations for all of these, more and more of that colorful reality is finding its way into the digital world too.
The challenge remains, as it always has been, to make the colors match--between scanned image and monitor, between monitor and printer, between printer and digital camera, and between all of these and the real world.
The bad news is that getting colors to match is a lot harder than you might think it is if you haven't tried it. The good news is that it's getting easier--both on a practical level for you as a user, and on a technical level for the people who design and build printers, scanners, cameras, monitors, and software.
The reason, in large part, is that at long last PC hardware and software is moving toward a standard--or, more precisely, towards a family of standards--for representing colors. The standards in question are ICM (Image Color Management) 2.0 built into current versions of Windows (98, 2000, and ME), ICC (International Color Consortium ) profiles, sRGB, and scRGB (which you may have heard of under the its earlier name of sRGB64). If you want to understand why these standards are important, and how they improve color matching, it will help to first understand why matching colors is such a problem to begin with.
In the best of all worlds, you should be able to pick a scanner, monitor, digital camera, and printer at random, and have them all work together to produce great color without a second thought. Create a graphic on screen, print it out, and the colors in the printed version should be reasonably close to the colors on screen. Scan a photo or take a picture, and the colors on screen and in the printed output should be acceptably close to the original.
This hasn't generally been true in the past, because there are a large number of issues that get in the way of matching colors. Among the most important (for more details on any of these issues, follow the related links): Color is subjective: It's perfectly obvious that color is an intrinsic feature of an object: Grass is green, the sky is blue, the paint on your living room wall is peach, and so on. As obvious as this may be, however, it's not so. Color is actually a sensation, just like touch. And the colors you see are purely subjective, as interpreted by your visual system and your brain. Lighting affects color: The color of an item--including, for example, a printout--will vary depending on the light, so it will look different under incandescent light, florescent light, and daylight, for example. Identical colors can be metameric pairs: Two items that are the same color under one light can be different colors under another light. Colors affect colors: Your perception of a color will change, depending on the colors around it, an effect called simultaneous contrast. Paint a small square of green on a blue background, and the green will have a yellowish tinge. Change the background to yellow, and the green will have a blue tinge. The human eye is different from a scanner or camera: The sensors in scanners and cameras are sensitive to specific frequencies of light in different proportions than the color sensitive cones in the human eye. Different devices have different color gamuts: Monitors can show colors that printers can't print, and printers can print colors that monitors can't show. Cameras and scanner sensors can register colors that neither monitors nor printers can produce. Different devices use different color models: A color model is simply a mathematical way to represent colors. When different devices use different color models they have to translate colors from one model to another, which often introduces errors. This is a particular problem for device-dependent models, meaning models defined strictly in terms of a specific printer, monitor, scanner, or camera. Given all the limitations inherent in trying to match colors it's important to understand the difference between correctable color errors and uncorrectable errors. Correctable errors are the ones that you can do something about in software. Uncorrectable errors are the ones that you can't do anything about because the information you need to correct them doesn't exist. They indicate that some information is getting lost in the process of scanning, snapping a picture, or printing.
If you don't see some subtle shading that you ought to see for example, you can't reproduce colors properly. If you retain the shading, but see an off-color cast to the image, you can usually correct it.
A common sample photo for judging color quality is a closeup of a fruit basket, both because everyone knows what counts as reasonable colors for the fruit, and because you can see how rounded and three-dimensional the fruit seems. Don't worry too much about the actual colors, but look for a flattening effect--a loss of three-dimensionality compared to what you know the photo looks like on screen or printed on another printer. That flattening indicates a loss of subtle shading in the printout, and is an uncorrectable error.
Similarly, in an image with a large area of color that should change gradually--like a closeup of a face or an open expanse of sky--look closely to make sure the colors change gradually and continuously. A sudden jump in color that should change gradually is called posterization, and is an uncorrectable error.
Also print a photo that has both dark and light areas--a tree line against a bright sky with a few clouds, for example. Look to see if there is any loss in detail in either the bright areas or the dark areas. The details should hold across the entire range of brightness.
The point is that flattening of an object because of loss of subtle shading is a color issue, because it's losing shades of gray (which in this case means shades in one or more color planes). Posterization is a color issue, because once again, it means the image is losing some shades of gray. Losing details in light and dark areas (a measure of something called dynamic range) is all about losing shades of gray.
In each case, if you can't produce all the shades of gray you need, you're missing some colors. And since the information is actually missing, you can't do anything about it. On the other hand, in color errors like a slight shift in color, the information isn't lost; it's just not being used to its best advantage. And that is something you can correct.
This same contrast between correctable and uncorrectable errors applies to cameras and scanners as well. Things like better lenses, better optical coatings, and improved CCD arrays can all minimize uncorrectable errors in a scan or photo. Correctable errors, however, require color management. Given all the issues that make it difficult to match colors, it's a misnomer to talk about color matching. The more precise description of what you need to do is color management, a term that recognizes the near-impossibility of matching colors between devices.
Until recently, color management for digital images has been an arcane subject that few people other than graphic artists or professional photographers bothered with. The problem was that it really was a bother. The classic approach to color management is closed loop calibration, which involves calibrating specific pieces of hardware to each other, for use with a specific program.
To calibrate a scanner to a printer, for example, you can scan a known target, print it, then scan the printout. The calibration software can then compare what the scanner sees to what the printer actually printed, and create a profile for that printer to compensate for the difference. If you have more than one printer, however, you have to calibrate for each printer separately. And if you forward a scanned file to someone else, it won't be calibrated to his or her printer--or screen for that matter. In addition, you may have to calibrate separately for each program you print from, since different programs handle color output differently.
Monitor calibration is similar in concept but different in particulars. The calibration software displays specific colors, as defined by so much red, so much green, and so much blue, and compares them to color measurements as taken by a colorimeter. The calibration software then compares the colors it displayed with the colors the colorimeter saw, and creates a profile to compensate for the differences.
The reason closed loop calibration is such a chore--indeed, the reason it was needed--is that there were no generally accepted standards for color management. Clearly, if every program used the same approach to color management, and every printer, monitor, scanner, and camera were designed to work with that color management scheme, color management would be a snap. If the hardware all used the same standard color model, for example, or came with profiles that would translate color information to and from a standard as needed, you'd be able to move color information around--from program to program or scanned image to printer--without introducing errors.
Microsoft Responds And that's pretty much what the digital world is moving to right now, and has already moved to in some ways. . Microsoft introduced its original color management scheme, ICM (Image Color Management) 1.0, in Windows 95. Few companies took advantage of it. Then came Windows 98, and the much improved ICM 2.0 (which is also built into Windows ME and Windows 2000). It's taken a while, but ICM has slowly gathered steam and is beginning to pay off in important ways.
ICM 2.0 supports what amounts to two different approaches to color management. For professional photographers and graphic artists, it supports standard ICC (International Color Consortium) profiles. The profiles serve as a translation table for color information as defined by a particular printer, scanner, or other device. Many high-end devices today come with generic profiles for their particular model, and you can find other profiles on the Web. You can also create your own custom profiles that exactly define your particular piece of hardware. (More on ICC, sRGB, and scRGB)
The second built-in approach to color management is a lot simpler. Do nothing. If you don't supply a profile for a piece of hardware, ICM 2.0 assumes that the color information is based on a standard color model called sRGB. The sRGB model was designed with the installed base of monitors in mind. A photo based on sRGB on a Web page, for example, will have reasonably acceptable colors on just about any monitor.
Without much fanfare, the sRGB model has been finding it's way into more and more cameras, scanners, and printers. So if you go out and buy all new equipment today, the odds are pretty good that you can take a picture or scan a photo, and either view it on screen or print it and wind up with pretty good color. As a general rule, the color quality won't be as good as you'll get from using full-fledged ICC profiles. One of the limitations for sRGB, for example, is that, having been based on typical monitors, its color gamut is defined by the colors monitors can produce. However, sRGB is an easy way to get pretty good color with hardly any effort.
On the near horizon is a new color model, suggested by Microsoft and Hewlett-Packard, called scRGB. The proposed new standard is still in the process of becoming a new IEC (International Electrotechnical Commission) standard, and should be completed by the end of 2001. scRGB is meant to fill the gap between the ICC profiles that professional graphics users need, and sRGB as a no-brainer kind of color management for consumers. Compared to sRGB, scRGB offers a larger color gamut, improved tonal range, and more precision in describing colors, with 16 bits per color channel (Click HERE for more on the distinctions between these standards).
Microsoft envisions sRGB as the tool of choice for the "prosumer" (consumers with professional-level skills) and plans to integrate it into Windows by the end of 2002. Hardware using sRGB64 will take longer. Microsoft suggests that products with the new color model may be widely available "as early as 2005." If everything works as planned, sRGB64 devices will provide the same kind of no-brainer color management as sRGB. The goal is to offer nearly as good color quality and color management as ICC profiles provide without users having to think about color management at all. Sources for More Information on Color, Color Perception, Digital Color, and the Human Visual System
Bride M. Whelan Color Harmony 2, A Guide to Creative Color Combinations (Rockport Publishers, 1994)
M. David Stone The Underground Guide to Color Printers (Addison-Wesley, 1996)
Richard Jackson, Lindsay MacDonald, and Ken Freeman Computer Generated Colour, A Practical Guide to Presentation and Display (John Wiley & Sons, 1994)
Robert G. Gann, Ph.D Desktop Scanners (Prentice Hall, 1999)
Charles A. Poynton, Poynton's Colour FAQ, http://www.stud.ee.ethz.ch/~buc/brechbuehler/mirror/color/ColorFAQ.html (Note the FAQ itself suggests using the link www.inforamp.net/~poynton/Poynton-color.html to "allow me the flexibility to move [the FAQ] and avoid the nuisance of stale links." However the suggested URL is not active at this writing. We found this link by searching at www.google.com for "charles poynton colour"--without the quotation marks.)
Peter K. Kaiser The Joy of Visual Perception: A Web Book http://www.yorku.ca/eye/index1.htm
Adobe offers a number of technical guides on its web site relating to color and color management. Some are specific to Adobe products. Two that are more general are:
Basic Color Theory for the Desktop http://www.adobe.com/support/techguides/color/colortheory/main.html, and Color Models http://www.adobe.com/support/techguides/color/colormodels/main.html
International Color Consortium (ICC) Web page http://www.color.org
Copyright © 2004 Ziff Davis Media Inc. All Rights Reserved. Originally appearing in ExtremeTech.