Lookup individual color values through any ICC profile table, either
interactively, or as a batch.
icclu [-v level] [-f
func] [-i intent] [-o order] profile
Verbosity level 0 - 2 (default = 1)
-f function f = forward, b =
backwards, g = gamut, p = preview
-i intent p =
perceptual, r = relative colorimetric,
= saturation, a = absolute
-p oride x
= XYZ_PCS, l = Lab_PCS, y = Yxy,
n = normal (priority: lut > matrix > monochrome)
= reverse (priority: monochrome > matrix > lut)
Scale device range 0.0 - scale rather than 0.0 - 1.0
Trace each step of conversions
The colors to be translated should be fed into standard input,
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 -f flag selects which type of table or conversion is to
The -i flag selects the intent for a lut based profile.
Normally the native PCS (Profile Connection Space) of a device or
abstract profile is used, but the -p flag
allows this to be overridden, and XYZ, L*a*b* or Yxy space to be
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. -o
r reverses this order.
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
if your device values have a range between 0 and 255, use -s 255.
The -T flag shows a detailed trace of the internal
color conversions for each color.
Usage Details and Discussion
Typical usage for an output profile might be:
icclu -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 icclu. 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:
icclu -ff -ip profile.icm < inputvalues.txt