.TH IM_BUILDLUT 3 "June 2006" .SH NAME im_buildlut \- build a LUT from a set of x/y points .SH SYNOPSIS #include int .br im_buildlut( DOUBLEMASK *input, IMAGE *output ) .SH DESCRIPTION .B im_buildlut(3) constructs a LUT, interpolating a set of x/y points. Interpolation is strictly piecewise linear. For example, if the input is: 0 0 128 20 255 100 we generate the values: index value 0 0 1 0.01 .. etc. linear interpolation 128 20 129 20.5 .. etc. linear interpolation 255 100 (we don't generate the index column, that's just there to show the position in the table) The x/y points don't need to be sorted: we do that. You can have several Ys: each becomes a band in the output LUT. X can start at any integer value, including negatives. .SH RETURN VALUE -1 on error, otherwise 0 .SH SEE ALSO im_invertlut(3), im_identity(3). .SH COPYRIGHT 2006, Imperial College