Hi,
Is there a way to specify a float multiplier attribute when writing an image, that would be recognized natively by the library when reading, or which is widely supported by most programs?
Why do I need this? I have to store in an EXR file data from an imaging device which is producing 16-bit int images and a floating-point global multiplier.
So the possible options are:
- Store the image as float with lossless compression, but the size is then slightly larger than original short int data.
- Store the image as float with lossy compression, but the customer will complain about loss of information
- Store the image as half-float, but then some precision is lost
So I would like to store the image as 32bit uints, which gives a better size than original data with zip compression (as the 32 bit ints have at least two zero in most significant bytes, and redundancy in the next one), but I miss the float multiplier then.
I would like to convince my client to store as EXR files instead of his proprietary format, but for this I must prove him that the result is at least as good as before!
Best regards,
Etienne