Lossless Compression of Predicted Floating-Point Values

Martin Isenburg      Peter Lindstrom      Jack Snoeyink

The size of geometric data sets in scientific and industrial applications is constantly increasing. Storing surface or volume meshes in standard uncompressed formats results in large files that are expensive to store and slow to load and transmit. Scientists and engineers often refrain from using mesh compression because currently available schemes modify the mesh data. While connectivity is encoded in a lossless manner, the floating-point coordinates associated with the vertices are quantized onto a uniform integer grid to enable efficient predictive compression. Although a fine enough grid can usually represent the data with sufficient precision, the original floating-point values will change, regardless of grid resolution.

We describe a method for compressing floating-point coordinates with predictive coding in a completely lossless manner. The initial quantization step is omitted and predictions are calculated in floating-point. The predicted and the actual floating-point values are broken up into sign, exponent, and mantissa and their corrections are compressed separately with context-based arithmetic coding. As the quality of the predictions varies with the exponent, we use the exponent to switch between different arithmetic contexts. We report compression results using the popular parallelogram predictor, but our approach will work with any prediction scheme. The achieved bit-rates for lossless floating-point compression nicely complement those resulting from uniformly quantizing with different precisions.

main contributions:

  • compresses floating point data without loss
  • extends predictive coding to floating-point data
  • enables mesh compression when quantization is not an option
  • achieves bit-rates that are state-of-the-art
  • publications:

  • [ils-lcfpg-04.pdf slides] Martin Isenburg, Peter Lindstrom, Jack Snoeyink, Lossless Compression of Floating-Point Geometry, Proceedings of CAD'3D, May 2004.
  • [ils-lcpfpg-05.pdf] Martin Isenburg, Peter Lindstrom, Jack Snoeyink, Lossless Compression of Predicted Floating-Point Geometry, Computer-Aided Design, Volume 37, Issue 8, pages 869-877, July 2005.
  • [li-fecfpd-06.pdf] Peter Lindstrom, Martin Isenburg, Fast and Efficient Compression of Floating-Point Data, IEEE Transactions on Visualization and Computer Graphics, Proceedings of Visualization 2006, 12(5), pages 1245-1250, September-October 2006.
  • download:

  • slides for the conference paper: lcfpg.ppt
  • the source code for the lossless float-point compressor: lcpfpg_src.zip (includes both the old version described in the conference paper and the new version described in the journal paper)