# YCbCr

Le modèle YCbCr ou plus précisément Y'CbCr est la formulation représentant l'espace colorimétrique d'un signal vidéo analogique, développé essentiellement pour traiter les problèmes observés lors de la télédiffusion hertzienne.
Toute image captée par un équipement optique ou caméra vidéo représente la somme des couleurs qui la composent, que le résultat produit apparaissent en couleur ou en noir et blanc. Ainsi, le signal Y' ou littéralement « i grec prime » concerne la luma à ne pas confondre avec la luminance relative notée Y; le symbole « prime » de Y' signifiant qu'une correction gamma est appliquée, par la somme des couleurs primaires rouge, bleu et vert.
Pour générer la donnée Y' combinée au signal de luminance (noir et blanc), les deux informations de chrominance Cb (Y' moins le bleu) et Cr (Y' moins le rouge) sont ajoutées. Lors de la réception du signal, les circuits du démodulateur ou du téléviseur peuvent regénérer le vert afin de reproduire l'image couleur dans son intégrité. Sur ce principe, en analysant Y' (Rouge + Vert + Bleu) et Cb (Y' - Bleu) ainsi que Cr (Y' - Rouge), la donnée pour le vert peut être recréé mathématiquement, en utilisant l'équation : Y' = 0,3 R' + 0,6 V' + 0,1 B'.

## Avantages et principes techniques

Ce standard a été développé à une époque où il fallait assurer la compatibilité entre des récepteurs de télévision noir et blanc et des récepteurs couleur.
La couleur étant créée par la juxtaposition de trois types de luminophores rouge (R), vert (anglais : green, G) et bleu (B), il faut transmettre trois composantes, trois signaux. Cependant, le noir et blanc ne comprend qu'une seule teinte, le niveau de gris. Les trois signaux transmis ne sont donc pas les trois composantes RGB mais la teinte de gris Y ou Y', et la différence entre cette teinte et deux autres composantes.
Ainsi, un récepteur noir et blanc ne traitera que la composante Y ou Y' et les récepteurs couleur déduiront les trois composantes chromatiques par simple soustraction. Schématiquement, on transmet trois composantes Y, U et V :
    Y ≃ R + G + B
    U ≃ B – Y
    V ≃ R – Y
et dans le cas d'un récepteur couleur, on déduit :
    R ≃ Y + V
    G ≃ (–Y – U – V)
    B ≃ Y + U
Dans la pratique, les luminophores n'ont pas le même rendement, on applique donc des coefficients correcteurs.

## Exploitation
### Pour la télévision

Ce système de transmission et de codage de la couleur pour la télévision est devenu nécessaire pour plusieurs raisons. Il convient d'assurer une restitution de la couleur plus fiable et fidèle pour l'oeil humain. Le signal Y', bien que noir et blanc, contient toutes les infos pour les trois couleurs. Les valeurs Cb et Cr sont des différences soustractives par rapport à Y', valeur de soustraction erronée entre Y' et Cr ou Cb lorsque la retransmission n'est pas totalement conforme, ce qui permet de rectifier plus aisément le signal. Ce dispositif permet aussi la double compatibilité descendante, c'est-à-dire permettre à un téléviseur noir et blanc de décoder un signal de télévision couleur ou plutôt, d'ajouter des informations de couleur dans le signal noir et blanc, sans que cela ne perturbe les anciens équipements. Les informations complémentaires sont introduites dans des fréquences supérieures au signal noir et blanc. Enfin, il permet de dissocier l'information noir et blanc de l'information couleur afin de pouvoir réduire la résolution du signal couleur, tout en préservant la perception visuelle humaine.
La notation Y'CbCr fait référence au transport de la composante vidéo au format numérique, contrairement aux notations Y'PbPr ou Y'DbDr qui concernent généralement les signaux analogiques.

### En informatique

Le système Y'CbCr est utilisé pour le traitement des images de type JPEG. Ce modèle colorimétrique permet en effet de réduire considérablement la taille d'origine d'une image native, non compressée. Cette réduction se base sur la constatation que l'œil humain est plus sensible aux détails de la luminance qu'à ceux de la chrominance. Il est par conséquent possible de dégrader significativement certaines subtilités ou détails de la chrominance d'une image vidéo, tout en préservant sa qualité subjective.

## Formules de calcul
### Conversion R'G'B'/Y'CbCr

Pour calculer les valeurs des composantes Y'CbCr d'une image à partir des composantes R'V'B' (ou R'G'B') (qui varient de 0 à 255), on utilise les formules suivantes :
$Y'=0,299\,R'+0,587\,V'+0,114\,B'$
$Cb=-0,1687\,R'-0,3313\,V'+0,5\,B'+128$
$Cr=0,5\,R'-0,4187\,V'-0,0813\,B'+128$
L'ajout de 128 à Cb et Cr permet d'obtenir des octets dont les valeurs varient entre 0 et 255 La conversion inverse se fait ainsi (les valeurs obtenues varient encore entre 0 et 255) :
$R=Y'+1,402(Cr-128)$
$V=Y'-0,344\,14(Cb-128)-0,714\,14(Cr-128)$
$B=Y'+1,772(Cb-128)$

### Standard CCIR 601

Dans la normalisation internationale CCIR 601 des composantes vidéo de la télévision, on fait varier Y' de 16 à 235, et Cr et Cb de 16 à 240. Les formules de conversion sont alors (les variables en minuscules variant de 0 à 1, p$_b$ et p$_r$ variant de -0.5 à 0.5, les variables en majuscules étant des octets entre 0 et 255) :
    ${\begin{aligned}y'&=0,299\,r'+0,587\,g'+0,114\,b'\\p_{b}&=-0,168\,736\,r'-0,331\,264\,g'+0,5\,b'\\p_{r}&=0,5\,r'-0,418\,688\,g'-0,081\,312\,b'\end{aligned}}$
La conversion en octet se fait comme suit :
    ${\begin{aligned}Y'&=16+(65,481\,r+128,553\,g+24,966\,b)\\C_{B}&=128+(-37,797\,r-74,203\,g+112,0\,b)\\C_{R}&=128+(112,0\,r-93,786\,g-18,214\,b)\end{aligned}}$
ou plus simplement :
    ${\begin{aligned}(Y',\,C_{B},\,C_{R})&=(16,\,128,\,128)+(219\,y',\,224\,p_{b},\,224\,p_{r})\\\end{aligned}}$