colour.characterisation.optimisation_factory_Jzazbz() Tuple[NDArrayFloat, Callable, Callable, Callable][source]#

Produce the objective function and CIE XYZ colourspace to optimisation colourspace/colour model function based on the \(J_za_zb_z\) colourspace.

The objective function returns the Euclidean distance between the training data RGB tristimulus values and the training data CIE XYZ tristimulus values** in the \(J_za_zb_z\) colourspace.

It implements whitepoint preservation as a post-optimisation step.


\(x_0\) initial values, objective function, CIE XYZ colourspace to \(J_za_zb_z\) colourspace function and finaliser function.

Return type:



>>> optimisation_factory_Jzazbz()  
(array([ 1.,  0.,  0.,  1.,  0.,  0.]), <function optimisation_factory_Jzazbz.<locals>.objective_function at 0x...>, <function optimisation_factory_Jzazbz.<locals>.XYZ_to_optimization_colour_model at 0x...>, <function optimisation_factory_Jzazbz.<locals>.finaliser_function at 0x...>)