[argyllcms] Re: Camera matrix profile, adding ti3 perfect white data set

  • From: Gerhard Fuernkranz <nospam456@xxxxxx>
  • To: argyllcms@xxxxxxxxxxxxx
  • Date: Thu, 28 Jan 2010 23:52:17 +0100

Elle Stone wrote:
> With regard to device response, aren't camera sensors generally linear in 
> response? Mine seems to be. I did a couple of tests on my camera (a Canon 
> 400D/Rebel xti - not the greatest, not the worst digital camera), taking a 
> series of shots of a gray card, keeping light and f-stop constant and 
> successively reducing exposure time. As far as I can tell, my camera response 
> is linear across its usable dynamic range. Indeed a problem I've had with the 
> argyll profiles is that colprof insists on concluding that the profile needs 
> a gamma of 1.05 (for a linear raw shot). If I apply the argyll profile to the 
> dynamic range series, I have to apply an exactly opposite counter-corrective 
> gamma to get the shots to all line up as 256 128 64 32 16 etc. as they should 
> in a linear working space. So I use argyll to get the primaries and then 
> alter the profile TRC from gamma 1.05 to gamma 1.00.
>   

Well, certainly hard to say w/o analyzing your actual data, but likely
you get 1.05, because this happens to be the "best" matrix/gamma fit to
the given measurements in the .ti3 file.

On the one hand, a deviation from 1.0 may just happen to improve the
overall fit to the patches of the target, given that the Luther-Ives
condition is not fulfilled by the sensor's spectral sensitivities, which
means that a 3x3 matrix cannot establish an exact RGB <-> XYZ
relationship for *all* patches of the target anyway (but only for a
subset). Applying a gamma different from 1.0 in addition to a matrix may
further decrease the residuals (also depending on the used error metric,
of course). Whether this still improves the generalization to other
spectra, not on the target, is questionable, though.

On the other hand (and I guess this is likely the predominant factor)
the determined gamma may appear to fit better than 1.0 because it fits
various systematic errors (e.g. caused by flare, spatial variations,
vignetting, etc.) in the measurement. Note that adding 1% constant flare
(of white) to flare-free RGB readings can indeed shift the best-fitting
gamma from 1.0 towards say 1.05...1.1, even if the sensor's response to
light intensity is perfectly linear. At least I don't find 1.05 an
unreasonable outcome.

But yes, given a (mostly) linear sensor, your desire may not be to fit
systematic unknown errors in the measurements as good as possible with a
matrix/gamma model, but you may rather want to estimate the "flare-free"
behavior of the camera with a matrix-only model. IMO it may indeed make
sense not to attempt to fit the flare in the measurements, but rather
use a more constrained model which rather prevents fitting the flare,
because flare depends on the captured scene, having a different
intensity and color at each pixel of the image. The way how the RGB
numbers of the patches of the target are corrupted by flare (in the shot
of the target) is not  necessarily representative for shots of other
scenes, with a different spatial arrangement of colors, and with a
possibly different overall brightness of the scene.

Regards,
Gerhard


Other related posts: