Hi,
I am trying to understand what is the relation between tag "AsShotNeutral" (from DNG 1.4.0.0, page 37: "AsShotNeutral specifies the selected white balance at time of capture, encoded as the coordinates of a perfectly neutral color in linear reference space values.") and the value of variable CameraNeutral, used in Chapter 6 to calculate the Camera to XYZ (D50) Transform:
ReferenceNeutral = Inverse(AB * CC) * CameraNeutral
D = Invert(AsDiagonalMatrix(ReferenceNeutral))
CameraToXYZ_D50 = FM * D * Inverse(AB * CC)
I assumed AsShotNeutral and CameraNeutral were one and the same, but would like to confirm that. For example, consider the following data, extracted from a real linear DNGfile:
AnalogBalance = [1, 1, 1]
AsShotNeutral = [0.641604, 1, 0.42088]
CameraCalibration1 = CameraCalibration2 = [0.9465, 0, 0, 0, 1, 0, 0, 0, 0.9773]
ForwardMatrix1 = [0.7163, 0.1301, 0.1179, 0.1926, 0.9543, -0.1469, -0.0278, -0.3830, 1.2359]
ForwardMatrix2 = [0.7239, 0.1838, 0.0566, 0.2467, 1.0246, -0.2713, -0.0112, -0.1754, 1.0117]
ColorMatrix1 = [0.7755, -0.2449, -0.0349, -0.3106, 1.0222, 0.3362, -0.0156, 0.0986, 0.6409]
ColorMatrix2 = [0.6941, -0.1164, -0.0857, -0.3825, 1.1597, 0.2534, -0.0416, 0.1540, 0.6039]
The CameraToXYZ_D50 matrix calculated from the data above, assuming CameraNeutral = AsShotNeutral, maps camera white [1, 1, 1] to a value different from the expected [96.42, 100, 82.51]. It's possible I'm making a mistake somewhere else, but maybe the issue is as simple as I'm missing some needed conversion from AsShotNeutral to CameraNeutral.
Any help will be greatly appreciated!
Thanks,
Guilherme