Malch Silly Counter:
Visitor 21250
Fight Censorship
 Map   New   Links   FAQ   Photo   Malch   Search 

Color Managed Workflow with Microsoft Windows

This document is a work in progress and still very much subject to revision and corrections.

Many photographers and others concerned with color fidelity use high quality monitors that they calibrate from time to time.

Calibration is typically performed using a hardware device called a puck. The puck is placed on the monitor screen and it measures the displayed colors. The calibration software instructs the monitor to display a specific color and the puck can measure the displayed color to see just how accurate it is.

This test is repeated many times using different colors so that the calibration software can build a profile that describes just how that particular monitor displays the entire spectrum of colors. Subsequently, that profile can be used to adjust the colors sent to the monitor such that the monitor displays them accurately. So, if a specific monitor tends to display colors with too much red, color managed software will effectively subtract that amount of red from the colors it sends to the monitor.

A similar approach can be used to calibrate other output devices such as color printers.

When implemented correctly, the user sees accurate colors on his display. And furthermore, he is guarenteed consistent colors when that image is rendered by other calibrated devices; other monitors and printers.

So far, it all sounds fairly desirable and straightforward. Unfortunately, maintaining the integity of these colors at every step is a moderately complex, confusing, and time consuming process. The remainder of this document attempts to describe how to achive that end with as little pain as possible.

Calibrating a Monitor

First, you will need some calibration hardware and software. One relatively simple and inexpensive example of a calibration device is the Spyder 3 Express.

Follow the manufacturer's instructions to calibrate your display. Note that you will want to clean your monitor and think about the ambient lighting conditions. In any event, you will complete a calibration and finish up with a profile which is written to a file called something like:

C:\Windows\system32\spool\drivers\color\Spyder.icc

These files are created with a .icc or .icm extension. Those two extension types are essentially identical and interchangable. Note however, that they may be created in accordance with ICC v2 or ICC v4. Most (but not all) applications can read/use either format. The Firefox browser is one notable exception.

If you want to poke around inside those files, download a copy of the ICC Profile Inspector

Configuring Windows

Most calibration tools will write a "vcgt" tag in the display profile. During Windows startup, some special software needs to extract that "vcgt" data and load it into a Lookup Table (LUT) within your video card.

Windows 7, correctly configured, will do this for you automatically. Windows XP and Windows Vista users will need to use a third party program to perform this task. Most commerical calibration tools will install that software for you and configure it to execute automatically when Windows is booted. You may notice a visible change in the appearance of your display as the LUT is loaded. The gamma and white point of your display have been set up to match the profile of your now calibrated display.

Users may typically select the Windows default color profile for any device via a Control Panel option. One such Control Panel snap-in ships with Windows 7 as standard. Users of Windows XP or Vista system may install a Control Panel Applet available from Microsoft. Sometimes a Control Panel snap-in is added by other third party software (calibration software, or display drivers).

Things really start to get confusing on systems with dual monitor setups. Obviously, there will be two monitor calibration profiles. And the appropriate "vcgt" tags must be loaded into the two corresponding LUT's. If and how this can be achieved depends upon many variables and the detailed mechanisms are beyond the scope of this document.

Applications Software

Next, you need to view and edit those images using only applications programs that are fully color managed. Yes, folks, to maintain that color integrity you must limit yourself to specific programs that were designed to support a fully color managed workflow.

Programs that support a fully color managed workflow must perform two critical tasks:

  1. Recognize embedded ICC profiles within appropriate (JPEG and TIFF) image files and correctly apply the color transformation to whatever internal working color space the program uses. And...
  2. Apply the appropriate device color profile when sending the image to an output device such as a computer monitor or printer.

Unless an application performs both those tasks correctly the integrity of the final output colors cannot be guarenteed and the application does not support a fully color managed workflow.

Applications that are fully color managed out of the box (unless you manually screw it up) include:

Applications that support full color management but have to be manually configured to enable color management and/or to use the correct display profile include:

The Firefox web browser also falls broadly into this category but it should be noted that Firefox 3.6 only supports/recognizes profiles created in the ICC v2 format (not ICC v4). See this ICC v4 Test Page to confirm. Interestingly, Firefox 3.5 did have the ability to handle ICC v4 profiles. However, this capability was lost when Firefix switched from using the Little Color Management System (lcms) to a new implementation called QCMS. This was done for reasons of performance -- QCMS was considerably faster than LCMS at that time. I believe that LCMS performance was subsequently improved.

The Apple Safari web browser is fully color managed and I am not aware of any limitations or caveats on that point.

Applications that only partially support color managed workflow include FastStone Image Viewer (4.2) which can optionally handle JPEG and TIFF images with embedded ICC profiles correctly. However, it will not apply the calibration profile to an image before sending it to the output device (display or printer). This application is not therefore fully color managed.

Applications that do not support color management at all. A good example would be Internet Explorer v6. It does not recognize images with embedded ICC profiles and it does not apply the monitor calibration profile either. Unfortunately, most applications fall into this category. Unless an application is specifically advertized as being fully color managed, you should probably assume that it isn't.

IrfanView is a well known image viewer that deserves special mention. Originally, it did not support color management at all. At version 4.10 the ability to handle embedded ICC profiles in JPEG and TIFF files was added. At version 4.25 it was enhanced further with the ability to apply a display profile. However, I strongly recommend you do not enable this feature. It will allow you to view an image with the correct colors just as if the program was fully color managed. However, if you SAVE that image it will be written with the display profile applied. That means you will finish up with invalid colors in the file which is absolutely NOT something you want.

Notes and Additional Reading

All of the foregoing information is specific to systems operating on the Microsoft Windows platforms. Although the same general principles of color management apply to UNIX and Macintosh systems, there are significant differences in where, when, and how specific operations are carried out. Since that is beyond the scope of my experience, I have not attempted to address those questions here.

Readers looking for more detailed technical information are encouraged to consult the following sources all of which are generally considered to be reasonably (or very) authoritive.

What About AbobeRGB?

Many people ask the question: Should I be using AdobeRGB in my color managed workflow?

If you are wondering about this question, the answer is almost certainly no! For more information read The Case Against AdobeRGB.

Contact malch at malch dot com

 

© Copyright Malcolm Hoar 1995-2014
malch at malch dot com