colour.whiteness

colour.whiteness(XYZ, XYZ_0, method='CIE 2004', **kwargs)[source]

Returns the whiteness \(W\) using given method.

Parameters:
  • XYZ (array_like) – CIE XYZ tristimulus values of sample.
  • XYZ_0 (array_like) – CIE XYZ tristimulus values of reference white.
  • method (unicode, optional) – {‘CIE 2004’, ‘Berger 1959’, ‘Taube 1960’, ‘Stensby 1968’, ‘ASTM E313’, ‘Ganz 1979’}, Computation method.
Other Parameters:
 

observer (unicode, optional) – {colour.colorimetry.whiteness_CIE2004()}, {‘CIE 1931 2 Degree Standard Observer’, ‘CIE 1964 10 Degree Standard Observer’}, CIE Standard Observer used for computations, tint \(T\) or \(T_{10}\) value is dependent on viewing field angular subtense.

Returns:

whiteness \(W\).

Return type:

numeric or ndarray

Notes

Domain Scale - Reference Scale - 1
     
XYZ [0, 100] [0, 1]
XYZ_0 [0, 100] [0, 1]
Range Scale - Reference Scale - 1
W [0, 100] [0, 1]

References

[CIETC1-482004k], [Wyszecki2000ba], [X-Rite2012a], [Wikipedia2004b]

Examples

>>> import numpy as np
>>> from colour.models import xyY_to_XYZ
>>> XYZ = xyY_to_XYZ(np.array([0.3167, 0.3334, 100]))
>>> XYZ_0 = xyY_to_XYZ(np.array([0.3139, 0.3311, 100]))
>>> whiteness(XYZ, XYZ_0)  # doctest: +ELLIPSIS
array([ 93.85...,  -1.305...])
>>> XYZ = np.array([95.00000000, 100.00000000, 105.00000000])
>>> XYZ_0 = np.array([94.80966767, 100.00000000, 107.30513595])
>>> whiteness(XYZ, XYZ_0, method='Taube 1960')  # doctest: +ELLIPSIS
91.4071738...