colour.CAM16_to_XYZ¶
-
colour.
CAM16_to_XYZ
(CAM16_specification, XYZ_w, L_A, Y_b, surround=CIECAM02_InductionFactors(F=1, c=0.69, N_c=1), discount_illuminant=False)[source]¶ Converts CAM16 specification to CIE XYZ tristimulus values.
This is the reverse implementation.
Parameters: - CAM16_specification (CAM16_Specification) – CAM16 colour appearance model specification. Correlate of Lightness \(J\), correlate of chroma \(C\) or correlate of colourfulness \(M\) and hue angle \(h\) in degrees must be specified, e.g. \(JCh\) or \(JMh\).
- XYZ_w (array_like) – CIE XYZ tristimulus values of reference white.
- L_A (numeric or array_like) – Adapting field luminance \(L_A\) in \(cd/m^2\), (often taken to be 20% of the luminance of a white object in the scene).
- Y_b (numeric or array_like) – Relative luminance of background \(Y_b\) in \(cd/m^2\).
- surround (CAM16_InductionFactors, optional) – Surround viewing conditions.
- discount_illuminant (bool, optional) – Discount the illuminant.
Returns: XYZ – CIE XYZ tristimulus values.
Return type: ndarray
Raises: ValueError
– If neither C or M correlates have been defined in theCAM16_specification
argument.Notes
Domain Scale - Reference Scale - 1 CAM16_specification.h
[0, 360] [0, 1] CAM16_specification.H
[0, 360] [0, 1] XYZ_w
[0, 100] [0, 1] Range Scale - Reference Scale - 1 XYZ
[0, 100] [0, 1] CAM16_specification
can also be passed as a compatible argument tocolour.utilities.as_namedtuple()
definition.
References
Examples
>>> specification = CAM16_Specification(J=41.731207905126638, ... C=0.103355738709070, ... h=217.067959767393010) >>> XYZ_w = np.array([95.05, 100.00, 108.88]) >>> L_A = 318.31 >>> Y_b = 20.0 >>> CAM16_to_XYZ(specification, XYZ_w, L_A, Y_b) # doctest: +ELLIPSIS array([ 19.01..., 20... , 21.78...])