下一代圖像格式

WebP 詳解

由 Google 開發的現代圖像格式。旨在以更小的體積提供無與倫比的畫質,加速 Web 瀏覽體驗。

支援透明度
支援動畫

幀內預測引擎

px0
px1
px2
px3
px4
px5
px6
px7
px8
px9
px10
px11
px12
px13
px14
px15
目標塊: BLOCK_0
預測源:
殘差數據: 計算中...

VP8 幀內預測模擬演示

極致壓縮,
保留細節。

WebP 的壓縮效率源於其基於塊的預測編碼。它使用圖像中已經解碼的部分來構建新像素的預測值。

這意味著文件體積更小,加載速度更快,頻寬消耗更低。

JPEG (原始) 100 KB
WebP (有損) 65 KB (-35%)
Google WebP

* 基於 SSIM 質量指標測算,同等畫質下 WebP 有損壓縮比 JPEG 小 25-34%。

壓縮原理的核心邏輯

function Predict(NeighborPixels) {

// 利用相鄰像素預測當前像素

Predicted_P = Average(Left, Top, TopLeft);

// 只存儲預測值與實際值的差值 (Residual)

return Actual_P - Predicted_P;

}

WebP 不會直接存儲每個像素的顏色(像 BMP 那樣),而是根據周圍已知的像素去“猜”當前像素的顏色。它只需要存儲“猜錯”的那一小部分數據(殘差)。這使得文件體積大幅減小。

全能選手的特性

不僅僅是 JPEG 的替代品,更是 PNG 和 GIF 的進化版。

有損與無損

WebP 是一種獨特的格式,同時支援有損壓縮(VP8 視頻編碼技術)和無損壓縮(WebP Lossless)。

Alpha 透明度

即使在有損壓縮模式下,WebP 也支援 8 位 Alpha 通道。這是 JPEG 無法做到的。

動畫支援

WebP 可以替代 GIF。它支援有損和無損動畫,體積通常比 GIF 小 64% 以上。

底層技術架構

預測編碼

WebP 有損壓縮主要基於 VP8 視頻編解碼器的關鍵幀編碼。它將圖像分割成 16x16 的宏塊,並在每個塊內部進一步分割成 4x4 的子塊進行預測。

熵編碼

預測後的殘差數據和運動矢量會經過基於上下文的算術編碼(Arithmetic Coding),這比 JPEG 使用的哈夫曼編碼(Huffman Coding)效率更高。

comparison.log
格式 位元/像素
JPEG (Q=80) 2.65
WebP (Q=80) 1.82
> 檢測到效率提升: ~31%