|
![](/i/fill.gif) |
I've created a new image format for storing high dynamic range images.
The new format is quite simple to implement: it is basically a 16-bit
PNG with a gamma of 1, using half-precision floating point numbers
instead of 16 bit integers. It's a bit of a hack, but it seems to work
quite well.
The floating point format I use is 5 exponent bits, giving an exponent
range from -16 to 15, and 11 mantissa bits, for a range of 0 to 2047. I
did not include a sign bit, thus the format can only contain positive
values...I do not think negative values are useful enough to warrant the
loss in precision. I might add a second 1-5-10 format if it turns out to
be useful.
Benefits: you get basically all the benefits of the PNG format, such as
compression. The other HDRI formats I've seen are uncompressed or use
relatively crude forms of compression, and tend to result in huge files.
Implementation is quite easy. Once you have PNG reading/writing, FNG is
just a few extra lines. The resulting files are actually readable by PNG
viewers...the colors are dimmed in the resulting display, but the image
is recognizable.
--
Christopher James Huff <cja### [at] earthlink net>
http://home.earthlink.net/~cjameshuff/
POV-Ray TAG: <chr### [at] tag povray org>
http://tag.povray.org/
Post a reply to this message
|
![](/i/fill.gif) |