From 22f703cab05b7cd368f4de9e03991b7664dc5022 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Frings-F=C3=BCrst?= Date: Mon, 1 Sep 2014 13:56:46 +0200 Subject: Initial import of argyll version 1.5.1-8 --- doc/xicclu.html | 551 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 551 insertions(+) create mode 100644 doc/xicclu.html (limited to 'doc/xicclu.html') diff --git a/doc/xicclu.html b/doc/xicclu.html new file mode 100644 index 0000000..8377c69 --- /dev/null +++ b/doc/xicclu.html @@ -0,0 +1,551 @@ + + + + xicclu + + + + +

xicc/xicclu 

+

Summary 
+

+Lookup individual color values forward or inverted though an ICC +profile table. xicclu is the analogue of the icclib tool icclu, but expands the capability to reverse +lookup the Lut tables, and displaying PCS values in CIECAM02 Jab space. +xicclu +can also be used to plot the device value composition down the neutral +axis, +for device profiles.
+

Usage Summary

xicclu [-options] profile
+ -v level       +Verbosity level 0 - 2 (default = 1)
+ -g           +  Plot slice instead of looking colors up. (Default white to black)
-G s:L:a:b     Override +plot slice start with Lab or Jab co-ordinate
-G e:L:a:b     Override +plot slice end with Lab or Jab co-ordinate
+
 -f function    f = forward, b = +backwards, g = gamut, p = preview
+                +if += inverted forward, ib = inverted backwards
+ -i intent      a = +absolute, r = relative colorimetric,
+                +
p = +perceptual, s += +saturation
+ -o order       n += normal (priority: lut > matrix > monochrome)
+                +r += reverse (priority: monochrome > matrix > +lut)
+ -p oride       x += XYZ_PCS, X = XYZ * 100, l = Lab_PCS, L = LCh, y = Yxy,
+                j = CIECAM02 +Appearance Jab, J = CIECAM02 Appearance JCh
+
 -s scale       +Scale device range 0.0 - scale rather than 0.0 - 1.0
+ -k [zhxrlv]    Black generation: z += zero K,
+               +   +h = 0.5 K, x = max K, r = ramp K (def.)
+               +   +l = extra PCS input is portion of K locus
+               +   +v = extra PCS input is K target value
+ -k p stle stpo enpo enle +shape
+               +   +stle: K level at White 0.0 - 1.0
+               +   +stpo: start point of transition Wh 0.0 - Bk 1.0
+               +   +enpo: End point of transition Wh 0.0 - Bk 1.0
+               +   +enle: K level at Black 0.0 - 1.0
+               +   +shape: 1.0 = straight, 0.0-1.0 concave, 1.0-2.0 +convex
+ -k q stle0 stpo0 enpo0 +enle0 shape0 stle2 stpo2 +enpo2 enle2 shape2
+                +Transfer +extra PCS input to dual curve limits
+ -K parameters  Same as -k, but target is K +locus rather than K value itself
+ -l tlimit      set +total ink limit, 0 - 400% (estimate by default)
+ -L klimit      set +black ink limit, 0 - 100% (estimate by default)
+ -a             +show +actual target values if clipped
-b             +use +CAM Jab for clipping
+
 -m +            +merge output processing into clut
+ -c viewcond    set viewing +conditions +for CIECAM02,
+  
            +   +either an enumerated choice, or a parameter:value change
+
  +         pp - Practical Reflection Print +(ISO-3664 P2)
+        +   +pe - Print evaluation environment (CIE 116-1995)
+
        +   +pc - Critical print evaluation environment (ISO-3664 P1)
+     +      mt - Monitor in typical work environment
+       +  +  mb - Monitor in bright work environment
+       +    md - Monitor in darkened work +environment
+       +    jm - Projector in dim environment
+       +    jd - Projector in dark environment
+      +    pcd - Photo CD - original scene +outdoors
+       +    ob - Original scene - Bright Outdoors
+       +    cx - Cut Sheet Transparencies on a viewing box

+          +s:surround   +n = auto, a = average, m = dim, d = dark,
+               +  +      c = transparency (default average)
+          +w:X:Y:Z      +Adapted white point +as XYZ (default media white, Abs: D50)
+          +w:x:y        +Adapted white point as +x, y
+          +a:adaptation +Adaptation luminance in +cd.m^2 +(default 50.0)
+    +      b:background Background % +of image luminance (default 20)
+          +f:flare      +Flare +light % of image luminance (default 1)
+        +  +f:X:Y:Z      Flare color +as XYZ (default media white, Abs: D50)
+          +f:x:y        +Flare color as x, y
+
+  +inoutfile       The input +ICC profile
+
+    The colors to +be translated should be fed into +standard in,
+    one input +color per line, white space separated.
+    A line +starting with a # will be ignored.
+    A line not +starting with a number will terminate the +program.
+
+

Flags and Parameters

+ The -v 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.
+
+The -g 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 -G +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 +-k 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 -fb to select the B2A table, or to invert the A2B +table, +and be able to explore black generation behavior, use the -fif +flag. +The appropriate intent can be selected with the -i flag, + as +can other flags appropriate to the function selected.  See example.
+
+The -G s:L:a:b +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 s: with the three numbers separated +by the ':' character (no +spaces).
+
+The -G e:L:a:b +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 s: with the three numbers separated +by the ':' character (no +spaces).
+
+ The -f 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 xicclu. 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.
+
+ The -i flag selects the intent table used for +a lut based +profile. It also selects between relative and absolute colorimetric for +non-lut base profiles.
+
+ 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.  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 -o flag, reverses this order.   
+
+ Normally the native PCS (Profile Connection Space) of +a device or abstract profile is used, but the -p flag allows +this to be overridden: -px: +XYZ (scaled to 1.0), -pX: XYZ +scaled to 100, -pl: L*a*b*, -pL: LCh, -py: Yxy space, -pj: CIECAM02 appearance space Jab, +or -pJ: CIECAM02 appearance +space JCh.
+
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 -i parameter. If the absolute +colorimetric intent is chosen using -ia +in combinations with -pj, +then  Jab with +a fixed white reference is used, which emulates an absolute CIECAM02 +Jab +appearance space.
+
+ 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 -s +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 -s 255.
+
+ 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. colprof, + collink), with the addition of two extra +options.
+
+ Possible arguments to the -k option are:
+
+ -kz selects minimum black (0.0)
+ -kh selects a black value of 0.5
+ -kx selects the maximum possible black (1.0)
+ -kr 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.
+ -kl uses an extra (fourth) value entered after the input PCS +value, to select a black locus target between 0.0 and 1.0.
+ -kv uses an extra (fourth) value entered after the input PCS +value, to select a black value target value between 0.0 and 1.0.
+
+-k p stle stpo enpo enle shape  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.  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.
+
+Typical black value generation curve with parameters something +like: -kp 0 .05 1 .9 .8
+
+          1.0 K   | +         enpo
+                 +|      +      _______  +enle
+                 +|      +     /
+                 +|     +     /
+                 +|      +   /
+                 +|      +  /
+           stle  +| ------/
+            +     +-------------------
+         0.0 K  +0.0    stpo        1.0
+               +White              +Black
+

+-k q stle0 stpo0 enpo0 enle0 shape0 stle2 stpo2 +enpo2 enle2 shape2 is a combination of the -kv and -kp +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.
+
+ -K parameters. +Any of the -k options above +can use the -K version, in +which rather than a black value target being defined by the inking +rule, a black locus +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).
+
+ The -g flag can be used together with the -fif +flag, to plot +out the resulting black channel behaviour for various -k +or -K parameter +values.
+
+-l tlimit     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.
+
+-L klimit    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.
+
+ If the -a 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.
+
+ If the -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.
+
+ The -m 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.
+
+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 -c 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.
+
+ The final parameter is the name of the ICC 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.
+

Usage and Discussion

+Typical usage for an output profile might be:
+
+    xicclu -ff -ip profile.icm
+
+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:
+
+    xicclu -ff -ip profile.icm < inputvalues.txt > +outputvalues.txt
+
+When plotting the neutral axis behavior, plotting the +existing B2A table +behavior would typically be done something like this:
+
+    xicclu -g -fb profile.icm
+
+Exploring possible black generation and ink limiting behavior might be +done +like this:
+
+    xicclu -g -fif -kp 0 .1 .9 1 .5 -l230 -L95 +profile.icm
+
+
+
+
+
+
+
+ + -- cgit v1.2.3