colour.whiteness

colour.whiteness(XYZ: ArrayLike, XYZ_0: ArrayLike, method: Union[Literal['ASTM E313', 'CIE 2004', 'Berger 1959', 'Ganz 1979', 'Stensby 1968', 'Taube 1960'], str] = 'CIE 2004', **kwargs: Any) FloatingOrNDArray[source]

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

Parameters
  • XYZ (ArrayLike) – CIE XYZ tristimulus values of the sample.

  • XYZ_0 (ArrayLike) – CIE XYZ tristimulus values of the reference white.

  • method (Union[Literal['ASTM E313', 'CIE 2004', 'Berger 1959', 'Ganz 1979', 'Stensby 1968', 'Taube 1960'], str]) – Computation method.

  • observer – {colour.colorimetry.whiteness_CIE2004()}, CIE Standard Observer used for computations, tint \(T\) or \(T_{10}\) value is dependent on viewing field angular subtense.

  • kwargs (Any) –

Returns

Whiteness \(W\).

Return type

np.floating or numpy.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

[CIET14804i], [WS00k], [XRitePantone12], [Wikipedia04c]

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)  
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')  
91.4071738...