Coverage for models/rgb/datasets/ebu_3213_e.py: 0%

23 statements  

« prev     ^ index     » next       coverage.py v7.11.0, created at 2025-11-16 22:49 +1300

1""" 

2EBU Tech. 3213-E Colourspace 

3============================ 

4 

5Define the *EBU Tech. 3213-E* colourspace: 

6 

7- :attr:`colour.models.RGB_COLOURSPACE_EBU_3213_E`. 

8 

9References 

10---------- 

11- :cite:`EuropeanBroadcastingUnion1975` : European Broadcasting Union. 

12 (1975). EBU Tech 3213 - EBU Standard for Chromaticity Tolerances for Studio 

13 Monitors. https://tech.ebu.ch/docs/tech/tech3213.pdf 

14""" 

15 

16from __future__ import annotations 

17 

18import typing 

19 

20import numpy as np 

21 

22if typing.TYPE_CHECKING: 

23 from colour.hints import NDArrayFloat 

24 

25from colour.models.rgb import ( 

26 RGB_Colourspace, 

27 linear_function, 

28 normalised_primary_matrix, 

29) 

30 

31__author__ = "Colour Developers" 

32__copyright__ = "Copyright 2013 Colour Developers" 

33__license__ = "BSD-3-Clause - https://opensource.org/licenses/BSD-3-Clause" 

34__maintainer__ = "Colour Developers" 

35__email__ = "colour-developers@colour-science.org" 

36__status__ = "Production" 

37 

38__all__ = [ 

39 "PRIMARIES_EBU_3213_E", 

40 "WHITEPOINT_NAME_EBU_3213_E", 

41 "CCS_WHITEPOINT_EBU_3213_E", 

42 "MATRIX_EBU_3213_E_RGB_TO_XYZ", 

43 "MATRIX_XYZ_TO_EBU_3213_E_RGB", 

44 "RGB_COLOURSPACE_EBU_3213_E", 

45] 

46 

47PRIMARIES_EBU_3213_E: NDArrayFloat = np.array( 

48 [ 

49 [0.64, 0.33], 

50 [0.29, 0.60], 

51 [0.15, 0.06], 

52 ] 

53) 

54"""*EBU Tech. 3213-E* colourspace primaries.""" 

55 

56WHITEPOINT_NAME_EBU_3213_E: str = "D65" 

57"""*EBU Tech. 3213-E* colourspace whitepoint name.""" 

58 

59CCS_WHITEPOINT_EBU_3213_E: NDArrayFloat = np.array([0.313, 0.329]) 

60"""*EBU Tech. 3213-E* colourspace whitepoint chromaticity coordinates.""" 

61 

62MATRIX_EBU_3213_E_RGB_TO_XYZ: NDArrayFloat = normalised_primary_matrix( 

63 PRIMARIES_EBU_3213_E, CCS_WHITEPOINT_EBU_3213_E 

64) 

65"""*EBU Tech. 3213-E* colourspace to *CIE XYZ* tristimulus values matrix.""" 

66 

67MATRIX_XYZ_TO_EBU_3213_E_RGB: NDArrayFloat = np.linalg.inv(MATRIX_EBU_3213_E_RGB_TO_XYZ) 

68"""*CIE XYZ* tristimulus values to *EBU Tech. 3213-E* colourspace matrix.""" 

69 

70RGB_COLOURSPACE_EBU_3213_E: RGB_Colourspace = RGB_Colourspace( 

71 "EBU Tech. 3213-E", 

72 PRIMARIES_EBU_3213_E, 

73 CCS_WHITEPOINT_EBU_3213_E, 

74 WHITEPOINT_NAME_EBU_3213_E, 

75 MATRIX_EBU_3213_E_RGB_TO_XYZ, 

76 MATRIX_XYZ_TO_EBU_3213_E_RGB, 

77 linear_function, 

78 linear_function, 

79) 

80RGB_COLOURSPACE_EBU_3213_E.__doc__ = """ 

81*EBU Tech. 3213-E* colourspace. 

82 

83References 

84---------- 

85:cite:`EuropeanBroadcastingUnion1975` 

86"""