Friday, March 24, 2017

Google Unveils Guetzli, Open Source JPEG Encoder, to Speed Browsing

Google on Thursday announced Guetzli, a new contribution to its evolving set of tools for the open source community. Guetzli is an encoder that allows JPEG files to be compressed as much as 35 percent, resulting in much faster Web page loading.

"Guetzli," which means "cookie" in Swiss German, allows users to create smaller JPEG images while maintaining compatibility with existing Web browsers, image processing applications and the existing JPEG standard, noted Robert Obryk and Jyrki Alakuijala, software engineers at Google Research Europe, in an online post.

It produces a result similar to that of Google's Zopfli algorithm, which produces smaller PNG and gzip files without the requirement of a new file format, they explained. The technique is different from RNN-based image compression, RAISR and WebP, all of which need ecosystem and client changes for compression at Internet scale.

Google first introduced the Zopfi compression algorithm in 2013 and two years later unveiled Brotli, which offered faster page loads and up to 26 percent higher compression ratios than Zopfi.

Microsoft late last year announced support for Brotli in Edge, which would make it broadly interoperable across major browsers, as the latest versions of Chrome and Firefox already supported Brotli.

Quality and Compression

JPEG resolution quality is directly correlated to its multi-stage compression process, Obryk and Alakuijala explained.

"Guetzli specifically targets the quantization stage in which the more visual quality loss is introduced, the smaller resulting file," they wrote. "Guetzli strikes a balance between minimal loss and file size by employing a search algorithm that tries to overcome the difference between psychovisual modeling of JPEG's format and Guetzli's psychovisual model."

The model approximates color perception and visual masking in a more detailed way than what can be achieved through simpler color transforms and discrete cosine transforms, according to the engineers.

16x16 pixel synthetic example of  a phone line
16x16 pixel synthetic example of a phone line hanging against a blue sky -- traditionally a case where JPEG compression algorithms suffer from artifacts. Uncompressed original is on the left. Guetzli (on the right) shows less ringing artefacts than libjpeg (middle) and has a smaller file size.

During experiments with human raters, Obryk and Alakuijala continued, images produced by Guetzli were preferred over images from libjpeg files, even when the latter files were the same size or slightly larger, making the slower compression a worthy tradeoff.

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

The hope is that the format webmasters and graphic designers will embrace the format for running image-heavy websites, and that mobile users will see reduced load times and bandwidth costs, the engineers said.

Deep Learning

Google likely has developed the deep learning expertise and compute resources to tackle such a feat from a new vantage point, suggested Paul Teich, principal analyst at Tirias Research.

Image storage is a top priority for consumer cloud services, retail, advertising and other industries, he noted.

"My educated guess is that Google made Guetzli public because Google doesn't control most of the endpoints that capture the images that Google then stores for image searches," Teich told LinuxInsider. "It makes Google's business run a little better if everyone uses Guetzli as their native JPEG format -- and the same is true for other cloud services that handle images at scale, such as Facebook, Twitter and Instagram."

There likely will be a version of Guetzli for motion video compression as well.

RAISR, which Google introduced in November, uses machine learning to turn low-resolution images into high-quality photos. WebP images are 26 percent smaller than PNGs and up to 34 percent smaller than JPEG images

Making the Guetzli technology available as an open source tool will help speed adoption and return significant benefits for Google, said Rob Enderle, principal analyst at the Enderle Group.

"Google makes money off ads," he told LinuxInsider. "Slow load times lower ad views, so by speeding up the Web, they'll make a ton more money."

Dropbox engineers were excited to find that Guetzli interoperates with Lepton, the streaming image compression format Dropbox released to the open source community last summer.

"In preliminary testing, we are seeing real advantages in combining Guetzli with Lepton, as long as you apply Guetzli first," said Daniel Reiter Horn, staff software engineer at Dropbox.

"For example, one test we tried resulted in ~24 percent savings from Guetzli and an additional ~22 percent compression from Lepton, with default settings," he told LinuxInsider.

"The result was a total savings of ~41 percent over the default file," Horn said. "The math makes sense, because Lepton gives 22 percent savings on the Guetzli file that's 75 percent of the original size... so the savings is 24 percent + (22 percent * 76 percent) = ~41 percent."

Google's own team had little to say about the release beyond the revelations in Obryk and Alakuijala's post, company rep Jason Freidenfelds told LinuxInsider.

However, it did release a statement suggesting that it was, shall we say, compressing its wild enthusiasm: "Grt to hv all ths intrst - w'r vry exctd fr ths brkthrgh!"


,

No comments:

Post a Comment