Skip to content(if available)orjump to list(if available)

Compression of Spectral Images Using Spectral JPEG XL

rurban

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

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.