|
Comprendre
le codage couleur YUV
Pierre-Alain Dorange - juin 2001 |
|
|
Au départ les camescopes et autres outils de capture vidéo acquièrent l'image au travers d'un capteur CCD qui convertit la lumière reçut en un triplet de 3 valeurs (3 composantes) pour chaque pixel de l'image. Le codage couleur est RVB (Rouge, Vert et Bleu) ce qui permet par combinaison de reconstituer toutes les couleurs. Chaque composante est définit généralement sur 8 bits (1 octect). Le codage RVB et aussi parfois noté RGB (Red, Green, Blue). Le codage RVB des couleurs est aussi le codage utilisé par la télévision ou les écrans d'ordinateur pour reproduire les couleurs. Historiquement et techniquement, les signaux vidéos analogiques couleurs sont transportés dans un autre mode de représentation, on utilise un système nommé YUV. Ou Y représente la luminance et U, V les composantes Rouge et Bleu (chrominances). Ces 3 informations permettent de restituer au final les composantes RVB et apporte lavantage de permettre une compression facile des couleurs et de fiabiliser le transport du signal vidéo. Mais surtout la partie Y (luminance) permet une totalement compatiblilité avec les anciens équipements noir et blanc, ce qui a permis le déploiement de la diffusion couleur alors que la totalité des foyers étaient alors équipés de téléviseurs noir et blanc. |
|
image originale (codec DV PAL)
"Monster Inc.", dessin animé des Studios Pixar |
|
Y U V |
||
|
La distinction entre des vidéos personnelles et broadcast (qualité diffusable à la télé) vient en grande partie du type de codage YUV utilisé pour le signal vidéo. Ainsi le codec DV (utilisé par les camescopes numérique grand-public) utilise un YUV de 4:2:0 en PAL et 4:1:1 en NTSC; alors que la qualité broadcast du DV (DV50) utilise un YUV de 4:2:2, beaucoup plus fidèle au niveau des couleurs. |
| Quest-ce donc quun YUV de 4:2:2, 4:2:0 ou de 4:1:1 ? | |
|
Les 3 chiffres représentent la proportionnalité des composantes U et V par rapport à la luminance (Y) désigné par quantization en anglais. Ainsi en 4:2:2 on a 4 valeurs Y suivi de 2 valeurs U et 2 valeurs V pour coder la couleur dun bloc, soit YYYYUUVV. Dans le cas dun YUV de 4:1:1 on aura YYYYUV. La différence entre les 2 images se fera au niveau de la qualité de définition des couleurs (fidélité) et de la netteté des contours. On utilise aussi la notation YUV-9 ou YUV-12 par exemple qui indique le nombre de bits moyens pour décricre chaque pixel et le type d'entrelacement des composantes Y, U et V. Si vous disposez de photoshop vous pouvez visualiser facilement la conversion RGB <-> YUV et l'effet de quantization en extrayant d'un film DV une image fixe (en qualité supérieure). Ensuite ouvrez cette image avec Photoshop. Dans la palette couche, vous pouvez visualisez la couche R, V et B. Ensuite passer en mode Lab et vous visualiserez les couches qui correspondent approximativement au Y, U et V en vidéo. Il est a noter que l'effet de quantization DV rend difficile la réalisation d'incrustation sur fond bleu ou vert en post-production. |
| Le codage YUV en détails | |||||||||||||||||||||||||||||||
|
Un flux vidéo est composé dune succession dimages. Chaque image est composée de points (pixels) assemblés dans un bloc rectangulaire (taille image). Chaque pixels images comprend à une description de la couleur du point. Au niveau de lacquisition par un capteur CCD (photonumérique ou camescope) et de la diffusion vidéo (tube TV) le codage des couleurs est réalisé en RVB, cest à dire que chaque couleur est decrite avec 3 valeurs (ou composantes) : Rouge, Vert en Bleu; ce qui permet la description des couleurs possible de restitution (fig.1). Une image télé est en effet composeé de points et chaque point-image composé dun point Rouge, un Vert et un bleu. Le flux vidéo RVB est constitué de la suite des pixels de la première ligne, suivi de ceux de la deuxième et ainsi de suite. Le transfert de flux vidéo par contre est réalisé suivant un codage couleur différent, le codage YUV (fig.2) qui correspond à chaque point en 3 éléments :
Ce codage permet de séparer la luminescence (image en niveaux de gris) de la description couleur, ce qui permet de diminuer la quantité des composantes couleurs pour minimiser la taille du flux vidéo et d'assurer automatiquement une compatibilité avec des diffuseurs noir et blanc (TV). En conversion idéale on ferait correspondre à RVB un triplet YUV. Dans la réalité on convertit un flux de triplets RVB en un flux YUV suivant différents schémas. Par exemple, prenons un flux RVB ou Ri représente la composante Rouge du pixel numéro i :
on pourrait le convertir en YUV plein format en :
Cette
méthode nest pas ou peu utilisée. Pour ce faire il existe 2 techniques, qui donne lieu à 2 familles de codage YUV :
Le codage par plan sépare les flux Y, U et V, alors que le codage par bloc regroupe les pixels par blocs image de taille fixe (8x8 pixels le plus souvent) et les entrelacent suivant un schéma fixe (pattern). On utilise la notation Y:U:V pour indiquer les proportions respectives de Y, de U et de V. Ainsi la qualité broadcast (diffusion TV) utilise la proportion 4:2:2 ce qui indique que pour 4 Y on a 2 U et 2 V, soit au total 8 valeurs pour 4 pixels RVB dorigine. En mode par paquets (packed YUV) on aura donc en 4:2:2 le flux suivant :
Le codage par paquet est utilisé pour les normes DV (pro, pal ou ntsc) : voir fig.3, 4 et 5. Normes YUV les plus répandus
|
|
||||||||||||||||||||||||||||||
|
haut
de la page - © Le garage de la vidéo - reproduction
interdite
|