是否有一张表格可以给出在给定质量下JPEG图像的压缩比?
类似于维基百科页面上提供的表格,但要包含更多的数值。
或者一个公式也可以解决问题。
额外问题:维基页面上的[压缩比]值对所有图像大约都是准确的吗?压缩比是否取决于图像内容以及图像尺寸?
这些问题的目的是确定给定质量下压缩图像大小的上限。
注意:我不是要制作自己的表格(我已经有了)。我正在寻找其他数据来与我的数据进行核对。
是否有一张表格可以给出在给定质量下JPEG图像的压缩比?
类似于维基百科页面上提供的表格,但要包含更多的数值。
或者一个公式也可以解决问题。
额外问题:维基页面上的[压缩比]值对所有图像大约都是准确的吗?压缩比是否取决于图像内容以及图像尺寸?
这些问题的目的是确定给定质量下压缩图像大小的上限。
注意:我不是要制作自己的表格(我已经有了)。我正在寻找其他数据来与我的数据进行核对。
我曾经也有同样的疑问,并且很失望没有人制作出这样的表格(基于单张经典Lena图像或JPEG墓碑的研究看起来很荒谬)。这就是为什么我自己做了一项研究。我不能说它完美无缺,但肯定比其他人做的好。
我从不同设备中选取了60张真实照片,这些照片具有不同的尺寸。我编写了一个脚本,使用不同的JPEG质量值对这些照片进行压缩(它使用了我们公司的成像库,但基于libjpeg,因此其他软件也应该可以使用),并将结果保存到CSV文件中。在进行了一些Excel操作后,我得出了以下数值(请注意,我没有计算JPEG质量低于55的内容,因为它们对我来说似乎没有用):
Q=55 43.27
Q=60 36.90
Q=65 34.24
Q=70 31.50
Q=75 26.00
Q=80 25.06
Q=85 19.08
Q=90 14.30
Q=95 9.88
Q=100 5.27
说实话,数值的分散程度很大(例如对于Q = 55,压缩比为22.91而最大值为116.55),且分布不是正态分布。因此,很难理解应该将哪个值作为特定JPEG质量的典型值。但我认为这些值可以作为粗略估计。
我写了一篇博客文章,解释了我如何得出这些数字。
http://www.graphicsmill.com/blog/2014/11/06/Compression-ratio-for-different-JPEG-quality-values
希望对任何人都有用。
你得到的压缩效果将取决于图像内容和大小。显然,即使是同一场景的大图像也会产生更大的文件。
例如,我从我的数码相机(佳能EOS 450)中随机选择的一组照片大小从1.8MB到3.6MB不等。另一组变化更大,从1.5MB到4.6MB。
如果我理解正确,JPEG中实现压缩的关键机制之一是对图像的每个8x8像素块进行频率分析,并使用“量化矩阵”对结果幅度进行缩放,该矩阵随指定的压缩质量而变化。
高频成分的缩放通常会导致块包含许多零,这些零可以以可忽略的成本进行编码。
由此我们可以推断,在原则上,质量和最终压缩比之间不存在与图像无关的关系。可以从块中删除的频率成分数量,而不会在感知上显着改变其内容,必然取决于这些成分的强度,即块是否包含锐利的边缘、高度可变的内容、噪声等。