Couleurs et gamma

Christian RONSE © (29/10/2007)
LSIIT UMR 7005 CNRS-ULP, Département d'Informatique de l'ULP



Lumière visible et couleurs

La lumière est un rayonnement électromagnétique (tout comme les ondes radio, micro-ondes, rayons X, rayons gamma, etc.). Chaque photon (grain de lumière) possède une longueur d'onde, et la répartition des longueurs d'onde d'un rayonnement forme son spectre. L'oeil ne réagit qu'aux longueurs d'onde se trouvant dans le spectre visible, qui s'étend de 380 nm à 700 nm environ. Les rayonnements de longueur d'onde immédiatement inférieure à 380 nm forment les ultra-violets, ceux de longueur d'onde immédiatement supérieure à 700 nm constituent les infra-rouges (ceux-ci sont émis en particulier par les sources de chaleur).

Les dispositifs de prise d'image (caméra CCD, appareil photo numérique, film photo traditionnel) peuvent réagir à une bande du spectre plus large que celle visible par l'oeil, ce qui peut conduire à la nécessité d'y mettre des filtres pour éliminer les ultra-violets et les infra-rouges. Au contraire, certains dispositifs d'acquisition d'images peuvent être spécifiquement conçus pour réagir aux rayons infra-rouges, notamment dans des applications militaires ou de vidéosurveillance.

L'oeil est sensible aux variations dans le spectre visible de la lumière, ce qui ne signifie pas qu'il distingue nécessairement deux spectres différents. Cela dépend en effet des types de photorécepteurs de la rétine, et de leurs réponses aux différentes longueurs d'onde de la lumière.

La rétine comporte deux types de photorécepteurs: les batonnets et les cônes. Les batonnets réagissent dans les conditions d'illumination extrêmement faible, c'est ce qu'on appelle la vision scotopique. Leur résolution spatiale est relativement grossière (donnant une vision floue), et ils ont tous la même courbe de réponse en fonction de la longueur d'onde (ci-dessous, courbe en noir), ce qui signifie que dans l'obscurité on ne perçoit pas de couleurs.

Courbes de sensibilité des bâtonnets (en noir) et des trois types de cônes (en blanc).

Les cônes réagissent dans les conditions d'illumination plus forte, ce qu'on appelle la vision photopique. Leur résolution spatiale est fine (donnant une bonne vision des détails), ils sont principalement concentrés autour de la fovée au centre de la rétine (ce qui implique qu'en voyant une scène, les yeux sont en constant mouvement), et ils sont de trois types, chacun réagissant de façon différente aux variations de longueur d'onde de la lumière (courbes blanches ci-dessus). En simplifiant fortement, on dira que les cônes sensibles aux basses longueurs d'ondes produisent la sensation de la couleur bleue ou indigo (à environ 430 nm), ceux sensibles aux moyennes longueurs d'ondes celle de la couleur verte (à environ 530 nm), et ceux sensibles aux hautes longueurs d'ondes celle de la couleur rouge (à environ 600 nm). Bien que le pic de réponse des cônes "rouges" soit à environ 570 nm (correspondant à la sensation de la couleur jaune), la couleur rouge correspond à la longueur d'onde où le rapport entre leur réponse et celle des autres types de cônes (notamment les "verts") est maximal.

Pour les longueurs d'onde intermédiaires, entre le bleu et le vert, on a la couleur cyan ou bleu-vert (correspondant à environ 480 nm), et entre le vert et le rouge la couleur jaune (correspondant à environ 570 nm). Donc la perception du cyan ou bleu-vert, correspondant à une excitation conjointe des cônes "bleus" (basse longueur d'onde) et "verts" (moyenne longueur d'onde), peut être obtenue aussi bien par une lumière de longueur d'onde homogène à 480 nm, que par un mélange de lumières de longueurs d'onde respectivement à 430 et 530 nm, en d'autres termes, par un mélange de lumières bleue et verte. De même, la couleur jaune peut être obtenue soit par une lumière de longueur d'onde 570 nm, soit par un mélange de lumières de longueurs d'onde 530 nm (verte) et 600 nm (rouge). Notons aussi qu'un mélange de lumières de basse et haute longueurs d'onde (rouge et bleu) produit la sensation de la couleur magenta. Celle-ci ne correspond à aucun longueur d'onde du spectre visible. Enfin, un mélange de lumières de toutes les longueurs d'ondes du spectre visible produit la sensation de la couleur blanche. Celle-ci peut aussi être obtenue par un mélange de lumières de 3 longueurs d'onde (bleue, verte et rouge).

On postule donc un modèle trichromatique de la vision humaine, selon lequel toutes les sensations de couleurs sont obtenues par des excitations variées des 3 types de cônes, et peuvent donc être produites par des mélanges de lumières de 3 longueurs d'onde, correspondant aux couleurs bleue, verte et rouge. Ceci est à la base de la conception des écrans de TV ou d'ordinateur, où chaque point est coloré par un mélange de lumières de ces 3 couleurs.

Insistons sur le fait qu'une couleur est une sensation, et non pas une propriété physique de la matière. En effet, une lumière est décrite par son spectre, indiquant la proportion de photons pour toutes les longueurs d'ondes visibles, et la couleur n'en est qu'une simplification à trois dimensions, donnant les proportions d'excitation des 3 types de cônes ; elle dépend donc de la physiologie humaine. Ainsi une lumière à 480 nm donne la même couleur cyan qu'une lumière mêlant les deux longueurs d'onde 430 et 530 nm. Par ailleurs, certains sujets n'ont que deux types de cônes, on les appelle des dichromates ; par exemple les daltoniens ne différencient pas le rouge du vert, et on peut dire que leur vision ne connaît que les couleurs bleue, jaune (rouge-verte) et blanche.

Luminance et chrominance

Nous ne percevons pas les couleurs comme des mélanges de rouge, de vert et de bleu, mais plutôt comme une combinaison d'une information d'intensité lumineuse (clair ou obscur) et une de coloration ; cette dernière donne la teinte (bleu, cyan, vert, jaune, rouge, etc.) et la saturation (en quelque sorte la pureté de la teinte, nulle pour le gris, faible pour les couleurs pastel et maximale pour une teinte pure correspondant à une seule longueur d'onde). En effet, une augmentation de l'intensité des sources lumineuses d'une scène produit une augmentation proportionnelle du rayonnement réfléchi par les objets pour toutes les longueurs d'onde, donc les composantes rouge, verte et bleue de la couleur seront multipliées par une même constante ; en d'autres termes, l'intensité lumineuse augmente, mais la teinte et la saturation ne changent pas. Dans le cas d'une réflection ayant une composante spéculaire, le déplacement de la source lumineuse ou de l'objet change l'intensité ce cette composante, qui est essentiellement blanche, donc les composantes rouge, verte et bleue de la couleur seront augmentées ou diminuées d'une constante ; en d'autres termes, l'intensité lumineuse et la saturation changent, mais la teinte reste la même.

L'intensité lumineuse percue est appelée luminance. La Commission Internationale de l'Eclairage (CIE) a dans sa recommandation 709 codifié la luminance d'un mélange de lumières rouge, verte et bleue, comme combinaison des intensités de chacune d'entre elles :

Y709 = 0.2125 R + 0.7154 V + 0.0721 B  .

Notons que la somme des 3 coefficients 0.2125, 0.7154 et 0.0721 vaut 1. On remarquera la forte inégalité entre ceux-ci : une lumière verte apparaît plus claire qu'une rouge, et encore plus qu'une bleue. Ceci s'oppose aux modèles HSB ou HSL, où l'intensité lumineuse est codée comme la moyenne non pondérée des intensités rouge, verte et bleue. Un écran à niveaux de gris (p. ex. une TV noir et blanc) n'affichera que la luminance. Dans le codage d'une couleur (correspondant à un triplet d'intensités rouge, verte et bleue), il faut ajouter à la luminance une donnée complémentaire bidimensionnelle, la chrominance. Celle-ci est donc donnée par 2 nombres qui sont des combinaisons linéaires des intensités R, V et B. La CIE a codifié cette information dans son diagramme de chromaticité, disposé en forme de demi-ellipse :

Diagramme de chromaticité de la CIE.

Le segment entre deux points du diagramme indique les couleurs obtenues par les mélanges de proportions variées des deux couleurs correspondant à ces deux points. Les couleurs complètement saturées se trouvent sur le bord, en particulier celles correspondant au spectre visible forment la courbe sur celui-ci. En allant vers le centre, une couleur est de moins en moins saturée, et on voit le blanc au milieu. On remarque qu'entre les coins bleu et rouge, le bord suit une ligne droite, car les différentes teintes de magenta ne peuvent être obtenues que par mélange gradué de bleu et de rouge. Par contre, du bleu vers le vert, puis du vert vers le rouge, le bord suit une courbe convexe. En effet, si on mélange deux lumières bleue et verte, la lumière cyan résultante aura une teinte moins saturée qu'en prenant une lumière de longueur d'onde intermédiaire : le mélange de lumières bleue (430 nm) et verte (530 nm) excitera les cônes "bleus" et "verts" dans les même proportions que la lumière de longueur d'onde intermédiaire, mais les cônes "rouges" seront plus excité par le mélange bleu-vert que par la la longueur d'onde intermédaire, l'accroissement de réponse "rouge" provoquant ainsi une baisse de saturation.

En résumé, la synthèse de couleurs par mélange de lumières rouge, verte et bleue, utilisée dans les TVs et ordinateurs, peut rendre toutes les luminances et teintes, mais avec des saturations plus limitées que les lumières du spectre visible.

En normalisant les intensités de 0 (nulle) à 1 (maximale), on peut alors représenter une couleur par un triplet (r,v,b) d'intensités comprises entre 0 et 1, donc les couleurs forment le cube [0,1] × [0,1] × [0,1], dont les coins correspondent aux couleurs saturées rouge, vert, bleu, cyan, jaune et magenta, ainsi qu'au noir et blanc, comme illustré ci-dessous :

Cube des couleurs.

Les 3 couleurs bleu, vert et rouge sont appelées primaires, elles engendrent toutes les autres. Par contre, cyan, jaune et magenta sont appelées couleurs secondaires.

Gamma

Historiquement, l'écran cathodique a été à la base du développement de la technologie vidéo, et les standards se sont alignés sur son mode de fonctionnement. La lumière est produite par un faisceau d'électrons, contrôlé par un voltage. L'intensité lumineuse résultante n'est pas proportionnelle au voltage, mais bien au voltage élevé à une puissance appelée gamma ; dans un moniteur bien réglé, gamma vaut entre 2.35 et 2.55.

Par conséquent, dans le codage des intensités R, V et B des couleurs d'une image, on peut anticiper cet effet en les élevant à la puissance inverse 1/gamma (plus précisément, la transformation est linéaire pour les petites intensité, et x1/gamma - cte au-delà). C'est ce qu'on appelle la gamma-correction. Celle-ci est intégrée dans de nombreux appareils d'acquisition d'images, comme les caméras CCD. Par conséquent, quand on a une image sur un support numérique, il importe de connaître si les valeurs R, V et B des pixels sont linéaires par rapport aux intensités lumineuses mesurées, ou au contraire ont subi la gamma-correction. Dans ce cas, on parle de couleurs non linéaires, et les composantes R, V et B gamma-corrigées sont notées R', V' et B'. Les standards vidéo utilisent les couleurs non linéaires.

Selon certaines normes, comme NTSC (standard TV des USA), on prend 1/gamma = 0.45, ce qui correspond à gamma = 2.2. Cependant un gamma moyen vaudra plutôt 2.45, avec 2.45 × 0.45 = 1.1 environ. Donc l'effet global du gamma et de la gamma-correction sera d'élever l'intensité lumineuse à une puissance d'environ 1.1, ce qui correspond à un étirement des contrastes. En effet, comme on regarde la TV dans l'obscurité et qu'un écran cathodique n'est pas noir mais gris sombre, il est nécessaire de rehausser les hautes intensités, ce qui est réalisé par l'élévation de l'intensité à la puissance 1.1.

Les équivalents de la luminance et de la chrominance pour les couleurs non-linéaires (gamma-corrigées) sont appelés luma et chroma. La recommandation 601 de la CIE fixe la luma comme suit :

Y'601 = 0.299 R' + 0.587 V' + 0.114 B'  .

A nouveau, la somme des 3 coefficients 0.299, 0.587 et 0.114 vaut 1. A la luma s'ajoutent deux coefficients codant la chroma.

Synthèses additive et soustractive

Le type de synthèse des couleurs que nous avons décrit plus haut se base sur l'addition de rayons lumineux, donc plus on met de couleurs, plus le résultat sera clair. C'est ce qu'on appelle la synthèse additive de la couleur. Il y a une autre forme de synthèse, où les divers éléments constitutifs de la couleur agissent en enlevant certaines longueurs d'ondes, donc plus on met de couleurs, plus le résultat sera sombre. C'est la synthèse soustractive de la couleur.

Considérons par exemple un filtre. Celui-ci diminue l'intensité des rayons lumineux en fonction de leur longueur d'onde. Son comportement est donné par une fonction de transmittance T associant à toute longueur d'onde L un nombre T(L) compris entre 0 et 1, donnant la proportion de photons de longueur d'onde L qu'il laisse passer. Par conséquent, la relation entre l'intensité en entrée IE et en sortie IS est donnée par :

IS(L) = IE(L) . T(L)  .

Nous illustrons ci-dessous les fonctions de transmittance de 3 filtres idéalisés :

Filtre cyan. Filtre jaune. Filtre magenta.

Comme l'intensité est multipliée par la transmittance, la synthèse devrait plutôt s'appeler multiplicative que soustractive. Cependant, si on considère le filtre comme une superposition de n couches filtrantes, la transmittance globale sera celle d'une couche élevée à la puissance n, donc elle décroît exponentiellement par rapport au nombre de couches. On peut donc écrire

T(L) = e-d(L)  ,

d est la fonction de densité du filtre. On obtient alors

log IS(L) = log IE(L) - d(L)  ,

ce qui donne bien une synthèse soustractive. Si on superpose deux filtres, leurs fonctions de transmittance se multiplieront (et leurs densités s'additionneront). Donc :

Par conséquent, en synthèse soustractive cyan et jaune donnent vert, jaune et magenta donnent rouge, et enfin cyan et magenta donnent bleu. C'est ce que nous illustrons ci-dessous :

 

Synthèse additive et soustractive des couleurs.

Ainsi, à l'inverse de la synthèse additive, dans la synthèse soustractive, les couleurs primaires sont cyan, jaune et magenta, tandis que les couleurs secondaires sont bleu, vert et rouge. Si on se réfère au cube de couleurs illustré plus haut, chaque couleur (r,v,b) correspond à un vecteur où :

L'impression de teintes formées d'un composant homogène (p.ex., encres colorées) sur du papier blanc suit a peu près le modèle de la synthèse soustractive. En effet, les teintes agissent comme des filtres : la lumière traverse la couche de teinte (perdant alors certaines longueurs d'onde), puis se réflète sur le papier blanc, et enfin traverse en sens inverse la couche. C'est pourquoi les imprimantes en couleur utilisent des encres de couleurs cyan, jaune et magenta. On ajoute dans la cartouche une quatrième encre de couleur noire, par ce que :

Le minimum des composantes cyan, jaune et magenta codant la couleur sera affecté au noir, et les différences avec ce minimum seront affectées aux cyan, jaune et magenta (donc on n'utilise en chaque point de la feuille pas plus de deux encres teintées cyan, jaune ou magenta). Le modèle adapté de la synthèse soustractive par ajout du noir est appelé en anglais CMYK (pour Cyan, Yellow, Magenta, blacK).

Généralement, les couleurs engendrées par mélanges d'encres atteignent des saturations moins importantes que dans la synthèse additive sur un écran. Notons enfin que des effets non-linéaires du type gamma se produisent également dans l'impression par encres colorées.

Table de couleurs

Jusqu'à il y a quelques années, les écrans d'ordinateurs avaient une mémoire vidéo (VRAM) insuffisante pour pouvoir afficher n'importe quelle combinaison de couleurs sur l'écran, ce qui nécessite 3 octets par pixel. Par exemple, cette mémoire était limitée à un octet par pixel, ce qui permettait d'afficher simultanément 256 couleurs, grâce à une table de couleurs. Une telle table est une fonction associant à tout octet (ou entier de 0 à 255) trois octets codant respectivement les valeurs (entières entre 0 et 255) correspondant aux composantes rouge, verte et bleue d'une couleur. Les couleurs données dans la table sont choisies de façon à donner un échantillonnage équilibré de toutes les couleurs possibles. Chaque couleur à afficher sera donc approximée par la couleur la plus proche dans la table. Dans certains cas, deux applications utilisant le même écran peuvent avoir des tables de couleurs différentes, donc quand on passe de l'une à l'autre, les couleurs sur l'écran changent.

Un exemple d'échantillonnage est donné dans les standards du Web ; les couleurs sûres (safe colours en anglais) sont les 216 couleurs obtenues en quantifiant chaque composante rouge, verte et bleue sur les 6 niveaux multiples de 51 : 0, 51, 102, 153, 204 et 255. Ceci laisse le choix de 40 couleurs supplémentaires, variant selon le système d'exploitation.

Le format GIF de fichier d'image ne permet de coder que des images ayant au plus 256 couleurs différentes (en particulier, les images à niveaux de gris). En effet, il alloue un octet par couleur, il utilise donc une table de couleur. Cela signifie que si on code en GIF une image ayant plus de 256 couleurs (par exemple une photo), il y aura des pertes de couleurs. Par contre, pour une image ayant au plus 256 couleurs, il n'y aura aucune perte. Aussi ce format est plutôt adapté aux figurines synthétiques (dans le style de bandes dessinées) ayant de larges zones avec une couleur homogène.

Pseudocouleurs

Parfois il est visuellement plus parlant de représenter une image à niveaux de gris comme une image en couleurs, en remplaçant chaque niveau de gris par une couleur au moyen d'une fonction réalisant une table de couleurs. Dans ce cas, on parlera de fausses couleurs, ou de pseudocouleurs.

Par exemple, nous illustrons ci-dessous des fonctions associant à chaque valeur de 0 à 255 les composantes rouge, verte et bleue correspondantes, de façon à ce que la gamme du noir au blanc donne les couleurs du spectre de lumière (bleu, cyan, vert, jaune, rouge).

On trouvera d'autres fonctions générant une palette de pseudo-couleurs sur la page http://tdc-www.harvard.edu/software/saoimage/saoimage.cman.html.

Référence :

Charles Poynton : Color technology : voir Gamma FAQ et Color FAQ



Retour à l'index