Originally Posted by cyberbeing
I'm seeing some problems with the "or you could do it using pure CIECAM02 adjustment and a black point mapping" Scenario.
Problem #1: Gamut correction on my primary colors is not being performed.
Well, your own chromaticity plots show that the primaries are being corrected.
Note that there is a lot of gamut clipping going on in this situation, since all the Reec709 primaries are out of gamut of your display. This leaves some scope for different but equally valid clipping results, and such clipping is affected by the details of the mapping space:
xicclu -ff -ir -pl -a Rec709.icm
1.000000 0.000000 0.000000 [RGB] -> MatrixFwd -> 54.285218 80.831212 69.906123 [Lab]
0.000000 1.000000 0.000000 [RGB] -> MatrixFwd -> 87.820812 -79.285064 80.992273 [Lab]
0.000000 0.000000 1.000000 [RGB] -> MatrixFwd -> 29.569144 68.284819 -112.028372 [Lab]
xicclu -fif -ir -pl -a GDMF520_1084.icm
54.285218 80.831212 69.906123 [Lab] -> Lut -> 1.000000 0.000000 0.064667 [RGB] (clip)
[Actual 57.514318 78.530772 69.749600, deltaE 3.967822]
87.820812 -79.285064 80.992273 [Lab] -> Lut -> 0.186427 1.000000 0.012334 [RGB] (clip)
[Actual 85.630279 -79.336492 80.785155, deltaE 2.200903]
29.569144 68.284819 -112.028372 [Lab] -> Lut -> 0.386165 0.000000 1.000000 [RGB] (clip)
[Actual 39.359712 53.436849 -96.391294, deltaE 23.681969]
Problem #2: Color temperature issues wherever the 3DLUT lowers gamma
I'm not sure what you mean. Color temperature numbers are notoriously non-perceptual,
therefore the significance of any deviation from ideal can't be judged by looking at such a graph.
If you check the neutrality of the two links, they are less than 1 delta E of each other
at 25% (the worst case according to your graph):
collink -v -r65 -Ib:2.4 -G -ila Rec709.icm GDMF520_1084.icm:
0.250000 0.250000 0.250000 [RGB] -> Lut -> 0.266033 0.265896 0.264235 [RGB]
-r65 -ctv -ds:n -da:1 -dl:86.224792 -G -ila Rec709.icm GDMF520_1084.icm:
0.250000 0.250000 0.250000 [RGB] -> Lut -> 0.273980 0.268591 0.265761 [RGB]
xicclu -ff -ir -pl -a GDMF520_1084.icm
0.266033 0.265896 0.264235 [RGB] -> Lut -> 23.978634 0.189930 0.148262 [Lab]
0.273980 0.268591 0.265761 [RGB] -> Lut -> 24.440102 0.761707 0.595471 [Lab]
In addition, you are applying CIE colorimetric error measures to a link that is not aiming at minimising such errors, it is instead aiming to minimise appearance discrepancies. For instance, simple models assumed that the viewer 100% adapts to the source white point. The model that CIECAM uses doesn't assume that. Rec709 and your display have a slightly different white point, and (as far as I am able to determine), this is what causes the very slight shift in neutral axis response in the mid tones illustrated above.
Is there any way to improve the color temperatures result after 3DLUT gamma correction, without resorting to dispcal?
As far as I can currently tell, CIECAM viewing condition adaptation is working as intended. You are probably heading in the wrong direction if you want it to measure like a CIE XYZ based mapping, since that is not what it sets out to do.
(It is a little hard to explore all the underlying explanations for your various measurement results due to the Rec709 primaries being out of gamut, and not being 100% sure what some of your test values are - for instance, what's the center of your plots from neutral to the primaries - is it 50% grey or something else ?)
CIECAM02 attempts to model appearance more accurately than pure CIE XYZ values, so at the end of the day it would be interesting to know what it look like in real life ?