1
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
4
<title>ccxxmake</title>
5
<meta http-equiv="content-type" content="text/html;
7
<meta name="author" content="Graeme Gill">
10
<h2><b>spectro/ccxxmake</b></h2>
12
For Colorimeters that rely on a calibration matrix, <span
13
style="font-weight: bold;">ccxxmake</span> allows creation of a
14
correction matrix file (<a href="File_Formats.html#.ccmx">ccmx</a>)
15
for a particular <span style="font-weight: bold;">Colorimeter &
16
Display</span> combination, by making use a reference <span
17
style="font-weight: bold;">Spectrometer</span> or Colorimeter
18
instrument. This can then be used to improve the accuracy of
19
subsequent measurements with that Colorimeter on that Display by
20
using it with the <a href="dispcal.html#X">dispcal</a>, <a
21
href="dispread.html#X">dispread</a> and <a href="spotread.html#X">spotread</a>
22
-X option. See <a href="WideGamutColmters.html">Wide Gamut Displays
23
and Colorimeters</a> for more information on why this may be
24
useful. <span style="font-weight: bold;">Note</span> that to make
25
use of a colorimeter as a CCMX reference, you will have to provide
26
two .ti3 files rather than using interactive measurement- see <a
27
href="#f"><span style="font-weight: bold;">-f</span></a>.<br>
29
For Colorimeters that have sensor spectral sensitivity calibration
30
information built into them (ie. the X-Rite <span
31
style="font-weight: bold;">i1d3</span>, and<span
32
style="font-weight: bold;"><span style="font-weight: bold;"></span></span>
33
DataColor <span style="font-weight: bold;">Spyder4</span>), <span
34
style="font-weight: bold;">ccxxmake</span> allows a creation of a
35
calibration spectral sample (<a href="File_Formats.html#.ccss">ccss</a>)
36
for a particular <span style="font-weight: bold;">Display</span>,
37
by making use a reference <span style="font-weight: bold;">Spectrometer</span>
38
instrument. This can then be used to improve the accuracy of
39
subsequent measurements on that Display using such Colorimeters, by
40
using it with the <a href="dispcal.html#X">dispcal</a>, <a
41
href="dispread.html#X">dispread</a> and <a href="spotread.html#X">spotread</a>
44
There is a <a href="ccmxs.html">list of contributed</a> <span
45
style="font-weight: bold;">ccmx</span> (Colorimeter Correction
47
<h3>Usage Summary</h3>
48
<small style="font-family: monospace;">ccxxmake [-options]
50
</small><small style="font-family: monospace;"> <a href="#v">-v</a>
53
Verbose mode</small><br>
54
<a href="#S">-S</a>
61
<a href="#f">-f file1.ti3[,file2.ti3]</a>
62
70
.ti3 files rather than measure.<br style="font-family: monospace;">
71
<span style="font-family: monospace;"> </span><font
72
style="font-family: monospace;" size="-1"><a href="#display">-display
75
displayname</a> [X11 only] Choose X11 display name</font><br
76
style="font-family: monospace;">
77
<font style="font-family: monospace;" size="-1"></font><font
78
style="font-family: monospace;" size="-1"> <a href="#dnm">-d
80
81
[X11 only] Choose the display from the following list (default 1),</font><br
82
style="font-family: monospace;">
83
<font style="font-family: monospace;" size="-1">
93
for VideoLUT access.</font><br style="font-family: monospace;">
94
<font style="font-family: monospace;" size="-1"> <a href="#d">-d
97
n</a>
107
(default 1)</font><br>
108
<span style="font-family: monospace;"> <a href="#dweb">-dweb[:port]</a>
115
Display via a web server at port (default 8080)</span><br
116
style="font-family: monospace;">
117
<font style="font-family: monospace;" size="-1"> </font><font
118
style="font-family: monospace;" size="-1"><a href="#p">-p</a>
121
Use projector mode (if available)</font><br style="font-family:
123
<font size="-1"><span style="font-family: monospace;"><a
125
129
Display type - instrument specific list to choose from.</span></font><font
130
style="font-family: monospace;" size="-1"> (CCMX)</font><br
131
style="font-family: monospace;">
132
<font style="font-family: monospace;" size="-1"> <a href="#P">-P
135
ho,vo,ss</a>
138
Position test window and scale it</font><br style="font-family:
140
<font style="font-family: monospace;" size="-1">
150
1.0 = right/bottom etc.</font><br style="font-family: monospace;">
151
<font style="font-family: monospace;" size="-1">
161
2.0 = double etc.</font><br style="font-family: monospace;">
162
<font style="font-family: monospace;" size="-1"> </font><font
163
style="font-family: monospace;" size="-1"><a href="#F">-F</a>
164
167
Fill whole screen with black background</font><br
168
style="font-family: monospace;">
169
<small style="font-family: monospace;"> <span
170
style="text-decoration: underline;"></span><a href="#n">-n</a>
171
182
</small><font style="font-family: monospace;" size="-1"> <a
183
href="#N">-N</a>
186
Disable auto calibration of instrument</font><small
187
style="font-family: monospace;"><br>
188
</small><span style="font-family: monospace;"> </span><font
189
style="font-family: monospace;" size="-1"><a href="#H">-H</a>
190
193
Use high resolution spectrum mode (if available)<br>
194
</font><font style="font-family: monospace;" size="-1"> <a
196
197
Use adaptive measurement mode (if
198
available)</font><br style="font-family: monospace;">
199
<font style="font-family: monospace;" size="-1"> <a href="#C">-C
202
"command"</a>
203
Invoke shell "command" each time a color is set<br>
204
</font><small style="font-family: monospace;"> <a href="#o">-o
205
<i>observ</i></a>
206
Choose CIE Observer for CCMX spectral
208
209
1931_2 </small><small
210
style="font-family: monospace;"> (def.)</small><small
211
style="font-family: monospace;">, 1964_10, S&B 1955_2, shaw,
213
</small><font style="font-family: monospace;" size="-1"> <a
214
href="#s">-s steps</a>
221
combination steps (default 3)</font><br style="font-family:
223
<font style="font-family: monospace;" size="-1"> <a href="#W">-W
226
n|h|x</a>
236
none, h = HW, x = Xon/Xoff</font><br style="font-family:
238
<small style="font-family: monospace;"> <a href="#D">-D [level]</a>
239
Print
240
debug diagnostics to stderr<br>
241
</small><small style="font-family: monospace;"> <a
242
href="ccxxmake.html#E">-E "description"</a>
249
escription</small><br>
250
<small style="font-family: monospace;"> <a href="#I">-I
251
"displayname"</a> </small><span
252
style="font-family: monospace;">Set display make and model
253
description</span><small style="font-family: monospace;"><br>
254
</small><small style="font-family: monospace;"><a href="#T">-T
257
"displaytech"</a> </small><span
258
style="font-family: monospace;">Set display technology description</span>
259
(ie. CRT, LCD etc.)<small style="font-family: monospace;"></small><br
260
style="font-family: monospace;">
261
<span style="font-family: monospace;"> </span><font
262
style="font-family: monospace;" size="-1"><a href="#file1"><span
263
style="font-style: italic;">correction.ccmx</span></a> | <a
264
href="#file2"></a></font><font style="font-family: monospace;"
265
size="-1"><a href="ccxxmake.html#file2">calibration.ccss</a></font><font
266
style="font-family: monospace;" size="-1"><br>
267
268
File to save result to.</font><br>
269
<h3>Usage Details and Discussion</h3>
270
<a name="v"></a>The <b>-v</b> flag causes extra information to be
271
printed out during chartread operation.<br>
273
<a name="S"></a><span style="font-weight: bold;">-S</span> By
274
default a Colorimeter Correction Matrix (<span style="font-weight:
275
bold;">CCMX</span>) will be created from both <span
276
style="font-weight: bold;">Colorimeter</span> and <span
277
style="font-weight: bold;">Spectrometer</span> readings, which
278
allows correction for errors with a particular Colorimeter and
279
Display combination. If the <span style="font-weight: bold;">-S</span>
280
flag is used, then instead a Colorimeter Calibration Spectral Set (<span
281
style="font-weight: bold;">CCSS</span>) file is created from just
282
the <span style="font-weight: bold;">Spectrometer</span> readings,
283
that allows calibrating any suitable Colorimeter to the Display.<br>
285
<a name="f"></a><span style="font-weight: bold;">-f <span
286
style="font-style: italic;">file1.ti3[,file2.ti3]</span></span>
287
By <span style="text-decoration: underline;">default</span> <span
288
style="font-weight: bold;">ccxxmake</span> creates a <span
289
style="font-weight: bold;">CCMX</span> file by displaying test
290
patches on the screen, and then prompting you to measure them
291
interactively with the two instruments. An alternative is to create
292
a small number of test values using <span style="font-weight:
293
bold;">targen</span> suitable for display profiling (or use the <span
294
style="font-weight: bold;">ref/ccxx.ti1</span> file provided with
295
ArgyllCMS), and then measure them with the two instruments using <span
296
style="font-weight: bold;">dispread</span> to create a reference
297
and target .ti3 files, and then provide the two files as arguments
298
to <span style="font-weight: bold;">ccxxmake -f</span>. Normally
299
the reference file will be created using a spectral instrument and
300
you will want to use the <span style="font-weight: bold;">-s</span>
301
flag with dispread for this. If you want to use a colorimeter as a
302
reference instrument, then make sure that it is the first file
303
provided to the ccxxmake <span style="font-weight: bold;">-f</span>
304
option. The filenames should be concatenated with a <span
305
style="font-weight: bold;">","</span> separator without spaces.
306
You will also have to supply a display name using the <span
307
style="font-weight: bold;">-I</span> option and/or technology
308
description using <span style="font-weight: bold;">-T</span>.<br>
309
When creating a <span style="font-weight: bold;">CCSS</span> file,
310
only spectral readings from the display measured with the reference
311
instrument are needed, and a single <span style="font-weight:
312
bold;">.ti3</span> file should be provided.<br>
314
<a name="display"></a>When running on a UNIX based system that used
315
the X11 Windowing System, <b>ccxxmake</b> will by default use the
316
$DISPLAY environment variable to determine which display and screen
317
to read from. This can be overridden by supplying an X11 display
318
name to the <span style="font-weight: bold;">-display</span>
319
option. Note that if Xinerama is active, you can't select the screen
320
using $DISPLAY or -display, you have to select it using the <span
321
style="font-weight: bold;">-d</span> parameter.<br>
323
<a name="d"></a> By default the main display will be the location of
324
the test window. If the system has more than one display or screen,
325
an alternate display/screen can be selected with the <span
326
style="font-weight: bold;">-d</span> parameter. If you invoke <b>ccxxmake</b>
327
so as to display the usage information (i.e. "dispcal -?" or
328
"dispcal --"), then the discovered displays/screens will be listed.
329
Multiple displays may not be listed, if they appear as a single
330
display to the operating system (ie. the multi-display support is
331
hidden in the video card driver). On UNIX based system that used the
332
X11 Windowing System, the <span style="font-weight: bold;">-d</span>
333
parameter will override the screen specified by the $DISPLAY or
336
<a name="dnm"></a>Because of the difficulty cause by TwinView and
337
MergedFB in X11 based systems, you can optionally specify a separate
338
display number after the display that is going to be used to present
339
test patches, for accessing the VideoLUT hardware. This must be
340
specified as a single string, e.g. <span style="font-weight: bold;">-d
343
1,2</span> . Some experimentation may be needed using <a
344
href="dispwin.html">dispwin</a> on such systems, to discover what
345
screen has access to the VideoLUT hardware, and which screens the
346
test patches appear on.<br>
348
<span style="font-weight: bold;"><a name="dweb"></a>-dweb</span> or
349
<span style="font-weight: bold;">-dweb:port</span> starts a
350
standalone web server on your machine, which then allows a local or
351
remote web browser to display the the color test patches. By default
352
port <span style="font-weight: bold;">8080</span> is used, but this
353
can be overridden by appending a <span style="font-weight: bold;">:</span>
354
and the port number i.e. <span style="font-weight: bold;">-dweb:8001</span>.
355
The URL will be <span style="font-weight: bold;">http://</span>
356
then name of the machine or its I.P. address followed by a colon and
357
the port number - e.g something like <span style="font-weight:
358
bold;">http://192.168.0.1:8080</span>. If you use the verbose
359
option (<span style="font-weight: bold;">-v</span>) then a likely
360
URL will be printed once the server is started, or you could run <span
361
style="font-weight: bold;">ipconfig</span> (MSWin) or <span
362
style="font-weight: bold;">/sbin/ifconfig</span> (Linux or OS X)
363
and identify an internet address for your machine that way.<br>
365
<a name="p"></a>The <span style="font-weight: bold;">-p</span> flag
366
allows measuring in projector mode, using instruments that support
369
<a name="y"></a> The <span style="font-weight: bold;">-y</span>
370
flag allows setting the Display Type (CCMX creation). Most
371
colorimeters need this parameter set to operate correctly. The
372
selection typically determines two aspects of of the instrument
373
operation: <span style="font-weight: bold;">1)</span> It may set
374
the measuring mode to suite <a
375
href="http://en.wikipedia.org/wiki/Comparison_of_display_technology"><span
376
style="font-weight: bold;">refresh</span> or <span
377
style="font-weight: bold;">non-refresh</span> displays</a>.
378
Typically only LCD (Liquid Crystal) displays have a non-refresh
379
nature. <span style="font-weight: bold;">2)</span> It may select an
380
instrument calibration matrix suitable for a particular display
381
type. The selections available depends on the type and model of
382
instrument, and a list of the options for the discovered instruments
383
will be shown in the <a href="ArgyllDoc.html#CmdLine">usage</a>
384
information. For more details on what particular instruments support
385
and how this works, see <a href="instruments.html">Operation of
386
particular instruments</a>. Any CCMX created will work on top of
387
the Display Type, so to be valid, the same Display Type must be
388
selected whenever the CCMX is used with this instrument.<br>
390
<a name="P"></a> The <span style="font-weight: bold;">-P</span>
391
parameter allows you to position and size the test patch window. By
392
default it is places in the center of the screen, and sized
393
appropriately for the type of instrument. The <span
394
style="font-weight: bold;">ho</span> and <span
395
style="font-weight: bold;">vo</span> values govern the horizontal
396
and vertical offset respectively. A value of 0.0 positions the
397
window to the far left or top of the screen, a value of 0.5
398
positions it in the center of the screen (the default), and 1.0
399
positions it to the far right or bottom of the screen. The <span
400
style="font-weight: bold;">ss</span> parameter is a scale factor
401
for the test window size. A value of 0.5 for instance, would produce
402
a half sized window. A value of 2.0 will produce a double size
403
window. Note that the ho,vo,ss numbers must be specified as a single
404
string (no space between the numbers and the comma).<br>
405
For example, to create a double sized test window at the top right
406
of the screen, use <span style="font-weight: bold;">-P 1,0,2</span>
409
<a name="F"></a> The <span style="font-weight: bold;">-F</span>
410
flag causes the while screen behind the test window to be masked
411
with black. This can aid black accuracy when measuring CRT displays
414
<a name="n"></a><span style="font-weight: bold;">-n</span> When
415
running on a UNIX based system that used the X11 Windowing System, <b>dispcal</b>
416
normally selects the override redirect so that the test window will
417
appear above any other windows on the display. On some systems this
418
can interfere with window manager operation, and the <b>-n</b>
419
option turns this behaviour off.<br>
421
<a name="N"></a>The <b>-N</b> option disables the automatic
422
calibration of an instrument if it is possible to do so. Sometimes
423
it is awkward to have to re-calibrate and instrument every time a
424
tool starts, and unnecessary if the instrument has recently been
425
calibration, and this switch prevents it happening.<br>
427
<a name="L"></a> The -<span style="font-weight: bold;">H</span>
428
option on high resolution spectral mode, if the instrument supports
429
it, such as the Eye-One Pro. See <a href="instruments.html">Operation
431
of particular instruments</a> for more details. This may give
432
better accuracy for display measurements.<br>
434
<a name="V"></a> The -<span style="font-weight: bold;">V</span>
435
option uses adaptive emission measurement mode, if the instrument
436
supports it, such as the Eye-One Pro. This may give better accuracy
437
for low level measurements, but may be more inconsistent overall due
438
to the varying integration times. Overall measurement time will
439
probably be longer.<br>
441
<a name="C"></a> The -<span style="font-weight: bold;">C</span> <span
442
style="font-weight: bold;">"command" </span>option allows a
443
method of relaying each test value to some other display than that
444
on the system running dispcal (for instance, a photo frame, PDA
445
screen etc.), by causing the given command to be invoked to the
446
shell, with six arguments. The first three arguments are the RGB
447
test color as integers in the range 0 to 255, the second three
448
parameters are the RGB test color as floating point numbers in the
449
range 0.0 to 1.0. The script or tool should relay the given color to
450
the screen in some manner (e.g. by generating a raster file of the
451
given color and sending it to the display being profiled), before
452
returning. Note that a test window will also be created on the
453
system running dispread.<br>
455
<a name="o"></a> (CCMX creation) The <b>-o</b> flag allows
456
specifying a tristimulus observer, and is used to compute
457
tristimulus values from spectral readings. The following
458
choices are available:<br>
459
<b> 1931_2</b> selects the standard CIE 1931 2 degree
460
observer. The default.<br>
461
<b>1964_10</b> selects the standard CIE 1964 10 degree
463
<b>1955_2</b> selects the Stiles and Birch 1955 2 degree
465
<b>1978_2 </b>selects the Judd and Voss 1978 2 degree
467
<b>shaw</b> selects the Shaw and Fairchild 1997 2 degree
470
<a name="s"></a>The <b>-s steps</b><span style="font-weight: bold;"></span>
471
parameter overrides the default number of test patch combination
472
steps used in measuring a colorimeter & display combination.<span
473
style="font-weight: bold;"></span><span style="font-weight: bold;"></span><span
474
style="font-weight: bold;"></span> The steps are those out
475
of every combination of R,G & B values of the given number of
476
steps that have at least one colorant at 100%. So 2 steps gives 7
477
test patches, 3 gives 19, 4 gives 37, 5 gives 61, 6 gives 91 etc.
478
Note that typically this won't make much difference to the resulting
479
calibration, since it depends primarily on the underlying spectral
480
characteristics of the display.<br>
482
<a name="W"></a>The <b>-W</b> <span style="font-weight: bold;">n|h|x</span>
483
parameter overrides the default serial communications flow control
484
setting. The value <span style="font-weight: bold;">n</span> turns
485
all flow control off, <span style="font-weight: bold;">h</span>
486
sets hardware handshaking, and <span style="font-weight: bold;">x</span>
487
sets Xon/Xoff handshaking. This commend may be useful in workaround
488
serial communications issues with some systems and cables. <br>
490
<a name="D"></a>The <b>-D</b> flag causes communications and other
491
instrument diagnostics to be printed to stdout. A level can be set
492
between 1 .. 9, that may give progressively more verbose
493
information, depending on the instrument. This can be useful in
494
tracking down why an instrument can't connect.<br>
496
<a name="E"></a>The <b>-E</b> parameter allows overriding the <span
497
style="font-weight: bold;">ccmx/ccss</span> files overall
498
description tag. Normally this is not necessary. With most command
499
line shells, it will be necessary to enclose the parameter with
500
double quotes, so that spaces and other special characters are
501
included in the parameter, and not mistaken for the start of another
502
flag, or as a final command line parameter. <br>
504
<a name="I"></a>The <b>-I</b> parameter allows setting of the
505
display description string in the resulting <span
506
style="font-weight: bold;">ccmx/ccss</span> file. Since the
507
default display description is probably very generic, it is <span
508
style="font-weight: bold;">highly recommended</span> that a
509
description of the make and model of the display be provided here,
510
or set a display technology description using <span
511
style="font-weight: bold;">-T</span> (see below). The default or
512
given display description will be printed before the menu. With most
513
command line shells, it will be necessary to enclose the parameter
514
with double quotes, so that spaces and other special characters are
515
included in the parameter, and not mistaken for the start of another
516
flag, or as a final command line parameters.<br>
518
<a name="I"></a>The <b>-T</b> parameter allows setting of the
519
display technology description string in the resulting <span
520
style="font-weight: bold;">ccmx/ccss</span> file. The
521
applicability of the calibration mainly depends on the technology
522
type of the display, so a description of the technology (ie. "CRT",
523
"LCD", "LCD + backlight type + LCD type", etc.) is <span
524
style="font-weight: bold;">highly recommended</span>, because it
525
can make the calibration more widely usable. With most command line
526
shells, it will be necessary to enclose the parameter with double
527
quotes, so that spaces and other special characters are included in
528
the parameter, and not mistaken for the start of another flag, or as
529
a final command line parameters.<br>
531
<a name="file1"></a>The <span style="font-weight: bold; font-style:
532
italic;">correction.ccmx</span> is the name of the file to save
533
the resulting <a href="File_Formats.html#.ccmx">Colorimeter
534
Correction Matrix</a> to. It is best to give it a short but
535
informative name that includes the Colorimeter model and the display
536
make and model. By convention it should have a <span
537
style="font-weight: bold;">.ccmx</span> file extension.<br>
539
<a name="file2"></a>The <span style="font-weight: bold; font-style:
540
italic;">correction.ccss</span> is the name of the file to save
541
the resulting <a href="File_Formats.html#.ccss">Colorimeter
542
Calibration Spectral Samples</a> to. It is best to give it a short
543
but informative name that includes the display technology or model.
544
By convention it should have a <span style="font-weight: bold;">.ccss</span>
547
If you are going to use the same CCMX or CCSS file all the time,
548
then you may want to set the <a href="Environment.html">ARGYLL_COLMTER_CAL_SPEC_SET</a>
549
environment variable.<br>
551
<hr style="width: 100%; height: 2px;">
552
<h3>Instrument Communications:</h3>
553
Unlike the other measurement utilities,<span style="font-weight:
554
bold;"> ccxxmake</span> doesn't connect to the instrument until it
555
is about to make a measurement. This allows for the possibility of
556
using a different instrument for each measurement.<br>
558
It will display a menu:<span style="font-style: italic;"></span><br>
561
1) Select an instrument, Currently 1 'usb:/bus4/dev2/ (GretagMacbeth
563
2) Measure test patches with current instrument<br>
564
3) [ Compute Colorimeter Correction Matrix & save it ]<br>
567
For creating a CCMX there are two measurements to be made, after
568
which the correction matrix can be computed and saved. Before each
569
measurement, the instrument may need calibrating. For creating a
570
CCSS a single measurement is needed.<br>
572
A spectral measurement using a spectral instrument is always
575
A measurement using the Colorimeter that the correction matrix
576
is being created for is needed in the case of creating a CCMX, but <span
577
style="font-weight: bold;">not</span> needed when creating a CCSS.<br>
579
There will be a message before the menu indicating which of the
580
measurements has been completed.<br>
582
<hr style="width: 100%; height: 2px;">
583
<h4>Display Setup:</h4>
584
Because ccmx/ccss is measuring spectral matching, the exact levels
585
of each channel is not important, so the display settings or
586
calibration state shouldn't make any difference to the result, as
587
long as it is the same for the readings of both instruments.
588
Similarly, the number and variety of test patches shouldn't make a
589
huge difference, as long as there is at least Red, Green, Blue and
590
White test patches.<br>