[argyllcms] Re: Xorg video card lookup tables, tone response curves, etc


On 14 Apr 2008, at 21:54, Gerhard Fuernkranz wrote:
Samer Abdallah wrote:
I think it would make much more sense to throw out the Gamma
calibration model and bizarre nonlinear RGB spaces and calibrate to
log-intensity instead,

IMO this is also a matter of the particular viewing conditions.

Under the assumption that the observer is constantly adapted to "display
white" I don't think that a log response makes too much sense,
particularly not in conjunction with a high contrast display, because a
log response will stretch virtually indistinguishable [by the human
vision] color differences in dark regions to rather large RGB
differences and will waste levels then (e.g. on display with a high, say
1:10000 contrast ratio, a log response will use 25% of the levels for
the 0.0001...0.001 intensity range, though this range corresponds only
to the 0.1%...1% range of the L* lightness).

this is a good point, and true, if I try to use my laptop outside
on a sunny day, all 256 gray levels look approximately black!
But with regards to your point about high contrast displays, I think
a 10000:1 contrast ratio is rather extreme ** and unnecessary for
most situations. For most ordinary work, I would guess that
a contrast ratio of 1:1000 is generous, and 1:500 sufficient. I base
this on my observations of (a) an Apple cinema display at work (700:1,
looks beautiful), my desktop at home (500:1, just fine), and my laptop
(150:1, noticably poor). For graphic work destined for print, the useful
range is limited to about 200:1, which is about what the best photographic papers can produce; slides are maybe a bit better - but at this range, the finer quantisation at low intensities given by a log calibration is entirely
justified, I think.

So one option would be to force 8 bit-per-channel log-encoded data into a restricted constrast range of 1000:1 or less, with some way to control where in
the 10000:1 range to place it (ie an overall brightness factor).

** having just written this, I looked up specs for some LCD tv's and
some of them claim 5000:1, even 8000:1 in some cases. Well, I
don't know how they measure this and whether or not it is accurate,
but even if it were the case, if you're going to make sensible use of the
entire range, eg for movies with bright highlights, explosions,
images of the sun, caving expeditions etc you're going to need
more than 8 bits per channel.

Anyway, logarithmic quantization of an 800:1 range in 256 steps gives
a ratio of 1.026 per step, and the JND for human vision is apparently
1 or 2%, so that seems reasonable to me. And you only have to go to 10 bits
per channel to get a ratio of 1.009 across the whole of a 10000:1
contrast range with a uniform logarithmic encoding.

On a more general note, if resources are so tight that we are worrying
about the precise details of the the human perceptual response, eg the
difference between the L* curve and a logarithmic one, then really we
should be doing things adaptively for particular images, or at least
types of images on the basis of their statistical structure, because that's what perceptual systems really do - things like the L* curve are only average responses and are the result of adaptation at many levels, but the variance is at least as important as the mean. To give a not very exciting example, with the old 256 colour displays, any attempt to choose a fixed set of 256 colours for displaying images generally gave poor results no matter how evenly
they were spaced in whatever average perceptual space you choose, so the
per-image colour map was a necessity.


But if for instance videos with a high dynamic range are displayed on a
high-contrast display in a dark environment, then a log response may
possibly indeed make sense. If for instance certain scenes in the video are so dark, that the brightest areas in the scene are just say 1/100 of
the display's white luminance, then the vision certainly won't keep
adapted to display white in such a viewing environment, but will adapt
to the much lower luminance level of the scene, and then e.g. a regular
L* response [normalized to L* = 100 = display white] won't be
appropriate any more for this viewing condition.

Regards,
Gerhard




Other related posts: