Partager via


À propos de la vidéo YUV

La vidéo numérique est souvent encodée dans un format YUV . Cet article explique les concepts généraux de la vidéo YUV, ainsi qu’une certaine terminologie, sans approfondir les mathématiques du traitement vidéo YUV.

Si vous avez travaillé avec l’infographie, vous êtes probablement familiarisé avec la couleur RVB. Une couleur RVB est encodée à l’aide de trois valeurs : rouge, vert et bleu. Ces valeurs correspondent directement à des parties du spectre visible. Les trois valeurs RVB forment un système de coordonnées mathématiques, appelé espace de couleurs. Le composant rouge définit un axe de ce système de coordonnées, le bleu définit le deuxième et le vert définit le troisième, comme illustré dans l’illustration suivante. Toute couleur RVB valide se trouve quelque part dans cet espace de couleurs. Par exemple, le magenta pur est 100 % bleu, 100 % rouge et 0 % vert.

diagramme montrant l’espace colorimétrique rvb

Bien que RVB soit un moyen courant de représenter les couleurs, d’autres systèmes de coordonnées sont possibles. Le terme YUV fait référence à une famille d’espaces de couleurs, qui encodent tous les informations de luminosité séparément des informations de couleur. Comme RVB, YUV utilise trois valeurs pour représenter n’importe quelle couleur. Ces valeurs sont appelées Y', U et V. (En fait, cette utilisation du terme « YUV » est techniquement inexacte. Dans la vidéo sur ordinateur, le terme YUV fait presque toujours référence à un espace de couleur particulier nommé Y’CbCr, abordé plus loin. Toutefois, YUV est souvent utilisé comme terme général pour tout espace de couleur qui fonctionne selon les mêmes principes que Y’CbCr.)

Le composant Y', également appelé luma, représente la valeur de luminosité de la couleur. Le symbole premier (') est utilisé pour différencier luma d’une valeur étroitement liée, la luminance, qui est désignée Y. Luminance est dérivée de valeurs RVB linéaires , tandis que luma est dérivé de valeurs RVB non linéaires (corrigées gammament). La luminance est une mesure plus proche de la luminosité réelle, mais luma est plus pratique à utiliser pour des raisons techniques. Le symbole premier est fréquemment omis, mais les espaces de couleurs YUV utilisent toujours luma, et non la luminance.

Luma est dérivé d’une couleur RVB en prenant une moyenne pondérée des composants rouge, vert et bleu. Pour la télévision à définition standard, la formule suivante est utilisée :

Y' = 0.299R + 0.587G + 0.114B

Cette formule reflète le fait que l’œil humain est plus sensible à certaines longueurs d’onde de la lumière que d’autres, ce qui affecte la luminosité perçue d’une couleur. La lumière bleue apparaît plus grisée, le vert apparaît le plus brillant et le rouge est quelque part entre les deux. Cette formule reflète également les caractéristiques physiques des phosphores utilisés dans les premiers téléviseurs. Une formule plus récente, prenant en compte la technologie de télévision moderne, est utilisée pour la télévision haute définition :

Y' = 0.2125R + 0.7154G + 0.0721B

L’équation luma pour la télévision à définition standard est définie dans une spécification nommée ITU-R BT.601. Pour la télévision haute définition, la spécification pertinente est ITU-R BT.709.

Les composants vous et V, également appelés valeurs chromas ou valeurs de différence de couleur , sont dérivés en soustrayant la valeur Y des composants rouge et bleu de la couleur RVB d’origine :

U = B - Y'

V = R - Y'

Ensemble, ces valeurs contiennent suffisamment d’informations pour récupérer la valeur RVB d’origine.

Avantages de YUV

La télévision analogique utilise YUV en partie pour des raisons historiques. Les signaux de télévision couleur analogique ont été conçus pour être rétrocompatibles avec les téléviseurs noir et blanc. Le signal de télévision couleur transporte l’information chromatique (vous et V) superposée au signal luma. Les téléviseurs noir et blanc ignorent la chroma et affichent le signal combiné sous forme d’image en nuances de gris. (Le signal est conçu de sorte que la chromaie n’interfère pas de manière significative avec le signal luma.) Les téléviseurs couleur peuvent extraire la chroma et convertir le signal en RVB.

YUV a un autre avantage qui est plus pertinent aujourd’hui. L’œil humain est moins sensible aux changements de teinte que les changements de luminosité. Par conséquent, une image peut avoir moins d’informations chromatique que les informations luma sans sacrifier la qualité perçue de l’image. Par exemple, il est courant d’échantillonner les valeurs de chroma à la moitié de la résolution horizontale des échantillons luma. En d’autres termes, pour tous les deux échantillons luma dans une ligne de pixels, il existe un échantillon U et un exemple V. En supposant que 8 bits sont utilisés pour encoder chaque valeur, un total de 4 octets sont nécessaires pour deux pixels (deux Y', un U et un V), pour une moyenne de 16 bits par pixel, soit 30 % de moins que l’encodage RVB 24 bits équivalent.

YUV n’est pas intrinsèquement plus compact que RVB. Sauf si la chroma est sous-échantillonnée, un pixel YUV a la même taille qu’un pixel RVB. En outre, la conversion de RVB en YUV n’est pas perdue. S’il n’y a pas de sous-échantillonnage, un pixel YUV peut être reconverti en RVB sans perte d’informations. Le sous-échantillonnage réduit la taille d’une image YUV et perd également certaines informations de couleur. Toutefois, si elle est effectuée correctement, la perte n’est pas significative.

YUV dans la vidéo de l’ordinateur

Les formules répertoriées précédemment pour YUV ne sont pas les conversions exactes utilisées dans la vidéo numérique. La vidéo numérique utilise généralement une forme de YUV appelée Y’CbCr. Essentiellement, Y’CbCr fonctionne en mettant à l’échelle les composants YUV sur les plages suivantes :

Composant Plage
Y' 16–235
Cb/Cr 16 à 240, 128 représentant zéro

 

Ces plages supposent une précision de 8 bits pour les composants Y’CbCr. Voici la dérivation exacte de Y’CbCr, à l’aide de la définition BT.601 de luma :

  1. Commencez par des valeurs RVB dans la plage [0...1]. En d’autres termes, le noir pur est 0 et le blanc pur est 1. Il est important de noter qu’il s’agit de valeurs RVB non linéaires (corrigées gamma).

  2. Calculez le luma. Pour BT.601, Y' = 0,299R + 0,587G + 0,114B, comme décrit précédemment.

  3. Calculez les valeurs de différence chromatique intermédiaires (B - Y') et (R - Y'). Ces valeurs ont une plage de +/- 0,886 pour (B - Y') et +/- 0,701 pour (R - Y').

  4. Mettez à l’échelle les valeurs de différence de chroma comme suit :

    Pb = (0,5 / (1 - 0,114)) × (B - Y')

    Pr = (0,5 / (1 - 0,299)) × (R - Y')

    Ces facteurs de mise à l’échelle sont conçus pour donner aux deux valeurs la même plage numérique, +/- 0,5. Ensemble, ils définissent un espace de couleur YUV nommé Y’PbPr. Cet espace de couleur est utilisé dans la vidéo de composant analogique.

  5. Mettez à l’échelle les valeurs Y’PbPr pour obtenir les valeurs Y’CbCr finales :

    Y' = 16 + 219 × Y'

    Cb = 128 + 224 × Pb

    Cr = 128 + 224 × Pr

Ces derniers facteurs de mise à l’échelle produisent la plage de valeurs répertoriées dans le tableau précédent. Bien sûr, vous pouvez convertir RVB directement en Y’CbCr sans stocker les résultats intermédiaires. Les étapes sont répertoriées séparément ici pour montrer comment Y’CbCr dérive des équations YUV d’origine fournies au début de cet article.

Le tableau suivant montre les valeurs RVB et YCbCr pour différentes couleurs, à l’aide de la définition BT.601 de luma.

Color R G B Y' Cb Cr
Noir 0 0 0 16 128 128
Rouge 255 0 0 81 90 240
Vert 0 255 0 145 54 34
Bleu 0 0 255 41 240 110
Cyan 0 255 255 170 166 16
Magenta 255 0 255 106 202 222
Jaune 255 255 0 210 16 146
Blancs 255 255 255 235 128 128

 

Comme le montre ce tableau, Cb et Cr ne correspondent pas à des idées intuitives sur la couleur. Par exemple, le blanc pur et le noir pur contiennent tous deux des niveaux neutres de Cb et de Cr (128). Les valeurs les plus élevées et les plus basses pour Cb sont respectivement bleues et jaunes. Pour Cr, les valeurs les plus élevées et les plus basses sont rouge et cyan.

Pour plus d'informations

Types de médias vidéo

Types de média