Principes fondamentaux de la vision humaine
La rétine humaine contient deux types de cellules détectant la lumière : les bâtonnets et les cônes. Les bâtonnets détectent la luminosité (luminance) et sont bien plus nombreux que les cônes — environ 120 millions de bâtonnets contre seulement 6 millions de cônes. Les cônes détectent la couleur (chrominance) et se présentent en trois sous-types (rouge, vert, bleu), chacun répondant à une longueur d'onde différente de la lumière.
Ce ratio de 20:1 a une conséquence profonde : votre système visuel résout la luminosité avec une bien plus grande finesse spatiale qu'il ne résout la couleur. Vous pouvez détecter un contour de luminosité tranchant (texte noir sur papier blanc) jusqu'à environ 1 arcminute d'angle visuel. Mais pour un contour de couleur uniquement (texte rouge sur fond vert à luminosité égale), votre résolution baisse considérablement — vous avez besoin d'environ 4× la taille pour détecter le même niveau de détail.
Ce fait biologique est le fondement de pratiquement toute compression d'image et de vidéo avec perte. JPEG, MPEG, H.264, HEVC, AV1 — ils exploitent tous le même principe. Réduisez la résolution des couleurs tout en conservant la résolution de la luminosité intacte, et l'œil humain ne le remarque pas. Le nom technique de cette technique est le sous-échantillonnage de chrominance.
Espace de couleurs YCbCr
Votre écran informatique fonctionne dans l'espace de couleurs RGB (Rouge, Vert, Bleu), où chaque pixel reçoit trois valeurs qui définissent sa couleur en mélangeant la lumière. Mais JPEG ne compresse pas RGB directement. Avant la compression, JPEG convertit chaque pixel de RGB en YCbCr :
- Y (Luma) — la composante de luminosité. Elle porte l'information de luminance : la clarté ou l'obscurité de chaque pixel. Si vous extraiyiez seulement le canal Y, vous verriez une version en niveaux de gris parfaite de l'image.
- Cb (Chroma Bleu) — la différence de couleur bleu-jaune. Cela décrit à quel point la couleur du pixel s'écarte du gris dans la direction bleu/jaune.
- Cr (Chroma Rouge) — la différence de couleur rouge-vert. Cela décrit l'écart dans la direction rouge/vert.
Cette séparation est l'idée clé. Une fois que la luminosité et la couleur sont dans des canaux séparés, vous pouvez les traiter indépendamment. Gardez Y à pleine résolution pour les contours nets et les détails fins. Réduisez la résolution de Cb et Cr car l'œil ne le remarquera pas. C'est le sous-échantillonnage de chrominance.
Pourquoi ne pas simplement compresser RGB ? En RGB, l'information de luminosité est répartie sur les trois canaux. Vous ne pouvez pas réduire la résolution des couleurs sans aussi réduire la résolution de la luminosité. YCbCr sépare clairement les deux, permettant une compression sélective qui correspond à la perception humaine.
Le système de notation : Que signifient 4:4:4, 4:2:2 et 4:2:0
Le sous-échantillonnage de chrominance utilise une notation à trois chiffres J:a:b qui décrit comment les échantillons de couleur sont distribués dans un bloc de référence. La notation est notoirement confuse, mais voici la signification pratique :
4:4:4 — Pas de sous-échantillonnage (Couleur complète)
Chaque pixel reçoit sa propre valeur de luminance (Y) et ses propres valeurs de couleur (Cb, Cr). Rien n'est réduit. Cela produit la sortie de la plus haute qualité et les fichiers les plus volumineux. Pour tous les 4 pixels d'une ligne, il y a 4 échantillons de luma et 4 échantillons de chroma.
4:2:2 — Sous-échantillonnage horizontal
Chaque pixel conserve sa propre valeur de luminance, mais la résolution des couleurs est divisée par deux horizontalement. Dans chaque ligne de 4 pixels, il y a 4 échantillons de luma mais seulement 2 échantillons de chroma. Chaque paire de pixels adjacents horizontalement partage une seule valeur de couleur. La résolution des couleurs verticales reste inchangée.
4:2:0 — Sous-échantillonnage horizontal et vertical
Chaque pixel conserve sa propre valeur de luminance, mais la résolution des couleurs est divisée par deux horizontalement et verticalement. Un bloc de 2×2 composé de quatre pixels partage une seule valeur de couleur. C'est le schéma de sous-échantillonnage commun le plus agressif — et le plus largement utilisé, car il offre des économies dramatiques de taille de fichier avec un impact visuel négligeable sur les photographies.
| Sous-échantillonnage | Résolution des couleurs | Réduction de données | Taille de fichier vs 4:4:4 | Idéal pour |
|---|---|---|---|---|
| 4:4:4 | Complète (1:1) | Aucune | Référence (plus volumineux) | Texte, graphiques, captures d'écran |
| 4:2:2 | Divisée horizontalement | 33% moins de données chroma | ~10–15% plus petit | Vidéo professionnelle, diffusion |
| 4:2:0 | Divisée dans les deux directions (bloc 2×2) | 75% moins de données chroma | ~25–33% plus petit | Photos, images web, vidéo grand public |
La colonne « réduction de données » fait référence aux canaux de chrominance uniquement. Puisque le canal de luminance (qui porte la plupart des informations visuelles) n'est jamais sous-échantillonné, la réduction totale de la taille du fichier est inférieure à celle que la réduction brute du chroma suggère. En pratique, passer de 4:4:4 à 4:2:0 économise environ 25–33% de la taille totale du fichier au même paramètre de qualité.
Impact visuel : Quand cela importe et quand ce n'est pas le cas
L'impact visuel du sous-échantillonnage de chrominance dépend entièrement du contenu de l'image. Pour certaines images, 4:2:0 est indiscernable de 4:4:4. Pour d'autres, la différence est clairement visible.
Photographies : 4:2:0 Est pratiquement invisible
Les photographies naturelles contiennent des dégradés de couleurs lisses — ciel, peau, feuillage, eau, tissu. Ces dégradés n'ont pas de contours de couleur nets pour que l'œil les détecte. Lorsque vous réduisez la résolution des couleurs de moitié dans les deux dimensions, les transitions de couleur restent lisses car les dégradés d'origine étaient lisses. Dans les comparaisons côte à côte, même les photographes entraînés ont du mal à distinguer 4:2:0 de 4:4:4 dans les photos typiques.
C'est pourquoi chaque appareil photo grand public, chaque plateforme de médias sociaux et chaque navigateur web utilise 4:2:0 pour les photos JPEG par défaut. Le compromis de qualité est extrêmement favorable : fichiers 25–33% plus petits sans différence de qualité visible.
Texte et graphiques : 4:2:0 crée des artefacts visibles
Les captures d'écran, les maquettes d'interface utilisateur, les logos, les diagrammes et les images riches en texte sont une autre histoire. Ceux-ci contiennent des transitions de couleur nettes — une lettre rouge sur un fond blanc, un bouton vert avec du texte blanc, une ligne bleue sur une grille grise. Lorsque le sous-échantillonnage 4:2:0 moyenne la couleur sur un bloc de pixels 2×2, ces contours nets deviennent flous.
Le résultat est une frange de couleur — un macaron visible de couleur qui saigne au-delà des contours des éléments nets. Le texte noir sur fond blanc est généralement correct car le contraste est purement dans le canal de luminance (le noir et le blanc ne diffèrent que par la luminosité). Mais le texte coloré sur un fond contrastant est où les artefacts 4:2:0 deviennent évidents.
| Type de contenu | 4:4:4 | 4:2:2 | 4:2:0 |
|---|---|---|---|
| Photos de paysage | Parfait | Parfait | Parfait |
| Portraits / tons de peau | Parfait | Parfait | Parfait |
| Photos de produits | Parfait | Parfait | Parfait |
| Texte noir sur blanc | Parfait | Parfait | Bon |
| Texte coloré / éléments UI | Parfait | Légère frange | Frange visible |
| Captures d'écran de code | Parfait | Légère frange | Remarquable |
| Logos avec lignes colorées fines | Parfait | Artefacts mineurs | Saignement de couleur |
Impact sur la taille du fichier
Les économies de taille de fichier provenant du sous-échantillonnage de chrominance sont substantielles et cohérentes. Dans une image non compressée, chaque pixel a trois composants : Y, Cb et Cr. À 4:4:4, tous les trois sont stockés à pleine résolution. À 4:2:0, les canaux Cb et Cr contiennent chacun seulement 25% des échantillons — une réduction de 75% des données de chrominance.
Puisque les canaux de chrominance représentent environ un tiers à une moitié des données totales (selon le contenu de l'image et la compression), l'impact pratique sur la taille du fichier est :
| Sous-échantillonnage | Taille de fichier typique | Exemple (photo 10 MP à Q85) |
|---|---|---|
| 4:4:4 | Référence (100%) | ~3,2 MB |
| 4:2:2 | ~85–90% | ~2,8 MB |
| 4:2:0 | ~67–75% | ~2,3 MB |
Pour un site web servant des milliers d'images, la différence entre 4:4:4 et 4:2:0 s'accumule de façon dramatique. Une galerie de photos avec 100 images économise environ 90 MB de bande passante en utilisant 4:2:0 au lieu de 4:4:4, sans différence de qualité visible pour le contenu photographique.
Composé avec la qualité : Les économies du sous-échantillonnage de chrominance se composent avec la réduction de la qualité JPEG. À Q85 avec 4:2:0, une photo est environ 5–8 fois plus petite que le PNG d'origine — le paramètre de qualité et le sous-échantillonnage travaillent ensemble pour réduire la taille du fichier bien au-delà de ce que chacun réalise seul.
Comportement et valeurs par défaut d'ImageMagick
L'encodeur JPEG d'ImageMagick sélectionne automatiquement le sous-échantillonnage de chrominance en fonction du paramètre -quality. C'est l'un des aspects les plus généralement négligés de la compression JPEG avec ImageMagick :
| Paramètre de qualité | Sous-échantillonnage par défaut | Justification |
|---|---|---|
| Q90–Q100 | 4:4:4 | Qualité élevée demandée → conserver la couleur complète |
| Q1–Q89 | 4:2:0 | Qualité inférieure → compression agressive |
Ce changement automatique signifie que définir la qualité à 90 vs 89 produit un saut disproportionné de la taille du fichier. Ce n'est pas seulement une étape de qualité — c'est l'étape de qualité plus le changement de 4:2:0 à 4:4:4 de sous-échantillonnage. Beaucoup d'utilisateurs remarquent que les fichiers Q90 sont étonnamment plus volumineux que les fichiers Q89 et supposent qu'ImageMagick est cassé. Ce n'est pas le cas — le changement de sous-échantillonnage est le coupable.
Remplacement de la valeur par défaut
Vous pouvez contrôler explicitement le sous-échantillonnage de chrominance avec le drapeau -sampling-factor :
# 4:4:4 (no subsampling — best for text/graphics)
convert input.png -quality 85 -sampling-factor 1x1 output.jpg
# 4:2:2 (balanced — used in professional video)
convert input.png -quality 85 -sampling-factor 2x1 output.jpg
# 4:2:0 (smallest — best for photos)
convert input.png -quality 85 -sampling-factor 2x2 output.jpg
Le facteur d'échantillonnage utilise le format HxV où H est l'échantillonnage horizontal et V est l'échantillonnage vertical. 1x1 signifie pas de sous-échantillonnage (4:4:4), 2x1 signifie divisé horizontalement (4:2:2), et 2x2 signifie divisé dans les deux directions (4:2:0).
Q85 + 4:4:4 : Une technique courante pour les captures d'écran et les images riches en texte est -quality 85 -sampling-factor 1x1. Cela vous donne des économies de taille de fichier du paramètre de qualité tout en préservant la résolution des couleurs complète pour le texte net. Sans -sampling-factor 1x1, Q85 utilise par défaut 4:2:0 et le texte coloré aura une frange visible.
Recommandations par type de contenu
Voici un guide pratique de décision pour choisir le sous-échantillonnage de chrominance approprié :
Utilisez 4:2:0 quand :
- Photographies de tout type — paysages, portraits, photos de produits, nourriture, architecture
- Images web — images héros, illustrations de blog, publications de médias sociaux
- Pièces jointes par courrier électronique — la réduction de taille de fichier aide pour les limites de pièces jointes
- Vignettes et aperçus — la petite taille d'affichage masque tous les artefacts possibles
- Toute image où la taille du fichier importe plus que les contours de couleur au pixel près
Utilisez 4:4:4 quand :
- Captures d'écran avec texte coloré — code en surbrillance de syntaxe, éléments d'interface utilisateur colorés
- Logos et ressources de marque — les limites de couleur précises importent pour l'intégrité de la marque
- Diagrammes techniques — les lignes et étiquettes colorées ont besoin de contours nets
- Maquettes d'interface utilisateur et fichiers de conception — la reproduction des couleurs au pixel près requise
- Imagerie médicale ou scientifique — la précision des couleurs est critique
Utilisez 4:2:2 quand :
- Production vidéo professionnelle — norme de diffusion pour le contenu en studio
- Images de contenu mixte — photos avec superpositions de texte où 4:4:4 est excessif mais 4:2:0 crée une frange visible
- Photographie haut de gamme où la qualité absolue maximale est nécessaire mais les tailles de fichier 4:4:4 sont impraticables
En cas de doute : Pour les photographies, utilisez 4:2:0 sans hésiter. Pour tout ce qui contient du texte ou des contours de couleur nets, utilisez 4:4:4. Le milieu du terrain 4:2:2 est rarement nécessaire pour les images fixes — c'est principalement un format de production vidéo.
Sous-échantillonnage de chrominance au-delà de JPEG
Le sous-échantillonnage de chrominance n'est pas unique à JPEG. Pratiquement tous les supports visuels avec perte l'utilisent :
| Format / Codec | Sous-échantillonnage courant | Notes |
|---|---|---|
| JPEG | 4:2:0 (par défaut), 4:4:4 | Valeur par défaut dépendant de l'encodeur |
| WebP | 4:2:0 (mode avec perte) | Pas d'option pour 4:4:4 dans WebP avec perte |
| AVIF | 4:2:0, 4:4:4 | 4:4:4 disponible mais augmente la taille du fichier |
| Vidéo H.264 / H.265 | 4:2:0 (grand public), 4:2:2 (pro) | 4:4:4 seulement dans les profils spécialisés |
| Blu-ray / Streaming | 4:2:0 | Norme pour toute la vidéo grand public |
| PNG | Aucun (sans perte) | RGB complet préservé, pas de sous-échantillonnage |
WebP est notable pour ne pas offrir 4:4:4 en mode avec perte. Si vous avez une capture d'écran avec texte coloré et avez besoin du plus petit fichier avec des couleurs nettes, WebP avec perte peut ne pas être idéal — utilisez JPEG à 4:4:4, PNG (sans perte) ou WebP sans perte à la place.
AVIF, le nouveau concurrent, supporte 4:4:4 et le combine avec une compression plus efficace que JPEG. Pour les images riches en texte qui doivent être compressées sans perte, AVIF avec 4:4:4 peut produire des fichiers plus petits que JPEG 4:4:4 à la même qualité visuelle.