colour.whiteness#

colour.whiteness(XYZ: ArrayLike, XYZ_0: ArrayLike, method: Literal['ASTM E313', 'CIE 2004', 'Berger 1959', 'Ganz 1979', 'Stensby 1968', 'Taube 1960'] | str = 'CIE 2004', **kwargs: Any) NDArrayFloat[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 (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.float 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

[CIET14804d], [WS00i], [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...