Some time ago I reported David Coffin I was experiencing problems when developing RAW files I borrowed from a 40D user: there was a magenta cast in the highlights. He told me this was surely because of the saturation point (level at which RGB channels clip in the RAW file) of that 40D was lower than the default value DCRAW used, and provided a somewhat uncomfortable solution by introducing a new scaling factor in DCRAW's source code and compile again.
Luckily that is not necessary anymore since David has included the -S
option in DCRAW v8.82
that allows to arbitrarily set the saturation point of your particular camera.
I will show an example: by developing a 40D RAW file with standard parameters:
C:\>dcraw -v -w -H 2 -T -4 test40d.cr2
Loading Canon EOS 40D image from test40d.cr2 ...
Scaling with darkness 1024, saturation 16224
this was achieved:
there is a strong magenta cast in the blown areas because of channel wrong alignment, even if we told DCRAW we wanted neutral (R=G=B ) highlights with -H 2. The reason is DCRAW used level 16224
(14-bit range) as the saturation point while this unit has a lower clipping point.
Let's find out our unit's saturation level by extracting the RAW file with no demosaicing or scaling at all:
C:\>dcraw -v -D -T -4 test40d.cr2
The saturation point of this 40D at ISO100 is 13283
<16224. So now we develop again making use of the -S option:
C:\>dcraw -v -w -H 2 -S 13823
-T -4 test40d.cr2
and the result is neutral highlights with no information loss at all:
The reason why the histogram does not reach the right end is because we used white balance multipliers less or equal to 1.0 which guarantees not to loose any information. The -H 2 option told DCRAW to ensure neutral highlights which was done correctly this time thanks to having let DCRAW know the right saturation point.
Hope you find it interesting.QUESTION
: my 350D clips at 4095, maximum level in the 12-bit scale. I have a feeling the reason for this is not that the 350D is such a perfect camera that matches the saturation level of the sensor to the maximum input level of the ADC. Instead I have a feeling the the ADC actually saturates before the analogue signal fed into it reaches its maximum output voltage.
This means no magenta cast issues, but some loss of information in the RAW with respect to the real sensor output. Can anyone confirm this?