Mat
Mat

Reputation: 4501

simple 32bit floatingpoint image format?

What image formats that support 32-bit floating point values (per channel)? I would like to read and write uncompressed 32-bit RGB images in C++ as simply as possible.

There is OpenEXR, but it's rather complex and so far I didn't get the open library to work.

Then there is TIFF but LibTiff seems to have some issues with 32bit fp tiffs.

There is also Radiance .hdr which is fairly simple - but unfortunately applies some kind of lossy compression

What other image formats are there that support 32bit floats?

Upvotes: 1

Views: 3847

Answers (1)

Indy9000
Indy9000

Reputation: 8851

Microsoft HD Photo Format supports 128bpp floating point for RGB and RGBA

HD Photo Format Overview

Native Pixel Formats Overview

Search for the following on the Native Pixel Formats page

GUID_WICPixelFormat128bppRGBFloat

GUID_WICPixelFormat128bppRGBAFloat

EDIT:

For the benefit of others who are interested in this format:

Microsoft submitted this format for standardization as JPEG XR. In July 2010, reference software to implement the JPEG XR standard was published as ITU-T Recommendation T.835 and International Standard ISO/IEC 29199-5. The bitstream specification of the JPEG XR standard can be downloaded from ITU-T at http://www.itu.int/rec/T-REC-T.832

Key benefits of the HD Photo/ JPEG XR -

  • Multiple color formats for display or print
  • Fixed or floating point high dynamic range (HDR) image encoding
  • Lossless or high quality lossy compression
  • Extremely efficient decoding for multiple resolutions and sub-regions (The ability to decode only the information needed for any resolution or region and to manipulate the image as compressed data)
  • Minimal overhead for format conversion or transformations during decode

Microsoft released a Device Porting Kit (DPK) providing implementation details for encoder/decoder, including sample reference code for use with Unix/Linux platforms.

Upvotes: 2

Related Questions