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

Produce the objective function and CIE XYZ colourspace to optimisation colourspace/colour model function based on the Oklab 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 Oklab colourspace.

It implements support for Finlayson et al. (2015) root-polynomials of degree 2 and produces 15 terms.


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

Return type:





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