Outside of the pre-press world which uses the CMYK colorspace and a few niche applications that use other spaces, we all use RGB color spaces. The main difference between the various RGB color spaces such as linear and srgb is the gamma value. The linear RGB space uses a display gamma of 1.0 while srgb uses a display gamma of 2.2. The exception to this would be inkjet printers. They talk to the computer in an RGB space but output in a CMY or CMYK space. This causes a change in the color gamut which can't be compensated for with gamma correction.

The human eye does not detect light in a linear way. If you have three lights, one dim, one bright and the third halfway between them in actuall brightness, the middle light will not appear to be in the middle. CRT monitors also don't emmit light in a linear response to the input signal. In an interesting coincidence both are described by power functions and they work to cancel each other out. The exponent of the power function is refered to as gamma. The CCD sensors in scanners and digital cameras as well as LCD panels are inherently linear. However, some of them have circuits to make them non-linear. I have two Microtek scanners, an X6 that appears to have a gamma of 2.2 and a 4800 that is linear if you turn of all color correction. I also have an HP 618 digital camera that sometimes appears to be linear.

The graphics card in your computer is inherently linear, however it has a look-up table (LUT) between the framebuffer which stores the screen image and the output to the monitor. This allows us to set a desired display gamma by compensating for the CRT gamma. Display gamma is defined as:

display_gamma = CRT_gamma / LUT_gamma

The value for display_gamma should be 1.0 for linear space or 2.2 for srgb space. Unless you have a good reason, those are the only two gamma values that should be used. If you knew what your CRT_gamma really was you could solve for the required LUT_gamma. In reality we don't know the CRT_gamma but that's not really a problem. To calibrate for a desired display_gamma you just need a calibration image set for that gamma.

Here are the basic steps to calibrate your monitor:

  1. Set the black level. This should be done in a dim environment. I find Mr. Poynton's method the easiest.
  2. Display a gamma test image without using any color or gamma correction. You can get a gamma 1.0 image from AIM-DTP. Here is the same image set for the srgb gamma 2.2.
  3. Alter your system or program's gamma correction until the colors match up.
  4. Don't forget to specify you monitor profile. AIM has a couple of gamma 1 profiles you could use and most systems ship with the srgb profile.

More information can be found at the two sites mentioned above. Don't get caught up in their argument about which gamma space to use, that's part of what I'm trying to clear up. For most people though it should be srgb.

Next Browsers and Color