JPEG XL
JPEG XL est un format d’image matricielle libre de droits qui permet la compression d’images fixes avec ou sans pertes. JPEG XL est conçu pour être plus efficace que les formats existants et vise à les remplacer pour tous les usages courants[1],[2].
Extension |
.jxl |
---|---|
Type MIME |
image/jxl |
Signature |
FF 0A or 00 00 00 0C 4A 58 4C 20 0D 0A 87 0A |
Développé par |
Cloudinary |
Version initiale |
, , |
Type de format | |
Basé sur | |
Origine de | PIK FLIF-FUIF |
Norme |
ISO/CEI 18181 |
Site web | jpeg.org/jpegxl (site officiel) sneyers.info/jxl (page personnelle de l'auteur) |
Nom
modifierJPEG est l’acronyme de Joint Photographic Experts Group. Il s’agit d’un comité d’experts qui édite des normes de compression pour l’image fixe.
La lettre X est utilisée pour le nom de multiples standards JPEG publiés après l’an 2000 : JPEG XT (en), JPEG XR, JPEG XS (en).
La lettre L signifie long terme puisque les auteurs comptent remplacer le format JPEG historique sur une durée équivalente au précédent[3].
Histoire
modifierLe groupe de travail JTC1/SC29/WG1 (JPEG) a lancé une Demande de Propositions en 2017 pour JPEG XL — le prochain standard d’encodage d’images fixes[4].
Le format de fichier (flux de données binaire) a été gelé le , ce qui garantit que le format sera décodable par les futures mises à jour logicielles[5].
Caractéristiques
modifierLes caractéristiques principales de JPEG XL sont[6],[7],[8] :
- Amélioration des fonctionnalités et de l’efficacité par rapport aux formats traditionnels (tels que JPEG, GIF et PNG)
- Décodage progressif (en résolution et en précision)
- Réencodage de fichiers JPEG sans pertes et avec une taille de fichier réduite d’environ 20 %
- Encodage sans pertes et encodage du canal alpha sans pertes
- Adapté à la fois aux photographies et aux images synthétiques
- Qualité d’image progressive pour une large plage de débits
- Encodeur de référence optimisé pour la qualité perceptuelle
- Large gamme de couleurs et gamme dynamique étendue (HDR)
- Animations
- Encodage et décodage basse énergie qui ne demande pas de puce spécialisée
- Format sans royalties et avec une implémentation de référence en open source[9]
Détails techniques
modifierJPEG XL reprend les idées du format PIK de Google et du format FUIF de Cloudinary.
Le format a une panoplie de modes d’encodage. Du côté compatibilité, un mode fait le transcodage du format historique JPEG en une forme plus compacte pour le stockage. Du côté format d’image moderne, il y a un mode basé sur VarDCT (avec une modélisation séparée des contours et des formes répétitives comme le texte) et un mode presque sans pertes/réactif qui utilise des ondelettes de Haar modifiées. La transformée en cosinus discrète (DCT) utilise un espace de couleurs XYB inspiré par la réponse LMS de l’œil[10].
La prédiction est sous-tendue par un décorrélateur pixel par pixel, incluant un ensemble paramétré de prédicteurs pondéré et auto-correctif. La modélisation du contexte fait appel à des modèles statiques spécialisés et à de puissants modèles méta-adaptatifs qui tiennent compte de la déviation locale, avec une structure arborescente signalée et la sélection du prédicteur en fonction du contexte. Le codage d’entropie utilise LZ77 et peut faire appel aussi bien aux systèmes de numération asymétriques (ANS, pour l’encodage faible complexité) qu’au codage de Huffman (pour limiter le surcoût avec les flux courts).
Par défaut, elle produit une bonne compression avec très peu d’artefacts visuels[11].
Logiciel
modifierSupport existant
modifier- JPEG XL Reference Software – implémentation de référence
- Windows Bin Builds – convertisseurs venant de l’implémentation de référence, compilés pour Windows (contient aussi beaucoup d’autres programmes)
- ImageMagick – utilitaire et librairie pour le traitement des images
- GIMP[3] - éditeur graphique
- XnView MP – logiciel de visualisation, de retouche et de conversion d’images
- Irfanview – logiciel de visualisation, de conversion et de traitement d’images (dès version 4.59, plugin JPEG-XL)
- MConverter – convertisseur multimédia en ligne
- JPEG XL WIC – support de l’extension JXL sous Windows avec WIC, par exemple pour visualiser dans Photo Viewer, File Explorer, etc.
- qt-jpegxl-image-plugin – support pour Qt de l’extension JXL sous Linux et sous Windows
- JXLook – visualiseur et plugin pour macOS
- FFmpeg – bibliothèque de logiciels de traitement de flux audio et vidéo
- Pale Moon[12] – navigateur web
Support en cours de développement
modifierStatut de la normalisation
modifierNom commun | Partie | Première date de sortie publique (première édition) | Numéro ISO / CEI | Titre officiel |
---|---|---|---|---|
JPEG XL | Partie 1 | 30 mars 2021 | ISO / CEI FDIS 18181-1 | JPEG XL Image Coding System — Part 1: Core coding system |
Partie 2 | 13 octobre 2021 | ISO / CEI DIS 18181-2 | JPEG XL Image Coding System — Part 2: File format | |
Partie 3 | 3 octobre 2022 | ISO / CEI WD 18181-3 | JPEG XL Image Coding System — Part 3: Conformance testing | |
Partie 4 | 5 août 2022 | CD ISO / CEI 18181-4 | JPEG XL Image Coding System — Part 4: Reference software |
Notes et références
modifier- (en) « Can JPEG XL Become the Next Free and Open Image Format? », sur slashdot.org (consulté le ).
- (en) Jon Sneyers, « Time for Next-Gen Codecs to Dethrone JPEG », sur Cloudinary Blog, .
- (en) « GIMP · GitLab », sur GitLab (consulté le ).
- « JPEG - Next-Generation Image Compression (JPEG XL) Final Draft Call for Proposals », Jpeg.org, (consulté le ).
- (en) « v0.2 JPEG XL Reference Software », GitLab.
- « JPEG XL reaches Committee Draft » [archive du ] [html], JPEG Org., (consulté le ) : « The current contributors have committed to releasing it publicly under a royalty-free and open source license. ».
- « JPEG XL White Paper », JPEG Org., (consulté le ).
- (en) Jon Sneyers, « The Case for JPEG XL », sur Cloudinary Blog, .
- (en) « jpeg / JPEG XL Reference Software », GitLab.
- Alakuijala, van Asseldonk, Boukortt et Szabadka, « JPEG XL next-generation image compression architecture and coding tools », Applications of Digital Image Processing XLII, , p. 20 (ISBN 9781510629677, DOI 10.1117/12.2529237)
- Sneyers, « How JPEG XL Compares to Other Image Codecs », Cloudinary.
- (en) « Pale Moon: Release notes », sur palemoon.org, .
- (en) « 1539075 - (jpeg-xl) implement support for jpeg xl (image/jxl) », sur mozilla.org (consulté le ).
- (en) « 1178058 - An open-source project to help move the web forward. », sur chromium.org (consulté le ).
- « 1178058 - chromium - An open-source project to help move the web forward. - Monorail », sur bugs.chromium.org (consulté le ).
- Chromium JPEG XL support
- (en) « 208235 - Support JPEG XL images », sur webkit.org (consulté le ).