Print Test

Introduction to Print Test

Imatest™ Print Test
measures several of the key factors that contribute to photographic print quality,

  • Color response, the relationship between pixels in the image file and colors in the print,
  • Color gamut, the range of saturated colors a print can reproduce, i.e., the limits of color response,
  • Tonal response, the relation between pixels and print density, and
  • Dmax, the deepest printable black tone: a very important image quality factor,

using a simple test pattern scanned on a flatbed scanner. No specialized equipment is required. Print Test can also be used to study the effects of gamut mapping: transformations between different color spaces or devices.

Print quality depends on the

  • Printer,
  • Paper (manufacturer’s or independent),
  • Ink (manufacturer’s or independent),
  • Working color space,
  • ICC profile,
  • Rendering intent (one of four rules, embedded in ICC profiles, for mapping pixels between color spaces or devices such as monitors and printers
  • RIP (Raster Image Processor), optional software packages available as alternatives to standard printer drivers and profiles, and
  • Color engine (probably a minor factor); you can choose between Windows ICM 2, Adobe Color Engine (ACE), and Little CMS.

Even if you have only one printer, many options may be available. I use an Epson R2400 printer with standard Ultrachrome inks, but I can choose among a staggering variety of papers and profiles. And the working color space and profile rendering intent can also make a difference.

Print Test can answer questions such as,

  • What range of colors can my printer/paper/ink can reproduce, i.e., what is its gamut?
  • How dark a black tone can my printer/paper/ink make?
  • How good are my ICC profiles? Do they provide smooth, uniform response? Under what conditions do colors saturate? What are their specific strengths and weakness?
  • How do colors map between color spaces and devices? What difference does working color space and rendering intent make?

You may, of course, test a new ink/paper/profile combination using one or more test images. Such tests are important, even if you use Print Test. The problem is that one image (say, a landscape) may look fine while another (say, a portrait) may not. The reason lies in details of the tonal and color response revealed by Print test, which can spare you from unpleasant surprises and help you find superior ink/paper/profile combinations.

The test pattern, illustrating zones

Although the results are not as accurate in an absolute sense as those produced by expensive spectrophotometers, colorimeters, or densitometers, they are outstanding in a relative sense— for comparing prints made with different printers, inks, papers, working color spaces, and profiles. Absolute accuracy can be quite good in scanners that can be characterized by ICC profiles. The default profile in my Epson 3200 is respectable: its mean color error (ΔE), measured by Colorcheck, is a little over 5; as good as a high quality digital camera. It can be improved by profiling the scanner with one of several available packages (Monaco EZColor, Profile Mechanic – Scanner, etc.). It can be further improved by scanning a Q-13 or equivalent reflective step chart next to the print.

The test pattern, shown on the right, was generated using the HSL color representation.

  • H = Hue varies from 0 to 1 for the color range R→ Y→ G→ C→ B→ M→ R (horizontally across the image on the right). (0 to 6 is used in the Figures below for clarity.)
  • S = Saturation = max(R,G,B)/min(R,G,B). S = 0 for gray; 1 for the most saturated colors.
  • LHSL = Lightness = (max(R,G,B)+min(R,G,B))/2. (The HSL subscript is used to distinguish it from CIELAB L.) L = 0 is pure black; 1 is pure white. The most visually saturated colors occur where LHSL = 0.5.

The key zones are,

  1. S=1 square. A pattern consisting of all possible hues (0 ≤ H ≤ 1) and lightnesses (0 ≤LHSL≤ 1), where all colors are fully saturated (S = 1), i.e., as saturated as they can be for the lightness value.
  2. L=0.5 rectangle. A pattern consisting of all possible hues (0 ≤ H ≤ 1) and saturation levels (0 ≤ S ≤ 1) for middle lightness (LHSL = 0.5), where colors are most visually saturated.
  3. Two identical monochrome tone scales, where pixel levels vary linearly, 0 ≤ {R=G=B}≤ 1.

The zones labelled K, Gry, and W are uniform black (pixel level = 0), gray (pixel level = 127), and white (pixel level = 255), respectively.

Just by looking at the printed test pattern you can see response irregularities with greater detail than with some expensive instruments.

Simplified instructions

Full instructions are found on the Print test instruction page.

  • Open one of the Print test patterns located in the images subfolder of the Imatest installation folder. The patterns may also be downloaded by clicking Print_test_target.png, (untagged) or versions tagged with profiles for sRGB, Adobe RGB (1998), and Wide Gamut RGB color spaces. These patterns all contain the same data; only the profile tag differs.

  • Print the pattern, approximately 6.5x10 inches (16x25 cm), from your image editor. Carefully record the paper, ink, working color space, ICC profile, rendering intent, and printer software settings.
  • Scan the print on a flatbed scanner at around 100 to 150 dpi. (Higher resolution is wasted; it merely slows the calculations.) The pattern must be aligned precisely (not tilted). If possible, the scanner’s auto exposure should be turned off and ICC Color Management setting should be used. The output color space should be one of the three recognized by Print test: sRGB (small gamut; comparable to CRTs), Adobe RGB (1998) (larger gamut; comparable to high quality printers), or Wide Gamut RGB (larger gamut than any physical device).Adobe RGB is recommended.
  • Save the scan with a descriptive name in TIFF, PNG, or maximum quality JPEG. A reduced scan of a print made on the Epson 2200 printer with Epson Enhanced Matte paper and the standard Epson ICC profile is shown on the right. Colors are somewhat more subdued than glossy or luster surfaces.
  • Calibrate. Accuracy is improved if you scan a Q-13 or equivalent reflective step chart next to the print (shown on the right of the above image), then run Q-13 Stepchart. For details, see the Print test instructions.
  • Run Imatest. Select the Print test module. Crop the image so a small white border appears around the test pattern. (Be sure to crop out the Q-13 chart in the image on the right.). Select the color spaces used to print and scan the test pattern.


Results below are for Epson 2200 printer with Ultrachrome inks, Premium Luster paper, and the standard 1440 dpi Epson profile.


The first Figure contains the grayscale density response and Dmax, the maximum density of the print, where density is defined as –log10(fraction of reflected light). The value of Dmax (2.24; 0.58% reflectivity) is the average of the upper and right black areas.

The upper plot shows –print density as a function of log10(original pixel level (in the test pattern)/255). This corresponds to a standard density-log exposure characteristic curve for photographic papers. The blue plot is for the upper grayscale; the black plot is for the lower-right grayscale. Somewhat uneven illumination is evident. The print density values are calculated from Q-13 calibration curve (lower right). The thin dashed curves contain –log10(pixel levels).

The lower left curve is the characteristic curve (print vs. original normalized pixel level) on a linear scale.

The lower right curve is the results of the (separate) Q-13 calibration run used to calibrate Dmax and the density plot.

S=1 La*b* Gamut map

The S=1 gamut map displays results for region 1, which contains all possible hues (0 ≤ H ≤ 1) and lightnesses (0 ≤ LHSL ≤ 1) with maximum HSL saturation (S = 1).

The La*b* gamut map uses the device-independent CIELAB color space. In CIELAB, L is a nonlinear function of luminance (where luminance ≈ 0.30*Red + 0.59*Green + 0.11*Blue), a* represents colors ranging from cyan-green to magenta, and b* represents colors from blue to yellow. The colors of the a*b* plane are approximated in the background of the Figure below.

CIELAB is relatively perceptually uniform, meaning that the visible difference between colors is roughly proportional to the distance between them. It isn’t perfect, but it’s far better than HSL (where Y, C, and M occupy narrow bands) or or the familiar CIE 1931 xyY color space, where gamuts are represented as triangles or hexagons inside a familiar horseshoe curve. A CIE 1931 xyY gamut map proved to be useless because of its perceptual nonuniformity: values bunched up along edges in a way that made results difficult to interpret. Note: The L-values in the box inside the image below refer to LHSL in the test file, not CIELAB L.

CIELAB color space is often displayed as a solid 3D volume. But although 3D displays can be visually impressive, they can be difficult to interpret. Print test displays an S=1 La*b* Gamut map as cross sections of the La*b* volume representing a*b* values for test file lightnesses (LHSL) of {0.1, 0.3, 0.5, 0.7, and 0.9}, corresponding to near black, dark gray, middle gray, light gray, and near white.

Although this display contains less information than the HSL map (below), but the results are clearer and more useful. The solid shapes from white to black) are the measured response for values of LHSL shown in the legend on the lower left. The dotted shapes represent the gamut of the color space (sRGB, in this case) at each LHSL level. CIELAB gamut varies with lightness: it is largest for middle tones (LHSL = 0.5) and drops to zero for pure white and black. This is closer to the workings of the human eye than HSL representation, where hues vary from 0 to 1, even for white and black.

The dotted concentric curves are the twelve loci of constant hue, representing the six primary hues (R, Y, G, C, B, M) and the six hues halfway between them.. They follow different curves above and below L = 0.5. The circles on the solid curves show the measured hues at locations corresponding to the twelve hue loci. Ideally they should be on the loci. The curves for L = 0.5 (middle gray) are outlined in dark gray to distinguish them from the background.

The hexagonal shape of the gamuts makes it easy to judge performance for each primary. The measured (solid) shape should be compared to the ideal (dotted) shape for each level. Weakness in magenta, blue, and green is very apparent, especially at L = 0.5 and L = 0.7. But the gamut is excellent for L = 0.3.

L=0.5 La*b* Saturation map

The L=0.5 Saturation map is for region 2, which contains all possible hues (0 ≤ H ≤ 1) and saturation levels (0 ≤ S ≤ 1) for middle lightness (LHSL = 0.5), where saturation is highest. This plot,which displays the response to different levels of color saturation, is of interest for comparing different rendering intents (rules that control how colors are mapped when they are transformed between color spaces or color spaces and devices).

Colorimetric rendering intents should leave saturation unchanged unless the output device can’t reproduce a color in the color space. Perceptual rendering intent compresses gamut when moving to color spaces with smaller gamut. There is no standard for perceptual rendering intent: every manufacturer does it in their own say. "Perceptual rendering intent" is a vague concept; it’s hard to know its precise meaning unless you measure it, which you can do with Print test or with Gamutvision.

Gamuts are shown in the CIELAB a*b* plane for 0 ≤ S ≤ 1 in steps of 0.2. As in the the S=1 La*b* Saturation map, the dotted lines and shapes are the ideal values and the solid shapes are the measured values.

Gamut is excellent for S = 0.2 (brown) and 0.4 (red). But compression becomes apparent around S = 0.4 (red curve) for magenta and blue and S = 0.6 (green curve) for green and cyan, where the printer starts to saturate. Increasing S above these values doesn’t increase the print saturation: in fact, saturation decreases slightly at S = 1. This is the result of limitations of the Epson 2200’s pigment-based inks and the workings of the standard Epson ICC profile.

With Gamut maps, differences between printers, papers, and profiles are immediately apparent. These differences are far more difficult to visualize without Imatest Print test because each image has its own color gamut. One image may look beautiful but another may be distorted by the printer’s limitations.

HSL contour plots

The HSL contour plots below display color response in great detail, but don’t contain absolute color information. For that you need the La*b* or CIE 1931 xy plots described above. They work best when the same color space is used to print and scan the target. For these plots to be displayed, Display HSL coutour plots must be checked in the Print test input dialog box.

S=1 HSL Gamut map

The S=1 Figures are for region 1, which contains all possible hues (0 ≤ H ≤ 1) and lightnesses (0 ≤ LHSL ≤ 1) with maximum HSL saturation (S = 1).

The Gamut map shows the print saturation levels for an image that goes from dark to light with maximum saturation. If the print and scanner response were perfect, S would equal 1 everywhere. Weak saturation is evident in light greens and magentas (L > 0.5). Strong saturation in darker regions, roughly 0.2 ≤ L ≤ 0.4, would seem to indicate that a better profile might perform better in the light green and magenta regions. Weak saturation in very light (L>0.95) and dark areas (L<0.1) is not very visible.

HSL display

S-1 Lightness and Hue maps are also displayed. They are illustrated in the Print test instructions.

L=0.5 HSL Saturation map

The L=0.5 Figures are for region 2, which contains all possible hues (0 ≤ H ≤ 1) and saturation levels (0 ≤ S ≤ 1) for middle lightness (LHSL = 0.5), where the greatest saturation takes place.

HSL display

The ideal L=0.5 Saturation map would consist of uniformly spaced horizontal lines from 0.9 to 0.1. The weak saturation in the greens and magentas is visible here. The L*a*b* Saturation map is more generally usefu– it also shows the weakness in greens and magentas, but in a clearer device-independent format.

An additional Figure with L=0.5 Hue and Lightness maps has been omitted.