对比研究

WebP、JPEG 和 JPEG 2000 的比较研究,2010 年 9 月

注意:我们使用第一版 WebP 进行了这项初始研究 它使用 libvpx 库。此外,来源 是我们从网络中抓取的 JPEG 图片。根据以下开发者的反馈 我们现在已采取了 新建研究libwebp 的 0.1.2 版) 从无损图片 (PNG) 作为源开始。这项新研究取代了 。

WebP 团队对三种图像压缩方法进行了比较研究, 随机抽取一百多万张图片。这项研究旨在衡量 以及这些方法实现的压缩效果,并分析 图片大小和压缩之间的效果差异

WebP、JPEG 2000 和 Re-JPEG 这三种压缩方法应用于 数据集中包含的 900,000 张 JPEG 图片。JPEG 图片已重新压缩 采用 Re-JPEG,使每个图片都尽可能接近目标峰值 信噪比 (PSNR) 值。该团队对图片进行了分析 压缩后的文件

除了大规模的研究外,该团队还手动检查了 100 个随机 结果发现,在大多数情况下,WebP 的视觉质量是可接受的。

总结

WebP 可实现比 JPEG 或 JPEG 2000 更高的压缩率。收益 对于 网上最常见的一些。

数据集

研究中使用的数据集是随机选择的 100 万张图片组成的集合 从网络抓取的图片库中采样。下表 显示了数据集中不同类型图片的分布情况。

类型 计数
JPEG 约 90 万
PNG 约 4.7 万
GIF 约 4.7 万
其他 约 6,000

实验设计

这些实验分两个阶段运行:

  1. 该团队针对这些图像运行了 WebP,目标 PSNR 为 42。他们调整了 质量参数 (QP),直到达到相应的结果。 接近于给定图像能够达到的 42。实际 因此,每张图像实现的 PSNR 不一定正好为 42。

  2. 该团队使用 WebP 压缩图片的 PSNR 值作为目标 JPEG 2000 和 Re-JPEG 图片的 PSNR。他们还表演了 搜索 JPEG 2000 和 JPEG 图片的质量参数, 尽可能接近目标 PSNR。

实际压缩结果是通过以下方式测量的百分数: 公式:

compression_percentage = 100 * (original_image.length - compressed_image.length) / original_image.length

结果

测试得出了以下阴性和非阴性结果 压缩增益:

非负压缩增益

如果一种方法导致其增大图像大小,则团队没有对该方法进行惩罚 压缩后的数据。也就是说,compression_percentage 视为 0 当 compress_image.length 大于 original_image.length 时。

负压缩增益

该团队允许负压缩百分比结果, 对各种压缩机的原始性能。

以下是各广告系列达到的平均压缩百分比 三个方法中的一种。

类型 获得的平均 PSNR 平均压缩百分比
(非负压缩增益)
平均压缩百分比
(负压缩增益)
WebP 39.38 41.30 39.80
JPEG 2000 39.49 27.67 9.71
Re-JPEG 39.36 22.37 14.62

当允许负压缩增益时,JPEG 的平均性能 2000 低于 JPEG。这可能是由于高频伪影造成的 存在的一些问题这些工件有助于 不理想的压缩情况。

实验中用于转换为 JPEG 2000 的 Kakadu 实现 未能转换大约 24 万张图片。

JPEG 2000 的压缩百分比低于 Re-JPEG,主要是因为 JPEG 2000 的结果是对许多图像进行负压缩。为此 因此,JPEG 图像获得的整体压缩分数较低。

下图提供了三种方法的分布图:

图 1:图片大小的人口分布

该图表显示大多数图片都很小。调用 大小超过 500K 的图片通常小于 100。

图 2:WebP、JPEG 和 JPEG 2000 图片的压缩百分比

此图表明,使用 WebP 压缩的图片正文 比 re-jpeg 和 jpeg 2000 的压缩率更高。此外,压缩的图片 WebP 的正向压缩效果要高于其他方法。

图 3:图像大小和压缩百分比的比较

从这张图表可以看出,WebP 的压缩效果优于其他格式, 尤其是对于较小的图片