JPEG XL et le front de Pareto
- Sortie de libjxl version 0.10 : une nouvelle version de libjxl, l’implémentation de référence de JPEG XL, est disponible. La principale amélioration de cette version est l’implémentation complète de l’API de « streaming encoding ».
- API de streaming encoding : elle permet d’encoder de grandes images par « morceaux ». Au lieu de traiter l’image entière d’un coup, elle permet un traitement plus économe en mémoire.
Sans perte : fortes améliorations de l’utilisation mémoire et de la vitesse
- Améliorations par rapport à libjxl version 0.9 : dans la version précédente, l’encodage JPEG XL sans perte consommait beaucoup de mémoire et prenait beaucoup de temps. Cela pouvait poser de sérieux problèmes lors de l’encodage de grandes images.
- Exemple des images nocturnes de la Terre de la NASA : pour compresser une image de 13500×6750, libjxl 0.9 nécessitait environ 8 Go de RAM et plus de 2 minutes. Après passage à libjxl 0.10, la compression est possible avec 0,7 Go de RAM en seulement 30 secondes.
- Résultats selon différents niveaux d’effort : le tableau fournit une comparaison de l’utilisation mémoire, du temps et de la taille compressée selon différents réglages d’effort (e1~e9). Plus le niveau d’effort augmente, plus la compression s’améliore, mais de manière non linéaire.
Le front de Pareto
- Comparaison des technologies de compression : la taille des fichiers compressés n’est pas le seul critère important ; la vitesse d’encodage compte aussi. Il faut donc considérer deux dimensions : la densité de compression et la vitesse d’encodage.
- Optimalité de Pareto : cas où aucune autre méthode ne peut atteindre la même densité de compression en moins de temps. Une méthode Pareto-optimale fournit le plus petit fichier pour un budget temps donné.
- Visualisation du front de Pareto : visualisation via un graphique montrant la vitesse d’encodage et la densité de compression. La comparaison de la vitesse moyenne et de la densité de compression est effectuée à partir de différents ensembles d’images.
Images non photographiques
- Importance du choix des images de test : lorsque la majorité des images sont des photos, le bruit naturel les rend plus difficiles à compresser.
- Dans le cas des images de type bande dessinée : les images non photographiques se compressent bien mieux que les photos. Les images de type bande dessinée peuvent être compressées à environ 4 bpp.
- Améliorations de libjxl : la nouvelle version de libjxl est bien plus rapide que la précédente et offre aussi un meilleur taux de compression.
À propos de la compression avec perte
- Benchmark de compression avec perte : seules la taille compressée et la vitesse importent. La qualité d’image doit être considérée comme une troisième dimension.
- Performances des codecs et encodeurs d’images avec perte : ils peuvent se comporter différemment selon les niveaux de qualité. Un encodeur performant pour des encodages de haute qualité ne l’est pas nécessairement pour des encodages de faible qualité.
Front de Pareto avec perte
- Encodeurs testés : dernières versions de divers encodeurs, dont libjpeg-turbo, sjpeg, mozjpeg, jpegli, libavif / libaom, libjxl, libwebp et libheif.
- Qualité intermédiaire : résultats pour des réglages correspondant à un score SSIMULACRA2 de 60. C’est le cas le plus pertinent lorsque la réduction du poids des pages est plus importante que la fidélité de l’image.
- Qualité intermédiaire élevée et haute qualité : résultats pour des réglages correspondant à des scores SSIMULACRA2 de 70 et 85. Aux niveaux de haute qualité, JPEG XL occupe généralement l’essentiel du front de Pareto.
Conclusion
- Améliorations de libjxl version 0.10 : la consommation mémoire a fortement baissé, et la vitesse de l’encodage sans perte multithread s’est améliorée en particulier.
- Positionnement confirmé de JPEG XL : il est confirmé comme Pareto-optimal sur différents réglages de vitesse, de la haute qualité jusqu’à une qualité visuellement sans perte.
- L’attrait durable de JPEG : le nouvel encodeur jpegli apporte des améliorations en vitesse et en compression. Il peut encore être le meilleur choix lorsqu’un encodage très rapide est nécessaire.
- Contribution de Cloudinary : participation active à l’amélioration de l’expérience utilisateur grâce à l’application des technologies et des analyses les plus récentes dans le domaine de la compression d’images.
Avis de GN⁺
- La sortie de libjxl 0.10 marque une avancée importante dans les technologies de compression d’images. En particulier, les fortes améliorations de l’utilisation mémoire et de la vitesse d’encodage lors du traitement de grandes images devraient apporter de réels bénéfices aux utilisateurs.
- Le fait de souligner que JPEG XL est Pareto-optimal à différents niveaux de qualité et de vitesse est utile, car cela aide les utilisateurs à trouver le meilleur équilibre entre qualité d’image et taille de fichier.
- D’un point de vue critique, l’adoption de nouvelles technologies comme libjxl peut poser des problèmes de compatibilité avec l’infrastructure existante. Une adoption progressive tenant compte de l’intégration avec les systèmes en place est donc nécessaire.
- Lors du choix d’une technologie de compression d’images, il faut prendre en compte plusieurs facteurs, comme la vitesse d’encodage et de décodage, la taille des fichiers, ainsi que les plateformes et appareils pris en charge. JPEG XL est une option attrayante pour la compression d’images de haute qualité, mais il n’est pas encore largement pris en charge par tous les utilisateurs et systèmes.
- Les gains liés à l’adoption de cette technologie incluent la réduction de l’usage mémoire, l’amélioration de la vitesse d’encodage et la baisse de la taille des fichiers ; les coûts potentiels peuvent être les problèmes de compatibilité avec les systèmes existants et la courbe d’apprentissage liée à cette nouvelle technologie.
2 commentaires
L’encodeur jpegli prolonge encore une fois la durée de vie du jpg après mozjpeg...
Créé par le camp JXL, mais ironiquement, il pourrait aussi freiner la diffusion de JXL...
Avis Hacker News
Les performances de compression sans perte du format WebP sont excellentes
Évaluation de la capacité de JPEG à préserver les détails avec des réglages de faible qualité
Difficulté des utilisateurs à trouver des informations détaillées sur le format JPEG XL
Interrogations sur un article centré sur la vitesse d’encodage
Évaluation de la qualité et des capacités de compression de JPEG XL
Nouvelle bibliothèque de traitement parallèle développée grâce au projet JPEG XL
Réaction à l’inclusion du format QOI
La nouvelle version de libjxl réduit fortement la consommation mémoire
Avantages de la recompression d’anciens fichiers JPEG avec JPEG XL
Mention de gains supplémentaires possibles avec l’AVIF sans perte