.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

