WebP

WebP（發音：weppy）是一種同時提供了有損壓縮與無損壓縮（可逆壓縮）的圖片檔案格式。

WebP最初在2010年9月釋出，其支持库于2018年4月发布1.0版本。截至2021年5月，已有94%的浏览器支持此格式。

WebP的设计目標是在減少檔案大小的同时，達到和JPEG、PNG、GIF格式相同的圖片品質，并希望借此能夠減少圖片檔在網路上的傳送時間。根據Google較早的測試，WebP的無損壓縮比網路上找到的PNG檔少了45％的檔案大小，即使這些PNG檔在使用pngcrush和PNGOUT處理過，WebP還是可以減少28％的檔案大小。

WebP支援的像素最大數量是16383x16383。有損壓縮的WebP僅支援8-bit的YUV 4:2:0格式。而無損壓縮（可逆壓縮）的WebP支援VP8L編碼與8-bit之RGBA色彩空間。而無論是有損或無損壓縮皆支援Alpha透明通道、ICC色彩配置、XMP詮釋資料。

WebP有靜態與動態兩種模式。動態WebP（Animated WebP）支援有損與無損壓縮、ICC色彩配置、XMP詮釋資料、Alpha透明通道。

历史 
Google于2010年9月30日首次公布WebP格式，它衍生自影像編碼格式VP8，被認為是WebM多媒體格式的姊妹項目，是Google在購買On2 Technologies後获得技术發展而来的，该格式及其衍生的支持库以BSD授權條款釋出。

2011年10月3日，Google给WebP添加了扩展格式以让其支持ICC色彩特性文件、可扩展后设资料平台和EXIF。

2011年11月8日，Google開始讓WebP支援無損壓縮和透明色（alpha通道）的功能，而在2012年8月16日的參考實做libwebp 0.2.0中正式支援。

截至2022年1月，已有94%的浏览器支持此格式。

技術

WebP的有损压缩算法是基于VP8视频格式的，并以RIFF作为容器格式。 因此，它是一个具有八位色彩深度和以1:2的比例进行色度子采样的亮度-色度模型（YCbCr 4:2:0）的基于块的转换方案。 不含内容的情况下，RIFF容器要求只需20字节的开销，依然能保存额外的元数据(metadata)。 WebP图像的边长限制为16383像素。

WebP是基于块预测的。每个块都是根据它上面三个块的值和其左边一个块的值进行预测的（块解码以光栅扫描顺序完成：从左到右，从上到下）。块预测有四种基本模式：水平、垂直、DC（单色）和TrueMotion。利用离散余弦变换或沃尔什-阿达玛转换将预测错误的数据和未预测块压缩在4×4像素子块中。这两种转换都是使用完成的，以避免舍入误差。输出使用熵编码进行压缩。 WebP也明确支持并行解码。

参考实现包含一个Linux命令行程序的转换器，以及用于解码的库，与WebM相同。开源社区很快设法将转换器移植到其他平台，例如Windows。

WebP的无损压缩采用先进的技术，例如用于不同颜色通道的专用熵代码，利用反向参考距离的2D位置和最近使用的颜色的颜色缓存。这补充了字典编码、霍夫曼编码和颜色索引变换等基本技术。

支援

浏览器 
Chrome和所有基于Chromium的浏览器（如Opera、Brave等）均原生支援靜態與動態的WebP格式，且自12版開始支援WebP的漸進式解碼功能。

从2020年1月后发布的基于Chromium的Edge版本原生支持WebP格式。在此之前基于EdgeHTML的Edge版本则在除安全应用保护模式外，通过默认安装的平台扩展实现支持

Firefox和所有延伸自Firefox的浏览器（如Pale Moon和Waterfox等）瀏覽器亦在65.0版本起支援WebP圖像。

2020年9月，在iOS 14和macOS Big Sur的Safari 14中加入了WebP支持。

在Linux中使用的GNOME Web和KDE圖片瀏覽器Gwenview也支援WebP。

此外所有可以原生播放WebM影像的瀏覽器，也可以透過javascript來顯示WebP影像。不过在Internet Explorer 6和以上版本中是通过Flash实现的。

图像软件 
圖像軟體當中，Picasa（從3.9版本起）、、Pixelmator、ImageMagick、XnView、IrfanView、GDAL、Aseprite和GIMP（2.10起）皆原生支援WebP格式。

系统 
Android 4.0 支持解码和编码 WebP 图像（通过位图和 Skia 引擎）。

其他程序 
FFmpeg 在链接 VP8/VP9 参考代码库 libvpx 的情况下可以从 WebM 视频提取 VP8 关键帧，并有脚本追加 WebP RIFF 标头，并对怪异的帧长度追加 NUL 填充字节。同时 FFmpeg 也支持直接使用 libwebp。

Gmail 和 Google 相册都支持 WebP。

Sumatra PDF 从2.4版开始支持 WebP。

Telegram 将 WebP 用于他们的表情符號，声称它们的显示速度比消息应用程序中通常使用的其他格式快5倍。

Signal 在非动态图片贴纸中使用 WebP 格式。

LibreOffice 从7.4版本开始支持导入及导出 WebP 图像，采用同样技术的 Collabora Online 也获得这一格式的支持。

Godot 引擎 4.0 版支持导入及导出 WebP 图像，并使用 WebP 作为编排已导入的压缩纹饰图像的内部格式。

評論
x264的開發者之一：Jason Garrett-Glaser，在2010年時針對WebP做出了幾點評論，根據和其他編碼器（JPEG、x264、Theora）測試的結果，他認為WebP的影像品質是最差的，多數是在模糊度方面。他也評論Google應該等到WebP可以超越JPEG之後再發佈。不過在2011年4月20日，他提到新的WebP編碼器表現的非常好，超越JPEG指日可待。

WebP 2 
WebP 2是Google自2021年6月起开发的新一代WebP。它的具体实现为libwebp2。这种新格式的主要目标是达到与AV1类似的压缩比，并同时保有更快的编码和解码速度。

相關條目
 MNG
 APNG
 WebM
 VP8
 JPEG 2000
 JPEG XR
 BPG

參考文獻

外部連結

 

有损压缩算法
图形文件格式
影像科技
Google
开放源代码