[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Openexr-devel] Negative pixels and gamma math issues on half16
From: |
Lars Borg |
Subject: |
Re: [Openexr-devel] Negative pixels and gamma math issues on half16 |
Date: |
Thu, 07 Jul 2005 16:20:17 -0700 |
Yes, gamma is highly optional with float encoding.
FYI e-sRGB uses negative values, not to go below black, but to go
outside the HDTV 709 primaries.
The negative values are encoded in a positive range by using an
offset. Enclosed is a sample of the curve.
Lars
At 3:27 PM -0700 7/7/05, gary demos wrote:
I believe that the only time gamma is
needed is for interoperation with gamma-based integer
systems. For such interoperation, 0.0 will mean black
which is no light at all. Negative
values would then be clipped to 0.0 in floating, which will map
to 0 (or 16 or 64) in
integer pixel values. There is no meaning defined below
the black value of integer
pixel systems. I believe it is best not to use anything
below the black value of
an integer system.
-Gary Demos
Lars Borg wrote:
Re: [Openexr-devel] Negative pixels and
gamma math issues
I would rather expect you to do the
opposite: A linear segment near 0 and gamma otherwise.
Fractional gamma is not a problem: Just
treat values as positive.
For an example, see how the e-sRGB curves
are constructed.
Also, do you really need a flat section
when you're using float encoding?
The half-float should have enough dynamic
range around 0 for using gamma through the entire curve.
(e-sRGB uses an integer encoding so a
flat section is needed to save on bit depth.)
Lars Borg
Adobe
At 10:22 AM +0200 7/7/05, Christophe
Lorenz wrote:
I'm just curious how you guys get around
that problem....
We have to apply gamma correction on linear images in half16
format....
The issue is of course that powers of negative numbers with
fractionnal exponents isn't always possible...
The other thing is that even if a power of 2 is always possible, the
curve flattens at zero and goes up again.
This is typically not an issue when displaying an image because the
values are clamped anyhow...
But because we do colorgrading, we want to keep the information
present across the whole range, even after applying a gamma
correction. (otherwise we end up with range clamped between 0-1)
We also want to avoid the flat part around 0, but keep the curve close
to a real power function.
We ended up doing a special gamma function that has 2 linear parts at
0 and 1 and smoothly blend with the real gamma on a 0.1 range.
Then, below 0 and above 1, the linear function is used.
(this is similar to what the broadcast tv guys are doing in the low
lights)
Has anyone faced the same issue ?
Chris.
--
Lorenz Christophe - R&D
ACE Digital House
Schiphollaan 2 - 1140 Brussels - Belgium
T: +32 2 735 60 20 F: +32 2 734 09 63
http://www.ace-postproduction.com
This e-mail and any attachments thereto, is intended only for use by
the addressee(s) named herein and may contain legally privileged
and/or confidential information. If you are not the intended recipient
of this e-mail, you are hereby notified that any dissemination,
distribution or copying of this email and any attachments thereto, is
strictly prohibited. If you receive this email in error please
immediately notify me at (32)2 735 60 20 and permanently delete the
original copy and any copy of any e-mail, and any printout
thereof.
_______________________________________________
Openexr-devel mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/openexr-devel
_______________________________________________
Openexr-devel mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/openexr-devel
%e-sRGB curve.pdf
Description: application/applefile
e-sRGB curve.pdf
Description: Adobe PDF document