version 1, including all changes.
.
Rev |
Author |
# |
Line |
1 |
perry |
1 |
PPMCIE |
|
|
2 |
!!!PPMCIE |
|
|
3 |
NAME |
|
|
4 |
SYNOPSIS |
|
|
5 |
DESCRIPTION |
|
|
6 |
OPTIONS |
|
|
7 |
SEE ALSO |
|
|
8 |
AUTHOR |
|
|
9 |
---- |
|
|
10 |
!!NAME |
|
|
11 |
|
|
|
12 |
|
|
|
13 |
ppmcie - draw a CIE color chart as a PPM image |
|
|
14 |
!!SYNOPSIS |
|
|
15 |
|
|
|
16 |
|
|
|
17 |
__ppmcie__ |
|
|
18 |
[[__-rec709__|__-cie__|__-ebu__|__-hdtv__|__-ntsc__|__-smpte__] |
|
|
19 |
[[__-xy__|__-upvp__] [[__-red__ ''rx ry''] |
|
|
20 |
[[__-green__ ''gx gy''] [[__-blue__ ''bx by''] |
|
|
21 |
[[__-white__ ''wx wy''] [[__-size__ ''edge''] |
|
|
22 |
[[__-xsize__|__-width__ ''width''] |
|
|
23 |
[[__-ysize__|__-height__ ''height''] |
|
|
24 |
[[__-noblack__] [[__-nowpoint__] [[__-nolabel__] |
|
|
25 |
[[__-noaxes__] [[__-full__] |
|
|
26 |
|
|
|
27 |
|
|
|
28 |
All options can be abbreviated to their shortest unique |
|
|
29 |
prefix. |
|
|
30 |
!!DESCRIPTION |
|
|
31 |
|
|
|
32 |
|
|
|
33 |
__ppmcie__ creates a PPM file containing a plot of the |
|
|
34 |
CIE ``tongue'' color chart -- to the extent possible in a |
|
|
35 |
PPM image. Alternatively, creates a pseudo-PPM image of the |
|
|
36 |
color tongue using RGB values from a color system of your |
|
|
37 |
choice. |
|
|
38 |
|
|
|
39 |
|
|
|
40 |
The CIE color tongue is an image of all the hues that can be |
|
|
41 |
described by CIE X-Y chromaticity coordinates. They are |
|
|
42 |
arranged on a two dimensional coordinate plane with the X |
|
|
43 |
chromaticity on the horizontal axis and the Y chro- maticity |
|
|
44 |
on the vertical scale. (You can choose alterna- tively to |
|
|
45 |
use CIE u'-v' chromaticity coordinates, but the general idea |
|
|
46 |
of the color tongue is the same). |
|
|
47 |
|
|
|
48 |
|
|
|
49 |
Note that the PPM format specifies that the RGB values in |
|
|
50 |
the file are from CIE Rec. 709 color system, gamma-cor- |
|
|
51 |
rected. And positive. See ppm(5) for details. If you |
|
|
52 |
use one of the color system options on __ppmcie__, what |
|
|
53 |
you get is not a true PPM image, but is very similar. If you |
|
|
54 |
display such __ppmcie__ output using a device that |
|
|
55 |
expects PPM input (which includes just about any computer |
|
|
56 |
graphics display program), it will display the wrong |
|
|
57 |
colors. |
|
|
58 |
|
|
|
59 |
|
|
|
60 |
However, you may have a device that expects one of these |
|
|
61 |
variations on PPM. |
|
|
62 |
|
|
|
63 |
|
|
|
64 |
In every RGB color system you can specify, including the |
|
|
65 |
default (which produces a true PPM image) there are hues in |
|
|
66 |
the color tongue that can't be represented. For exam- ple, |
|
|
67 |
monochromatic blue-green with a wavelength of 500nm cannot |
|
|
68 |
be represented in a PPM image. |
|
|
69 |
|
|
|
70 |
|
|
|
71 |
For these hues, __ppmcie__ substitutes a similar hue as |
|
|
72 |
fol- lows: They are desaturated and rendered as the shade |
|
|
73 |
where the edge of the Maxwell triangle intersects a line |
|
|
74 |
drawn from the requested shade to the white point defined by |
|
|
75 |
the color system's white point. Furthermore, unless you |
|
|
76 |
spec- ify the __-full__ option, __ppmcie__ reduces |
|
|
77 |
their intensity by 25% compared to the true hues in the |
|
|
78 |
image. |
|
|
79 |
|
|
|
80 |
|
|
|
81 |
__ppmcie__ draws and labels the CIE X-Y coordinate axes |
|
|
82 |
unless you choose otherwise with options. |
|
|
83 |
|
|
|
84 |
|
|
|
85 |
__ppmcie__ draws the Maxwell triangle for the color |
|
|
86 |
system in use on the color tongue. The Maxwell triangle is |
|
|
87 |
the tri- angle whose vertices are the primary illuminant |
|
|
88 |
hues for the color system. The hues inside the triangle show |
|
|
89 |
the color gamut for the color system. They are also the only |
|
|
90 |
ones that are correct for the CIE X-Y chromaticity coordi- |
|
|
91 |
nates shown. (See explanation above). |
|
|
92 |
|
|
|
93 |
|
|
|
94 |
__ppmcie__ also places a mark at the color system's white |
|
|
95 |
point and displays in text the CIE X-Y chromaticities of the |
|
|
96 |
primary illuminants and white point for the color sys- tem. |
|
|
97 |
You can turn this off with options, though. |
|
|
98 |
|
|
|
99 |
|
|
|
100 |
__ppmcie__ annotates the periphery of the color tongue |
|
|
101 |
with the wavelength, in nanometers of the monochromatic hues |
|
|
102 |
which appear there. |
|
|
103 |
|
|
|
104 |
|
|
|
105 |
Finally, __ppmcie__ displays the black body chromaticity |
|
|
106 |
curve for Planckian radiators from 1000 to 30000 kelvins on |
|
|
107 |
the image. |
|
|
108 |
|
|
|
109 |
|
|
|
110 |
You can choose from several standard color systems, or |
|
|
111 |
specify one of your own numerically. |
|
|
112 |
|
|
|
113 |
|
|
|
114 |
CIE charts, by their very nature, contain a very large |
|
|
115 |
number of colors. If you're encoding the chart for a col- or |
|
|
116 |
mapped device or file format, you'll need to use __pp- |
|
|
117 |
mquant__ or __ppmdither__ to reduce the number of |
|
|
118 |
colors in the image. |
|
|
119 |
!!OPTIONS |
|
|
120 |
|
|
|
121 |
|
|
|
122 |
__-rec709__|__-cie__|__-ebu__|__-hdtv__|__-ntsc__|__-smpte__ |
|
|
123 |
|
|
|
124 |
|
|
|
125 |
Select a standard color system whose gamut to plot. The |
|
|
126 |
default is __-rec709__, which chooses CIE Rec. 709, |
|
|
127 |
gamma-corrected. This is the only color system for which |
|
|
128 |
__ppmcie__'s output is a true PPM image. See explanation |
|
|
129 |
above. __-ebu__ chooses the primaries used in the PAL and |
|
|
130 |
SECAM broad- casting standards. __-ntsc__ chooses the |
|
|
131 |
primaries specified by the NTSC broadcasting system (few |
|
|
132 |
modern monitors actually cover this range). __-smpte__ |
|
|
133 |
selects the primaries recommended by the Society of Motion |
|
|
134 |
Picture and Television Engi- neers (SMPTE) in standards |
|
|
135 |
RP-37 and RP-145, and __-hdtv__ uses the much broader |
|
|
136 |
''HDTV ideal'' pri- maries. __-cie__ chooses a color |
|
|
137 |
system that has the largest possible gamut within the |
|
|
138 |
spectrum of the chart. This is the same color system as you |
|
|
139 |
get with the __-cie__ option to John Walker's |
|
|
140 |
__cietoppm__ program. |
|
|
141 |
|
|
|
142 |
|
|
|
143 |
__-xy__ |
|
|
144 |
|
|
|
145 |
|
|
|
146 |
plot CIE 1931 x y chromaticities. This is the |
|
|
147 |
default. |
|
|
148 |
|
|
|
149 |
|
|
|
150 |
__-upvp__ |
|
|
151 |
|
|
|
152 |
|
|
|
153 |
plot u' v' 1976 chromaticities rather than CIE 1931 x y |
|
|
154 |
chromaticities. The advantage of u' v' coordinates is that |
|
|
155 |
equal intervals of distance on the u' v' plane correspond |
|
|
156 |
roughly to the eye's ability to discriminate |
|
|
157 |
colors. |
|
|
158 |
|
|
|
159 |
|
|
|
160 |
__-red__ ''rx ry'' |
|
|
161 |
|
|
|
162 |
|
|
|
163 |
specifies the CIE ''x'' and ''y'' co-ordinates of the |
|
|
164 |
red illuminant of a custom color system and se- lects the |
|
|
165 |
custom system. |
|
|
166 |
|
|
|
167 |
|
|
|
168 |
__-green__ ''gx gy'' |
|
|
169 |
|
|
|
170 |
|
|
|
171 |
specifies the CIE ''x'' and ''y'' co-ordinates of the |
|
|
172 |
green illuminant of the color system and selects the custom |
|
|
173 |
system. |
|
|
174 |
|
|
|
175 |
|
|
|
176 |
__-blue__ ''bx by'' |
|
|
177 |
|
|
|
178 |
|
|
|
179 |
specifies the CIE ''x'' and ''y'' co-ordinates of the |
|
|
180 |
blue illuminant of the color system and selects the custom |
|
|
181 |
system. |
|
|
182 |
|
|
|
183 |
|
|
|
184 |
__-white__ ''wx wy'' |
|
|
185 |
|
|
|
186 |
|
|
|
187 |
specifies the CIE ''x'' and ''y'' co-ordinates of the |
|
|
188 |
white point of the color system and selects the custom |
|
|
189 |
system. |
|
|
190 |
|
|
|
191 |
|
|
|
192 |
__-size__ ''edge'' |
|
|
193 |
|
|
|
194 |
|
|
|
195 |
Create a pixmap of ''edge'' by ''edge'' pixels. The |
|
|
196 |
de- fault is 512x512. |
|
|
197 |
|
|
|
198 |
|
|
|
199 |
__-xsize|-width__ ''width'' |
|
|
200 |
|
|
|
201 |
|
|
|
202 |
Sets the width of the generated image to ''width'' |
|
|
203 |
pixels. The default width is 512 pixels. If the height and |
|
|
204 |
width of the image are not the same, the CIE diagram will be |
|
|
205 |
stretched in the longer dimension. |
|
|
206 |
|
|
|
207 |
|
|
|
208 |
__-ysize|-height__ ''height'' |
|
|
209 |
|
|
|
210 |
|
|
|
211 |
Sets the height of the generated image to ''height'' |
|
|
212 |
pixels. The default height is 512 pixels. If the height and |
|
|
213 |
width of the image are not the same, the CIE diagram will be |
|
|
214 |
stretched in the longer dimension. |
|
|
215 |
|
|
|
216 |
|
|
|
217 |
__-noblack__ |
|
|
218 |
|
|
|
219 |
|
|
|
220 |
Don't plot the black body chromaticity curve. |
|
|
221 |
|
|
|
222 |
|
|
|
223 |
__-nowpoint__ |
|
|
224 |
|
|
|
225 |
|
|
|
226 |
Don't plot the color system's white point. |
|
|
227 |
|
|
|
228 |
|
|
|
229 |
__-nolabel__ |
|
|
230 |
|
|
|
231 |
|
|
|
232 |
Omit the label. |
|
|
233 |
|
|
|
234 |
|
|
|
235 |
__-noaxes__ |
|
|
236 |
|
|
|
237 |
|
|
|
238 |
Don't plot axes. |
|
|
239 |
|
|
|
240 |
|
|
|
241 |
__-full__ |
|
|
242 |
|
|
|
243 |
|
|
|
244 |
Plot the entire CIE tongue in full intensity; don't enhance |
|
|
245 |
the gamut of the specified color system. |
|
|
246 |
!!SEE ALSO |
|
|
247 |
|
|
|
248 |
|
|
|
249 |
ppmdither(1), ppmquant(1), |
|
|
250 |
ppm(5) |
|
|
251 |
!!AUTHOR |
|
|
252 |
Copyright (C) 1995 by John Walker |
|
|
253 |
(kelvin@fourmilab.ch) |
|
|
254 |
WWW home page: http://www.fourmilab.ch/ |
|
|
255 |
Permission to use, copy, modify, and distribute this |
|
|
256 |
soft- ware and its documentation for any purpose and without |
|
|
257 |
fee is hereby granted, without any conditions or |
|
|
258 |
restrictions. This software is provided ``as is'' without |
|
|
259 |
express or im- plied warranty. |
|
|
260 |
---- |