envoyer l'article par mail title=  Version imprimable de cet article

Ressources > Notes techniques

Télécharger

Le texte sur MPEG-4

La PreAO

L´auteur

Philippe Gasser

Tags

MPEG
MPEG 4
H264
BIFS
AVC
Part 10
scalability
redondance
DCT
compression
quantification
estimation mouvement
image intra
image prédite
image bidirectionnelle
GOP
profil
level
MP@ML
VBR
variable bit rate
CBR
constant bit rate
cc by-nc-sa

MPEG-4

samedi 17 septembre 2005

H264 : une avancée considérable dans les techniques de compression

MPEG-4 : les bases sont dans MPEG-2

La numérisation d’une image vidéo génère un débit très élevé difficilement conciliable dans la majorité des cas avec les technologies de diffusion d’aujourd’hui. Il est donc nécessaire de procéder à une réduction du volume des données numériques. Cette opération doit s’effectuer tout en conservant la meilleure qualité possible pour les images. C’est la compression.

Pour réaliser cette opération, les systèmes MPEG s’appuient sur de nombreuses technologies notamment celles qui exploitent les redondances :
- redondances spatiales : Dans les grandes plages uniformes à l’intérieur d’une image, on exploite les similitudes entre des zones voisines et on ne re-encode pas les points qui sont sensiblement identiques.
- redondances temporelles Dans une séquence vidéo, les différences entre deux images successives sont minimes : on ne code que les changements.
- Redondances subjectives : Il est inutile de coder les détails fins que l’œil ne voit pas.

Les « coupes » sont drastiques mais l’œil s’en accommode. Les résultats sont spectaculaires et permettent en diffusion aujourd’hui de réduire les données de plus de 95% ! Mais les résultats sont variables en fonction de la nature même des images.

Pour l’essentiel, les principes de la compression étaient restés inchangés ces dernières années. Comme ses prédécesseurs MPEG 1 et 2, MPEG 4 comporte pour le traitement des images animées quatre phases principales : division de l’image en blocs de pixels ; exploitation intra-bloc de la redondance spatiale via une transformation mathématique (la DCT - Discrete Cosinus Transform), quantification et codage entropique ; exploitation de la redondance temporelle inter-bloc en ne transmettant que les seuls changements via des techniques de prédiction et de compensation de mouvement ; deuxième élimination des redondances spatiales en codant les blocs résiduels (différence entre originaux et prédits).

Sur un plan strictement vidéo, le premier successeur de MPEG-2 fut MPEG-4 Part 2 publié en 1999 (mais sans lui être compatible !). Cette nouvelle norme a permis quelques améliorations par rapport à MPEG-2 mais sans procurer un gain énorme de la compression (entre 15 et 20 % selon un document de l’UER). Ce n’est plus le cas avec les innovations radicales apportées avec les dernières évolutions de la norme. Elles constituent une véritable rupture technologique en permettant d’emblée, on le verra, une réduction de 50% de la bande passante nécessaire à qualité égale par rapport aux premières versions de MPEG 4.

H264, MPEG-4 AVC ou MPEG-4 Part 10

Ces nouveaux développements sont issus des recherches d’un groupe de travail commun aux deux groupes de normalisation les plus actifs au niveau international : ITU (International Telecommunication Union) et ISO (International Standards Organisation). Ces deux groupes ont unis leurs efforts pour développer un nouveau système de codage et le normaliser, d’où la triple appellation que l’on trouvera dans la littérature spécialisée : MPEG-4 AVC (Advanced Video Coding) ou MPEG 4 part 10 pour l’ISO et H264 pour ITU. C’est tout récemment (en sept 2004) que les derniers développements de ces nouveaux standards ont été définis et approuvés.

MPEG 4 part 10 conserve les quatre phases principales de traitement de la DCT classique mais elle améliore chacune d’entre elles grâce à l’introduction de nouvelles techniques plus sophistiquées. Elle raffine ainsi le codage intra en introduisant une prédiction spatiale à 6 modes. En plus des traditionnelles images I, B et P, la future norme introduit deux nouveaux modes de prédiction des macroblocs, les modes de transition SI et SP destinés à favoriser la commutation entre flux de débits variables, les accès aléatoires ou les visionnements accélérés. MPEG 4 part 10 propose également la sélection de multiples images de référence qui servent à définir SP.

Mais c’est surtout en matière d’estimation de mouvement que sont réalisés les gains en efficacité les plus marquants. MPEG 4 part 10 innove avec un système adaptatif fondé sur 7 types de blocs de pixels regroupant au choix 4x4, 4x8, 8x4, 8x8, 8x16, 16x8, 16x16 pixels pouvant être utilisés pour affiner l’estimation de mouvement, occasionnant un gain d’efficacité de 15% par rapport au bloc unique 16x16. Le recours à une compensation de mouvement précise au quart de pixel (et 1/8 ultérieurement) augmente la précision de celle-ci et procure un gain de 20%.

En matière de transformation, MPEG 4 part 10 a recours à une transformation spatiale DCT entière, approximation de la DCT classique qui réduit les défauts lors de l’opération inverse.

Le codage entropique (optimisant la longueur des codes, les plus courts étant affectés aux symboles les plus fréquents) utilise soit classiquement des Universal Variable Length Codes (UVLC) soit le nouveau et sophistiqué Context-based Adaptative Binary Arithmetic Coding (CABAC) qui tient compte des corrélations possibles entre les symboles d’encodage en se fondant sur un modèle probabiliste. Ce qui procure une amélioration de l’ordre de 10% surtout pour les bas débits.

GIF - 11.6 ko
H264 apporte des améliorations à tous les stades de l’encodage