# colour.XYZ_to_DIN99¶

colour.XYZ_to_DIN99(XYZ: 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') [source]

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

Parameters
• XYZ (ArrayLike) – CIE XYZ tristimulus values.

• 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 formula and the refined formulas according to Cui et al. (2002).

Returns

DIN99 colourspace array.

Return type

numpy.ndarray

Notes

Domain

Scale - Reference

Scale - 1

XYZ

[0, 1]

[0, 1]

illuminant

[0, 1]

[0, 1]

Range

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]

References

Examples

>>> import numpy as np
>>> XYZ = np.array([0.20654008, 0.12197225, 0.05136952])
>>> XYZ_to_DIN99(XYZ)
array([ 53.2282198...,  28.4163465...,   3.8983955...])