For the most attentive, you may have noticed a slight omission in the examples in the chapter XYZ. There is a slight detail without which the image cannot be compliant with the DCI/SMPTE standard.
Let's review our conversion equation :
If you remember, we applied an XYZ matrix, we applied a gamma correction, we converted to 12 bits and converted to an integer, thus we have one step left...
... a small equation hidden : it is a division by the two DCI maximum luminances, with an enigmatic value of 52.37 named Normalization Constant (of luminance) : this division is called White Point Normalization.
Without it, your image will be slightly darker, nothing more.
(and your images won't be compliant with DCI/SMPTE standards either)
Just after the XYZ conversion and just before the gamma correction, you need to add a small calculation :
X = ( 48 * X ) / 52.37
Y = ( 48 * Y ) / 52.37
Z = ( 48 * Z ) / 52.37
These three equations ensure that each component (X, Y and Z) is normalized to its correct final value.
The SMPTE standards have defined the maximum white point luminance of a digital cinema projector as 48.00 cd/m2
There are various color temperatures for white (specified in Kelvin) :
Name | Kelvin | Description | x,y White Point |
White Point X'Y'Z' (gamma included) |
---|---|---|---|---|
P3 D55 | 5500K | - | x=0.3324, y=0.3474, |
X'=3893, Y'=3960, Z'=3838 |
P3 D61 | 6100K | - | x=0.3198, y=0.3360, |
X'=3885, Y'=3960, Z'=3997 |
P3-DCI | 6300K | Used by digital cinema projection | x=0.3140, y=0.3510, |
X'=3794, Y'=3960, Z'=3890 |
P3-DCI-D65 | 6500K | Used by P3-DCI Display Monitors | x=0.3127, y=0.3290, |
X'=3883, Y'=3960, Z'=4092 |
The different 'D' values in the table are standardized illuminants for the DayLight. The SMPTE standard uses 3 types of 'D' illuminants : D55, D61 and D65. They wanted to integrate these three into a larger virtual 'D' illuminant and include it into the P3-DCI colorspace.
If we plot these three white points on a graph :
We observe that D61 and D65 are outside our colorspace (in blue) :
To encompass all white points (D55, D61 and D65), it was decided to bring the white point back down and to reintegrate it into the colorspace :
and Voila !
To get this new white point, we move from 48 cd/m2 to constant of 52.37 cd/m2 (while still keeping to a maximum luminance at 48 cd/m2 ... are you following ? 3 :)
This new white point, normalized by DCI/SMPTE, corresponds to 6300K (however, it cannot be considered for a D63) and is far from the Planckian Locus, and at last, its white point is slightly greenish.
The normalization constant is therefore 52.37 cd/m2.
Small note, the maximum limit of Y' encoded in 12 bits must be 3960 (from our 4095 in our 12 bits). 4
According to the standards, the white point reference, defined by SMPTE 431-2, specifies that the encoded values for X', Y' and Z' will be 3794, 3960 et 3890.
To understand the reason, it's related to the normalization constant of 52.37 and the fact that we are still working with a maximum luminance of 48.
With a maximum luminance of 52.37, the maximum value in 12 bits is 4095; If the luminance is 48 - which is lower than 52.37, then the maximum value in 12 bits will also be lower than 4095.
To understand how, take our maximum value in the [0..1] which is... 1 and let's integrate it into our conversion workflow, without forgetting the gamma conversion.
We will take a luminance Y at 100%, so at 1.0.
# White Point Normalization (1.0 is the maximum value for luminance) :
>>> (48*1.0)/52.37
0.91655527974030933740
# Gamma 2.6 :
>>> pow(0.91655527974030933740, 1/2.6)
0.9670426753179335
# 12 bits conversion :
>>> 0.9670426753179335*0xFFF
3960.039755426938
# Cast from float to int
>>> int(3960.039755426938)
3960
Indeed, we get 3960 !
In the context of the DCI White Point conversion, we can apply the same mechanism for the rest of components (X and Z) which will be limited to 3794 and 3890 5.
After this small patch, the next steps are the gamma conversion and finally the 12-bit conversion; then you will have an image DCI/SMPTE compliant.
z is not mandatory. The sum of values x + y +z equals 1.0; it's easy to find out the value of z with only x and y. ↩
References of those coordinates : ↩
SMPTE 432-1-2010 - Digital Source Processing - Color Processing D-Cinema
SMPTE 428-1-2006 - DCDM - Image Characteristics
Differences between DCI-P3 White Point :
Inside 48 cd/m2 : x=0.3140, y=0.3510
Inside 52.37 cd/m2 : x=0.3429, y=0.3143
References of "48 cd/m2" and "52.37 cd/m2" : ↩
"The nominal value for screen luminance is 48.0 cd/m2 (14.0 fL) -- SMPTE 431-1-2006 - Screen Luminance Level, Chromaticity and Uniformity
Reference White signal : Calibration White is defined to produce a luminance of 48 cd/m2 as measured off the screen -- SMPTE DOC-51-2008 - White Gamut Study Report
SMPTE 431-1-2007 defines 100% white as both the maximum white level allowed, and 48 cd/m2. Annex F of EG 432-1-2007 makes this crystal-clear: Because the SMPTE D-Cinema standards specify a maximum luminance of 48.00 cd/m, with a normalizing constant of 52.37 the maximum Y’ code value that is allowed is 3960 -- White Gamut Study Report
Because the SMPTE D-Cinema standards specify a maximum luminance of 48.00 cd/m with a normalizing constant of 52.37 the maximum Y’ code value that is allowed is 3960 -- SMPTE DOC 51-2008 - White Gamut Study Report
The peak luminance as shown in the transfer function equation is 52.37 cd/m2. The extra headroom is reserved to accommodate a range of white points including D55, D61 and D65, while still supporting the reference luminance (L) of 48 cd/m2 as specified in SMPTE 431-1,Table 5.2 for Digital Cinema-Screen Luminance Level, Chromaticity and Uniformity -- SMPTE.ST.0428-1-2006 - DCDM - Image Characteristics
The final specification for digital cinema (..) specifies a peak luminance of 52.37 cd/m2 (value chosen to allow different white points along the CIE D-Illuminant line to reach a peak luminance of 48 cd/m2) -- Journal SMPTE, Evaluation of Color Pixel Representations for High Dynamic Range Digital Cinema (Ronan Boitard, Jean-Philippe Jacquemin, Gerwin Damberg, Goran Stojmenovik & Anders Ballestad)
For compatibility with legacy film projectors, the digital cinema standards specify a screen luminance of 48 cd/m2 (14 ft L) with a white point of 0.314 x, 0.351 y -- Color and Mastering for Digital Cinema (Glenn Kennel)
The DCI standard pixel representation specifies a quantization of the X’Y’Z’ color space using 12 bits and a 2.6 gamma power law TF with a peak luminance of 52.37 cd/m2 -- SMPTE Journal, March 2018, Evaluation of Color Pixel Representations for High Dynamic Range Digital Cinema (Boitard, Jacquemin, Damberg, Stojmenovik, Ballestad)
References of "3960" : ↩
Reference White signal: This is a reference level corresponding to a specified peak value, generally associated with test signals. In the case of Digital Cinema the Reference White signal is defined by SMPTE RP 431-2 with the corresponding X’Y’Z’ code values of 3794, 3960, 3890 -- SMPTE DOC-51-2008 - White Gamut Study Report
the maximum Y' code value that is allowed is 3960. However, because there is no limit on the X' and Z' values because they carry no luminance information, the maximum X' and Z' values are 4095 -- Color and Mastering for Digital Cinema (Glenn Kennel)
SMPTE EG 432-1-2010 - Digital Source Processing - Color Processing D-Cinema ↩