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:

numpy.ndarray

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...])