Google Releases Guetzli, An Open Source Project To Make JPEG Images A Lot Smaller In Size

Google logo - mosaic

Google has a big role inside the open source community. Not only that the search and tech giant uses many open source software as a base of its products, but it also contributes many into the community.

On March 16th, 2017, Google releases yet another open source project. Called "Guetzli," it's a JPEG encoder that is able to produce smaller size images. Google claims that the project can reduce the size of existing JPEG images to up to 35 percent using its compression.

Robert Obryk and Jyrki Alakuijala that are software engineers at Google Research Europe, said that:

"Guetzli [guɛtsli] - cookie in Swiss German - is a JPEG encoder for digital images and web graphics that can enable faster online experiences by producing smaller JPEG files while still maintaining compatibility with existing browsers, image processing applications and the JPEG standard.

From the practical viewpoint this is very similar to our Zopfli algorithm, which produces smaller PNG and gzip files without needing to introduce a new format; and different than the techniques used in RNN-based image compression, RAISR, and WebP, which all need client and ecosystem changes for compression gains at internet scale."

Guetzli

The image above is three 16x16 pixel synthetic example of a phone line hanging against a blue sky. Usual JPEG compressors suffer from artifacts. Uncompressed original is seen on the left. Guetzli that is on the right shows less ringing artifacts than libjpeg (middle) and has a smaller file size.

Guetzli is able to produce a smaller size image with minimal loss by using a search algorithm that tries to overcome the difference between the psychovisual modeling of JPEG's format.

The algorithms target what’' known as the quantization stage of the compression process by modeling human vision called "Butteraugli". This is to figure out which of the resulting images cannot be distinguished from the original by the human eye.

This is the stage where Guetzli introduces visual quality loss in order to create smaller size. The algorithms "strikes a balance between minimal loss and file size."

Guetzli's psychovisual model approximates color perception and visual masking in a way that is more detailed than what can be achieved using simpler color transforms and discrete cosine transform.

What trade off of Guetzli is that although it can create much small image file sizes, the algorithms that are used take significantly longer time to create compressed images that the already available methods.

The image below are three 20x24 pixel zoomed areas from a picture of a cat's eye. Uncompressed original on the left. Guetzli (on the right) is showing less ringing artefacts than libjpeg (middle) without requiring a larger file size.

Guetzli

Google has conducted a research that concluded that around half of image requests on websites happen to be JPEGs, and they include to about the two-third of web pages' size.

Google creates the technology because it wants to help people in creating smaller image sizes in order to make web pages load faster. Faster websites will be able to engage users better. Shrinking images will translate to faster downloads, less network usage and happier visitors.

The more satisfied the visitors that are visiting a website, the more they will see Google's advertisements that may have been included by the owners.

Further reading: Google Launches RAISR On Google+ To Save Bandwidth Through Machine Learning