Le pixel et ses codages
Le pixel et ses codages
Les vidéos ou images affichées sur un écran sont composées de millions de petits éléments appelés pixels. Le terme pixel provient de la contraction de PIcture ELements.
L’oeil humain est une machine complexe composée de cellules, les cônes, sensibles à trois longueurs d’onde particulières : celles du rouge, du vert et du bleu. Lorsque de la lumière parvient à notre oeil, ce dernier décompose la longueur d’onde de la lumière en trois informations partielles de rouge, de vert et de bleu qui sont transmises au cerveau. Le cerveau interprète ensuite l’intensité de ces trois couleurs pour en dégager une teinte dont la nuance est infinie. Ce procédé de mélange des trois couleurs primaires est la synthèse additive.
INSERER IMAGE ICI
Ce phénomène est reproduit dans un pixel. En effet, un pixel n’est pas composé que d’une teinte de couleurs : il est composé de trois couleurs : le rouge, le vert et le bleu, ce qui permet de reproduire l’ensemble des couleurs existantes, en nuançant plus ou moins la part de chacune d’entre elle.
INSERER IMAGE ICI
Exemple :
En mélangeant du vert et du bleu, la couleur obtenue est le cyan.
En mélangeant du rouge et du vert, la couleur obtenue est le jaune.
En mélangeant du bleu et du rouge, la couleur obtenue est le magenta.
Ainsi, en enlevant la partie des pixels responsable de la couleur rouge, la video a une teinte cyan, qui correspond au mélange du vert et du bleu.
Le pixel restitue donc les trois couleurs primaires. En informatique, une couleur se code grâce au codage RVB. Ce codage détaille les couleurs primaires en leur donnant à chacune une valeur codée sur 1 octet, c’est à dire 8 bits. Chaque couleur peut donc prendre $2^8 = 256$ valeurs différentes, de 0 à 255.
Si la couleur primaire possède une intensité de 100% dans la teinte que l’on souhaite coder, alors on attribue à l’octet codant cette couleur primaire la valeur maximale, c’est à dire 255. A l’inverse, si la couleur est absente de la teinte, on attribue à l’octet codant cette couleur primaire la valeur minimale, c’est à dire 0.
De plus, le codage d’un octet n’est pas codé entre 0 et 255. On utilise en effet le codage hexadécimal qui permet de représenter un octet avec deux caractères, variant de 00 à FF.
Ainsi, le codage RVB est la succession de 6 caractères, chaque paire de caractères codant un octet et donc une couleur primaire, que l’on écrit, dans l’ordre donné par le nom (Rouge, puis Vert, puis Bleu).
INSERER IMAGE ICI
Il est également possible de coder la transparence d’une couleur, en rajoutant un octet supplémentaire indiquant le degré de transparence. Le code devient le RVBA.
INSERER IMAGE ICI
Exemple :
On souhaite coder la couleur bleu.
Pour cela, on indique que les octets du rouge et du vert prennent la valeur 0 et l’octet du bleu prend la valeur maximale : 255.
En code hexadécimal, cela s’écrit 00000FF.
Il existe d’autres codages.
Le codage CMJN (Cyan, Magenta, Jaune et Noir) est utilisé dans l’imprimerie et utilise le principe de la synthèse soustractive.
INSERER IMAGE ICI
Lorsque l’on regarde une image imprimée, on regarde en réalité la composition de trois colorants au minimum (le noir n’est pas toujours utilisé) qui absorbent la lumière incidente et restituent la couleur complémentaire de la couleur absorbée.
Comme pour le codage RVB, le codage CMJN se fait à l’aide d’un octet par couleur. L’octet représente l’intensité de la couleur dans la teinte. Le codage nécessite 4 octets, soit 8 caractères.
Exemple :
Pour coder un bleu pur, on mélange les couleurs cyan et magenta, dont la valeur vaut 255.
Le codage RVB est utilisé pour la génération de couleurs sur un écran alors que le codage CMJN est réservé à l’impression de documents papiers.
Cependant, le codage RVB pâtit de quelques défauts. En effet, pour choisir une teinte de couleur, il faut connaitre la quantité de chaque couleur primaire, ce qui n’est pas naturel vis à vis de la perception naturelle des couleurs. De même, pour faire varier la clarté d’une couleur (sombre ou claire) il faut faire varier la proportion des trois couleurs primaires. Le codage TSL permet de résoudre ces défauts et de se rapprocher de notre perception des couleurs : la Teinte de la couleur, sa Saturation (vive ou terne), sa luminance (intensité lumineuse). La composition de ces trois paramètres permet de sélectionner plus facilement la teinte d’une couleur.
Le codage TSL peut se représenter sous la forme d’un cylindre à trois dimensions. La teinte de la couleur est obtenue en se déplaçant sur la périphérie du cylindre. En se déplaçant radialement, on fait varier la saturation de la couleur : en se rapprochant du centre, la couleur devient terne et au contraire, en s’en éloignant la couleur devient vive. Enfin, la luminance s’obtient par déplacement sur la hauteur du cylindre : le bas du cylindre donne des teintes sombres et le haut des teintes claires.
INSERER IMAGE ICI