ppmcie - draw a CIE color chart as a PPM image
ppmcie [-rec709|-cie|-ebu|-hdtv|-ntsc|-smpte] [-xy|-upvp] [-red rx ry] [-green gx gy]
[-blue bx by] [-white wx wy] [-size edge] [-xsize|-width width] [-ysize|-height
height] [-noblack] [-nowpoint] [-nolabel] [-noaxes] [-full]
All options can be abbreviated to their shortest unique prefix.
ppmcie creates a PPM file containing a plot of the CIE ``tongue'' color chart -- to the
extent possible in a PPM image. Alternatively, creates a pseudo-PPM image of the color
tongue using RGB values from a color system of your choice.
The CIE color tongue is an image of all the hues that can be described by CIE X-Y chro-
maticity coordinates. They are arranged on a two dimensional coordinate plane with the X
chromaticity on the horizontal axis and the Y chromaticity on the vertical scale. (You
can choose alternatively to use CIE u'-v' chromaticity coordinates, but the general idea
of the color tongue is the same).
Note that the PPM format specifies that the RGB values in the file are from CIE Rec. 709
color system, gamma-corrected. And positive. See ppm(5) for details. If you use one of
the color system options on ppmcie, what you get is not a true PPM image, but is very sim-
ilar. If you display such ppmcie output using a device that expects PPM input (which in-
cludes just about any computer graphics display program), it will display the wrong col-
However, you may have a device that expects one of these variations on PPM.
In every RGB color system you can specify, including the default (which produces a true
PPM image) there are hues in the color tongue that can't be represented. For example,
monochromatic blue-green with a wavelength of 500nm cannot be represented in a PPM image.
For these hues, ppmcie substitutes a similar hue as follows: They are desaturated and ren-
dered as the shade where the edge of the Maxwell triangle intersects a line drawn from the
requested shade to the white point defined by the color system's white point. Further-
more, unless you specify the -full option, ppmcie reduces their intensity by 25% compared
to the true hues in the image.
ppmcie draws and labels the CIE X-Y coordinate axes unless you choose otherwise with op-
ppmcie draws the Maxwell triangle for the color system in use on the color tongue. The
Maxwell triangle is the triangle whose vertices are the primary illuminant hues for the
color system. The hues inside the triangle show the color gamut for the color system.
They are also the only ones that are correct for the CIE X-Y chromaticity coordinates
shown. (See explanation above).
ppmcie also places a mark at the color system's white point and displays in text the CIE
X-Y chromaticities of the primary illuminants and white point for the color system. You
can turn this off with options, though.
ppmcie annotates the periphery of the color tongue with the wavelength, in nanometers of
the monochromatic hues which appear there.
Finally, ppmcie displays the black body chromaticity curve for Planckian radiators from
1000 to 30000 kelvins on the image.
You can choose from several standard color systems, or specify one of your own numerical-
CIE charts, by their very nature, contain a very large number of colors. If you're encod-
ing the chart for a color mapped device or file format, you'll need to use ppmquant or pp-
mdither to reduce the number of colors in the image.
Select a standard color system whose gamut to plot. The default is -rec709,
which chooses CIE Rec. 709, gamma-corrected. This is the only color system for
which ppmcie's output is a true PPM image. See explanation above. -ebu chooses
the primaries used in the PAL and SECAM broadcasting standards. -ntsc chooses
the primaries specified by the NTSC broadcasting system (few modern monitors ac-
tually cover this range). -smpte selects the primaries recommended by the Soci-
ety of Motion Picture and Television Engineers (SMPTE) in standards RP-37 and
RP-145, and -hdtv uses the much broader HDTV ideal primaries. -cie chooses a
color system that has the largest possible gamut within the spectrum of the
chart. This is the same color system as you get with the -cie option to John
Walker's cietoppm program.
-xy plot CIE 1931 x y chromaticities. This is the default.
-upvp plot u' v' 1976 chromaticities rather than CIE 1931 x y chromaticities. The ad-
vantage of u' v' coordinates is that equal intervals of distance on the u' v'
plane correspond roughly to the eye's ability to discriminate colors.
-red rx ry
specifies the CIE x and y co-ordinates of the red illuminant of a custom color
system and selects the custom system.
-green gx gy
specifies the CIE x and y co-ordinates of the green illuminant of the color sys-
tem and selects the custom system.
-blue bx by
specifies the CIE x and y co-ordinates of the blue illuminant of the color sys-
tem and selects the custom system.
-white wx wy
specifies the CIE x and y co-ordinates of the white point of the color system
and selects the custom system.
Create a pixmap of edge by edge pixels. The default is 512x512.
Sets the width of the generated image to width pixels. The default width is 512
pixels. If the height and width of the image are not the same, the CIE diagram
will be stretched in the longer dimension.
Sets the height of the generated image to height pixels. The default height is
512 pixels. If the height and width of the image are not the same, the CIE dia-
gram will be stretched in the longer dimension.
-noblack Don't plot the black body chromaticity curve.
-nowpoint Don't plot the color system's white point.
-nolabel Omit the label.
-noaxes Don't plot axes.
-full Plot the entire CIE tongue in full intensity; don't enhance the gamut of the
specified color system.
ppmdither(1), ppmquant(1), ppm(5)
Copyright (C) 1995 by John Walker (firstname.lastname@example.org)
WWW home page: http://www.fourmilab.ch/
Permission to use, copy, modify, and distribute this software and its documentation for
any purpose and without fee is hereby granted, without any conditions or restrictions.
This software is provided ``as is'' without express or implied warranty.
26th September 1994 PPMCIE(1)