NAME
ppmcie - draw a CIE color chart as a PPM image
SYNOPSIS
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.
DESCRIPTION
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 chromaticity 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 similar. If
you display such ppmcie output using a device that expects PPM input
(which includes just about any computer graphics display program), it
will display the wrong colors.
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 rendered 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. Furthermore, 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 options.
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 numerically.
CIE charts, by their very nature, contain a very large number of
colors. If you’re encoding the chart for a color mapped device or file
format, you’ll need to use ppmquant or ppmdither to reduce the number
of colors in the image.
OPTIONS
-rec709|-cie|-ebu|-hdtv|-ntsc|-smpte
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 actually cover this
range). -smpte selects the primaries recommended by the
Society 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 advantage 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 system and selects the custom system.
-blue bx by
specifies the CIE x and y co-ordinates of the blue illuminant
of the color system 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.
-size edge
Create a pixmap of edge by edge pixels. The default is
512x512.
-xsize|-width width
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.
-ysize|-height height
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 diagram 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.
SEE ALSO
ppmdither(1), ppmquant(1), ppm(5)
AUTHOR
Copyright (C) 1995 by John Walker (kelvin@fourmilab.ch)
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