colour.hdr_IPT_to_XYZ#

colour.hdr_IPT_to_XYZ(IPT_hdr: ArrayLike, Y_s: ArrayLike = 0.2, Y_abs: ArrayLike = 100, method: Literal['Fairchild 2011', 'Fairchild 2010'] | str = 'Fairchild 2011') NDArrayFloat[source]#

Convert from hdr-IPT colourspace to CIE XYZ tristimulus values.

Parameters:
  • IPT_hdr (ArrayLike) – hdr-IPT colourspace array.

  • Y_s (ArrayLike) – Relative luminance \(Y_s\) of the surround.

  • Y_abs (ArrayLike) – Absolute luminance \(Y_{abs}\) of the scene diffuse white in \(cd/m^2\).

  • method (Literal['Fairchild 2011', 'Fairchild 2010'] | str) – Computation method.

Returns:

CIE XYZ tristimulus values.

Return type:

numpy.ndarray

Notes

Domain

Scale - Reference

Scale - 1

IPT_hdr

I_hdr : [0, 100]

P_hdr : [-100, 100]

T_hdr : [-100, 100]

I_hdr : [0, 1]

P_hdr : [-1, 1]

T_hdr : [-1, 1]

Y_s

[0, 1]

[0, 1]

Range

Scale - Reference

Scale - 1

XYZ

[0, 1]

[0, 1]

References

[FW10], [FC11]

Examples

>>> IPT_hdr = np.array([48.39376346, 42.44990202, 22.01954033])
>>> hdr_IPT_to_XYZ(IPT_hdr)  
array([ 0.2065400...,  0.1219722...,  0.0513695...])
>>> IPT_hdr = np.array([30.02873147, 83.93845061, 34.90287382])
>>> hdr_IPT_to_XYZ(IPT_hdr, method="Fairchild 2010")
... 
array([ 0.2065400...,  0.1219722...,  0.0513695...])