哪个更慢,jpeg或png?

时间:2012-01-27 00:07:47

标签: c++ c libjpeg libpng

是不是在想,如果这两种图像的解压缩过程存在显着差异,那就是较慢,JPEG或PNG?

2 个答案:

答案 0 :(得分:2)

这里有太多因素在起作用。考虑两种格式。 PNG图像如果压缩使用zlib进行压缩,这是一种无损压缩。因此,您可以根据zlib的减压率来衡量PNG的减压性能。 PNG执行必须进行压缩(不执行zlib压缩)。

JPEG是一个完全不同的野兽。有几十种不同的JPEG编码,更不用说JPEG-Lossless了。有JPEG算术编码(以前获得专利)和更常见的JPEG霍夫曼编码,以及每种编码的几十种组合。 JPEG图像中有太多变量可供使用。

不幸的是,这个问题没有一个好的答案。没有足够的信息来给出明确的答案。即使有,也会特定于应用程序,或者更糟糕的是,与您的应用程序特定的交互

答案 1 :(得分:0)

这里说“这取决于”的许多评论者都错了。在报告的每项研究中,PNG减压总是慢于JPG减压。此外,我个人已经在几个不同的项目中验证了这一点。

尽管格雷格断言相反,但没有未压缩的PNG这样的东西。所有PNG都被压缩,所有PNG的压缩都是无损的。与类似的JPG相比,解压缩所有PNG的速度很慢。

所有JPG也被压缩,但JPG压缩总是有损的。特别是,100质量的JPEG不是未压缩的。尽管Ed S.的说法恰恰相反,但质量100仍然具有有损压缩性。请停止提出他的意见。