jpg/jpeg lossless image compression test


File type : JPG image (1152x864 pixels / 16.7 million colors)
# of files to compress in this test : 1
Total File Size (bytes) : 842,468
Sample of data :

Sample image lossless jpeg compression

Conclusion: JPEG/JPG (and also MP3, avi etc) files are typically very hard to compress. Because of their pre-compressed nature they include a lot of unique information and don't repeat many patterns. The 5th best program in this test, WinRK, only compresses it by 3.5%. Interesting to see some programs do not include a check to see if the 'compressed' file is bigger then the original one.

The big exception to the rule are PAQ8, PackJPG, WinZIP and Allume's (now Smith Micro) StuffIt compressor. StuffIt and PAQ8 compress the a10.jpg test-file lossless from 842468 to under 639000 bytes (24%). These programs remind me of Isaac Dimitrovsky's gifblast program used back in the BBS (bulletin board system) days. Gifblast had a small problem where the compressed and decompressed GIF would not always be byte-for-byte identical to the original GIF file (a flaw not found in Stuffit, PackJPG, WinZIP and PAQ7/8). Truly remarkable. So, if you have a large JPG collection and want to store them using the least disk/tape space possible, WinZIP or StuffIt is your program if you are looking for a GUI driven program, PAQ8 or PackJPG if you need a command-line one.

The main trick those three programs use is (partially) decode the image back to the DCT coefficients and recompress them with a much better algorithm then default Huffman coding.

Fatal error: Uncaught Error: Call to undefined function mysql_connect() in /var/www/vhosts/maximumcompression.com/httpdocs/data/connect.php:3 Stack trace: #0 /var/www/vhosts/maximumcompression.com/httpdocs/data/fill_table.php(2): include() #1 /var/www/vhosts/maximumcompression.com/httpdocs/data/jpg.php(49): include('/var/www/vhosts...') #2 {main} thrown in /var/www/vhosts/maximumcompression.com/httpdocs/data/connect.php on line 3