colour.DIN99_to_XYZ#

colour.DIN99_to_XYZ(Lab_99: ArrayLike, illuminant: ArrayLike = CCS_ILLUMINANTS['CIE 1931 2 Degree Standard Observer']['D65'], k_E: float = 1, k_CH: float = 1, method: Union[Literal['ASTMD2244-07', 'DIN99', 'DIN99b', 'DIN99c', 'DIN99d'], str] = 'DIN99') ndarray[source]#

Convert from DIN99 colourspace or one of the DIN99b, DIN99c, DIN99d refined formulas according to Cui et al. (2002) to CIE XYZ tristimulus values.

Parameters:
  • Lab_99 (ArrayLike) – DIN99 colourspace array.

  • illuminant (ArrayLike) – Reference illuminant CIE xy chromaticity coordinates or CIE xyY colourspace array.

  • k_E (float) – Parametric factor \(K_E\) used to compensate for texture and other specimen presentation effects.

  • k_CH (float) – Parametric factor \(K_{CH}\) used to compensate for texture and other specimen presentation effects.

  • method (Union[Literal['ASTMD2244-07', 'DIN99', 'DIN99b', 'DIN99c', 'DIN99d'], str]) – Computation method to choose between the [ASTMInternational07] formula and the refined formulas according to Cui et al. (2002).

Returns:

CIE XYZ tristimulus values.

Return type:

numpy.ndarray

Notes

Domain

Scale - Reference

Scale - 1

Lab_99

L_99 : [0, 100]

a_99 : [-100, 100]

b_99 : [-100, 100]

L_99 : [0, 1]

a_99 : [-1, 1]

b_99 : [-1, 1]

illuminant

[0, 1]

[0, 1]

Range

Scale - Reference

Scale - 1

XYZ

[0, 1]

[0, 1]

References

[ASTMInternational07]

Examples

>>> import numpy as np
>>> Lab_99 = np.array([53.22821989, 28.41634656, 3.89839552])
>>> DIN99_to_XYZ(Lab_99)  
array([ 0.2065400...,  0.1219722...,  0.0513695...])