imColorXYZ2Luv

Converts CIE XYZ (linear) to CIE L*u*v* (nonlinear). \n * The white point is D65. \n \verbatim 0 <= L <= 1 ; -1 <= uv <= +1 ; 0 <= XYZ <= 1

Y = Y / 1.0 (for D65) if (Y > 0.008856) fY = pow(Y, 1/3) else fY = 7.787 * Y + 0.16/1.16 L = 1.16 * fY - 0.16

U(x, y, z) = (4 * x)/(x + 15 * y + 3 * z) V(x, y, z) = (9 * x)/(x + 15 * y + 3 * z) un = U(Xn, Yn, Zn) = 0.1978 (for D65) vn = V(Xn, Yn, Zn) = 0.4683 (for D65) fu = U(X, Y, Z) fv = V(X, Y, Z)

u = 13 * L * (fu - un) v = 13 * L * (fv - vn) \endverbatim * \ingroup color

version(IM)
nothrow @nogc @safe
void
imColorXYZ2Luv
(
const float X
,
const float Y
,
const float Z
,
ref float L
,
ref float u
,
ref float v
)

Meta