谷歌开源新JPEG算法 可将文件缩小35%

20.03.2017  07:15

腾讯科技讯 据国外媒体报道,谷歌()开发了并开源了一种新的JPEG算法,该算法可将文件大小减少大约35%,或者在保持文件大小不变的情况下显著提高图像质量。

重要的是,与WebP和WebM等其他图像压缩方式不同,谷歌新的JPEG算法与现有的浏览器、设备、照片、编辑应用和JPEG标准完全兼容。

这种新的JPEG编码器被称为Guetzli。Guetzli是瑞士德语“曲奇”的意思,这也许是因为该项目是由谷歌研发部门GoogleResearch的苏黎世办事处负责开发的。

有许多方法可以调整JPEG图像质量和文件大小,但Guetzli专注于压缩的分层阶段。简单地说,分层是一种尝试将大量无序数据(难以压缩)转换成有序数据(非常容易压缩)的过程。在JPEG的编码过程中,通常将柔和的颜色渐变简化为单个色块,并且完全消除其中的小细节。

这个过程的困难之处是在消除细节与缩小文件之间找到平衡。在这一点上,每一种有损编码器(如libjpeg、x264、lame)的做法都不一样。

根据Google Research的描述,Guetzli使用了一个新的心理视觉模型(名为Butteraugli),以确定哪些颜色和细节要保留,哪些要消除。在这种情况下,心理视觉意味着它基于人类的视觉处理系统。Butteraugli的确切细节隐藏在数百个高精度常数中,这些常数产生了一个近似颜色感知和视觉掩蔽的模型。

然而,我们不知道的Google Research是如何计算出这些高精度常数的,它们似乎是计算机生成的,或者至少是计算机优化的。

虽然Guetzli的主要作用是缩小文件尺寸,但Google Research认为它也可以用于在保持文件大小不变的情况下提高JPEG图像的质量。当研究人员对Guetzli编码的图像和libjpeg(一个流行的开源编码器)编码的图像进行对比评估时,75%的参与者更喜欢Guetzli。

Guetzli可以通过Github免费下载。网络工程师、平面设计师和摄影师都可以试一试。需要提醒的是,使用Guetzli进行图像压缩比使用libjpeg处理图像要慢,因为Guetzli涉及更多的分层过程。

推广:更多精彩内容,请微信搜索关注公众号「腾讯科技」(ID:qqtech)。