前端前線 2026 年 6 月 4 日

2026-06-04 — JPEG XL 的誕生:十年開源實驗重塑影像壓縮標準

primary=https://opensource.googleblog.com/2026/06/journey-to-jpeg-xl-how-open-source-experiments-shaped-the-future-of-image-coding.html primary=https://jpeg.org/jpegxl/

JPEG XL 的誕生:十年開源實驗如何重塑影像壓縮標準

Google Open Source Blog · 2026-06-04

Google 在官方開源部落格發布一篇回顧性深度技術文,追溯 JPEG XL 從 2011 年到 2019 年標準化的完整演化歷程。文章梳理了從 WebP Lossless、Butteraugli、Guetzli、Brunsli,到 PIK 與 FUIF 合流,揭示了現代影像格式如何從多個方向同步突破才走到今天這個形狀。

背景

JPEG XL 並非單一設計衝刺的產物,而是多個平行探索在邊界推進後的收斂結果。Google 從 2011 年起在影像壓縮上同時進行三條線的研究:感知品質建模、熵編碼架構改良,以及 JPEG 相容再壓縮。每條線單獨無法完整取代 JPEG,但整合後形成了一個能夠服務從 HDR 攝影到醫療影像的統一格式。

核心技術堆疊

Butteraugli 是第一個關鍵貢獻,一種以人眼感知為基準的影像差異度量(2016 年開源)。傳統 PSNR 以均方誤差衡量像素差異,但人眼對對比度敏感區域與均勻色塊的容忍度截然不同。Butteraugli 透過對視覺系統的心理物理建模,輸出一張「錯誤熱圖」,用於引導編碼器在視覺重要區域分配更多位元。與 Butteraugli 共同誕生的 XYB 色彩空間,則是對應的編碼色彩模型,針對人眼感知的非線性亮度響應與色差視錯覺進行補償。

Guetzli(2017)是 Butteraugli 的第一個大規模應用:一個針對現有 JPEG 位元流的感知最佳化再編碼器,在不改變解碼端的前提下,透過窮舉搜尋配合 Butteraugli 評分,將相同品質下的 JPEG 檔案縮小 20–30%。代價是極高的編碼時間(CPU 秒級),使其適合離線批次處理而非即時編碼。

Brunsli 則另闢蹊徑:定義一個對現有 JPEG 資料的無損再容器格式,透過更緊湊的二進位編碼減少 JPEG 的結構性冗餘,平均節省 22% 空間,且完全無損。Brunsli 的關鍵設計是將 JPEG 的 DCT 係數、量化表、Huffman 碼表分開用更高效的熵編碼器重新封裝,解碼後可精確還原原始 JPEG 位元流。

PIK + FUIF:JPEG XL 的最終合流

2017 年,Google 啟動 PIK(Perceptual Image Kompressor)專案,將 Brunsli 的快速解碼位元流架構與 Guetzli 的感知優化結合,目標是設計一個能超越 JPEG 的新格式。同年,Cloudinary 工程師 Jon Sneyers 獨立開發了 FUIF(Free Universal Image Format),採用了完全不同的方向:極度通用的上下文建模樹(context model tree),可針對不同圖像特性自適應選擇熵編碼策略。

2018–2019 年,JPEG 委員會主導了 PIK 與 FUIF 的合流談判。最終的融合策略是:採用 PIK 的高速分佈選擇演算法作為快速路徑,以 FUIF 的精細上下文樹作為高壓縮率模式,兩者透過一個共同的 ANS(Asymmetric Numeral Systems)熵編碼器統一輸出。ANS 取代了 JPEG 傳統的 Huffman 編碼,實現了比霍夫曼更接近香農熵下限的壓縮率,同時支援並行解碼。

影響範圍

截至 2026 年,JPEG XL 的生態支援已相當廣泛:

  • 作業系統原生支援:Apple iOS/macOS、Ubuntu 24.04+、Windows 11
  • 專業標準採用:DNG 1.7(Adobe RAW)、DICOM 醫療影像、PDF 2.0、EPUB 3.3
  • 主流瀏覽器:Chrome 91+、Firefox 128+、Safari 17+ 均已預設啟用
  • 無損 JPEG 轉碼:現有 JPEG 資料庫可用 cjxl --lossless_jpeg 無損轉換,平均再縮小 20%

原始來源:Google Open Source BlogJPEG XL 官方頁面


End of article
0
Would love your thoughts, please comment.x
()
x