colour_hdri.matrix_XYZ_to_camera_space#

colour_hdri.matrix_XYZ_to_camera_space(xy: 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) NDArrayFloat[source]#

Return the CIE XYZ to Camera Space matrix for given xy white balance chromaticity coordinates.

Parameters:
  • xy (ArrayLike) – xy white balance chromaticity 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.

Returns:

CIE XYZ to Camera Space matrix.

Return type:

numpy.ndarray

Notes

  • The reference illuminant is D50 as defined per colour_hdri.models.datasets.dng.CCS_ILLUMINANT_ADOBEDNG attribute.

References

[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)
>>> matrix_XYZ_to_camera_space(  
...     np.array([0.34510414, 0.35162252]),
...     2850,
...     6500,
...     M_color_matrix_1,
...     M_color_matrix_2,
...     M_camera_calibration_1,
...     M_camera_calibration_2,
...     analog_balance,
... )
array([[ 0.4854908...,  0.0408106..., -0.0714282...],
       [-0.7433278...,  1.4956549...,  0.2680749...],
       [-0.1336946...,  0.1767874...,  0.6654045...]])