Compression d'Images

Comprendre les techniques de compression avec et sans perte, et les algorithmes utilisés

📊 Difficile⏱️ 50 min100 XP

🎯 Objectifs pédagogiques

  • Comprendre la nécessité de la compression
  • Distinguer compression avec perte et sans perte
  • Découvrir les principaux algorithmes de compression
  • Savoir choisir le type de compression selon le contexte

1Pourquoi compresser les images ?

Une image numérique non compressée peut occuper un espace considérable en mémoire. La compression permet de réduire cette taille tout en conservant (ou en dégradant minimalement) la qualité visuelle.

Taille d'une image non compressée :

Pour une image RGB 24 bits : Taille = Largeur × Hauteur × 3 octets

Exemple : image Full HD (1920×1080) = 1920 × 1080 × 3 = 6 220 800 octets ≈ 6,2 Mo

Problèmes des images non compressées :

• Stockage : une galerie de 1000 photos prendrait 6,2 Go

• Transfert : temps de chargement très long sur internet

• Bande passante : coût réseau élevé

• Mémoire : ralentissement des applications

Bénéfices de la compression :

• Réduction de 70% à 99% de la taille selon la méthode

• Chargement web plus rapide

• Économie de stockage

• Économie de bande passante

Exemple concret :

Une photo de 6,2 Mo non compressée peut être réduite à :

• 500 Ko en JPEG haute qualité (compression ≈ 92%)

• 2 Mo en PNG (compression ≈ 68%)

• 300 Ko en JPEG moyenne qualité (compression ≈ 95%)

2Compression sans perte (Lossless)

La compression sans perte réduit la taille du fichier tout en préservant intégralement l'information originale. En décompressant, on retrouve exactement l'image de départ, pixel par pixel.

Principe général :

• Exploitation des redondances dans les données

• Aucune information n'est supprimée

• Décompression parfaitement réversible

• Taux de compression plus modeste (typiquement 30-70%)

Algorithme RLE (Run-Length Encoding) :

Encode les séquences de pixels identiques consécutifs.

Exemple de compression RLE :

Données originales : [Rouge, Rouge, Rouge, Rouge, Bleu, Bleu, Vert]

Données compressées : [4×Rouge, 2×Bleu, 1×Vert]

• Très efficace sur les aplats de couleur

• Peu efficace sur les photos complexes

Algorithme de Huffman :

Assigne des codes courts aux valeurs fréquentes, des codes longs aux valeurs rares.

Exemple simplifié :

• Couleur fréquente (apparaît 1000 fois) : code sur 2 bits

• Couleur rare (apparaît 10 fois) : code sur 8 bits

• Économie globale importante

Formats utilisant la compression sans perte :

• PNG : combinaison de filtres et compression DEFLATE (Huffman + LZ77)

• GIF : compression LZW

• TIFF : supporte plusieurs algorithmes sans perte

• WebP lossless : compression moderne très efficace

3Compression avec perte (Lossy)

La compression avec perte sacrifie certaines informations jugées peu perceptibles pour l'œil humain afin d'obtenir des taux de compression beaucoup plus élevés.

Principe général :

• Suppression des détails imperceptibles ou peu importants

• Exploitation des limites de la perception humaine

• Irréversible : impossible de retrouver l'image originale exacte

• Taux de compression très élevés (jusqu'à 95-99%)

Algorithme JPEG - DCT (Discrete Cosine Transform) :

Étapes de la compression JPEG :

1. Division de l'image en blocs de 8×8 pixels

2. Conversion RGB vers YCbCr (luminance + chrominance)

3. Application de la DCT sur chaque bloc (transformation fréquentielle)

4. Quantification : suppression des hautes fréquences (détails fins)

5. Encodage de Huffman sur les données quantifiées

Pourquoi ça fonctionne :

• L'œil humain est plus sensible à la luminance qu'aux couleurs

• L'œil perçoit mal les variations haute fréquence

• Les détails fins peuvent être simplifiés sans impact visuel majeur

Qualité vs compression :

• Qualité 100% : peu de compression, excellent visuel

• Qualité 80-90% : bon compromis (usage web courant)

• Qualité 50-70% : compression forte, artefacts visibles

• Qualité < 50% : très compressé, dégradations importantes

Artefacts JPEG typiques :

• Effet de 'bloc' visible (blocs de 8×8 pixels)

• Perte de netteté sur les contours

• Banding sur les dégradés de couleur

• Halo autour des textes

4Comparaison et choix de la compression

Le choix entre compression avec et sans perte dépend de l'usage, du type d'image et des contraintes de taille.

Utiliser la compression SANS PERTE (PNG, TIFF) quand :

• L'image contient du texte ou des graphiques nets

• La qualité absolue est requise (travail professionnel, archivage)

• L'image servira de base pour des retouches futures

• Les aplats de couleur sont nombreux (logos, schémas)

• La transparence est nécessaire

Utiliser la compression AVEC PERTE (JPEG, WebP lossy) quand :

• L'image est une photographie ou contient beaucoup de nuances

• La taille du fichier doit être minimale (web, mobile)

• Les petites pertes de qualité sont acceptables

• L'image ne sera pas retouchée ultérieurement

Taux de compression typiques :

Compression sans perte :

• PNG sur photo : 30-50% de réduction

• PNG sur graphique : 60-80% de réduction

Compression avec perte :

• JPEG qualité 90% : 85-92% de réduction

• JPEG qualité 70% : 92-97% de réduction

• WebP lossy : 25-35% plus efficace que JPEG

Stratégie recommandée :

1. Conserver l'original en format sans perte (PNG, TIFF)

2. Créer des versions optimisées selon l'usage :

- Web : JPEG 80-85% ou WebP

- Impression : TIFF ou PNG haute résolution

- Archivage : format original ou lossless

3. Tester plusieurs niveaux de compression et comparer visuellement

5Algorithmes avancés et formats modernes

Les formats d'images évoluent constamment avec de nouveaux algorithmes de compression plus performants.

WebP (Google, 2010) :

• Lossy : basé sur VP8 (codec vidéo)

• Lossless : prédiction + transformation + Huffman

• 25-35% plus efficace que JPEG/PNG

• Supporte animation et transparence

AVIF (Alliance for Open Media, 2019) :

• Basé sur AV1 (codec vidéo nouvelle génération)

• 50% plus efficace que JPEG

• Excellent pour photos haute résolution

• Support navigateurs en croissance

JPEG XL (2021) :

• Successeur potentiel du JPEG

• 60% plus efficace que JPEG classique

• Compression lossy et lossless

• Support du HDR et des animations

• Rétrocompatible avec JPEG

HEIF/HEIC (Apple) :

• Basé sur HEVC (H.265)

• Utilisé par défaut sur iPhone

• 50% plus efficace que JPEG

• Problèmes de brevets et compatibilité

Compression adaptative et IA :

• Algorithmes d'apprentissage automatique

• Compression intelligente selon le contenu

• Reconstruction d'image par réseaux neuronaux

• Exemple : TensorFlow Compression

Limites de la compression :

• Compromis qualité vs taille inévitable

• Compression avec perte irréversible

• Artefacts visuels sur images déjà compressées

• Temps de calcul pour algorithmes avancés

📝Quiz de validation

1. Quelle est la différence principale entre compression avec perte et sans perte ?

2. Quel algorithme est utilisé par le format JPEG ?

3. Dans quel cas privilégier le format PNG plutôt que JPEG ?

4. L'algorithme RLE (Run-Length Encoding) est particulièrement efficace pour :

5. Quel est un inconvénient majeur de la compression JPEG ?

EdTech AI Assistant