colour_hdri.camera_neutral_to_xy#
- colour_hdri.camera_neutral_to_xy(camera_neutral: ArrayLike, CCT_calibration_illuminant_1: float, CCT_calibration_illuminant_2: float, M_color_matrix_1: ArrayLike, M_color_matrix_2: ArrayLike, M_camera_calibration_1: ArrayLike, M_camera_calibration_2: ArrayLike, analog_balance: ArrayLike, epsilon: float = EPSILON) NDArrayFloat [source]#
Convert given Camera Neutral coordinates to xy white balance chromaticity coordinates.
- Parameters:
camera_neutral (ArrayLike) – Camera Neutral coordinates.
CCT_calibration_illuminant_1 (float) – Correlated colour temperature of CalibrationIlluminant1.
CCT_calibration_illuminant_2 (float) – Correlated colour temperature of CalibrationIlluminant2.
M_color_matrix_1 (ArrayLike) – ColorMatrix1 tag matrix.
M_color_matrix_2 (ArrayLike) – ColorMatrix2 tag matrix.
M_camera_calibration_1 (ArrayLike) – CameraCalibration1 tag matrix.
M_camera_calibration_2 (ArrayLike) – CameraCalibration2 tag matrix.
analog_balance (ArrayLike) – AnalogBalance tag vector.
epsilon (float) – Threshold value for computation convergence.
- Returns:
xy white balance chromaticity coordinates.
- Return type:
- Raises:
RuntimeError – If the given Camera Neutral coordinates did not converge to xy white balance chromaticity coordinates.
References
[AdobeSystems12c], [AdobeSystems12b], [AdobeSystems15a], [McG12]
Examples
>>> M_color_matrix_1 = np.array( ... [ ... [0.5309, -0.0229, -0.0336], ... [-0.6241, 1.3265, 0.3337], ... [-0.0817, 0.1215, 0.6664], ... ] ... ) >>> M_color_matrix_2 = np.array( ... [ ... [0.4716, 0.0603, -0.0830], ... [-0.7798, 1.5474, 0.2480], ... [-0.1496, 0.1937, 0.6651], ... ] ... ) >>> M_camera_calibration_1 = np.identity(3) >>> M_camera_calibration_2 = np.identity(3) >>> analog_balance = np.ones(3) >>> camera_neutral_to_xy( ... np.array([0.413070, 1.000000, 0.646465]), ... 2850, ... 6500, ... M_color_matrix_1, ... M_color_matrix_2, ... M_camera_calibration_1, ... M_camera_calibration_2, ... analog_balance, ... ) array([ 0.3281624..., 0.3469816...])