colour.adaptation.chromatic_adaptation_Fairchild1990#

colour.adaptation.chromatic_adaptation_Fairchild1990(XYZ_1: Annotated[_Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | complex | bytes | str | _NestedSequence[complex | bytes | str], 100], XYZ_n: Annotated[_Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | complex | bytes | str | _NestedSequence[complex | bytes | str], 100], XYZ_r: Annotated[_Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | complex | bytes | str | _NestedSequence[complex | bytes | str], 100], Y_n: ArrayLike, discount_illuminant: bool = False) Annotated[ndarray[tuple[Any, ...], dtype[float16 | float32 | float64]], 100][source]#

Adapt the specified stimulus CIE XYZ tristimulus values from test viewing conditions to reference viewing conditions using the Fairchild (1990) chromatic adaptation model.

Parameters:
  • XYZ_1 (Annotated[_Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | complex | bytes | str | _NestedSequence[complex | bytes | str], 100]) – CIE XYZ_1 tristimulus values of test sample / stimulus.

  • XYZ_n (Annotated[_Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | complex | bytes | str | _NestedSequence[complex | bytes | str], 100]) – Test viewing condition CIE XYZ_n tristimulus values of the whitepoint.

  • XYZ_r (Annotated[_Buffer | _SupportsArray[dtype[Any]] | _NestedSequence[_SupportsArray[dtype[Any]]] | complex | bytes | str | _NestedSequence[complex | bytes | str], 100]) – Reference viewing condition CIE XYZ_r tristimulus values of the whitepoint.

  • Y_n (ArrayLike) – Luminance \(Y_n\) of test adapting stimulus in \(cd/m^2\).

  • discount_illuminant (bool) – Truth value indicating if the illuminant should be discounted.

Returns:

CIE XYZ tristimulus values of the stimulus corresponding colour.

Return type:

numpy.ndarray

Notes

Domain

Scale - Reference

Scale - 1

XYZ_1

100

1

XYZ_n

100

1

XYZ_r

100

1

Range

Scale - Reference

Scale - 1

XYZ_2

100

1

References

[Fai91], [Fai13f]

Examples

>>> XYZ_1 = np.array([19.53, 23.07, 24.97])
>>> XYZ_n = np.array([111.15, 100.00, 35.20])
>>> XYZ_r = np.array([94.81, 100.00, 107.30])
>>> Y_n = 200
>>> chromatic_adaptation_Fairchild1990(XYZ_1, XYZ_n, XYZ_r, Y_n)
...
array([ 23.3252634...,  23.3245581...,  76.1159375...])