Compression of Spectral Images Using Spectral JPEG XL
6 comments
·March 16, 2025rurban
fc417fc802
It seemed like most of their issues were due to the lossy compression (ie wanting different parameters per sub-image). If they had opted for lossless JPEG XL wouldn't things have "just worked"?
Unrelated, I'd also be curious to know how their initial data transformation varies from that of your TIFF scheme.
rurban
The jxl compression would compute a base for all sub-images and create better diffs amongst them. The current encoder doesn't support that yet.
With my tiff lzw:2 it only takes the diffs for 2 consecutive lines per each sub-image, which is a shame. But still 50% compression. With jxl it would compress down to 10% or more with a sub-image base.
tetrahedon
Did you consider other compression methods? For us, ZSTD is quite good for TIFF files.
tehjoker
what problem did you run into?
fc417fc802
Does JPEG XL compression having a perceptual basis pose any issue given that the data being encoded here isn't what the original algorithm was intended for? I see that the approach iteratively checks RMSE but I'm wondering about spatial artifacts in a given layer.
I also really wanted to use libjxl, but abandoned it eventually. The encoder was horrible. Also instead of OpenEXR we store our multispectral images as TIFF, with lossless lzw:2 compression. Lot of work with TIFF, but in the end much more flexible