openexr-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Openexr-devel] f-stops and steps. How are they related?


From: Florian Kainz
Subject: Re: [Openexr-devel] f-stops and steps. How are they related?
Date: Wed, 05 Jan 2005 20:43:54 -0800
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.3) Gecko/20030314

Hi Yves,

I agree with points 1, 2, 7, 8 and 9 of your interpretation.

In points 3, 4, 5 and 6 you seem to assume that 8-bit image
file formats encode intensity or luminance values as if the
pixels were 8-bit floating-point numbers.  Typically this is
not the case; most 8-bit file formats use a gamma encoding,
where the relationship between the integer pixel value, v,
and intensity, I(v), looks something like this:

    I(v) = Imax * pow (v / 255.0, 2.2)

With this relationship between I and v, the number of steps per
f-stop is not well-defined.  For example, pixel values 186 and
255 are one f-stop apart (I(255) == 2 * I(186)), so you could
say that you get 69 steps per stop.  On the other hand, pixel
values 53 and 72 are also one f-stop apart (I(72) == 2 * I(53)),
so in the range you get only 19 steps per stop.
The usable dynamic range of the image is not well-defined either;
the range  depends on the minimum number of steps per stop (or
the maximum quantization error) you are willing to accept.

For more on this topic, you may want to read Gred Ward's
"High Dynamic Range Image Encodings" web page, at
http://www.anyhere.com/gward/hdrenc/hdr_encodings.html, or
Charles Poynton's "Gamma FAQ", at http://www.poynton.com/GammaFAQ.html.

Florian






reply via email to

[Prev in Thread] Current Thread [Next in Thread]