summaryrefslogtreecommitdiff
path: root/doc/xicclu.html
blob: 831977df96ee10bfdad8fa9ea99727a210735084 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>xicclu</title>
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    <meta name="author" content="Graeme Gill">
  </head>
  <body>
    <h2><b>xicc/xicclu</b>&nbsp; </h2>
    <h3>Summary&nbsp;<br>
    </h3>
    Lookup individual color values forward or inverted though an ICC
    profile table or CAL file. <b>xicclu</b> is the analogue of the
    icclib tool <a href="icclu.html">icclu</a>, but expands the
    capability to reverse lookup the Lut tables, and displaying PCS
    values in CIECAM02 Jab space. <b>xicclu</b> can also be used to
    plot the device value composition down the neutral axis for device
    profiles, or CAL file contents.<br>
    <br>
    Few of the options that apply to ICC profiles apply to CAL files,
    although device value options such as <b>-e</b> or <b>-E</b> will
    work. To lookup inverted CAL values, use <b>-f b</b>.<br>
    <h3>Usage Summary</h3>
    &nbsp;<small><span style="font-family: monospace;">xicclu [-</span><i
        style="font-family: monospace;">options</i><span
        style="font-family: monospace;">] profile_or_cal</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;</span><a
        style="font-family: monospace;" href="#v">-v level</a><span
        style="font-family: monospace;"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        Verbosity level 0 - 2 (default = 1)</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;</span><a
        style="font-family: monospace;" href="#g">-g</a><span
        style="font-family: monospace;"> &nbsp; &nbsp; &nbsp; &nbsp;
        &nbsp; &nbsp; Plot slice instead of looking colors up. (Default
        white to black)<br>
        &nbsp;<a href="#Gs">-G s:L:a:b</a>&nbsp;&nbsp;&nbsp;&nbsp;
        Override plot slice start with Lab or Jab co-ordinate<br>
        &nbsp;<a href="#Ge">-G e:L:a:b</a>&nbsp;&nbsp;&nbsp;&nbsp;
        Override plot slice end with Lab or Jab co-ordinate<br
          style="font-family: monospace;">
      </span><span style="font-family: monospace;">&nbsp;</span><a
        style="font-family: monospace;" href="#f">-f function</a><span
        style="font-family: monospace;">&nbsp;&nbsp;&nbsp; f = forward,
        b = backwards, g = gamut, p = preview</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
if
=





        inverted forward, ib = inverted backwards</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;</span><a
        style="font-family: monospace;" href="#i">-i intent</a><span
        style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; a
        = absolute, r = relative colorimetric,</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;





      </span></small><small><span style="font-family: monospace;"> p =
        perceptual, </span></small><small><span style="font-family:
        monospace;">s = saturation</span><span style="font-family:
        monospace;"></span><br style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;</span><a
        style="font-family: monospace;" href="#o">-o order</a><span
        style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;





        n = normal (priority: lut &gt; matrix &gt; monochrome)</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
r
=





        reverse (priority: monochrome &gt; matrix &gt; lut)</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;</span><a
        style="font-family: monospace;" href="#p">-p oride</a><span
        style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;





        x = XYZ_PCS, X = XYZ * 100, l = Lab_PCS, L = LCh, y = Yxy,<br>
        &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; j =
        CIECAM02 Appearance Jab, J = CIECAM02 Appearance JCh<br>
      </span><span style="font-family: monospace;">&nbsp;</span><a
        style="font-family: monospace;" href="#s">-s scale</a><span
        style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Scale





        device range 0.0 - scale rather than 0.0 - 1.0<br>
      </span></small><br>
    &nbsp; <small><span style="font-family: monospace;"><small><span
            style="font-family: monospace;"><a href="#e">-e flag</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;


            Video encode device input as:<br>
            &nbsp;<a href="#E">-E flag</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;


            Video decode device output as:<br>
            &nbsp;&nbsp;&nbsp;&nbsp;
            n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
            normal 0..1 full range RGB levels (default)<br>
            &nbsp;&nbsp;&nbsp;&nbsp;
            t&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
            (16-235)/255 "TV" RGB levels<br>
            &nbsp;&nbsp;&nbsp;&nbsp;
            6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
            Rec601 YCbCr SD (16-235,240)/255 "TV" levels<br>
            &nbsp;&nbsp;&nbsp;&nbsp;
            7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
            Rec709 1125/60Hz YCbCr HD (16-235,240)/255 "TV" levels<br>
            &nbsp;&nbsp;&nbsp;&nbsp;
            5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
            Rec709 1250/50Hz YCbCr HD (16-235,240)/255 "TV" levels<br>
            &nbsp;&nbsp;&nbsp;&nbsp;
            2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
            Rec2020 YCbCr UHD (16-235,240)/255 "TV" levels<br>
            &nbsp;&nbsp;&nbsp;&nbsp;
            C&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
            Rec2020 Constant Luminance YCbCr UHD (16-235,240)/255 "TV"
            lev</span></small></span></small><small><span
        style="font-family: monospace;"><br style="font-family:
          monospace;">
      </span> <span style="font-family: monospace;">&nbsp;</span><a
        style="font-family: monospace;" href="#k">-k [zhxrlv]</a><span
        style="font-family: monospace;">&nbsp;&nbsp;&nbsp; Black
        generation: z = zero K,</span><br style="font-family:
        monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;
h





        = 0.5 K, x = max K, r = ramp K (def.)</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;
l





        = extra PCS input is portion of K locus</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;
v





        = extra PCS input is K target value</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;</span><a
        style="font-family: monospace;" href="#kp">-k p stle stpo enpo
        enle shape</a><br style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;
stle:





        K level at White 0.0 - 1.0</span><br style="font-family:
        monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;
stpo:





        start point of transition Wh 0.0 - Bk 1.0</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;
enpo:





        End point of transition Wh 0.0 - Bk 1.0</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;
enle:





        K level at Black 0.0 - 1.0</span><br style="font-family:
        monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;
shape:





        1.0 = straight, 0.0-1.0 concave, 1.0-2.0 convex</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;</span><a
        style="font-family: monospace;" href="#kq">-k q stle0 stpo0
        enpo0 enle0 shape0 stle2 stpo2 enpo2 enle2 shape2</a><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Transfer
extra





        PCS input to dual curve limits</span><br style="font-family:
        monospace;">
      <span style="font-family: monospace;">&nbsp;</span><a
        style="font-family: monospace;" href="#K">-K parameters</a><span
        style="font-family: monospace;">&nbsp; Same as -k, but target is
        K locus rather than K value itself</span><br style="font-family:
        monospace;">
      <span style="font-family: monospace;">&nbsp;</span><a
        style="font-family: monospace;" href="#l">-l tlimit</a><span
        style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        set total ink limit, 0 - 400% (estimate by default)</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;</span><a
        style="font-family: monospace;" href="#L">-L klimit</a><span
        style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        set black ink limit, 0 - 100% (estimate by default)</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;</span><a
        style="font-family: monospace;" href="#a">-a</a><span
        style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
show
actual





        target values if clipped<br>
        &nbsp;<a href="#b">-b</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
use
CAM





        Jab for clipping<br style="font-family: monospace;">
      </span><span style="font-family: monospace;">&nbsp;</span><a
        style="font-family: monospace;" href="#m">-m</a><span
        style="font-family: monospace;">
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        merge output processing into clut</span><span
        style="font-family: monospace;"></span><span style="font-weight:
        bold; font-family: monospace;"></span><br style="font-family:
        monospace;">
      <span style="font-family: monospace;">&nbsp;</span><a
        style="font-family: monospace;" href="#c">-c viewcond</a><span
        style="font-family: monospace;">&nbsp;&nbsp;&nbsp; set viewing
        conditions for CIECAM02,</span><br style="font-family:
        monospace;">
      &nbsp;&nbsp;</small><small><span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;
either





        an enumerated choice, or a parameter:value change</span><span
        style="font-family: monospace;"></span><br style="font-family:
        monospace;">
      <span style="font-family: monospace;"></span></small><small><span
        style="font-family: monospace;">&nbsp; &nbsp; &nbsp; &nbsp;
        &nbsp;&nbsp; pp - Practical Reflection Print (ISO-3664 P2)</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;
pe





        - Print evaluation environment (CIE 116-1995)<br>
      </span></small><small><span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;
pc





        - Critical print evaluation environment (ISO-3664 P1)</span></small><small><span
        style="font-family: monospace;"></span><span style="font-family:
        monospace;"></span><br style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;
        &nbsp; &nbsp; &nbsp; mt - Monitor in typical work environment</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;
&nbsp;





        mb - Monitor in bright work environment</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;
        &nbsp; &nbsp;&nbsp;&nbsp; md - Monitor in darkened work
        environment</span><br style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;
        &nbsp; &nbsp;&nbsp;&nbsp; jm - Projector in dim environment</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;
        &nbsp; &nbsp;&nbsp;&nbsp; jd - Projector in dark environment</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp; &nbsp;
        &nbsp;&nbsp;&nbsp; pcd - Photo CD - original scene outdoors</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;
        &nbsp; &nbsp;&nbsp;&nbsp; ob - Original scene - Bright Outdoors</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;
        &nbsp; &nbsp;&nbsp;&nbsp; cx - Cut Sheet Transparencies on a
        viewing box</span></small><small><span style="font-family:
        monospace;"></span><span style="font-family: monospace;"></span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
s:surround&nbsp;&nbsp;
n





        = auto, a = average, m = dim, d = dark,</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;
&nbsp;





        &nbsp;&nbsp;&nbsp; c = transparency (default average)</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
w:X:Y:Z&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Adapted





        white point as XYZ (default media white, Abs: D50)</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
w:x:y&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Adapted





        white point as x, y</span><br style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
a:adaptation
Adaptation





        luminance in cd.m^2 (default 50.0)</span><br style="font-family:
        monospace;">
      <span style="font-family: monospace;">&nbsp; &nbsp;
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; b:background Background % of
        image luminance (default 20)</span><br style="font-family:
        monospace;">
      <span style="font-family: monospace;"></span></small><small><span
        style="font-family: monospace;"><small><span style="font-family:
            monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
f:flare&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Flare
light





            % of image luminance (default 1)<br>
          </span></small>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;




        g:glare&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Glare light % of ambient
        (default 2)</span><br style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp; &nbsp;
        &nbsp; &nbsp; g:X:Y:Z&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Glare color
        as XYZ (default media white, Abs: D50)</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;




        g:x:y&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FGare color as
        x, y</span><br style="font-family: monospace;">
      <br style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp; </span><a
        style="font-family: monospace;" href="#p1"><i>inoutfile</i></a><span
        style="font-family: monospace;"> &nbsp;&nbsp; &nbsp;&nbsp; The
        input ICC profile or CAL file.</span><br style="font-family:
        monospace;">
      <br style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp; The
        colors to be translated should be fed into standard in,</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp; one input
        color per line, white space separated.</span><br
        style="font-family: monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp; A line
        starting with a # will be ignored.</span><br style="font-family:
        monospace;">
      <span style="font-family: monospace;">&nbsp;&nbsp;&nbsp; A line
        not starting with a number will terminate the program.</span></small>
    <br>
    <h3>Flags and Parameters</h3>
    <a name="v"></a> The <b>-v</b> parameter sets the level of
    verbosity. Default is level 1, which repeats each input value, the
    colorspaces of input and output, the type of conversion algorithm
    used, and if the result was clipped. Level 2 adds prints extra
    information about the profile before doing the conversions. Level 0
    turns off all verbosity, just outputting the results of each
    conversion. Use the latter to capture batch output ready for further
    processing.<br>
    <br>
    <a name="g"></a>The <b>-g</b> flag causes a plot of the device
    values along a slice through the Lab or Jab colorspace, rather than
    allowing the interactive looking up of color values. By default this
    will be the neutral axis from the white point to the black point,
    but the start and end can be overridden using the <span
      style="font-weight: bold;">-G</span> parameters. This is useful in
    determining the existing black generation in a CMYK profile, or
    exploring the behavior of various black generation options using the
    <b>-k</b> parameters. The profile must be a device profile, and the
    PCS must be either Lab or Jab. The default plot is up the neutral
    axis is from the white to the black point (scale 0 to 100%), and
    shows the percentage of each device colorant. To examine a profiles
    B2A table black generation, use the flag <b>-fb</b> to select the
    B2A table, or to invert the A2B table, and be able to explore black
    generation behavior, use the <b>-fif</b> flag. The appropriate
    intent can be selected with the <b>-i</b> flag, &nbsp;as can other
    flags appropriate to the function selected.&nbsp; See <a href="#xg">example</a>.<br>
    <br>
    If a CAL file is used, then <b>-g</b> will simply plot the each
    channels calibration curve. It will also plot the invers curve for <b>-f

      b</b>.<br>
    <br>
    <a name="Gs"></a>The <span style="font-weight: bold;">-G </span><small><span
        style="font-family: monospace;"><span style="font-weight: bold;">s:L:a:b</span></span></small>
    parameter overrides the plot slice start point of white, with some
    other point specified in Lab or Jab Profile Connection Space. The
    parameter must be a single string that combines<span
      style="font-weight: bold;"> s:</span> with the three numbers
    separated by the '<span style="font-weight: bold;">:'</span>
    character (no spaces).<br>
    <br>
    <a name="Ge"></a>The <span style="font-weight: bold;">-G </span><small><span
        style="font-family: monospace;"><span style="font-weight: bold;">e:L:a:b</span></span></small>
    parameter overrides the plot slice end point of black, with some
    other point specified in Lab or Jab Profile Connection Space. The
    parameter must be a single string that combines<span
      style="font-weight: bold;"> s:</span> with the three numbers
    separated by the '<span style="font-weight: bold;">:'</span>
    character (no spaces).<br>
    <br>
    <a name="f"></a> The <b>-f</b> flag selects which type of table or
    conversion is to be used. In addition to the usual four tables that
    can be accessed in a fully populated Lut based profile, two
    additional options are available in <b>xicclu</b>. One is to invert
    the forward table, and the other is to invert the backward table.
    For non Lut based profiles, -fif is equivalent to -fb, and -fib is
    equivalent to -ff. Note that the -fib combination may not be fully
    supported.<br>
    <br>
    <a name="i"></a> The <b>-i</b> flag selects the intent table used
    for a lut based profile. It also selects between relative and
    absolute colorimetric for non-lut base profiles.<br>
    <br>
    <a name="o"></a> A profile is allowed to contain more than the
    minimum number of elements or table needed to describe a certain
    transform, and may contain redundant descriptions. &nbsp;By default,
    Lut based table information will be used first if present, followed
    by matrix/shaper information, and only using monochrome information
    if it is all that is present. The <b>-o</b> flag, reverses this
    order.&nbsp;&nbsp;&nbsp; <br>
    <br>
    <a name="p"></a> Normally the native PCS (Profile Connection Space)
    of a device or abstract profile is used, but the <b>-p</b> flag
    allows this to be overridden: <span style="font-weight: bold;">-px</span>:
    XYZ (scaled to 1.0), <span style="font-weight: bold;">-pX</span>:
    XYZ scaled to 100, <span style="font-weight: bold;">-pl</span>:
    L*a*b*, <span style="font-weight: bold;">-pL</span>: LCh, <span
      style="font-weight: bold;">-py</span>: Yxy space, <span
      style="font-weight: bold;">-pj</span>: CIECAM02 appearance space
    Jab, or <span style="font-weight: bold;">-pJ</span>: CIECAM02
    appearance space JCh.<span style="font-weight: bold;"><br>
    </span>Note that the CIECAM02 output space selection by default uses
    the colorimetric table of the profile, but that the perceptual or
    saturation tables may be used by selecting them using the <span
      style="font-weight: bold;">-i</span> parameter. If the absolute
    colorimetric intent is chosen using <span style="font-weight:
      bold;">-ia</span> in combinations with <span style="font-weight:
      bold;">-pj</span>, then&nbsp; Jab with a fixed white reference is
    used, which emulates an absolute CIECAM02 Jab appearance space. <br>
    <br>
    <a name="s"></a> Usually device values are processed and displayed
    using a normalized value range between 0.0 and 1.0 Sometimes other
    systems scale them to some other range (such as 100 or 255) due to
    an underlying binary representation. The <span style="font-weight:
      bold;">-s</span> flag lets you input and display such data in its
    normal range. For instance, if your device values have a range
    between 0 and 255, use <span style="font-weight: bold;">-s 255.</span><br>
    <br>
    <a name="e"></a>The <b>-e</b> <i>flag</i> applies a Video encoding
    to the input. See <a
      href="collink.html#E"><b>-E</b></a> for
    the list of encodings.<br>
    <br>
    <b><a name="E"></a></b>The <b>-E</b> <i>flag</i> applies a Video
    encoding to the output. The possible encoding are:<br>
    <br>
    <small><span style="font-family: monospace;"><small><span
            style="font-family: monospace;">&nbsp;&nbsp;&nbsp;&nbsp;
            n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;




            normal RGB 0..1 full range levels (default)<br>
            &nbsp;&nbsp;&nbsp;&nbsp;
            t&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;




            RGB (16-235)/255 "TV" levels<br>
            &nbsp;&nbsp;&nbsp;&nbsp;
            6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;




            Rec601 YCbCr SD (16-235,240)/255 "TV" levels<br>
            &nbsp;&nbsp;&nbsp;&nbsp;
            7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;




            Rec709 1125/60Hz YCbCr HD (16-235,240)/255 "TV" levels<br>
            &nbsp;&nbsp;&nbsp;&nbsp;
            5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;




            Rec709 1250/50Hz YCbCr HD (16-235,240)/255 "TV" levels<br>
            &nbsp;&nbsp;&nbsp;&nbsp;
            2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;




            Rec2020 YCbCr UHD (16-235,240)/255 "TV" levels<br>
            &nbsp;&nbsp;&nbsp;&nbsp;
            C&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;




            Rec2020 Constant Luminance YCbCr UHD (16-235,240)/255 "TV"
            levels<br>
          </span></small></span></small><br>
    <a name="k"></a> When inverting a CMYK profile, (ie. using the -fif
    flag), an input PCS value can have many possible CMYK solutions. To
    be able to return a unique solution, a black level (or black inking
    rule) should be chosen. The choice here reflect similar choices in
    black generation available in other tools (eg. <a
      href="colprof.html">colprof</a>, <a href="collink.html"> collink</a>),




    with the addition of two extra options.<br>
    <br>
    &nbsp;Possible arguments to the <b>-k</b> option are:<br>
    <br>
    <b> -kz</b> selects minimum black (0.0)<br>
    <b> -kh</b> selects a black value of 0.5<br>
    <b> -kx</b> selects the maximum possible black (1.0)<br>
    <b> -kr</b> selects a linear black ramp, starting at minimum black
    for highlight, and maximum black for shadow (equivalent to -kp 0 0 1
    1 1). This is the default.<br>
    <b> -kl</b> uses an extra (fourth) value entered after the input PCS
    value, to select a black locus target between 0.0 and 1.0.<br>
    <b> -kv</b> uses an extra (fourth) value entered after the input PCS
    value, to select a black value target value between 0.0 and 1.0.<br>
    <br>
    <b><a name="kp"></a>-k p stle stpo enpo enle shape</b>&nbsp; allows
    an arbitrary black value ramp to be defined, consisting of a
    starting value (stle) for highlights, a breakpoint L value (stpo)
    where it starts to transition to the shadow level, an end breakpoint
    L (enpo) where it flattens out again, and the finishing black level
    (enle) for the shadows. There is also a curve parameter, that
    modifies the transition from stle to enle to either be concave
    (ie.&nbsp; the transition starts gradually and and finished more
    abruptly) using values 0.0-1.0, with 0.0 being most concave, or
    convex (the transition starts more abruptly but finishes gradually),
    using values 1.0-2.0, with 2.0 being the most convex.<br>
    <br>
    Typical black value generation curve with parameters something like:
    -kp 0 .05 1 .9 .8<br>
    <br>
    <tt> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1.0 K &nbsp; |
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;enpo<br>
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;





      &nbsp; &nbsp;_______&nbsp; enle<br>
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;





      &nbsp; &nbsp;/<br>
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
|&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;





      &nbsp; /<br>
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;





      &nbsp;/<br>
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;





      /<br>
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      stle&nbsp; | ------/<br>
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;
      &nbsp;&nbsp;&nbsp;&nbsp; +-------------------<br>
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0.0 K&nbsp;
      0.0&nbsp;&nbsp;&nbsp;
      stpo&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1.0<br>
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
White&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;





      Black<br>
    </tt><br>
    <b><a name="kq"></a>-k q stle0 stpo0 enpo0 enle0 shape0 stle2 stpo2
      enpo2 enle2 shape2</b> is a combination of the <b>-kv</b> and <b>-kp</b>
    functionality, with the black being preserved in CMYK to CMYK
    linking, with the output black constrained to be between the first
    and second set of curve parameters.<br>
    <br>
    <a name="K"></a> <span style="font-weight: bold;">-K parameters.</span>
    Any of the <span style="font-weight: bold;">-k</span> options above
    can use the <span style="font-weight: bold;">-K</span> version, in
    which rather than a black value target being defined by the inking
    rule, a black <span style="text-decoration: underline;">locus</span>
    target is defined. For each lookup, the minimum possible black level
    and the maximum possible black level is determined, the former
    corresponding to a locus target of 0, and the latter corresponding
    to a locus target of 1. For instance, at the white point, no black
    will be used in the output, even if the black locus specifies a
    maximum (since the maximum amount of black that can be used to print
    white is actually zero). Similarly, at the black point, black may
    well be used, even if the black locus specifies zero black (since a
    certain amount of black is needed to achieve the desired density of
    color). <br>
    <tt> </tt><span style="text-decoration: underline;"></span><br>
    &nbsp;The <b>-g</b> flag can be used together with the <b>-fif</b>
    flag, to plot out the resulting black channel behaviour for various
    <b>-k</b> or <span style="font-weight: bold;">-K </span>parameter
    values.<br>
    <br>
    <b><a name="l"></a>-l</b> <i>tlimit</i>&nbsp; &nbsp;&nbsp; Sets the
    total ink limit (TAC, Total Area Coverage) for the CMYK inverse
    forward lookup, as a total percentage from 0% to 400%. If none is
    provided, it will be estimated from the profile relcolor B2A table.
    The ink limit will be in final calibrated device values if the
    profile includes calibration information.<br>
    <br>
    <b><a name="L"></a>-L</b> <i>klimit</i>&nbsp; &nbsp; Sets the black
    ink limit for the CMYK inverse forward lookup, as a total percentage
    from 0% to 100%. If none is provided, it will be estimated from the
    profile relcolor B2A table. The ink limit will be in final
    calibrated device values if the profile includes calibration
    information.<br>
    <br>
    <a name="a"></a> If the <b>-a</b> flag is used for inverse forward
    lookups, then if the target PCS value cannot be reproduced by the
    device (ie. it clips), then the achievable, clipped PCS value is
    displayed.<br>
    <br>
    <a name="b"></a> If the <b>-b</b> flag is used for inverse forward
    lookups, then out of gamut clipping will be performed in the
    CIECAM02 Jab appearance colorspace, rather than L*a*b* colorspace.<br>
    <br>
    <a name="m"></a> The <b>-m</b> flag turns on an internal processing
    option, in which the per device curve lookup table processing is
    merged into the main multi-dimensional interpolation lut lookup.<br>
    <br>
    <a name="c"></a>Whenever PCS values are to be specified or displayed
    in Jab/CIECAM02 colorspace, a set of viewing conditions will be used
    to determine the details of the conversion. The <b>-c</b> parameter
    allows the specification of the viewing conditions. Viewing
    conditions can be specified in two basic ways. One is to select from
    the list of "pre canned", enumerated viewing conditions, choosing
    one that is closest to the conditions that are appropriate for the
    media type and situation. Alternatively, the viewing conditions
    parameters can be specified in detail individually. If both methods
    are used, them the chosen enumerated condition will be used as a
    base, and its parameters will then be individually overridden.<br>
    <br>
    <a name="p1"></a> The final parameter is the name of the <a
      href="File_Formats.html#ICC">ICC</a> profile to be used. On the
    MSWindows platform a .icm extension is generally used, and on Apple
    or Unix/Linux platforms a .icc extension is often used.<br>
    <h3>Usage and Discussion</h3>
    Typical usage for an output profile might be:<br>
    <br>
    &nbsp;&nbsp;&nbsp; xicclu -ff -ip profile.icm<br>
    <br>
    Normally the program is interactive, allowing the user to type in
    input color values, each number separated by a space, and the
    resulting output color being looked up and displayed after pressing
    return. To batch process a group of color values, prepare a text
    file containing each input value on a separate line, and use the
    input indirection facilities of your command line shell to redirect
    this input file into the standard input of xicclu. The output can be
    captured to a file by redirecting standard output to a file. In most
    shells this would be done something like this:<br>
    <br>
    &nbsp;&nbsp;&nbsp; xicclu -ff -ip profile.icm &lt; inputvalues.txt
    &gt; outputvalues.txt<br>
    <br>
    <a name="xg"></a>When plotting the neutral axis behavior, plotting
    the existing B2A table behavior would typically be done something
    like this:<br>
    <br>
    &nbsp;&nbsp;&nbsp; xicclu -g -fb profile.icm<br>
    <br>
    Exploring possible black generation and ink limiting behavior might
    be done like this:<br>
    <br>
    &nbsp;&nbsp;&nbsp; xicclu -g -fif -kp 0 .1 .9 1 .5 -l230 -L95
    profile.icm<br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
  </body>
</html>