Coverage for models/rgb/datasets/itur_bt_2020.py: 0%
24 statements
« prev ^ index » next coverage.py v7.11.0, created at 2025-11-16 22:49 +1300
« prev ^ index » next coverage.py v7.11.0, created at 2025-11-16 22:49 +1300
1"""
2Recommendation ITU-R BT.2020 Colourspace
3========================================
5Define the *RecommendationITU-R BT.2020* colourspace:
7- :attr:`colour.models.RGB_COLOURSPACE_BT2020`.
9References
10----------
11- :cite:`InternationalTelecommunicationUnion2015h` : International
12 Telecommunication Union. (2015). Recommendation ITU-R BT.2020 - Parameter
13 values for ultra-high definition television systems for production and
14 international programme exchange (pp. 1-8).
15 https://www.itu.int/dms_pubrec/itu-r/rec/bt/\
16R-REC-BT.2020-2-201510-I!!PDF-E.pdf
17"""
19from __future__ import annotations
21import typing
23import numpy as np
25from colour.colorimetry import CCS_ILLUMINANTS
27if typing.TYPE_CHECKING:
28 from colour.hints import NDArrayFloat
30from colour.models.rgb import (
31 RGB_Colourspace,
32 normalised_primary_matrix,
33 oetf_BT2020,
34 oetf_inverse_BT2020,
35)
37__author__ = "Colour Developers"
38__copyright__ = "Copyright 2013 Colour Developers"
39__license__ = "BSD-3-Clause - https://opensource.org/licenses/BSD-3-Clause"
40__maintainer__ = "Colour Developers"
41__email__ = "colour-developers@colour-science.org"
42__status__ = "Production"
44__all__ = [
45 "PRIMARIES_BT2020",
46 "WHITEPOINT_NAME_BT2020",
47 "CCS_WHITEPOINT_BT2020",
48 "MATRIX_BT2020_TO_XYZ",
49 "MATRIX_XYZ_TO_BT2020",
50 "RGB_COLOURSPACE_BT2020",
51]
53PRIMARIES_BT2020: NDArrayFloat = np.array(
54 [
55 [0.7080, 0.2920],
56 [0.1700, 0.7970],
57 [0.1310, 0.0460],
58 ]
59)
60"""*RecommendationITU-R BT.2020* colourspace primaries."""
62WHITEPOINT_NAME_BT2020: str = "D65"
63"""*RecommendationITU-R BT.2020* colourspace whitepoint name."""
65CCS_WHITEPOINT_BT2020: NDArrayFloat = CCS_ILLUMINANTS[
66 "CIE 1931 2 Degree Standard Observer"
67][WHITEPOINT_NAME_BT2020]
68"""
69*RecommendationITU-R BT.2020* colourspace whitepoint chromaticity coordinates.
70"""
72MATRIX_BT2020_TO_XYZ: NDArrayFloat = normalised_primary_matrix(
73 PRIMARIES_BT2020, CCS_WHITEPOINT_BT2020
74)
75"""
76*RecommendationITU-R BT.2020* colourspace to *CIE XYZ* tristimulus values
77matrix.
78"""
80MATRIX_XYZ_TO_BT2020: NDArrayFloat = np.linalg.inv(MATRIX_BT2020_TO_XYZ)
81"""
82*CIE XYZ* tristimulus values to *RecommendationITU-R BT.2020* colourspace
83matrix.
84"""
86RGB_COLOURSPACE_BT2020: RGB_Colourspace = RGB_Colourspace(
87 "ITU-R BT.2020",
88 PRIMARIES_BT2020,
89 CCS_WHITEPOINT_BT2020,
90 WHITEPOINT_NAME_BT2020,
91 MATRIX_BT2020_TO_XYZ,
92 MATRIX_XYZ_TO_BT2020,
93 oetf_BT2020,
94 oetf_inverse_BT2020,
95)
96RGB_COLOURSPACE_BT2020.__doc__ = """
97*RecommendationITU-R BT.2020* colourspace.
99The wavelength of the *RecommendationITU-R BT.2020* primary colours are:
101- 630nm for the red primary colour
102- 532nm for the green primary colour
103- 467nm for the blue primary colour.
105References
106----------
107:cite:`InternationalTelecommunicationUnion2015h`
108"""