Google 通过线上社区的形式创造了各种新的工具和工业标准,它们所衍生出的服务和产品旨在为使用者提供更好的线上体验。
Google 近日开源了用于数位图片和网络图片的 JPEG 编码器 Guetzli([guɛtsli], 在瑞士德语中被翻译为饼干)。与现有的方法相比,它能将高品质图片的大小缩小 35%。这就使网站管理员可以使用更少的传输量更快地下载网页,此外,它能相容现有的浏览器、影像处理应用和 JPEG 标准。
从实现的角度来说 Guetzli 与 Zopfli 算法类似,并不需要引入新的格式就能生成更小的 PNG 和 gzip 文件。与前段时间 Google 推出的基于循环神经网络(RNN)的图像压缩方法 RAISR 和 WebP 不同,它并不需要对客户端和系统环境进行修改。
JPEG 图片的质量与多级压缩过程直接相关:色彩空间转换,离散余弦变换以及量化过程。
在这一阶段,为了得到更小的图片,图片品质也会随之降低。Guetzli 通过引入搜寻算法来减小 JPEG 和 Guetzli 在视觉模型上的差别,试图在最小的品质损失和文件大小之间找到平衡。Guetzli 视觉模型用一种更全面和细致的方式来完成色彩感知和视觉遮蔽,以此来代替简单的色彩转换和离散余弦变换。但 Guetzli 生成更小文件的代价在于,这种搜寻算法所需要的时间远远长于现有的压缩方法。
▲ 16×16 画素的合成示例:一根以蓝天为背景的电话线,传统的 JPEG 压缩算法会产生加工的痕迹。左图为未压缩的原图。相比于中图(libjpeg),右图(Guetzli)文件的大小更小,也更少出现振铃现象。
Guetzli 在不牺牲品质量的条件下生成了更小的影像档案。Google 研究院在试验过程中发现,如果把压缩档案大小设为一个定值,相比于 libjpeg 影像,人类受试者仍然更倾向于 Guetzli 生成的影像,即使 libjpeg 文件大小与 Guetzli 相似或略大一点。
▲ 20×24 画素的猫眼图片。左图为未压缩的原图。相比于左图(libjpeg),右图(Guetzli)呈现更弱的振铃效应,并且档案大小也更小。
Guetzli 的目标用户是网站管理员和图形设计者。在多图网站中,Guetzli 能够给用户提供更顺畅的体验,并且减少行动用户的下载时间和带宽消耗。此外,Google 还希望这种新的尝试可以激励大家在图像和影片压缩领域的研究。
- google/guetzli:https://github.com/google/guetzli/
- Announcing Guetzli: A New Open Source JPEG Encoder
(本文由雷锋网授权使用;首图来源:shutterstock)
延伸阅读:
- Google 超分辨率技术 RAISR:模糊图片瞬间变清晰,运算速度快十倍
- 图像压缩如何兼顾大小和品质?Google 请人工智能来帮忙