La Compression Vidéo MPEG-4
(Codage d’objets audio-visuels)


MPEG-4 est un standard ISO/IEC développé par MPEG (Moving Picture Experts Group), comité développant aussi les normes MPEG-1 et MPEG-2. C'est notamment grâce à ces standards que la vidéo sur CD-ROM et la télévision numérique sont aujourd'hui possibles. L'objectif premier de la norme MPEG-4 était de succéder aux normes MPEG-1 pour la compression et le transfert audio/vidéo et MPEG-2 pour la télévision numérique. Mais lors de l'élaboration de la norme, il a été défini un champ d'applications et de fonctionnalités dépassant largement le cadre d'une simple évolution, la norme devient alors une véritable révolution tant au niveau même de son concept qu'au nombre d'applications qu'elle touche. MPEG-4 devient la fusion de trois mondes: l'informatique, les télécommunications et la télévision. Elle sera le résultat d'un effort international regroupant des centaines d'ingénieurs et de chercheurs du monde entier et de divers milieux: universités, centres de recherche, grands groupes informatiques(IBM, Microsoft, Sun, ...) et de télécommunications(AT&T, France Telecom, ...) et autres grands groupes industriels(Phillips, Sony, ...).

MPEG-4 a été finalisé en octobre 1998. Cette norme est bâtie sur le succès futur de la télévision numérique, des applications graphiques interactives et du multimédia(WWW), son but étant d'assurer une standardisation technologique à tous les niveaux; production, distribution et diffusion. Voici une vue d'ensemble du standard MPEG-4, expliquant sur quelles technologies il se base, et quelles applications supportent cette technologie. Nous ne développerons pas la partie audio de MPEG-4 pour nous concentrer uniquement sur la partie vidéo.

Objectifs de la norme, cahier des charges et fonctionnalités:

Les objectifs de la norme sont assez vastes du fait du nombre important d'applications touchées. Le cahier des charges n'en est que plus précis et complet:

Il décrit de manière précise tout ce qui touche au codage de la norme suivant une nouvelle approche orientée objet. Une scène devient alors une composition d'objets média hiérarchisés, chaque objet étant décomposé en paramètres. Suit l'interactivité de la norme. Le codage objet simplifiant l'accès aux objets, la manipulation et l'organisation ainsi que l'intégration harmonieuse d'objets naturels et synthétiques. Puis l'adaptabilité, qui est un des points forts de la norme qui se veut universelle (toutes les applications, pour tout le monde).

L'Adaptabilité(scalability) permet la multi-résolution basée sur le contenu, la prise en compte des échelles spatiales, temporelles, qualitatives, et de complexité. L'adaptabilité du codage, du décodage, du transfert. Il définit également tout ce qui concerne les problèmes plus techniques comme la compression, la robustesse aux erreurs, notamment pour les transferts et les environnements peu fiables, le transfert(synchronisation des données, audio et vidéo) et la sécurité. Ce cahier des charges très complet a pour but de satisfaire un grand nombre d'applications qui vont maintenant être développées.

Les applications:

Le standard MPEG-4 fourni un ensemble de technologies satisfaisant le besoin des auteurs, des fournisseurs et, finalement, des utilisateurs.

Pour les auteurs, MPEG-4 permettra la production de séquences réutilisables. Il leur permettra une grande flexibilité, autorisant l'amalgame de la télévision numérique, des animations graphiques et des pages web. En outre, ils auront la possibilité de protéger leurs œuvres.

Pour les fournisseurs d'accès Internet, MPEG-4 offrira des informations transparentes, qu'ils pourront aisément adapter à la demande de l'utilisateur(par exemple: l'adaptation en fonction de la langue de l'utilisateur), ainsi que le contrôle des transferts(gestion des pertes de données).

Pour les utilisateurs, MPEG-4 aura de nombreuses possibilités qui pourront être accessibles à partir d'un simple terminal. Voici un large éventail de toutes les applications concernées par les apports d’une telle standardisation:

  1. La communication temps réel(vidéophone, ...)
  2. La surveillance.
  3. Le multimédia mobile(mini portable faisant office de téléphone, fax, agenda, ... par liaison GSM ou satellite).
  4. Le stockage et la recherche d’informations basés sur le contenu.
  5. La lecture de vidéo sur Internet/Intranet sans avoir à télécharger toute la source.
  6. La visualisation de scènes simultanément à plusieurs endroits(téléconférence, ...).
  7. La transmission(tout types de données : vidéo, audio, ...).
  8. La postproduction(cinéma et télé).
  9. Le DVD.
  10. Les applications de l’animation de visages: réunions virtuelles, ...
  11. La hiérarchisation et la gestion des objets audio dans une scène.
Buts de la standardisation:

Pour toutes ces applications, les buts de la standardisation MPEG-4 sont:

Description Technique(essentiellement, l'aspect visuel de la norme.):

Structure générale, description:

La norme MPEG-4 propose une solution radicalement différente pour le codage des vidéos afin de satisfaire à tous ses besoins dans les différentes applications qu’elle propose. Les scènes audiovisuelles sont ainsi composées de plusieurs objets médias hiérarchisés. Ainsi, dans l'arborescence de cette hiérarchie, on trouve:

MPEG-4 définit donc précisément la manière de décrire une scène. La description d'une scène codée par MPEG-4 peut être comparée au langage VRML dans sa structure et ses fonctionnalités.

Description d’une scène:

Une scène audiovisuelle, codée par MPEG-4, est décrite comme un ensemble d'éléments individualisés. Elle contient des composants "média" simples regroupés par type. Ces groupe correspondent aux branches d’un arbre de découpage où chaque feuille représente un élément simple. Par exemple, si cette branche correspondait à une personne qui parle, elle serait divisée en feuilles contenant le fond, la parole et les divers composants graphiques représentant la personne en train de parler. Une telle construction permet ainsi la construction de scènes complexes tout en autorisant l'utilisateur à ne manipuler qu'une partie des objets. Un objet média peut donc être associé à une information. MPEG-4 fournit des méthodes de codage pour les objets individuels.

La norme permet également d’optimiser le codage de plusieurs objets dans une scène. L’information nécessaire à la composition d’une scène est contenue dans la description de la scène. Celle-ci est codée et transmise avec les objets média. Ainsi, pour faciliter l’interactivité, la description de la scène est codée indépendamment des "Objets média" primitifs. Une grande attention est portée sur l’identification des paramètres relatifs à la scène. Ces paramètres sont donnés par différents algorithmes qui codent de façon optimale les objets. MPEG-4 autorise la modification de ces paramètres sans avoir à décoder les objets média. Pour cela, ils sont placés dans la partie description de la scène et non avec les objets média. Plus généralement, MPEG-4 standardise la façon de décrire une scène, en permettant par exemple:

Mais quelles sont exactement les informations données dans la description d’une scène? La première information donne la façon de coder un groupement d’objets. Une scène MPEG-4 suit une structure hiérarchique qui peut être représentée comme un graphe acyclique. Chaque feuille du graphe représente un objet média. La structure de l’arborescence n’est pas nécessairement statique; les "feuilles"(avec leurs paramètres de positionnement) peuvent être changées. On peut aussi envisager d’en supprimer, d’en remplacer ou même d’en ajouter.

La deuxième information donne le positionnement spatial et temporel des objets. Dans le modèle MPEG-4, les objets audiovisuels sont à la fois spatiaux et temporels. Chaque objet média a un système de coordonnées locales. Par ce système il est possible d’attribuer un "état" spatio-temporel et une échelle à chaque objet. Les objets média sont disposés dans la scène après avoir subi une transformation du repère local au repère global, transformation définie par un de ses parents.

La troisième information donne la valeur qui est attribuée à la sélection. Chaque nœud et feuille de l’arbre contient un panel d’informations. Certaines sont accessibles et d’autres restent fixes. Il est donc possible de les paramétrer à loisir suivant les informations données par l’acteur et des contraintes définies par l’auteur.

Enfin, la dernière information autorise une autre transformation pour les objets média. La structure d’une scène MPEG-4 est fortement influencée par le concept de VRML et ses possibilités d’interaction. Ceci représente l’ambition majeure de MPEG-4.

Interaction avec les objets "média" dans une scène MPEG-4:

L'utilisateur visualise en général des scènes respectant le dessein de leur auteur. Mais, suivant la liberté que ce dernier autorise, l'utilisateur a la possibilité d'interagir avec la scène, ce qui lui permet entre autres:

Codage des objets vidéo(VOP):

Vidéo naturelle, des outils standards:

Les outils servant à représenter les objets visuels naturels avec MPEG-4 doivent provenir d'une technologie standardisée permettant le stockage, la transmission et la manipulation de toutes les données de manière simple et efficace. Ces outils doivent permettre également de décoder et représenter les images ou les vidéos contenues dans des VO(Vidéo Objects) et de les associer à d'autres AVO(Audio-Video Objects) pour créer une scène. Pour atteindre ce but et éviter d'avoir une multitude d'applications non conventionnées qui effectueraient quelques-unes de ces fonctions, MPEG-4 propose des solutions et des algorithmes, regroupant la plupart des fonctionnalités demandées par MPEG-4 comme pour:

Toutes ces solutions seront fournies dans la partie visuelle de la norme MPEG-4.

Structure des outils de représentation des vidéos "naturelles":

Les algorithmes de codage des images et des vidéos MPEG-4 donneront une représentation rationnelle des objets vidéo, avec pour but de respecter les fonctionnalités basées sur le contenu. Mais MPEG-4 devra également supporter les fonctionnalités déjà fournies par MPEG-1 et MPEG-2, soit la compression efficace des images traditionnelles rectangulaires de différents formats, la fréquence des images, la profondeur des pixels, le taux de transfert, et les possibilités de re-dimensionnements spatial, temporel et qualitatif. MPEG-4 veut supporter les algorithmes permettant un transfert efficace à très faible taux de transmission(VLBV: Very Low Bit-rate Video, entre 5 et 64kBit/s) avec un taux de compression satisfaisant, une grande résistance aux erreurs et une faible complexité pour les applications multimédia temps réel.

Toutes ces applications, prévues pour de faible débit, devront être aussi efficaces à haut débit de transfert (jusqu'à 4MBit/s). L'idée d'un codage basé sur le contenu implique que MPEG-4 puisse coder et décoder séparément les différents "objets vidéo"(VO) d'une scène, afin de permettre une gestion simplifiée de l'interactivité, la manipulation et la représentation des objets vidéo, ainsi que le mélange entre objets naturels et objets synthétiques (comme par exemple une scène avec un fond virtuel et des personnages réels). Mais les algorithmes supplémentaires nécessaires à la gestion du codage basé sur le contenu ne devront être qu'un ensemble additionnel d'outils aux VLBV et HBV déjà utilisés dans MPEG-1 et MPEG-2.

Codage des textures et des images fixes:

MPEG-4 utilise les algorithmes basés sur la méthode des ondelettes(wavelet) pour compresser ce type d'images. En effet, cette compression est très efficace quel que soit le taux de transfert, tout en conservant ses capacités d'adaptabilité spatiale et qualitative, ce qui est non négligeable pour résoudre les problèmes d'interactivités (notamment pour les changement de vue) et de texture des objets 2D et 3D dans les images virtuelles.

Objets synthétiques:

Les objets synthétiques englobent une importante partie de l'imagerie par ordinateur. Ces objets sont décrits de façon paramétrique, suivant un modèle que l'on peut diviser en 4 parties:

Animation du visage:

L'animation d'un visage se fait à partir d'un modèle ayant une expression neutre(FDP: Facial Definition Parameter) contrôlé par une série de paramètres contenus dans le FAP(Facial Animation Parameter). Pour animer un visage, il suffira donc de télécharger le modèle, et d'envoyer les paramètres contrôlant le mouvement du visage qui se traduiront alors sur le visage neutre à l'aide d'un système prévu à cet effet par MPEG-4(FIT: Face Interpolation Technique). Ce système possède l'avantage de n'avoir besoin que d'un visage neutre permettant d'une part d'accélérer la formation des mouvements et, d'autre part, de pouvoir en créer de nouveau sans avoir de modèle d'expression prédéfini. La partie du standard relative à l'animation des visages permet d'envoyer des paramètres de calibrage et d'animation des visages synthétiques. Ces modèles ne sont pas standardisés par la norme MPEG-4, seuls les paramètres le sont:

Animation du corps:

La technologie d'animation du corps proviendra directement de celle du visage, afin de garder l'esprit de standardisation de la norme MPEG-4.

Animation des maillages 2D:

Le maillage 2D est une partition d'un espace 2D par des polygones eux-mêmes référencés par une liste de nœuds. La norme MPEG-4 utilise uniquement le type de maillage triangulaire, longtemps utilisé pour la représentation d'objets 3D. Ainsi, la modélisation par maillage triangulaire peut être considérée comme la projection d'un maillage 3D sur une image plane. MPEG-4 a voulu utiliser un maillage dynamique triangulaire pour conserver la facilité de manipulation et les multiples fonctionnalités qu'offre cette solution pour les objets 3D, comme pour la manipulation d'objet vidéo:

Pour la compression:

Pour le codage des maillages 2D à structure implicite:

Échelonnage en fonction des vues:

En fonction de la façon dont on regarde une scène, toutes les informations ne sont pas nécessaires. L'échelonnage permet de sélectionner uniquement la partie utile de l'information, et donc de transférer une masse d'informations considérablement réduite entre la base de données et l'utilisateur, données qui seront traitées sous cette forme réduite au codage et au décodage(compression). Cette méthode est de plus applicable aussi bien avec les ondelettes qu'avec le codeur DCT(Discrete Cosine transform).

Codage des formes et de la transparence:

Le codage des formes sera supporté dans l'assistance à la description et à la composition des images et des vidéos conventionnelles aussi bien qu'à celles des objets vidéo. Les applications bénéficiant des cartes binaires de formes sont surtout les représentations d'images basées sur le contenu pour les images des bases de données, des jeux interactifs, la surveillance et l'animation. Des techniques sont fournies pour permettre un codage efficace des formes binaires. Une carte de transparence binaire définit si un pixel appartient ou non à un objet.

Le codage des formes en "niveaux de gris" ou en "transparence". Une carte "alpha" définit la transparence d'un objet, qui n'est pas nécessairement uniforme. Des cartes de transparence multi-niveaux sont fréquemment utilisées pour superposer les différents "calques" des séquences d'images. D'autres applications bénéficiant des cartes binaires de transparence sont les représentations d'images basées sur le contenu pour les images des bases de données, des jeux interactifs, la surveillance et l'animation. Des techniques efficaces sont prévues, permettant un codage efficace aussi bien en niveaux de gris qu'en transparence. Une carte de transparence binaire définit si un pixel appartient ou non à un objet. Une carte des niveaux de gris définit la transparence exacte de chaque pixel.

Les outils de MPEG-4:

Le standard visuel de la norme MPEG-4 permettra de coder des images et des vidéos avec des scènes synthétiques créées par ordinateur. A cette fin, le standard visuel contiendra aussi bien des outils et des algorithmes supportant le codage d'images réelles et de vidéos que des outils supportant la compression de paramètres synthétiques 2D et 3D(maillages, textes, ...). Voici un aperçu des fonctionnalités qui seront supportées par les différents outils et algorithmes du standard visuel de la norme MPEG-4.

Fonctionnalités supportées par les outils de MPEG-4:

Fonctionnalités conventionnelles et basées sur le contenu:

La différence entre un codeur VLBV, et un codeur MPEG-4 tient compte de l'aspect basé sur le contenu. Les deux codeurs présentent de nombreuses similitudes, mais le codeur basé sur le contenu possède une extension pour la gestion des formes(shape) et de la transparence. Les avantages des fonctionnalités basées sur le contenu sont:

Adaptabilité du codage des "objets vidéo":

MPEG-4 code tous les types d'images(images naturelles rectangulaires ou objets à contours complexes). L'adaptabilité de ce codage vient des préférences qu'on peut lui donner en fonction des besoins, comme par exemple:

Le but du codage MPEG-4 étant de donner à n’importe quel utilisateur les mêmes possibilités d’utilisation, quelles que soient ses capacités matérielles, la norme est donc faite de manière à pouvoir s’adapter aux besoins et aux exigences de l’utilisateur. Ainsi, l’adaptabilité de la norme se fait sur différents champs:

Cette adaptabilité permettra à tous les utilisateurs du réseau d'avoir accès aux applications temps-réel quelle que soit la configuration de leur machine(surtout si celle-ci est limitée).

L’interaction:

MPEG-4 permet à l’utilisateur de ne plus être passif. L’utilisateur gère les informations qu’il désire. Il y a deux types d’interactions :

Le but est de permettre au client de pouvoir supprimer des informations qu’il ne désire pas ou bien d’accéder à une surcharge d’information(ex : changement de langage ...). En outre, l’utilisateur peut modifier les attributs de la scène en changeant la position des objets, les rendant visibles ou invisibles, en changeant la police des caractères, la couleur ou encore le volume sonore d’un acteur de la scène(par exemple un acteur peut être isolé dans une scène, il sera possible d’isoler également ses dires et de supprimer toute autre source sonore). Du côté du serveur, son action peut permettre par exemple de changer de publicité au cours d’un match de hockey automatiquement, il peut accéder aux mêmes données que le client, mais peut se réserver le droit d’empêcher certaines interactions.

Les droits de propriétés intellectuelles:

MPEG-4 traite le problème des droits de propriétés intellectuelles par insertion dans les objets d'un code d'identification(IPI) donnant des informations sur le contenu, le type du contenu et les droits attenant à l'objet en question. Les données contenues dans l'IPI et associées à chaque objet peuvent différer, même pour des objets appartenant à une même image(par ex: droits libres sur le fond, mais restreints sur le personnage). L'insertion de l'IPI au moment du codage implique également l'insertion des mécanismes de protection équivalent aux droits sur l'image(protection contre les copies, facturation, ...). Pour réaliser une protection efficace, les mécanismes utilisés sont très complexes et sont développés sous le titre de "IPMP" ...

Informations contenues dans les objets:

MPEG-4 permettra aussi d'attacher aux objets des informations complémentaires sur eux et leur contenu. Ces informations(OCI) pourront être envoyées textuellement en même temps que les objets, et pourront être classifiées suivant des tables prédéfinies même en dehors de la norme.

Les formats supportés:

Efficacité de la compression:

Les outils de MPEG-4 version 1:

MPEG-4 fournit un large et riche éventail d'outils pour le codage des objets audiovisuels. Dans le but de permettre une implantation effective du standard, des sous-ensembles des outils Système, Vidéo et Audio de MPEG-4 ont été identifiés afin de n'être utilisés que pour des applications spécifiques. Ces sous-ensembles, appelés "profils", limitent l'ensemble d'outils qu'un codeur aura à implanter. Pour chacun de ces profils, un ou deux "niveaux" ont été mis en place pour restreindre la complexité de calcul.

L'approche est similaire à celle de MPEG-2, alors que la plus connue des combinaisons Profil/Niveaux est: "Profil principal @ Niveau principal". Une combinaison "Profil@Niveau" permet à un programmeur de codeur de n'implanter que les sous-ensembles du standard dont il a besoin, tant qu'il maintient la compatibilité avec d'autres outils MPEG-4 construit sur la même combinaison. De tester si ce module MPEG-4 respecte le standard(test de la conformité). Les profils existent pour différents types de médias(audio, vidéo et graphiques) et pour la description de scènes. MPEG ne conseille pas de procéder à des combinaisons de ces profils mais toutes les précautions ont été prises pour que les différents types de médias se complètent aisément.

Profils visuels:

La partie visuelle du standard fournit des profils pour le codage des contenus visuels naturels, synthétiques et hybrides naturel/synthétique. Il y a en tout cinq profils pour le visuel naturel:

Les profils pour les contenus visuels synthétiques et hybrides naturel/synthétique sont:

Profils audio:

Quatre profils audio ont été définis:

Profils graphiques:

Les profils graphiques définissent quels éléments graphiques et textuels peuvent être utilisés dans une scène. Ces profils sont définis dans la partie Système du standard:

Les profils de description de scène:

Les profils de description de scène, définis dans la partie système du standard, permettent de créer des scènes audiovisuels avec seulement de l'audio, du 2D, du 3D ou du 2D/3D mixés:

Les profils de description d'objets:

Ils comprennent les outils suivants:

Actuellement, seul un profil est défini et inclut tous ces outils. La raison principale de la création de ce profil n'est pas de créer des sous-ensembles d'outils mais plutôt de leur définir des niveaux. Ceci s'applique spécialement à l'outil de synchronisation des couches, MPEG-4 utilisant différentes bases de temps. En introduisant des niveaux, il est alors possible, par exemple, de n'autoriser qu'une seule base de temps.

Problèmes ouverts:

MPEG-4 est une révolution, tant du point de vue de sa structure physique, que de l'idéologie qui en découle. C'est la base de tout ce qui touchera la communication et le multimédia dans les années à venir, et quand on voit l'explosion de toutes ces technologies, on imagine l'importance d'une telle norme. MPEG-4 n'en est qu'à ses débuts, mais ses applications sont vastes et beaucoup de choses ont déjà été réalisées. Malgré tout, le travail à effectuer est encore long avant d’obtenir des résultats convainquant pour tous les compartiments de la norme. En particulier, il reste deux problèmes majeurs à résoudre pour le codage des vidéos naturelles, à savoir, l'estimation de mouvement et la segmentation de la vidéo en objets.




Retour à la page principale.