Color accuracy and tonal response

Imatest™ Colorcheck analyzes images of the X-Rite (formerly GretagMacbethTM ) ColorChecker® for color accuracy, tonal response, gamma, and noise. It is particularly useful for measuring the effectiveness of White Balance algorithms and settings under a variety of lighting conditions. The ColorChecker is available from the Imatest Store and many other suppliers.

You can select the Colorchecker reference values (using standard values or the contents of a data file) and one of seven color spaces: sRGB, Adobe RGB (1998), Wide Gamut RGB, ProPhoto RGB, Apple RGB, or ColorMatch, and Rec. 709. Danny Pascale/Babelcolor’s page on the Colorchecker contains nearly everything you want to know about the chart.

To run Colorcheck, photograph the ColorChecker, taking care to avoid glare. For best results, the chart image should be 500-1500 pixels wide, though smaller images produce satisfactory results. For testing white balance, you can photograph a ColorChecker in a scene. The ColorChecker image can be very small if a noise analysis is not required. Load the image file, crop it (if needed), then make any needed changes to the input dialog box (for color space, which defaults to sRGB, etc.).

The First Figure: Gray Scale Analysis

This figure shows the tonal response and noise of the gray patches at the bottom of the Colorchecker and selected EXIF data.

The upper left plot shows the pixel levels of the six patches. Gamma (the exponent of the equation that relates scene luminance to pixel level) is defined by the first order fit (the dotted blue line).
  The upper right plot is the transfer curve
(with similar scaling to film transfer curves): the density (log(Pixel
level/255)) as a function of Log exposure ( (-) target density). Stepchart produces a more detailed transfer curve.
It also shows the exposure error. The best results are obtained if it is kept under 0.25 f-stops. Note that the x-axis scale (log exposure) is reversed from the plots on the left.

Figure 2.

The lower left plot shows the R, G, B, and Y (luminance) noise, normalized to the difference between the white and black patches (a density difference of 1.45). Several additional options are available for displaying noise or SNR (Signal-to-Noise Ratio).
    The lower right region displays EXIF data, if available.

The Second Figure: Noise Detail (Imatest Master only)

The second figure shows the density response, noise in f-stops (a relative measurement that corresponds to the workings of the eye), noise for the third Colorchecker row, which contains primary colors, and the noise spectrum of the selected patch.

The upper left plot  is the density response of the colorchecker (gray squares). It includes the first and second order fits (dashed blue and green lines). The horizontal axis is Log Exposure (minus the target density), printed on the back of the ColorChecker. Stepchart provides a more detailed density response curve. It also shows exposure error in f-stops.
  The upper right plot shows the noise in the third colorchecker row, which contains the most strongly colored patches: Blue, Green, Red, Yellow, Magenta, and Cyan. In certain cameras noise may vary with the color. Problems may be apparent that aren’t visible in the gray patches. Several options are available for displaying noise or SNR (Signal-to-Noise Ratio).

The lower left plot shows the R, G, B, and Y (luminance) RMS noise or SNR as a function of Log Exposure each patch. Any of several displays may be selected. The above figure has RMS noise is expressed in f-stops, a relative measure that corresponds closely to the workings of the human eye. This measurement is described in detail in the Stepchart tour. It is largest in the dark areas because the pixel spacing between f-stops is smallest.
   The lower right plot shows the noise spectrum for the R, G, B, and Y channels for the selected patch. An unusally rapid dropoff may indicate a large amount of noise reduction software, which can mask fine detail.


The Third Figure: Color Error

The third figure shows the color error (the difference between the measured and ideal (reference) values) in the a*b* plane of the CIELAB color space, which is relatively perceptually uniform (not perfect, but far more uniform than the common xy Chromaticity diagram). The small squares are the ideal values; the large circles are the measured (camera) values. The chroma (related to the perception of saturation) of an individual color is proportional to its distance from the origin (a* = b* = 0).

a*b* color error showing ΔC 2000 ellipses,
enlarged 4x.

The mean camera chroma (the average of all camera chroma values) relative to the mean ideal chroma is displayed on the upper right. You can select one of three color error metrics: ΔE*ab (CIE 1976; the familiar Euclidian distance), ΔE*94 (CIE 1994), and ΔE*CMC. ΔE*94 and ΔE*2000 are more complex but more accurate. Mean and RMS (root mean square; σ) or maximum color errors (measured with and without a correction for camera chroma boost or cut) can be displayed. RMS error gives more weight to large errors. Calculation details are given in the Colorcheck Appendix.


Images can be analyzed in sRGB, Adobe RGB (1998), Wide Gamut RGB, ProPhoto RGB, and many other RGB color spaces. The light gray curve is the boundary of the sRGB color space.


When you interpret the results, keep the following in mind. Camera manufacturers do not necessarily aim for accurate color reproduction, which often appears flat and dull. They recognize that there is a difference between accurate and pleasing color: most people prefer deep blue skies, saturated green foliage, and warm, slightly saturated skin tones. Ever mindful of the bottom line, they aim to please.
Hence they often boost chroma (i.e., saturation), especially in blues, greens, and skin tones.


Colorcheck can be used to check white balance algorithms and camera performance under different lighting conditions. John Beale’s excellent article on Lighting and Color uses this Colorcheck figure to examine the effects of different lighting on color accuracy.

The Fourth Figure: Color Analysis

Here we have an image of the ColorChecker with the correct colors superimposed in the center of each patch. The colors in the central squares are corrected for the difference in luminance between the exposed and the ideal values. The colors in the small rectangles to the right of central squares are uncorrected.

The gray patches with exaggerated White Balance error are shown on the bottom. White balance error is displayed in HSV Saturation units, degrees Kelvin, and Mireds (1000/degrees K; a useful unit for filtration).

  You can learn more about Colorcheck from
Using Colorcheck

Preview Changes (opens in a new window)