JPEG XL

JPEG XL是一種免版稅的位圖文件格式，支持有損和無損壓縮。它旨在超越現有的位圖格式，併成為它們的通用替代。JPEG XL格式規範的主要作者有Jyrki Alakuijala、Jon Sneyers和Luca Versari。

**名稱**
 JPEG指設計了JPEG格式的聯合影像專家小組（Joint Photographic Experts Group）。- X指2000年以來的多個JPEG標準的名稱：JPEG XT、JPEG XR、JPEG XS。- L代表“長期”，創建這種格式是為替換舊的JPEG文件格式，並使用足夠長的時間。

**歷史**
2017年，JTC1 / SC29 / WG1 (JPEG) 發起下一代圖像編碼標準（JPEG XL）提案徵集。所有提案在2018年9月前提交，隨後2019年7月形成委員會草案。草案是由谷歌提交的PIK和Cloudinary提交的基於FLIF的FUIF結合而來。
2020年12月25日，伴隨著參考軟件實現libjxl的0.2版本發佈，JPEG XL的比特流格式被最終敲定，這意味著未來的版本將保證對此版本的解碼兼容性。此後文件格式與核心編碼系統分別於2021年10月13日和2022年3月30日正式標準化。

**描述**
JPEG XL的提案徵集提及了下一代圖像壓縮標準對大幅提升壓縮效率（60%）的需求。新標準應該有優於HEIC、AVIF、WebP和JPEG 2000這些靜態圖像編碼的表現，同時提供對傳統JPEG格式的無損再壓縮選項。
JPEG XL最高能夠提供對甚高分辨率圖像（每邊1-{zh-cn:太;zh-tw:兆;}-像素）、4099個32位深通道（包含alpha通道）的靜態或動態圖像及其嵌入預覽的有損壓縮和無損壓縮。它支持針對網絡傳輸的漸進式解碼和最小化信頭開銷特性，以及針對圖像編輯和數碼印刷的圖層、CMYK和Spot color支持。它還針對無縫處理Rec. 2100等廣色域的Perceptual quantizer、Hybrid log–gamma和轉換曲線進行了特別設計。

**特點**
主要特點有：- 更多功能：與傳統圖像格式（例如JPEG、GIF和PNG）相比，有著更佳的效率與更豐富的功能；- 更大尺度：長寬可超過十億（）個像素；- 更多通道：最多4099個通道，包括主通道（單通道的灰度、三通道的RGB或四通道的CMYK）、可選的多達4096個可用於透明度、深度、熱成像等的額外通道； - 多幀支持：支持用於動畫的非零時長幀和類似圖像軟件中圖層的零時長幀，且幀的大小不受圖像畫布大小影響，並支持多種混合模式；- 獨立圖塊：允許圖像分多圖塊保存，以支持分塊解碼大幅圖像；- 漸進式解碼：專為支持不同顯示分辨率的響應式加載；- 可逆JPEG轉碼：可實現約20%的數據流壓縮；- 無損編碼：包括無損alpha編碼；- 類型感知：可根據圖像內容使用分別為攝影圖像和合成圖像優化的兩種模式；- 低碼率優化：在低比特率下相較舊格式質量更可接受；- 感知優化：參考編碼器默認使用感知色彩空間、自適應量化和保守的默認設置；- 色域支持：內置廣色域、轉移曲線和HDR支持；- 動畫支持：但編碼真實視頻時仍建議使用常規的視頻編碼；- 高效編解碼：無需專用硬件，JPEG XL的編解碼速度即可與使用libjpeg-turbo的JPEG相當，比使用x265的HEIC速度快一個數量級，並可以並行。- 開源免費：具有使用三條款版BSD許可證的開源參考實現的免版稅格式。

**技術細節**
JPEG XL 編解碼器架構圖
JPEG XL基於Google的PIK格式和Cloudinary的FUIF格式（基於FLIF）。
JPEG XL主要有兩種編碼模式：- VarDCT（variable-blocksize DCT，可變分塊大小離散餘弦變換）模式基於與JPEG相同的離散餘弦變換算法，但分塊不再限定為8×8，而是允許不同大小（2×2到256×256）、非正方形塊（如16×8、8×32、32×64）乃至其他變換函數（4種“邊角”變種AFV，以及非離散餘弦變換的Hornuss變換）。此模式限於三通道色彩，通常使用LMS color space衍生的XYB色彩空間（但為支持重壓縮傳統JPEG仍支持YCbCr），基於PIK格式的有損模式。- Modular（模塊化）模式是響應式的，用於高效的無損內容壓縮以及近無損壓縮。它可被VarDCT在內部用於存儲二維數據，即除了交流（高頻）離散餘弦變換系數之外的所有數據，包括直流圖像（1:8抽樣圖像）、自適應量化權值、濾鏡強度。所有附加通道（如透明度、深度、熱成像和spot color等）總是使用此模式存儲。此模式基於FUIF，並結合了無損PIK、無損WebP和標準化過程中的其他合作成果。藉助哈爾變換的“擠壓”（squeeze），此模式也支持有損壓縮，並實現漸進式特性：圖像的質量會隨著數據加載過程逐漸改善。
VarDCT模式的圖像可藉由模塊化“擠壓”的獨立“直流幀”存儲的直流係數實現漸進式加載，支持1:16、1:32等抽樣比例。“擠壓”變換也可以用於將alpha通道和VarDCT模式的色彩通道一同漸進式編碼，使兩種模式協同工作。
JPEG XL默認使用視覺無損下仍有較好壓縮效果的設置。
這些模式可由單獨的圖像特徵模型協助：- Centripetal Catmull–Rom spline用於編碼頭髮等（參考編碼器暫未實現）；- 重複的“補丁”，如文字、點和“精靈”；- 噪聲合成：由於噪聲難以壓縮，將其剝離然後由解碼器重新生成可能更佳。這類似於AV1等現代視頻編碼的Film grain合成，儘管JPEG XL噪聲合成的目的不是模仿模擬攝影膠片的顆粒，而是在像素層級建模數字相機在高感光度設置下的Photon noise。
JPEG XL編碼可以無損地轉碼JPEG最常用的子類型的文件，實現方式是將JPEG的DCT系屬直接拷貝到8×8的VarDCT塊，並藉助JPEG XL更好的熵壓縮算法實現更小的文件大小。此過程是可逆的，可以從轉換結果中逐位重建原始JPEG圖像，儘管有一些限制條件。
預測是基於逐像素、無輔助信息的去相關器運作的，包括參數化的自校正加權預測器集合。Context model包括特化的靜態模型和強大的元自適應模型，它們考慮局部錯誤，具有信號樹結構和分上下文的預測器選擇。熵編碼基於LZ77，可使用Asymmetric numeral systems或前綴碼（適用於低複雜度的編碼器，或減少短數據流的開銷）。date=April 2021
動畫（多幀）圖像不執行高級幀間預測，儘管有一些基本的幀間編碼工具可用：- 幀可以小於畫布大小，只更新畫布的一部分；- 除了替換前序幀外，還支持數種混合模式，如相加或相乘；- 在後面的幀中使用“補丁”編碼工具最多可以“記住”並引用四幀。

**軟件**
JPEG XL受到了許多科技公司與組織的公開支持，如Facebook、Adobe、Intel與VESA、衛報、Flickr和SmugMug、Shopify、Krita基金會和Serif Europe。

**編解碼器實現**
 JPEG XL參考軟件（libjxl）
** 三條款版BSD許可證（曾為Apache許可證2.0）
** 包含組件
*** 編解碼庫libjxl
*** 編碼器cjxl
*** 解碼器djxl
*** 快速無損編碼器fjxl
*** 圖像編碼質量基準測試工具benchmark_xl
*** GIMP和Gtk pixbuf插件file-jxl- J40：獨立、自包含的JPEG XL解碼器 date=20221012072315 
** MIT許可證，無署名
** C99單頭文件庫（無依賴）
** 名字來源於羅馬數字“XL”（即40）
*libjxl-tiny：簡化的JPEG XL編碼器實現，針對無透明度的攝影圖像
** 三條款版BSD許可證- jxlatte：Java JPEG XL解碼器
** MIT許可證- pyjxl：Python JPEG XL解碼器
** MIT許可證- jpeg-xl-encode：PHP JPEG XL編碼器
** MIT許可證

**官方支持**
 網頁圖像轉換器 Squoosh date=20230119174259 - 數字相機圖像導入導出工具Adobe Camera Raw- 位圖編輯器Affinity Photo- 位圖編輯器Chasys Draw IES- 元數據編輯器ExifTool- 多媒體框架FFmpeg- 位圖編輯器GIMP- 圖像查看器、照片管理應用gThumb- 位圖處理工具包ImageMagick- 圖像查看編輯器IrfanView- Linux發行版KaOS- 位圖編輯器Krita- Qt和KDE應用- 位圖查看編輯器XnView MP- 網絡瀏覽器Pale Moon- Microsoft Windows：通過 微軟商店安裝擴展。

**非官方支持**
 Microsoft Windows：通過第三方Windows Imaging Component插件，即用於在照片查看器、文件資源管理器等中查看。- macOS：通過獨立應用程序和Quick Look插件。- GTK和GNOME圖像查看應用（Eye of GNOME、GNOME Files等）：通過GDK pixbuf插件。

**初步支持**
 Chromium：網頁瀏覽器，自91版至110版提供測試選項。- Firefox：網頁瀏覽器，處於測試中，自Firefox 90開始可以通過image.jxl.enabled標誌開啟（僅在Nightly開發版本中生效）。

**標準化狀態**

**註釋**

**參考**

**外部鏈接**
 參考實現
** 構建版本：
***  每夜構建 date=20220408071936 -  社區網站 date=20220412164000