colour.adaptation.chromatic_adaptation_CIE1994¶
-
colour.adaptation.
chromatic_adaptation_CIE1994
(XYZ_1, xy_o1, xy_o2, Y_o, E_o1, E_o2, n=1)[source]¶ Adapts given stimulus CIE XYZ_1 tristimulus values from test viewing conditions to reference viewing conditions using CIE 1994 chromatic adaptation model.
Parameters: - XYZ_1 (array_like) – CIE XYZ tristimulus values of test sample / stimulus.
- xy_o1 (array_like) – Chromaticity coordinates \(x_{o1}\) and \(y_{o1}\) of test illuminant and background.
- xy_o2 (array_like) – Chromaticity coordinates \(x_{o2}\) and \(y_{o2}\) of reference illuminant and background.
- Y_o (numeric) – Luminance factor \(Y_o\) of achromatic background as percentage normalised to domain [18, 100] in ‘Reference’ domain-range scale.
- E_o1 (numeric) – Test illuminance \(E_{o1}\) in \(cd/m^2\).
- E_o2 (numeric) – Reference illuminance \(E_{o2}\) in \(cd/m^2\).
- n (numeric, optional) – Noise component in fundamental primary system.
Returns: Adapted CIE XYZ_2 tristimulus values of test stimulus.
Return type: ndarray
Notes
Domain Scale - Reference Scale - 1 XYZ_1
[0, 100] [0, 1] Y_o
[0, 100] [0, 1] Range Scale - Reference Scale - 1 XYZ_2
[0, 100] [0, 1] References
Examples
>>> XYZ_1 = np.array([28.00, 21.26, 5.27]) >>> xy_o1 = np.array([0.4476, 0.4074]) >>> xy_o2 = np.array([0.3127, 0.3290]) >>> Y_o = 20 >>> E_o1 = 1000 >>> E_o2 = 1000 >>> chromatic_adaptation_CIE1994(XYZ_1, xy_o1, xy_o2, Y_o, E_o1, E_o2) ... # doctest: +ELLIPSIS array([ 24.0337952..., 21.1562121..., 17.6430119...])