Coverage for colour/models/rgb/datasets/dji_d_gamut.py: 100%

24 statements  

« prev     ^ index     » next       coverage.py v7.11.0, created at 2025-11-15 19:01 +1300

1""" 

2DJI D-Gamut Colourspace 

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

4 

5Define the *DJI D-Gamut* colourspace: 

6 

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

8 

9References 

10---------- 

11- :cite:`DJI2017` : Dji. (2017). White Paper on D-Log and D-Gamut of DJI 

12 Cinema Color System (pp. 1-5). 

13 https://dl.djicdn.com/downloads/zenmuse+x7/20171010/\ 

14D-Log_D-Gamut_Whitepaper.pdf 

15""" 

16 

17from __future__ import annotations 

18 

19import typing 

20 

21import numpy as np 

22 

23from colour.colorimetry import CCS_ILLUMINANTS 

24 

25if typing.TYPE_CHECKING: 

26 from colour.hints import NDArrayFloat 

27 

28from colour.models.rgb import ( 

29 RGB_Colourspace, 

30 log_decoding_DJIDLog, 

31 log_encoding_DJIDLog, 

32) 

33 

34__author__ = "Colour Developers" 

35__copyright__ = "Copyright 2013 Colour Developers" 

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

37__maintainer__ = "Colour Developers" 

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

39__status__ = "Production" 

40 

41__all__ = [ 

42 "PRIMARIES_DJI_D_GAMUT", 

43 "WHITEPOINT_NAME_DJI_D_GAMUT", 

44 "CCS_WHITEPOINT_DJI_D_GAMUT", 

45 "MATRIX_DJI_D_GAMUT_TO_XYZ", 

46 "MATRIX_XYZ_TO_DJI_D_GAMUT", 

47 "RGB_COLOURSPACE_DJI_D_GAMUT", 

48] 

49 

50PRIMARIES_DJI_D_GAMUT: NDArrayFloat = np.array( 

51 [ 

52 [0.71, 0.31], 

53 [0.21, 0.88], 

54 [0.09, -0.08], 

55 ] 

56) 

57"""*DJI D-Gamut* colourspace primaries.""" 

58 

59WHITEPOINT_NAME_DJI_D_GAMUT: str = "D65" 

60"""*DJI D-Gamut* colourspace whitepoint name.""" 

61 

62CCS_WHITEPOINT_DJI_D_GAMUT: NDArrayFloat = CCS_ILLUMINANTS[ 

63 "CIE 1931 2 Degree Standard Observer" 

64][WHITEPOINT_NAME_DJI_D_GAMUT] 

65"""*DJI D-Gamut* colourspace whitepoint chromaticity coordinates.""" 

66 

67MATRIX_DJI_D_GAMUT_TO_XYZ: NDArrayFloat = np.array( 

68 [ 

69 [0.6482, 0.1940, 0.1082], 

70 [0.2830, 0.8132, -0.0962], 

71 [-0.0183, -0.0832, 1.1903], 

72 ] 

73) 

74"""*DJI D-Gamut* colourspace to *CIE XYZ* tristimulus values matrix.""" 

75 

76MATRIX_XYZ_TO_DJI_D_GAMUT: NDArrayFloat = np.array( 

77 [ 

78 [1.7257, -0.4314, -0.1917], 

79 [-0.6025, 1.3906, 0.1671], 

80 [-0.0156, 0.0905, 0.8489], 

81 ] 

82) 

83"""*CIE XYZ* tristimulus values to *DJI D-Gamut* colourspace matrix.""" 

84 

85RGB_COLOURSPACE_DJI_D_GAMUT: RGB_Colourspace = RGB_Colourspace( 

86 "DJI D-Gamut", 

87 PRIMARIES_DJI_D_GAMUT, 

88 CCS_WHITEPOINT_DJI_D_GAMUT, 

89 WHITEPOINT_NAME_DJI_D_GAMUT, 

90 MATRIX_DJI_D_GAMUT_TO_XYZ, 

91 MATRIX_XYZ_TO_DJI_D_GAMUT, 

92 log_encoding_DJIDLog, 

93 log_decoding_DJIDLog, 

94) 

95RGB_COLOURSPACE_DJI_D_GAMUT.__doc__ = """ 

96*DJI_D-Gamut* colourspace. 

97 

98References 

99---------- 

100:cite:`DJI2017` 

101"""