3.1.4 Différents standards de
télévision en couleur
Systèmes de codage des signaux de
chrominance
Le système NTSC (National Television System Committee,
ou ironiquement "Never Twice Same Color") : est un standard à 30
images/s et il se trouve essentiellement aux Etats Unis, au Japon et dans le
sud-est asiatique. Il utilise pour la chrominance une modulation d'amplitude en
quadrature avec porteuse supprimée
Le système SECAM (Séquentiel Couleur à
Mémoire) : est un standard à 25 images/s et il est
essentiellement diffuser en France. Il utilise pour la chrominance une
modulation de fréquence de la sous porteuse avec transmission
séquentielle.
Le système PAL (Phase Alternation line) : est une
amélioration du système NTSC.c'est un standard à 25
images/s et est diffusé essentiellement dans les pays de l'Europe de
l'Ouest, dont la France. Il utilise pour la chrominance une modulation
d'amplitude en quadrature avec porteuse supprimée.
Le PALplus constitue l'adaptation du PAL aux normes 16/9.
Idéale parce que 100 % compatible, il est destiné à
améliorer la qualité de l'image produite par les appareils
équipés d'un décodeur PALplus. Il s'agit vraisemblablement
de la dernière évolution d'un standard analogique en attendant le
grand saut vers MPEG2 numérique.
3.1.5 Numérisation des signaux analogiques
Définition des fréquences
d'échantillonnage des signaux analogiques pour plusieurs niveaux de
qualité :
Le niveau standard, utilisé par la majorité des
équipements vidéo en studio est le 4:2:2. Il est
transporté par l'interface numérique série à 270
Mbits/s et disponible dès la sortie de la caméra.
La dénomination 4:2:2 indique avec quel multiple d'une
fréquence unitaire seront échantillonnés les signaux de
luminance et de chrominance. Cette fréquence unitaire commune aux
systèmes 625 et 525 lignes est de 3,375 Mhz.
Le multiplexage des signaux Y, Cr et Cb aux fréquences
d'échantillonnage de 13.5 Mhz, 6.75 Mhz et 6.75 Mhz donne une
fréquence d'horloge de 27 Mhz pour chacun des 8 ou 10 bits.
Le taux de transfert total est donc de 270 Mbits/s en 10 bits (27
x 10) et de 216 Mbits/s en 8 bits (27 x 8).
Le débit utile, qui ne considère que la partie
affichable de l'image, est de 207 Mbits/s en 10 bits et de 166 Mbits/s en 8
bits.
3.1.6 Techniques de codage utilisées en
télévision numérique (norme de codage MPEG1, MPEG-2,
MPEG-4)
Compression de l'image
Le signal de télévision est formé d'une
succession d'images dans le temps. La réduction du débit est
fondée sur le fait qu'à l'intérieur des images et entre
des images successives il existe des redondances. Les techniques de
réduction de débit comprennent donc :
Une phase qui exploite la redondance spatiale interne à
une image. Le codage spatial se repose sur les similitudes entres les pixels
d'une image et sur les fréquences spatiales dominantes de la
région traitée ;
Une phase qui exploite la redondance temporelle entre images
successives. Celle- ci est réduite en premier en utilisant les
similitudes entres les images successives ;
Un codage à longueur variable.
La D.C.T (Discrete Cosine Transform)
L'algorithme "intra-image" le plus connu utilise la
Transformation en Cosinus Discrète (DCT : Discrete Cosine -Transform).
Il consiste essentiellement à diviser l'image en blocs de 8x8 pixels et
à transformer les 64 échantillons de luminance (ou de
différences de couleur) obtenus en 64 coefficients par Transformation en
Cosinus Discrète.
Ces 64 coefficients ont un débit supérieur aux
64 échantillons. La réduction de débit résulte du
fait que beaucoup de ces coefficients (en particulier ceux qui correspondent
aux fréquences élevées) sont proches de zéro et ne
sont donc pas transmis. Les coefficients non nuls peuvent être
quantifiés sur un nombre restreint de bits et le flux de données
série est constitué par une lecture en zigzag du tableau sans
dégradation perceptible de la qualité
Le codage
Le codage à longueur variable est réalisé
d'abord par un codage "entropique" suivi d'un codage de Huffman. Le codage de
Huffman exploite les propriétés statistiques des coefficients
quantifiés pour diminuer le débit de transmission en utilisant
des mots courts pour représenter les événements les plus
probables et des mots plus longs pour les occurrences rares.
Organisation d'une séquence
vidéo
Les images d'une séquence sont organisées en
groupes d'images : GOP (group of pictures) longueur : nombre d'images entre 2
images de type I (typique : N=12) ; nombre d'images entre 2 images type P (DVB
: M=3).
Pour coder un groupe d'images, nous devons utiliser une trame
complète (appelée trame Intra, I) comme base de codage des autres
trames.
Il y 3 types de trames :
Images I (Intra) : codées sans prédiction, elles
servent de référence, la taille moyenne du message est de 1000
kbit ;
Images P (Prédites) : définies à l'aide de
vecteurs de mouvements à partir des images passées. La taille
moyenne du message est de 300 kbit ;
Images B (Bidirectionnelles) : interpolées à partir
d'images passées et futures de type I et/ou P. la taille moyenne du
message est de 100 kbit ;
Structure d'un groupe d'image N = 12 et M = 3 (standard DVB)
Les différentes normes de codages
La norme MPEG-1
Structure d'une séquence vidéo
MPEG-1
Une image animée est en fait une suite d'images
décrivant un mouvement. Le nombre d'images par seconde doit être
suffisant pour donner à l'oeil une sensation de fluidité. Le taux
idéal est de 24 images par seconde. A cette fréquence, l'oeil
perçoit le mouvement de façon claire. A 40 Hz le mouvement est
suffisamment fluide pour un confort optimal de l'oeil. La technique la plus
utilisée pour augmenter cette fréquence est l'entrelacement qui
permet d'afficher plus vite une image en la décomposant en ligne paires
et lignes impaires. La fréquence de balayage est donc doublée et
permet d'atteindre des fréquences plus élevées.
La norme de compression MPEG1 reprend ce principe de
succession d'image et l'étend pour donner naissance à une
véritable hiérarchie. La séquence vidéo est
décomposée en plusieurs parties, elles- mémes
décomposées en d'autres parties, et ainsi de suite... Le niveau
de complexité de cette structure est assez profond, nous allons
l'étudier en détail, voir figure 9.
Une séquence vidéo est décomposée
en groupes d'images qui sont l'âme du principe de codage MPEG, en effet
chaque image de ce groupe d'images a sa fonction propre dans ce groupe selon
son type et son emplacement. Chaque image est décomposée en
bandes qui sont des moyens de resynchroniser la décompression si une
erreur survenait. Cela permet donc de ne pas jeter une image en cas d'erreur au
sein de celle-ci. La bande est un groupe de macroblocs qui sont, dans le cas du
MPEG1, composés de quatre blocs de luminance (Y) et de deux blocs de
chrominance (Cb et Cr). Le macrobloc est l'unité de codage de base pour
ce que nous définirons comme la prédiction de mouvement et qui
nous servira pour le codage vidéo. Enfin le bloc est la plus petite
entité de cette hiérarchie, il permet de réduire les
redondances spatiales. Le bloc est un carré de 8*8 pixels.
Techniques de codage MPEG-1 Codage des images
Les normes MPEG prévoient comme format d'entrée
pour les images le format YCbCr. Où Y sont la luminance (le degré
de luminosité du pixel) et Cb et Cr les composantes de chrominance (la
teinte du pixel). Il existe plusieurs formats YCbCr différenciés
par le nombre de bits codant chacune des composantes. La norme MPEG1 utilise le
format 4:2:0, ce symbole indique pour chacune des composantes, sur un
carré de 4 pixels, combien sont échantillonnés sur 8 bits.
Dans ce cas, la composante Y est codée sur tous les pixels, alors que
sur 4 pixels, les composantes Cb et Cr sont sous échantillonnés :
les 4 pixels partagent les 8 bits codant chaque composante de chrominance. Sur
un carré de 4 pixels nous avons donc : 4×8 + 1×8 + 1×8 =
48 bits de codage, ce qui donne en moyenne 12 bits par pixel. La raison du sous
échantillonnage de la chrominance et pas de la luminance vient d'une
particularité de l'oeil humain qui est plus sensible aux écarts
de luminosité qu'aux variations de teinte ; en exploitant cette
particularité, il nous est donc possible de compresser l'image en
réduisant le nombre de bits nécessaires pour la coder.
Une image dans la norme MPEG1 est décomposée en
trois matrices qui sont la composante de luminance (Y) et les deux composantes
de chrominance de l'image (Cr et Cb). On peut comparer ceci à des
pochoirs qui se compléteraient en les superposant pour donne l'image que
l'on veut utiliser. Chaque pochoir détenant une information que ne
détiennent pas les autres.
L'image à un format totalement différent selon
le rôle qu'elle tient dans le groupe d'image d'où elle est issue.
Nous parlerons de trois types d'images :
Les images Intra (I) : ces images sont des points de
resynchronisation dans le cas d'une erreur. En effet, elles ne tiennent compte
d'aucune autre image passé ou futur et sont codées uniquement sur
leur contenu ; on parle alors de codage inter-image. Ce sont les images qui
contiennent le plus d'informations et donc les plus critiques en cas d'erreur
de transmission. Ces images sont les premières d'un groupe d'image car
elles contiennent toutes les informations nécessaires pour leur
décodage. Elles servent également de références
aux
autres types d'images suivantes ou éventuellement
précédentes. Les techniques de codage et de compression
employées seront expliquées par la suite.
Les images Prédictives (P) : ce type d'image est, comme
son nom l'indique, prédite d'une image précédente de
référence (une image I ou une autre image P). Les informations
utilisées sont les macroblocs d'images précédentes qui se
retrouvent dans l'image P courante. On recherche les macroblocs de l'image
courante dans l'image de référence et on indique, si on le
trouve, le déplacement effectué grâce à un vecteur
de mouvement. Dans le cas où le macrobloc ne se trouverait pas dans
cette image de référence, un codage de type I est utilisé
sur ce macrobloc. Ce type d'image a une taille égale, en moyenne,
à 30-50% de la taille d'une image I.
Les images Bidirectionnelles (B) : Ce sont les images les
mieux compressées, donc celles qui sont les plus sensibles aux erreurs.
Ces images nécessitent deux points de référence dans le
flux vidéo ou plus précisément dans les groupes d'images
dont elles sont issues. Elles nécessitent en effet une image I ou P
future ou passée pour pouvoir être construites. Pour chaque
macrobloc le meilleur macrobloc codé précédemment et le
meilleur codé postérieurement sont utilisés et une moyenne
est faite pour coder le macrobloc de l'image B courante. Comme pour les images
P, les informations que l'on ne peut retrouver dans une image
précédente ou suivante sont codées selon un codage
similaire à celui utilisé pour les images I. Ces images font
à peu près 50% de la taille d'une image P.
La bande
Les bandes sont des points d'accès aléatoires
dans une image au même titre que les GOP sont des points d'accès
aléatoires dans une séquence vidéo. En cas d'erreur, cette
sous structure de l'image permet de ne pas avoir à ignorer
entièrement l'image. Si une bande est corrompue, on passe à la
suivante sans casser l'image courante. Une bande contient toutes les
informations nécessaires à l'emplacement des macroblocs qui la
constituent sur l'écran.
La présence d'une grande quantité de bandes dans
une image permet une plus grande fiabilité en cas d'erreur (moins
d'information seront perdues) mais nécessite une plus grande
quantité de codes. Un équilibre doit donc être
trouvé. C'est pour cela que la taille d'une bande est variable et n'est
donc pas définie dans la norme MPEG.
Le bloc
Dernier composant utile de cette structure
hiérarchique, le bloc sert au codage effectif des informations visuelles
de l'image. Les blocs sont des carrés de 8×8 pixels et codent la
composante Y, Cb ou Cr. Des algorithmes mathématiques de codage et de
compression sont utilisés pour permettre une réduction du volume
de données nécessaires. Au sein du même bloc des
redondances, dites spatiales, font que certains pixels proches sont identiques,
cette redondance est gommée en appliquant sur chaque bloc une
Transformée en Cosinus Discrète (DCT). Ceci permet, depuis une
matrice (3 matrices (Y, Cb, Cr) constituent un bloc) codant la valeur de chaque
pixel selon chaque composante, d'obtenir une matrice de fréquences
spatiales. Cette matrice représente en fait la transition des couleurs
dans le bloc. Ces 64 coefficients sont ensuite quantifiés, c'est
à dire qu'on les divise par une certaine valeur afin de diminuer le
nombre d'informations nécessaires pour le codage. Un parcourt en zigzag
de la matrice obtenue permet de créer un vecteur unidimensionnel avec
pour premier élément le coefficient DC, sorte de coefficient de
référence au bloc, et ensuite les AC dont la fréquence
augmente vers la droite et vers le bas.
La quantification permet, en arrondissant d'obtenir des suites
de zéros. Ces zéros sont des éléments qui ne
pourront plus être reconvertis par transformation inverses. En effet, la
DCT est réversible et sans pertes, mais la réduction par exemple
de 0.015 à 0 engendre une perte d'information. La qualité sera
donc altérée. Le pas de quantification, c'est-à-dire la
valeur par laquelle les coefficients DCT sont divisés définit la
perte de qualité : plus il est grand, plus important est le nombre de
valeurs réduites à zéros et donc plus importante est la
perte d'informations. Ainsi sur un bloc très détaillé (un
oeil par exemple) le pas sera petit, alors que sur une zone moins
précise (un petit coin de ciel bleu) le pas sera plus grand.
Pour le moment, des techniques de codage ont été
utilisées, mais aucune n'ont assuré la compression des
données. Notre vecteur unidimensionnel obtenu est soumis à un
codage en run-length permettant de coder une chaîne de nombres identiques
en indiquant la valeur du nombre répété et son
occurrence.
La norme MPEG-2
MPEG2 a été définie partiellement en 1994
et regroupe neuf recommandations dont certaines ont été
définies plus tard. Cette norme a une compatibilité ascendante
avec MPEG1 et permet donc de lire des flux MPEG1. Elle a été
créée afin de répondre aux limitations de MPEG1 dont la
qualité était insuffisante pour certains types d'applications.
Les formats d'entrée
SIF (Source Input Format) est un format de vidéo
numérique. Il décrit la résolution spatiale et le format
d'échantillonnage des couleurs. Deux formats ont été
définis, les formats SIF NTSC et SIF PAL/SECAM.
Ces formats sont utilisés comme format d'entrée
pour le MPEG1. Nous remarquons que les composantes de chrominance sont sous
échantillonnées par rapport à la composante luminance et
nous en avons déjà expliqué les raisons.
MPEG-2 permet d'utiliser comme format de couleurs en
entrée 4:4:4, 4:2:2 et 4:1:1 en plus du 4:2:0 du MPEG1. De plus
l'utilisation des formats CIF et QCIF est possible.
Les améliorations du codage
Quelques subtilités ont été ajoutées
au codage MPEG2. Elles permettent généralement une plus grande
précision au niveau du codage :
Taille des macroblocs de 16×8 et 16×16 pixels au lieu
de 16×16 uniquement La précision des vecteurs de mouvement passe de
un à un demi pixel.
Des algorithmes de codage ont été également
optimisés pour pouvoir améliorer la compression :
Table de Huffman améliorées
Balayage alternatif des pixels des blocs pour le codage.
D'autres améliorations ont également
été apportées mais l'aspect le plus important du MPEG2
sont les notions de profiles et de codage hiérarchique.
La norme MPEG-4
Codage visuel
Les objets visuels codés peuvent être naturels ou
synthétiques, en 2D ou en 3D, fixes ou mobiles. Un objet peut être
un personnage se déplaçant, un objet fixe déplacé
à un moment donné, Ces objet peuvent être eux-mêmes
composés d'autres objets (les membres de la personne, sa tête,...)
et ainsi former une structure hiérarchique en arbre. MPEG4 fournit ainsi
des outils permettant le codage et la manipulation des objets visuels.
La compatibilité avec MPEG 1 & 2 est assurée
par l'acceptation au niveau du codage de l'utilisation des images comme
unité de codage ; c'est à dire que le flux vidéo peut
être codé (et donc décodé) soit selon la
méthode MPEG 1 ou 2 (gestion d'image rectangulaire, compensation de
mouvement...) ou utiliser la notion d'objets, donc de formes remarquables au
sein de l'image (contour d'un personnage, d'un objet,...). MPEG4 apporte au
codage vidéo des normes de génération
précédente, des outils permettant d'améliorer
l'efficacité du codage. Ces outils dépendent du style d'objet
à coder et permettent d'améliorer, dans un flux MPEG4,
l'efficacité du codage et du décodage ; un flux MPEG2 sera
décodé comme un flux MPEG2 standard.
La compression du signal vidéo
Mais comme le poids des images numérisées est
trop important, il est nécessaire de les compresser et de ne faire
voyager que les codes qui ont changés. Comme le signal a
été découpé en une série de codes, il est
possible d'envoyer uniquement ceux qui ont changé par rapport à
l'image précédente. Pas besoin d'encombrer les ondes avec des
choses que l'on a déjà. Bilan : on gagne de la place et on va
l'occuper avec de nouveaux programmes.
|