imap_processing.codice.decompress#

Will decompress CoDICE science data.

For CoDICE, there are 4 forms of compression:

1. Table-based lossy compression A (32-bit -> 8-bit)
2. Table-based lossy compression B (32-bit -> 8 bit)
3. LZMA lossless compression
4. Pack 24 bit compression (24-bit integers)

Only one lossy option can be selected in cases of lossy + lossless compression. Thus, there are 7 possible compression algorithms:

0. No compression
1. Lossy A only
2. Lossy B only
3. Lossless only
4. Lossy A + lossless
5. Lossy B + lossless
6. Pack 24 bit

In the case of (4) and (5), the data is first run through lossy compression, and then the result is run through lossless compression. Thus, to decompress, one must apply lossless decompression first, then lossy decompression

References

This information was provided via email from Greg Dunn on Oct 23, 2023. The “Pack 24 bit” compression algorithm was added in Feb 2024.

Functions

decompress(compressed_bytes, algorithm)

Perform decompression on a byte stream into a list of integers.