H.264/MPEG-4 AVC, Un Nouveau Standard de Compression Vidéo: Résumé

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 5

H.

264/MPEG-4 AVC, un nouveau standard de compression vidéo


F. Loras1 J. Fournier2

1 France Telecom R&D / DMI / SGV (Laboratoire de Service de visiophonie de Groupe et de


Visioconférence)

2 France Telecom R&D / DIH / HDM (Laboratoire Hyperlangages et Dialogues Multimédia)

France Telecom R&D,


39 avenue du Général Leclerc 92794 Issy Les Moulineaux Cedex 9 France
{frederic.loras, jerome.fournier }@francetelecom.com

Résumé Actuellement, ces deux organismes travaillent à


l’élaboration d’une norme commune (H.264 / MPEG-4
L’objectif de ce document est de présenter une nouvelle « AVC ») dont les performances attendues devraient
norme de compression vidéo. Une première partie permettre de réduire de moitié le débit de transmission ou
présente l’historique de la compression vidéo à travers les de stockage pour une qualité visuelle équivalente aux
organismes de normalisation. Les principes de base de la normes précédentes.
compression vidéo sont présentés. Une seconde partie
présente la prochaine norme de codage vidéo H.264 /
MPEG-4 « AVC », qui promet des résultats
significativement meilleurs que les normes de codage 2 Historique de la compression vidéo
actuelles.
Les codeurs vidéo actuellement normalisés (familles
Mots clefs H.26x ou MPEG-x) utilisent tous le même principe de
base dont la connaissance aide à comprendre à la fois
Compression vidéo, H.264, MPEG-4 « AVC », JVT, leurs potentialités et limites d’utilisation. Cette partie
H.26L, UIT-T, ISO/IEC. décrit les principaux standards normalisés à l’UIT-T et à
l’ISO/IEC.
2.1 Les normes de l’UIT-T
1 Introduction
Première norme vidéo approuvée en 1993,
La normalisation joue un rôle essentiel dans le H.261 [1] vise les applications de visiophonie pour le
succès des technologies numériques. En effet, le choix de réseau RNIS à des débits multiples de 64 kbit/s. Les
ces technologies, en termes d’efficacité, d’interopérabilité formats d'image traités sont le QCIF (144x176 pixels) et
et de pérennité, permet d’assurer un large déploiement des le CIF (288x352 pixels). La fréquence image de base est
services et produits associés à un coût optimal pour les 29.97 Hz mais peut être réduite (sous-multiples). Le
constructeurs et les utilisateurs. schéma de codage (Figure 1) est constitué de plusieurs
Au niveau international, les deux organismes les plus modules : l’estimation et la compensation de mouvement,
actifs pour la normalisation des systèmes de compression le calcul des résidus, la transformée espace-fréquence
vidéo sont l’UIT-T et l’ISO/IEC. Les travaux techniques (DCT1), la quantification et le codage entropique. Le
de l’ISO/IEC sont menés au sein du groupe MPEG codeur intègre également un décodeur qui effectue les
(Motion Picture Experts Group) qui a défini les standards opérations inverses. Pour la compensation de mouvement
MPEG-1, MPEG-2 et MPEG-4 pour des applications chaque MB peut être affecté d'un vecteur de mouvement
aussi variées que la télévision ou le multimédia. En dont les dimensions horizontales et verticales ne peuvent
parallèle des activités de MPEG, le groupe vidéo de excéder +/- 15 pixels. Le vecteur de mouvement estimé
l’UIT-T s’intéresse principalement à la définition de sur la luminance pointe un MB inclus dans l'image
recommandations techniques destinées aux applications de précédemment reconstruite. Les chrominances sont
visiophonie et de visioconférence (normes H.261 et prédites par le même vecteur mouvement dont les
H.263).
1
DCT : Discrete Cosine Transform
coordonnées ont été divisées par 2 et arrondies à l'entier le améliorent fortement la qualité et la robustesse aux
plus proche. Cette prédiction correspond à la construction erreurs.
d'une image P. Le filtrage, optionnel, est un filtre spatial à
La dernière version de H.263 (2000), appelée
deux dimensions non récursif travaillant au niveau pixel
H.263++ [4], ajoute trois options et une spécification à la
sur des blocs de taille 8x8 intervenant dans la boucle de
version antérieure. Outre l'amélioration en termes de
codage. Le flux vidéo est structuré en quatre niveaux :
qualité et de taux de compression, elle prend mieux en
image, groupe de blocs (GOB), macrobloc2 (MB) et enfin
compte la transmission vidéo temps réel sur des réseaux à
bloc3.
qualité de service non garantie (IP et mobiles).
p
CC
t 2.2 Les normes de l’ISO/IEC
qz
Première norme de compression vidéo
Video
in
T Q q
développée par l’ISO/IEC, MPEG-1 [5] vise une qualité
équivalente au VHS (format SIF ou CIF) à un débit de 1,5
Q–1 To video Mbps. Cette norme a été construite sur la base de H.261
multiplex
coder dont elle reprend les principes en les améliorant :
T –1 compensation de mouvement au ½ pixel, images de types
I (Intra), P (Prédite) ou B (Bidirectionnelle), quantification
optimisée par l’utilisation de matrices de quantification,
F P
v
prédiction spatiale du coefficient DC pour les images I.
MPEG-1 n’est plus guère utilisée aujourd’hui si ce n’est
f
en compression du son avec le format MP3 pour le
T1502441-90/d03
stockage de la musique.
T Transform
Q Quantizer
P
F
Picture memory with motion compensated variable delay
Loop filter
La norme MPEG-2 [6] a été définie pour les
CC
p
Coding control
Flag for INTRA/INTER
applications liées à la TV numérique, à la fois au niveau
t
qz
Flag for transmitted or not
Quantizer indication professionnel (production audiovisuelle, etc.) et au niveau
q
v
Quantizing index for transform coefficients
Motion vector du grand public (diffusion vers les postes TV). Elle
f Switching on/off of the loop filter
reprend les principes de MPEG-1 en ajoutant les outils
FIGURE 3/H.261 indispensables pour les applications télévisuelles :
Source coder traitement des formats entrelacés, optimisation des outils
Figure 1 – Schéma de codage H.261 MPEG-1 (dynamique des vecteurs mouvement, etc.),
scalabilité visant la compatibilité TV/TVHD. Ce standard
H.263 [2] est une norme de codage vidéo pour la a été adopté par le consortium DVB (Digital Video
communication vidéo à très bas débit dont la première Broadcasting) pour les services de TV numérique par voie
version fut adoptée en 1995. Elle vise les applications de hertzienne terrestre (DVB-T) et satellite (DVB-S). Il est
visiophonie et de visioconférence sur RTC et RNIS. Cette également utilisé comme format de codage du DVD
norme repose sur les principes mis en place par la (Digital Video Disc).
recommandation H.261. Les formats d’images sont des
multiples et sous-multiples du CIF (352x288 pixels). Le MPEG-4 [7] est une norme générique de
codeur H.263 a la possibilité d'effectuer des compression destinée à la manipulation d’objets
compensations en mouvement avec une précision au multimédia. Elle permet le codage d’une grande variété de
demi-pixel, ce qui améliore grandement la qualité de la format vidéo (taille, résolution, fréquence image) mais
vidéo en réduisant fortement les effets dits "moustiques". aussi le codage d’objets vidéo de forme arbitraire,
L'utilisation d'image B est désormais possible. d’images fixes (codage par ondelettes) ainsi que d’objets
synthétiques 3D. De ce fait, cette norme adresse une large
La version 2 de la recommandation H.263 gamme d’applications audiovisuelles allant de la
(1998), souvent appelée H.263+ [3], met en oeuvre douze visioconférence à la production audiovisuelle en passant
options supplémentaires et permet désormais de définir par le streaming sur Internet ou encore la réalité virtuelle
des formats et fréquences d'image personnalisés. Les distribuée. Concernant le codage de la vidéo
caractéristiques de vidéo (Taille, fréquence) sont traditionnelle, MPEG-4 combine les outils de MPEG-2 et
transmises dans le flux vidéo. Les options ajoutées H.263 ainsi que de nouveaux outils lui conférant une plus
grande efficacité en compression tels que des modes de
2 scalabilité plus adaptés à une transmission sur réseaux à
Un macrobloc est un bloc carré de 16x16 pixels
débit fluctuant ainsi qu’une plus grande robustesse aux
3
Un bloc est un carré de 8x8 pixels erreurs de transmission.
3 La norme H.264 / MPEG-4 «AVC» directions de prédiction ainsi que deux méthodes de
codage existent aujourd’hui. Ces améliorations permettent
3.1 Historique d’obtenir des taux de compression comparables à JPEG
2000 pour la compression d’images fixes.
H.26L a été le nom provisoire de la future norme
de codage en cours d’élaboration au sein de l’UIT-T. 3.2.1.3 La compensation de mouvement
H.26L est fondé sur une architecture identique aux Le processus de compensation de mouvement
précédentes normes de codage (compensation en diffère des normes précédentes en proposant une grande
mouvement, calcul de l’erreur de prédiction, transformée variété de formes et de tailles de blocs (16x16, 16x8…
fréquentielle, quantification, codage entropique). Les 8x4…4x4) avec une précision pouvant aller jusqu’au ¼ de
premiers tests de la norme ont montré de très bonnes pixel. H.26L utilise alors entre 8 et 36 types de blocs pour
performances pour les applications classiques de vidéo la compensation de mouvement alors que les précédents
comme pour des applications de haute qualité (Cinéma standards n’en utilisaient que de un à trois. Cette
numérique). caractéristique permet de s’adapter plus finement au
Les groupes de travail à l’UIT-T et à MPEG ont contenu spatial et en mouvement des images.
approuvé le rapprochement de leurs équipes vidéo pour la Une autre nouveauté importante est que l’image à
définition commune d’un nouveau standard de coder peut être prédite à partir de plusieurs images de
compression. Cette décision a conduit les groupes à référence. Cette information est définie au niveau des
fusionner sous le nom de JVT (Joint Video Team) le 6 macroblocs. H.26L mutualise ainsi les fonctionnalités de
décembre 2001. Le but de cette nouvelle entité est de MPEG-4 (prédiction au ¼ de pixel) et de H.263+
standardiser un codec vidéo dont la base est H.26L. Les (utilisation possible de plusieurs images de référence,
travaux, commencés en 1998 à l’UIT-T, devraient aboutir mais seulement au niveau Slice).
à un standard international en mars 2003 (Figure 2).
Premier 11ème Standard
3.2.1.4 La transformée fréquentielle
Test model Test model
Elle a les mêmes propriétés que la DCT.
Contrairement aux autres standards qui utilisent des blocs
1998 1999 2000 2001 2002 2003
8x8, elle opère sur des blocs 4x4. La transformée inverse
VCEG : H26L JVT
de H.26L est définie de manière exacte (précision entière)
Figure 2 – Historique de H.264 / MPEG-4 « AVC » pour éviter les divergences dues aux arrondis. Dans
certains cas, pour diminuer les coefficients isolés, la
3.2 Spécificité de la norme transformée est faite en deux passes avec une extension de
H.26L n’apporte pas de rupture technologique par la taille des blocs à 2x2 pixel.
rapport aux normes de codage vidéo actuelles. Les
3.2.1.5 La quantification
différences se situent à plus petite échelle sur chaque
partie du principe général de codage (prédiction, Les pas de quantification définis dans la norme
transformée, quantification, etc.). s’incrémentent d’une valeur de 12,5% et leur dynamique
est augmentée puisque les valeurs vont de 1 à 52. Dans les
3.2.1.1 Les types d’image
normes vidéo précédentes, le pas de quantification
On retrouve les mêmes types d’images que dans augmente par pas fixes, ce qui entraîne des zones
les normes précédentes (I, P ou B). En revanche, H.26L inaccessibles pour certains quantificateurs. De plus, afin
apporte un nouveau type d’image, les « SP4 frame », qui d’obtenir de meilleurs résultats visuels, la quantification
servent à coder la transition entre deux flux vidéo. Elles de la chrominance est plus fine que celle de la luminance.
permettent, sans envoyer d’images intra coûteuses en
3.2.1.6 Le filtrage de boucle
débit, de passer d’une vidéo à une autre. Ces Images
peuvent être utilisées dans des contextes variés comme la H.26L intègre également un filtre de boucle qui
transmission sur réseaux à QoS5 non garantie. améliore l’efficacité en compression et la qualité visuelle
des séquences vidéo en gommant certains effets
3.2.1.2 Les macroblocs « intra »
indésirables du codage tels que les effets de bloc.
Les coefficients des macroblocs intra sont prédits
3.2.1.7 Le parcours des données Il existe dans
en privilégiant certaines directions spatiales. Huit
H.26L deux modes de parcours des coefficients
transformés (zigzag) pour concentrer l’information
4
SP : Switch Picture utilisée. Le deuxième mode de parcours autorise
5 notamment le parcours du macrobloc en sens inverse pour
QoS : qualité de service
fonctionner avec un codage entropique adaptatif.
Tests d’efficacité en compression

Classe de débit Low Medium


Séquences Foreman Bus
News Mobile and Calendar
Container Flower Garden
Tempete Tempete
Résolution QCIF CIF CIF
(176x144) (352x288) (352x288)

Scan zig-zag. Scan zig-zag inverse. Débit (kbps) 32 64 128 256 512 1024

Figure 3 - table des scans de coefficient dans un bloc Framerate (fps) 10 15 15 15 30 30

3.2.1.8 Le codage entropique Condition A B C D E F

Le codage entropique peut-être réalisé de trois Tableau 1 – conditions de test


manières différentes dans H.26L. Une première méthode
utilise une table universelle de mot de code (UVLC - C’est la version « MPEG-4 Advanced Simple
Unified Variable Lenght Coding). Cette table est utilisée Profile » qui a été utilisée pour ces tests. Les performances
pour coder la plupart des éléments de synchronisation en efficacité en compression des séquences MPEG-4 et
comme les en-têtes. Les deux autres méthodes sont H.26L ont largement été améliorées par l’implémentation
utilisées pour coder presque tous les autres éléments d’un algorithme « débit/distorsion » au niveau des
syntaxiques (coefficients, vecteurs mouvements). Il s’agit logiciels de référence [10].
d’une part d’un codage VLC adaptatif au contexte
Les tests subjectifs menés [11] par la FUB
(CAVLC - Context Adaptative Variable Length Coding) et
(Fondazione Ugo Bordoni) ont montré que la solution
d’autre part d’un codage arithmétique adaptatif contextuel
H.26L de l’UIT-T est significativement meilleure que
[8] (CABAC - Context Adaptative Binary Arithmetic
MPEG-4 vidéo, le gain en PSNR étant en moyenne de
Coding).
2dB. Quand les comparaisons sont possibles (même
3.2.1.9 L’adaptation au réseau séquence vidéo, même nombre d’images par seconde et
même format d’image), on constate que H.26L permet de
Les algorithmes de H.26L sont conceptuellement divisés gagner un facteur deux en compression pour une
en deux couches : une première couche de codage vidéo performance équivalente à MPEG-4. En fait, cette
(VCL - Video Coding Layer) qui s’occupe de représenter comparaison directe des performances entre H.26L et
efficacement le contenu vidéo et une couche d’adaptation MPEG-4 à des débits différents n’a pu être réalisée que
au réseau (NAL - Network Adaptation Layer) qui pour un format CIF et aux débits de 512 kbps et 1024
s’intéresse plus particulièrement à une mise en forme des kbps. Des études complémentaires seront donc nécessaires
données vidéo adaptée au support de transmission. afin valider que ce facteur deux existe à tous les débits et
3.3 L’efficacité en compression indépendamment du type de contenu.

Afin d’anticiper l’émergence d’un nouveau


standard, la communauté MPEG a lancé un appel à
proposition fin 2000 [9] dont l’objectif principal était de 5

démontrer l’existence éventuelle de solutions de codage


4
supérieures à MPEG-4 vidéo. Parmi les cinq solutions
présentées (UIT-T SG16 Q.6 (H.26L), NTT DoCoMo, 3
daViCo, Bosch GmbH et DynaPel), quatre étaient basées
sur la version courante de H.26L qui était alors en cours 2
de normalisation à l’UIT-T.
1
Pour départager les différentes solutions, six
conditions de test ont été définies et ont permis d’évaluer
les codecs6 à deux formats d’image (QCIF et CIF) et à des Condit ion A Condit ion B Condit ion C Condit ion D Condit ion E Condit ion F

débits compris entre 32 kbps et 1024 kbps (Tableau 1).


Les séquences compressées étaient ensuite évaluées sur Figure 4 - résultats sur l’ensemble des séquences
une échelle de qualité continue à 5 items : 1-Mauvais, 2-
Médiocre, 3-Assez bon, 4-Bon, 5-Excellent (Figure 4).

6
Codec : Codeur et décodeur
3.4 Perspectives Références
Les améliorations algorithmiques apportées par
[1] H.261 : Video codec for audiovisual services at
H.264/MPEG-4 « AVC » permettent d’obtenir un gain en
p x 64 kbit/s. Recommandation H.261 à l’UIT-T.
qualité significatif par rapport aux solutions de codage
Mars 1993.
actuelles. Les tests subjectifs montrent que cette future
norme a le potentiel pour fournir une qualité visuelle [2] H.263 : Video coding for low bit rate
équivalente aux solutions actuelles à un débit deux fois communication. Première Recommandation H.263 à
plus faible !! Cependant, pour exploiter pleinement ce l’UIT-T. Mars 1996.
potentiel, le gain en compression se fait au détriment
[3] H.263+ : Video coding for low bit rate
d’une complexité beaucoup plus importante (mémoire,
communication. Deuxième recommandation H.263 à
MIPS7). Côté décodeur, la complexité semble équivalente
l’UIT-T. Février 1998.
aux solutions actuelles (MPEG-4, H.263) si l'on fait
abstraction des images de référence multiples qui [4] H.263++ : H.263 Annex U, V, W and X.
demandent une taille mémoire plus importante (n images Compléments de la recommandation H.263 à l’UIT-
au lieu d’une). En revanche, le codeur augmente le T. Janvier 2000.
nombre de prédictions possibles et le délai de codage
[5] Standard MPEG-1 : ISO/IEC 11172-2, Coding of
(blocs de taille variable, images de référence multiples).
moving pictures and associated audio for digital
Dans ce contexte, il est donc essentiel d’anticiper les
storage media at up to about 1,5 Mbit/s.
implications de l’arrivée de cette nouvelle technologie au
niveau des services potentiels. [6] Standard MPEG-2 : ISO/IEC 13818-2, Information
Technology – Generic coding of moving pictures and
Dans un premier temps, H.264/MPEG-4 « AVC » ne
associated audio information.
pourra pas répondre de façon optimale à toutes les
applications. En effet, certaines d’entre elles seront [7] Standard MPEG-4 : ISO/IEC 14496-2, Information
pénalisées par la complexité de la norme en comparaison Technology – Coding of Audio-Visual Objects.
avec les standards existants. Ainsi, les applications
imposant des restrictions au niveau de la taille mémoire au [8] Detlev Marpe, Heiko Schwarz, Gabi Blättermann,
codage ou au décodage (terminaux mobiles, etc.) pour des Guido Heising, Thomas Wiegand, Context-Based
raisons de coût ne pourront bénéficier totalement de Adaptive Binary Arithmetic Coding in JVT/H.26L,
l’amélioration en qualité. En effet, aujourd’hui le codage IEEE International Conference on Image Processing
d’une image au format QCIF (176x144) demande 30 (ICIP), Rochester, Septembre 2002.
secondes avec un Pentium IV cadencé à 1,7 GHz !! Dans [9] Call For Proposals On New Tools For Video
un premier temps, l’apport des outils innovants de cette Compression Technology - ISO/IEC/JTC/SC29/
nouvelle norme se fera donc principalement dans les WG11/N4065, Singapour, Mars 2001.
applications « offline » telles que la VOD (vidéo à la
demande) ou encore le stockage de films sur DVD ou CD- [10] Heiko Schwarz, Thomas Wiegand, An Improved
ROM. MPEG-4 Coder Using Lagrangian Coder Control,
ITU-T/SG16/Q6/VCEG-M49, Austin, Avril 2001.
Cependant les applications software fonctionnant sur des
postes de travail nous poussent à croire qu’une apparition [11] Preliminary Results of Subjective Assessment of
prochaine de codecs temps réel est possible. En effet, sur Responses to Video Call for New Tools to Further
les Pc du marché (Pentium IV à 2 GHz) on est à environ Improve Coding Efficiency, ISO/IEC/JTC/SC29/
3,5 fois le temps réel pour coder une image CIF dans un WG11/N4240, Sydney, Juillet 2001.
profil de base de H.264. Le gain obtenu est d’environ 40%
par rapport à l’existant et les premiers travaux
d’amélioration annoncent déjà des implémentations temps
réel.

7
Millions d’instructions par seconde

Vous aimerez peut-être aussi