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

简介:

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

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

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

这种新的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涉及更多的分层过程。






本文作者:佚名
来源:51CTO
目录
相关文章
|
26天前
|
传感器 算法 计算机视觉
基于肤色模型和中值滤波的手部检测算法FPGA实现,包括tb测试文件和MATLAB辅助验证
该内容是关于一个基于肤色模型和中值滤波的手部检测算法的描述,包括算法的运行效果图和所使用的软件版本(matlab2022a, vivado2019.2)。算法分为肤色分割和中值滤波两步,其中肤色模型在YCbCr色彩空间定义,中值滤波用于去除噪声。提供了一段核心程序代码,用于处理图像数据并在FPGA上实现。最终,检测结果输出到"hand.txt"文件。
|
4月前
|
算法 计算机视觉 异构计算
基于FPGA的图像形态学腐蚀算法实现,包括tb测试文件和MATLAB辅助验证
基于FPGA的图像形态学腐蚀算法实现,包括tb测试文件和MATLAB辅助验证
|
1月前
|
Rust Dart 算法
55.3k star!开源算法教程,附带动画图解,学习算法不再苦恼!
55.3k star!开源算法教程,附带动画图解,学习算法不再苦恼!
|
1月前
|
编解码 算法 计算机视觉
基于FPGA的图像最近邻插值算法verilog实现,包括tb测试文件和MATLAB辅助验证
基于FPGA的图像最近邻插值算法verilog实现,包括tb测试文件和MATLAB辅助验证
|
2月前
|
人工智能 自然语言处理 算法
CodeFuse成功支持通义千问算法大赛,评测方案已开源
首届通义千问AI挑战赛成功举办,CodeFuse 为大赛提供技术支持,模型微调框架 MFTCoder 和 CodeFuseEval 评测框架为大赛保驾护航,助力大赛圆满完成。我们基于leetcode 阿里和蚂蚁最新面试题库建设了“模型赛马”在线打榜的评测方案,目前验证集已作为 CodefuseEval 的一项任务在 Github 上开放,欢迎大家下载使用。
63 1
|
3月前
|
监控 算法 计算机视觉
基于FPGA的图像自适应阈值二值化算法实现,包括tb测试文件和MATLAB辅助验证
基于FPGA的图像自适应阈值二值化算法实现,包括tb测试文件和MATLAB辅助验证
|
3月前
|
并行计算 算法 异构计算
基于FPGA的图像拼接算法实现,包括tb测试文件和MATLAB辅助验证
基于FPGA的图像拼接算法实现,包括tb测试文件和MATLAB辅助验证
|
4月前
|
算法 Docker Python
Python【算法中心 04】Docker镜像制作的两种方式代码内置与代码挂载(部署简单和避免修改Docker内文件的权衡)
Python【算法中心 04】Docker镜像制作的两种方式代码内置与代码挂载(部署简单和避免修改Docker内文件的权衡)
54 0
|
4月前
|
算法 异构计算
基于FPGA的图像缩小算法实现,包括tb测试文件和MATLAB辅助验证
基于FPGA的图像缩小算法实现,包括tb测试文件和MATLAB辅助验证
|
4月前
|
算法 计算机视觉 异构计算
基于FPGA的图像坏点像素修复算法实现,包括tb测试文件和MATLAB辅助验证
基于FPGA的图像坏点像素修复算法实现,包括tb测试文件和MATLAB辅助验证