Google 新近推出 Jpegli 扩展库,这是一个用于JPEG图像编码的库。
什么是Jpegli
2022 年,Google Chrome 中放弃了对 JPEG-XL 的支持,此举引起了业界轰动,旨在加强其自有格式 WebP 的使用。随着 JPEG 在互联网上的持续重要性,他们现在推出了另一种替代方案。
新的Jpegli扩展库目标比传统 JPEG 更快、更美观、更高效。该技术的支持者表示,它有潜力让互联网变得更快、更美好。
Google表示,Jpegli于 4 月 3 日发布并可从GitHub访问,它保持了高度的向后兼容性,同时提供增强的功能和高质量压缩设置下高达 35% 压缩比。
据Google称,在提高图像质量和压缩密度比的同时,Jpegli 的编码速度与 MozJPEG 等传统方法相当。因此,Web 开发人员可以将 Jpegli 集成到现有工作流程中,而无需牺牲编码速度、性能或内存使用。
Jpegli:效率和兼容性
Jpegli(在德语-奥地利语中意为“小 Jpeg”)与原始 JPEG 标准完全兼容,仍然忠实于更传统的 8 位设置。这确保了与 libjpeg-turbo 和 MozJPEG 等流行库中的 API 和 ABI 的互操作性。
确保 Jpegli 卓越性能的一些先进技术包括:
-
自适应量化:受 JPEG XL 的启发,它可以在空间上调整量化,优化图像质量并减小文件大小。
-
改进了量化矩阵的选择:最大限度地提高高质量和低质量图像的编码和解码质量。
-
10+位编码:允许更高精度的颜色表示,减少渐变和平滑过渡区域的“条带”效应。
Jpegli 每个组件可以使用 10 多个位进行编码。10 位编码以原始 8 位形式进行,生成的图像可与 8 位查看器互操作。10 位动态可作为 API 扩展使用,并且需要更改应用程序代码才能应用它。
-
速度优化:Jpegli 设计快速高效,提供与传统 JPEG 库相当的编码和解码时间。
此外,Jpegli 比传统 JPEG 编解码器更有效地压缩图像。Google表示,这是这个非常有前途的技术,可以节省带宽和存储空间,并使网页打开速度更快。
Jpegli的工作原理
Jpegli 的工作原理是使用新技术来减少噪声并提高图像质量。新的或改进的功能包括来自JPEG XL参考实现的自适应量化启发式、改进的量化矩阵选择、中间结果的计算以及使用更高级色彩空间的可能性。
该库提供了一个可互操作的编码器和解码器,符合原始 JPEG 标准及其最方便的 8 位形式以及与libjeg-turboMozJPEG 的 API/ABI 兼容性。
当通过 Jpegli 压缩或解压缩图像时,还会执行更精确且心理视觉上有效的计算;图像看起来会更清晰,并且可观察到的伪影更少。
结语
新格式能否取代广泛使用的传统 JPEG?当然,与传统 JPEG 解码器的互操作性是其潜在流行的一个重要因素。
参考:
https://github.com/libjxl/libjxl/tree/main/lib/jpegli
https://opensource.googleblog.com/2024/04/introducing-jpegli-new-jpeg-coding-library.html
https://www.infoworld.com/article/3715021/google-rolls-out-a-new-jpeg-coding-library.html