45 lines
1.3 KiB
Groff
45 lines
1.3 KiB
Groff
|
.TH IM_LAB_MORPH 3 "8 March 2001"
|
||
|
.SH NAME
|
||
|
im_lab_morph \- calculate colour differences
|
||
|
.SH SYNOPSIS
|
||
|
#include <vips/vips.h>
|
||
|
|
||
|
int im_lab_morph( IMAGE *in, IMAGE *out,
|
||
|
.br
|
||
|
DOUBLEMASK *mask,
|
||
|
.br
|
||
|
double L_offset, double L_scale,
|
||
|
.br
|
||
|
double a_scale, double b_scale )
|
||
|
|
||
|
.SH DESCRIPTION
|
||
|
This function tweaks the colour in an LAB image. It's useful for
|
||
|
making a 'tweaked' image for sending to a colour printer.
|
||
|
|
||
|
It performs three corrections: first, it straightens the neutral axis (this is
|
||
|
useful if your printer tends to tint shadows slightly red, for example); it
|
||
|
moves L* by adding an offset and then multiplying by a scale (useful if your
|
||
|
printer thinks in relative colorimetry, for example), and finally scales a*
|
||
|
and b* by a factor (useful if your printer desaturates to avoid gamut
|
||
|
clipping).
|
||
|
|
||
|
The neutral axis straightening is specified as a DOUBLEMASK containing L*, a*
|
||
|
and b* readings taken from a print of a neutral greyscale (one with a* and b*
|
||
|
zero). For example:
|
||
|
|
||
|
3 4
|
||
|
14.23 4.8 -3.95
|
||
|
18.74 2.76 -2.62
|
||
|
23.46 1.4 -1.95
|
||
|
27.53 1.76 -2.01
|
||
|
|
||
|
This is interpolated to make an a/b offset for each input value of L*. The top
|
||
|
and tail are interpolated towards [100,0,0] and [0,0,0]. Entries in the mask
|
||
|
can be in any order.
|
||
|
|
||
|
.SH RETURN VALUE
|
||
|
All functions return 0 on success and -1 on error.
|
||
|
.SH COPYRIGHT
|
||
|
National Gallery, 2001
|
||
|
|