Sous-sections


2.6.5 Compression vidéo

Vu la quantité d'information que représente une séquence vidéo, la complexité d'un codeur-décodeur (codec) vidéo est d'un autre ordre de grandeur que celui pour image fixe. Il existe plusieurs normes de compression vidéo dont les plus connues et les plus utilisées appartiennent aux familles H.26x et MPEG-x.

Toutes ces techniques exploitent deux types de redondance:

  1. la redondance entre les valeurs des pixels de blocs voisins d'une même image et
  2. la redondance entre images successives.
Elles donnent respectivement naissance aux techniques de codage intra et inter.

Pour le codage intra, le problème s'apparente à celui de JPEG puisqu'il n'y a qu'une image à considérer. De fait, on supprime la redondance en exploitant les caractéristiques d'une transformée en cosinus discrète (DCT), tout comme pour JPEG. La mise au point d'une méthode capable d'exploitation de la redondance entre images successives fut plus laborieuse. L'idée imaginée pour la première fois dans le codeur H.261 consiste à prédire les images suivantes, appelées trames dans le jargon du codage d'image, à partir de l'image traitée. Il y a donc une distinction entre l'image codée en intra (trame I) et l'image prédite (trame P). Dans MPEG, on fait mieux encore puisqu'on définit des trames B qui se situent entre des trames I et P. Les trames B sont prédites à la fois à partir d'une image précédente mais aussi d'une image suivante.

Le dessin de la figure 2.38 permet de comprendre le mécanisme. Au départ, on code une image I. Cette image ne fait aucune référence à une autre image. À partir de cette image, l'algorithme de l'encodeur calcule une prédiction et code la différence entre la prédiction et l'image; c'est une image P. Cette image P sert elle même à prédire une autre image P, jusqu'à ce qu'il soit décidé de coder à nouveau une image I. Entre les images I et P, on utilise la prédiction bidirectionnelle cette fois sur base des images P ou I les plus proches. C'est ainsi qu'on parvient à glisser deux images B entre des images I et P sans dégradation perceptible de la séquence. L'ensemble constitué d'une image I et des images prédites est appelé Group of Pictures (GOP).

Figure 2.38: Schéma de codage temporel dans MPEG.
2685  

Plutôt que de décrire les normes en détail, ce qui nous mènerait trop loin, nous avons résumé les principales caractéristiques des normes H.261 et MPEG-1 dans le tableau suivant:


  MPEG-1 H.261
Application édition transmission en temps réel
Taille de l'image $ \leq$ 4095×4095 352×288 (CIF)
    ou 176×144 (QCIF)
Débit +- 1.5 [Mb/s] multiple de 64 [kb/s]
Types d'images I, P, B I, P
Modèle de couleur YCbCr YCbCr
Complexité élevée moyenne
Mémoire jusqu'à plusieurs images une image

2.6.5.1 Multiplexage des données

Il ne suffit de pas créer un flot de bits, appelé flux ou bitstream, comprimé par signal composant la séquence audio-visuelle pour arriver à un flux complet. Il faut également entrelacer les données; ce problème est illustré à la figure 2.39. La manière de constituer le flux binaire est spécifié par toute norme de compression.

Figure 2.39: Multiplexage: création d'un flux composite.
2712  

2.6.5.2 MPEG-2: les notions de profils et de niveaux

La norme MPEG-2 est le résultat de la seconde phase de travaux menés par le groupe MPEG de l'ISO. À l'origine, il s'agissait de définir une norme permettant le codage de signaux à haute définition et de qualité studio, ce qui n'était pas possible avec MPEG-1. Au fil des travaux, il fut décidé de normaliser une série d'outils fonctionnant au choix suivant des profils (profiles en anglais) et des niveaux (levels en anglais). Un profil spécifie une syntaxe de flux de bits (bitstream) ainsi qu'un jeu de contraintes propres à une application. Les niveaux représentent eux la résolution de l'image. Ainsi, le main level est défini pour des images au format CCIR601 -la norme CCIR601 spécifie le format des images numériques de qualité studio. Le décodeur le plus usuel est dénommé MP@ML pour main level@main profile.

La norme DVB, qui couvre tous les aspects (transmission, sécurité, compression, etc) de la diffusion de signaux de télévision numérique terrestre ou par satellite, englobe la majorité des éléments de la norme MPEG-2.

2.6.5.3 MPEG-2: ``program stream'' et ``transport stream''

MPEG-2 a aussi apporté une autre nouveauté à savoir la distinction entre ``program stream'' et ``transport stream''. Le program stream est un flux tel qu'il se présente habituellement. Le transport stream est un flux adapté à des conditions de transmission particulièrement sévères; par exemple, ce flux est divisé en paquets d'une taille fixe de 288 bytes. Dans des services distribués par satellite, on doit obligatoirement utiliser un transport stream sous peine d'avoir un service de qualité inacceptable. Dans le même état d'esprit, l'ITU a produit la norme H.263 pouvant travailler à des débits inférieurs à 64 [kb/s], objectif que cherche à atteindre l'ISO, dans un cadre plus générique, à travers la définition de la norme MPEG-4 actuellement en cours de développement.

2.6.5.4 MPEG-4: une norme pour les faibles débits

Pour des applications professionnelles de télévision, MPEG-2 est la solution la plus utilisée. Il n'est cependant pas possible de produire des signaux à quelques [kb/s] avec cette norme. Pour les faibles débits, on a développé la norme MPEG-4. L'objectif de cette norme était ambitieux; MPEG-4 couvre toute la plage des débits inférieurs à 1 [Mb/s], pour permettre également le codage de signaux de synthèse et offrir des fonctionnalités de manipulation du contenu vidéo.

La technologie divX (cf. le site DivX) définit un format de compression de séquences audio-visuelles largement inspiré de MPEG-4.


2.6.5.5 MPEG-7: une norme pour caractériser le contenu vidéo

Les travaux relatifs à MPEG-4 étaient à peine terminés que démarraient déjà ceux de MPEG-7. MPEG-7 vise à normaliser des descriptions du contenu audio-visuel. Dans une chaîne typique de traitement où interviendrait MPEG-7, on aurait alors une extraction des caractéristiques d'une scène, la représentation de ces caractéristiques par MPEG-7 et enfin la possibilité d'effectuer des recherches avec des outils spécifiques. La norme finale s'avère intéressante pour des applications interactives de configuration statique. La gestion dynamique de la configuration est malaisée car il faut redéfinir et valider des schémas de description de contenu.


2.6.5.6 MPEG-21: une norme pour interfacer des objets multimédia

Cette norme vise à permettre l'interfaçage d'objets multimédia au sens large. On peut la voir comme une extension de la norme MPEG-7.

2.6.5.7 Le format QuickTime

Parmi les technologies de compression, il faut citer le format QuickTime développé principalement par la société APPLE. Cette technologie a joui d'une certaine notoriété par le passé mais elle cède actuellement le pas aux normes MPEG.


Marc Van Droogenbroeck. Tous droits réservés.
2004-06-15