SFALIC - Simple Fast and Adaptive Lossless Image Compression algorithm

jump to download algorithm implementation contact author

The SFALIC algorithm is designed primarily to achieve the high compression speed. The algorithm is based on the linear prediction, modified Golomb-Rice code family and a very fast prediction error modeling method. It compresses continuous tone grayscale images of depths up to 16 bits. Algotithm's performance was analyzed for a diverse set of medical and natural continuous tone grayscale images of depths up to 16 bits. The results are especially good for big images, for natural images of high bit depths, and for noisy images. The average compression speed on Intel Xeon 3.06 GHz CPU is 47 MB/s. For big images the speed is over 60 MB/s, i.e., the SFALIC algorithm needs less than 50 CPU cycles per byte of image.

The algorithm is described in the paper: Starosolski, R.: Simple Fast and Adaptive Lossless Image Compression Algorithm, Software–Practice and Experience, 2007, 37(1):65-91, DOI: 10.1002/spe.746. Detailed results for all the individual images from test image sets mednat and Waterloo BragZone GreySet2 are here (zip).

The implementation of the SFALIC algorithm is intended for research purposes only. The SFALIC implementation it is provided "as is"; the author makes no warranty of any kind, either express or implied, with respect to this software.

The implementation recognizes PGM P5 (binary, grayscale, BigEndian) image file format.
See readme.txt for compilation instructions and commandline syntax.

Version 03
      readme.txt   sources (C language)   executable (IA32/Win)

Version 04
      readme.txt   sources (C language)   executable (IA32/Win)   executable (IA32/Linux)   executable (UltraSPARC/Solaris)

Contact the author
Feel free to mail me in case of any questions or problems considering the algorithm.

Roman Starosolski