The XRH file format (with .xrh file name extension) is a simple standard royalties-free file format for storing and archiving extended range raster image data.
XRH stores higher precision extended range still images. The images could be any spatially correlated rectangular raster data, such as photographs, or geographic elevation data, etc. Each image contains one or more channels (also called image planes or components).
Extended range (XR) images are images that store more than 8 bits per channel. XRH files store images that are 32 bits or 64 bits per channel. Each value (sample) stored in a channel in an XRH file is a floating point number (FLOAT32 or FLOAT64).
In an XRH file, each channel of floating point numbers is stored compressed. The following compression formats are supported for each channel in this version of the XRH file format specification:
Zebra is a lossless compression method using ZST o to store Byte Channels of
SZMOD is a lossy compression method. It is a modular port of the SZ 2.1 compression method that uses
ZFP is an optional lossy compression method that is block oriented. It offers less compressibility, but allows random access that may be useful for dynamic purposes:
Porcupine is a lossless compression method for storing bit masks. It is like Zebra, but compresses Bit Channels instead of Byte Channels.
Additional modular compression methods will be added in the future as they are developed for higher precision extended range imaging.
Free proof-of-concept C source code for reading and writing XRH files is provided in XRHLIB o