colour.characterisation.colour_correction_Finlayson2015

colour.characterisation.colour_correction_Finlayson2015(RGB, M_T, M_R, degree=1, root_polynomial_expansion=True)[source]

Performs colour correction of given RGB colourspace array using the colour correction matrix from given \(M_T\) colour array to \(M_R\) colour array using Finlayson et al. (2015) method.

Parameters:
  • RGB (array_like, (n, 3)) – RGB colourspace array to colour correct.
  • M_T (array_like, (n, 3)) – Test array \(M_T\) to fit onto array \(M_R\).
  • M_R (array_like, (n, 3)) – Reference array the array \(M_T\) will be colour fitted against.
  • degree (int, optional) – Expanded polynomial degree.
  • root_polynomial_expansion (bool) – Whether to use the root-polynomials set for the expansion.
Returns:

Colour corrected RGB colourspace array.

Return type:

ndarray

References

[Finlayson2015]

Examples

>>> RGB = np.array([0.17224810, 0.09170660, 0.06416938])
>>> prng = np.random.RandomState(2)
>>> M_T = prng.random_sample((24, 3))
>>> M_R = M_T + (prng.random_sample((24, 3)) - 0.5) * 0.5
>>> colour_correction_Finlayson2015(RGB, M_T, M_R)  # doctest: +ELLIPSIS
array([ 0.1793456...,  0.1003392...,  0.0617218...])