Parameters used for benchmarks

The performances of the various algorithms often depend on the parameters given to the compression program. To give a precise specification of how the files have been created, here there is a list of the settings for each program:

Polyomino Compressed Image Format (PCIF)

As available on the download section of this site. The parameters have all been left to default; this set of parameters is the globally optimal one for the 'own image set'.

The PNG format

PNG file sizes may vary much depending on the encoder. The PNG files were created with a filesize-optimazing software; if you want to produce comparable size PNG files, you should use a program that produces non-interlaced images, uses adaptive filter determination and removes any other side data from the image (ex. alpha channel).

The Jpeg2000 format

As implemented on www.kakadusoftware.com. The lossless option must be turned on: -Creversible=yes.

The LOCO algorithm (JPEG-LS)

Now the most delicate part: the LOCO algorithm, at the core of the JPEG-LS standard, available at www.hpl.hp.com/loco/. The article about it says the JPEG-LS files are slightly bigger than those produced by the LOCO algorithm due to some standardizations and simplifications, so what in the site is called 'JPEG-LS' files is slightly better than the real JPEG-LS files.

A short excursus here is needed. The LOCO algorithm did not give, in the first test, good results and the global filesize was very similar to that of PNG files. As said in the article this is caused by the absence of a color transform: the colors in the images were not decorrelated, and so compression results on true-color images were quite poor. Since publishing bad results for a high-performance algorithm would be quite unlogical, the results were at the time omitted from the benchmarks.

After a while, the JPEG-LS standard has been considered a must in the benchmarks. I've been unable to find an implementation that executes a color transform, so I implemented the one described in the article describing LOCO myself (the transformation is R-G, G, B-G). In fact, finally, competitive results for JPEG-LS were produced and these have been published in the benchmarks.

Several strange factors were observed, though. First of all, even if most images gained much from the color transform (all the images in the kodak test set, for example, gained a 20-25% in filesize) some images had slightly worst results (ex. the Lena image was compressed a 2-3% less). Most strange thing, other images seemed to be completely unaffected by the color transform (like the images in the fourth image set).

Update I have been informed of an optimized library for JPEG-LS that also supports color transforms, called CharLS. I haven't tried it personally, but reports say that it will compress faster than the other available JPEG-LS implementations, and having a color transform it will give good results on most true color images. I'd suggest to anyone is interested in JPEG-LS encoding of images to give it a try.


Back to the benchmarks page.

The evolution of the PCIF algorithm is now available ! It has a greater compression ratio, it is much faster and the implementation is available in both Java bytecode and native executables. Take a look at the new BCIF algorithm.