La gestion des couleurs a pour but d'assurer, autant que faire se peut, une uniformité d’aspect des images numériques sur tous les équipements :
Elle permet, surtout, de rendre reproductible et prévisible chaque opération effectuée. Comme il me sera impossible d’aborder tous les cas de figure, toutes les technologies, toutes les variantes en quelques pages, je me limiterai, dans mes exemples et explications, à :
Vous ne manquerez pas de d'ajouter les copyrights d’usage qui manquent chaque fois que je citerai un éditeur ou un fabricant... et ne m'en voudrez pas si je ne parle pas du MacIntosh, de Linux, de The Gimp, d'impression en noir&blanc ou en quadrichromie, d'écran TFT... ! Ces précautions d'usage étant prises, voici une première question : pourquoi ces disparités peuvent-elles se produire ? Tous ces équipements et logiciels ne sont-ils pas conçus pour cela ? Au prix où on les paye, au point où en sont les progrès de l'électronique et de l'informatique, n'est-il pas possible de garantir partout un respect des couleurs ? Eh bien, non. Ce n'est pas si simple de "respecter les couleurs". A cela, il existe quatre raisons majeures, qui peuvent coexister :
Avant d'aller plus loin, je vous propose un rappel de quelques définitions et notions de base indispensables. Si vous les connaissez, bien sûr, vous pouvez survoler le chapitre et passer directement aux causes des disparités des couleurs. |
Luminosité trop faible : les gris sombres sont noirs.
|
Luminosité trop forte : le noir n'est pas noir.
|
Gain trop faible : l'image est trop sombre.
|
Gain trop fort (sur certains moniteurs) : inconfort.
|
Gamma trop faible : les gris clairs sont trop clairs.
|
Gamma trop fort : les gris sombres sont trop sombres.
|
Non linéarité : colorations variées.
|
Couleur déréglée
|
Réglages corrects.
|
Quelques précisions techniques au sujet de la carte
vidéo
: a priori, tous les paramètres d’affichage
pourraient
(dans certaines limites) être ajustés par voie
logicielle
au niveau de la carte vidéo. Celle-ci contient en effet une
table de correspondances valeur d’entrée / signal
de
sortie pour chaque canal R,V et B. Appelée VideoLUT (Video
LookUp Table), cette table contient habituellement 256 valeurs de
sortie pour chaque canal
R,V,B. Par défaut, les valeurs de sortie sont
égales
entre elles et en progression linéaire.
Contenu initial
de la videoLUT.
Cette table est modifiable. Le logiciel de calibrage va changer le comportement de l’affichage en adaptant les valeurs de sortie de cette table, dans certaines limites seulement, comme je l’indiquais plus haut. En effet, il n’est pas possible de rendre plus lumineux, par intervention dans la table, le blanc le plus intense que le moniteur restitue avec son réglage de gain courant ! Toutes les valeurs sont entières et varient habituellement entre 0 et 255.
Il faut avoir conscience que toute correction par modification de la VideoLUT s’effectue au détriment du nombre de nuances affichables. C’est la raison pour laquelle il est vraiment important de caler au mieux le gain, la luminosité et la température de couleur du moniteur lui-même de façon à minimiser ensuite les corrections dans la VideoLUT.
Ces détails peuvent sembler superflus et le mécanisme peut sembler très compliqué, mais en fait tout ça ne l’est pas tellement : j'ai détaillé ces aspects pour bien faire comprendre au lecteur ce qui se passe lors du calibrage.
Une première opération de calibrage bien menée peut être assez rapide, une vingtaine de minutes tout au plus. Notez que certains logiciels de calibrage effectuent le calibrage et le profilage (sujet que nous aborderons plus loin) dans une même séquence d'opérations, tandis que d’autres logiciels séparent bien les deux étapes. La distinction entre calibrage et profilage demeure néanmoins ; ce sont deux opérations différentes.
Qu'ils soient obtenus par réglage manuel (à l'aide d'Adobe gamma ou équivalent) ou à l’aide d’une sonde, les réglages de la carte vidéo sont volatils. Si on ne les enregistre pas quelque part, ils sont remis à zéro à chaque redémarrage de l’ordinateur. La solution qui a été largement adoptée est d’inscrire ces réglages dans un fichier, le même fichier qui contiendra le profil de l’écran, dont je vous parlerai quand nous aborderons le profilage. Un petit utilitaire, usuellement appelé loader, lancé automatiquement à chaque redémarrage de l'ordinateur, lit ces valeurs, les réinjecte dans la carte vidéo, puis se termine.
Récapitulons les
opérations dans trois cas de figure types :
Adobe gamma
Vous êtes d’abord invité à choisir un fichier contenant un profil de départ. En effet cet outil part toujours d’un profil existant qu’il va modifier. Ce fichier est par exemple celui fourni par le fabricant du moniteur. Vous êtes ensuite invité à régler le gain au maximum, la luminosité à l’optimum avec l’aide visuelle d’un petit carré gris sombre sur fond noir, le gamma, puis la température de couleur.
Ce logiciel vous guide d’abord dans le réglage de luminosité, puis affiche une série de carrés colorés qui sont mesurés par la sonde. Les réglages de gain et de température de couleur ne sont, en revanche, pas guidés. Le profilage est effectué dans la foulée, il n’y a qu’une opération vue par l’utilisateur. Les paramètres de la carte vidéo et le profil proprement dit sont enregistrés dans un même fichier. Exactement comme avec Adobe Gamma, à chaque redémarrage un utilitaire spécial est lancé pour remettre les bonnes valeurs dans la carte vidéo.
Un peu plus sophistiqué (compliqué ?) que le précédent, ce logiciel permet notamment de mesurer la luminance du blanc et la température de couleur. Cette fois, les opérations de calibrage et de profilage sont distinctes et font en deux temps. Dans un premier temps, une fois le calibrage réalisé par mesures sur des pavés colorés, les corrections de la carte vidéo sont appliquées et sont simultanément sauvegardées. Ces valeurs peuvent être rechargées dans la carte vidéo à volonté en relançant le logiciel de calibrage, mais ceci n’a qu’une utilité marginale pour ce qui nous concerne car ceci est automatiquement effectué au démarrage par un loader installé par ProfileMaker.
Dans un deuxième temps, une plus longue série de mesures est lancée par l’utilisateur et les résultats sont enregistrés dans un fichier de mesures. Finalement, le profil de l’écran est calculé à partir de ce fichier au moyen d’un utilitaire générateur de profils, et c’est à ce moment-là seulement que profil calculé et valeurs pour la carte vidéo sont sauvegardées ! Comme dans les cas précédents, un loader recharge ces valeurs dans la carte vidéo à chaque redémarrage.
Une fois ces opérations effectuées, et en
supposant
qu’elles l’ont été
correctement, le moniteur
sera apte à afficher à peu près
correctement toute
image dont les caractéristiques sont compatibles avec le
calibrage cible choisi. En revanche, si l’image est
codée
dans un espace de couleurs différent de celui du moniteur il
faut mettre en œuvre le CMS et donc avoir profilé
l’écran, ce qui sera expliqué au
chapitre
consacré au profilage.
Le moniteur avant et après calibrage.
Le calibrage du scanner se limite en général à choisir les conditions de fonctionnement les plus neutres possibles : un petit temps d’attente pour laisser chauffer la lampe du scanner et en stabiliser la couleur puis une désactivation de tous les automatismes au niveau de l'interface utilisateur du scanner (réglage automatique du contraste, accentuation, éventuelle gestion des couleurs intégrée si elle existe, etc). Les caractéristiques d’un scanner sont en général fixes et dérivent peu, il n’y a donc pas grand chose à régler de ce côté. Si les images numérisées par notre scanner semblent présenter un problème, seul un profilage pourra apporter une amélioration.
Calibrer une imprimante signifie la mettre dans des conditions de fonctionnement connues. Ceci se limite à remettre les valeurs par défaut des différents réglages proposés dans le dialogue du pilote d'impression. Une fois ces réglages vérifiés, le choix du papier et de l'encre termine l' opération de calibrage.
Ici encore, le calibrage se limite à mettre l'appareil photo dans des conditions de travail connues et prévisibles. Cela n'a de sens que si l'on souhaite entreprendre son profilage. Les paramètres qui interviennent sont très nombreux : exposition, balance des blancs, contraste, etc.
Une fois les équipements calibrés, leur profilage peut être effectué.
J'ai insisté sur le fait que la signification des valeurs numériques R,V et B d’un pixel, en termes de couleurs, n’est pas la même pour l’APN, le scanner, l’écran, l’imprimante. Une traduction est donc nécessaire quand ces valeurs RVB doivent passer d’un dispositif à l’autre. Pour traduire, un dictionnaire bilingue est indispensable. En gestion des couleurs, ce dictionnaire porte un nom : c'est le profil colorimétrique ou profil ICC du dispositif. La fabrication du dictionnaire bilingue d’un dispositif s’appelle le profilage (ou la caractérisation) dudit dispositif.
Avec cette approche, il faudrait en théorie, pour un dispositif donné, autant de dictionnaires que de dispositifs auxquels il pourrait être relié (APN/moniteur, scanner/imprimante, APN/imprimante…). Il s'avère plus astucieux de convenir d’abord d’une langue pivot, universelle et la plus riche possible. Le choix a été fait d'utiliser, comme langue universelle, l'ensemble de toutes les couleurs visibles par l’œil humain, chacune de celles-ci étant représentée par un code.
L'ensemble des couleurs de référence, utilisé pour toutes les conversions entre équipements, s’appelle le CIELAB ou Espace LAB (décrit ici). Chaque couleur visible y est décrite par trois valeurs numériques (deux pour spécifier la couleur elle-même plus une pour sa luminance). Ces valeurs numériques sont appelées les coordonnées de cette couleur car on s’est arrangé pour représenter les couleurs visibles dans l'espace. Les deux coordonnées qui spécifient la couleur se nomment a et b ; la coordonnée qui spécifie la luminance s'appelle L. Pour une luminance donnée on peut donc représenter toutes les couleurs visibles dans un plan.
Coordonnées Lab de deux couleurs.
Certains logiciels de retouche, comme Photoshop, permettent de travailler directement dans cet espace (travail dans le mode Lab). Les pixels de l’image sont alors tous codés, non pas par des valeurs R,V,B, mais par des valeurs L,a,b.
Une fois tous les profils établis, ceux-ci sont utilisés par le système de gestion de couleurs qui joue le rôle de logiciel de traduction : le CMS. Ce système est capable de convertir des valeurs RVB en leurs équivalents Lab pour un dispositif donné, et de convertir des valeurs Lab en leurs équivalents RVB pour un autre dispositif.
Illustration des conversions entre espaces RVB et LAB.
Evidemment, certaines traductions seront impossibles… Il faudra se contenter d' approximations, dont je parlerai plus loin. Traduttore, tradittore nous le rappellent les italiens : traducteur, traître ! En effet, comme évoqué plus haut, chaque dispositif n’est capable de numériser ou de reproduire qu’une certaine gamme de couleurs qui lui est propre.
Le profil colorimétrique d’un dispositif permet, une fois établi, de connaître l'espace colorimétrique de ce dispositif, qui peut être représenté graphiquement comme une courbe fermée dans l’espace LAB, ou de façon plus parlante dans l’espace Yxy. La figure suivante représente celui d’un moniteur bien calibré :
L'espace colorimétrique d’un moniteur représenté dans les espaces LAB et Yxy.
Dans la représentation de droite, dite diagramme de
chromaticité, la forme en semelle de chaussure
représente
l’ensemble de toutes les couleurs visibles.
L’espace
colorimétrique du moniteur y est
délimité par un
polygone noir, qui couvre une étendue notablement plus
faible
que le domaine visible. Notamment, les couleurs les plus
saturées ne sont pas reproduites. Attention, cet espace Yxy
n’est pas perceptuellement linéaire,
c’est
juste une représentation commode. On pourrait croire en
effet, en
regardant la figure, que le moniteur massacre toute la gamme des verts,
ce qui est
un peu exagéré…
Le terme anglais de gamut est couramment utilisé pour désigner l'étendue de l'espace colorimétrique d'un dispositif..
Pour obtenir le profil d’un équipement de sortie (moniteur ou imprimante) il faut obligatoirement utiliser un instrument de mesure. Pour profiler un dispositif de numérisation tel qu'un scanner, une image étalon est nécessaire. Dans tous les cas, un logiciel de profilage est requis. Un certain nombre de mesures sont d’abord effectuées sur l’équipement à profiler, puis les valeurs obtenues sont comparées aux valeurs attendues. A partir des écarts constatés, le logiciel de profilage va construire le profil colorimétrique de l’équipement.
On utilise aussi parfois le terme de caractérisation pour désigner cette opération. Celle-ci ne peut s’effectuer qu’avec l’aide d’une sonde (la même qui a servi au calibrage). A partir des mesures effectuées par la sonde sur des pavés colorés que le logiciel présente à l’écran, un profil ICC va être créé pour l’écran. L’objectif n’est plus ici de modifier la VideoLUT ; cela a été fait lors du calibrage... Il s’agit maintenant de déterminer précisément les paramètres de conversion Lab / RVB du moniteur à partir des erreurs mesurées par la sonde. Le profil obtenu est matérialisé par un fichier dont l’extension est .icc ou .icm . Le nôtre se nommera par exemple MonEcran.icc.
Une fois créé, le profil est placé dans un répertoire dédié. Sous Windows XP par exemple, il se trouvera sous le dossier \WINDOWS\system32\spool\drivers\color. Il convient de souligner que sous Windows, ce profil va être associé à l’écran mais il ne faut surtout pas croire qu’à ce moment les conversions seront faites en permanence ! Seuls les logiciels conçus pour utiliser le CMS feront les conversions nécessaires. Ainsi, l’écran a beau avoir été calibré et profilé, l’affichage d’une image codée en Adobe RGB, par exemple, au moyen d’un visualiseur quelconque montrera une image fade et peu saturée en couleurs !
En revanche, si une image numérique est ouverte dans un logiciel qui intègre un CMS (ou qui sait utiliser le CMS du système d’exploitation), celle-ci sera convertie à la volée dans l’espace colorimétrique de l’écran, pour peu que l’espace colorimétrique de cette image ait été précisé.
Interactions entre
le calibrage et le profilage du moniteur
Pour bien comprendre en quoi ces deux opérations diffèrent et comment elles se complètent, récapitulons :
La plupart du temps, la sauvegarde définitive des
corrections
pour la VideoLUT est faite au moment de la
génération du
profil ICC, car ces corrections sont enregistrées dans un
seul
et même fichier. Mais il ne faut pas confondre les
données
destinées à la carte vidéo et les
données
du profil.
Au départ, avant calibrage, nous avions donc branché un écran non calibré à l'ordinateur. Le rendu de l'écran était par exemple de ce genre : image sombre, contrastée et bleue. Les trois courbes de réponse du rouge, du vert et du bleu (ci-dessous "Réponse du moniteur seul"), qui donnent le luminosité de chaque canal en fonction du signal reçu, montrent pourquoi : elles ne décollent de l'axe horizontal que quand le signal d'entrée est déjà élevé. De plus, elles ne se superposent pas, il y a un excès de bleu et un déficit de vert. La carte vidéo, de son côté, est parfaitement linéaire (trois belles droites R,V,B superposées) :
La réponse globale du système est représentée ci-dessous, ainsi que l'espace colorimétrique de l'affichage, où l'on voit que le résultat en est un point blanc décalé vers les bleus :
Après calibrage, l'écran est apte à afficher correctement toute image dont l'espace colorimétrique est proche de celui du moniteur. Lors de chaque redémarrage de l'ordinateur, les corrections de la VideoLUT doivent être rechargées dans la carte vidéo. Cela se passe grâce à ce petit programme loader qui va les lire dans le fichier profil ICC.
L'illustration ci-dessous montre à quel niveau ce loader intervient lorsqu'il lit les corrections nécessaires dans la zone dédiée aux données de VideoLUT du profil ICC et les charge dans la carte vidéo. Ci-dessous, les courbes "Réponse de la carte vidéo" ressemblent maintenant aux courbes "Réponse du moniteur seul" mais inversées car elles agissent en correction de la réponse du moniteur. L'aspect de l'image est alors bien meilleur, et si cette image est codée en sRGB l'affichage peut même être considéré comme fidèle :
La réponse globale de l'affichage est désormais optimale ; le point blanc a été ramené tout près de sa valeur souhaitée :
Je rappelle qu'à ce stade, le profilage a bien créé un profil pour l'affichage mais ce profil n'est pas encore actif. Il est seulement associé au moniteur, ce que l'on peut vérifier sous Windows en examinant les Propriétés de l'affichage. Dans cet exemple, le profil nouvellement créé s'appelle M2070_90%_G2.8 :
J'ai associé ici deux profils à l'écran mais un seul sera utilisé lors des conversions ; c'est celui qui aura été déclaré profil par défaut (bouton "Définir par défaut").
A partir de ce moment, on pourra se retrouver dans l'un de ces deux cas
de figure :
Le principe en est le suivant : on scanne une image étalon appelée charte colorimétrique, qui est une photographie calibrée comprenant un certain nombre de pavés de couleur. Une fois l’image numérisée, le fichier est analysé par le logiciel de profilage qui va comparer les valeurs R,V et B trouvées pour chaque pavé, avec les valeurs attendues qui se trouvent dans un petit fichier livré avec la charte. Ce petit fichier contient les valeurs Lab correspondant à chaque pavé de la charte. Le profil ICC généré est, de la même façon que pour l’écran, déposé dans le répertoire dédié aux profils.
Une charte de profilage de scanner (ici, une charte IT 8).
Etapes du profilage d’un scanner.
Ensuite il convient de s’assurer que ce profil est réellement utilisé. Certains logiciels de pilotage de scanner permettent de choisir le profil à utiliser. Par défaut d’ailleurs, un profil usine est proposé. Si le choix du profil n’est pas offert au moment de la numérisation, le profil du scanner devra être associé à l’image numérisée dans le logiciel de traitement, puis une conversion dans le profil cible souhaité devra être effectuée.
Le profilage d’un appareil photo numérique est quasiment identique à celui du scanner, à part peut-être la charte à utiliser qui doit être spécialement conçue pour les APN.
L’utilisation du profil obtenu n’est possible, évidemment, que dans le logiciel de traitement d’images utilisé ensuite.
Personnellement je suis quelque peu dubitatif quant aux bénéfices de l’opération : les APN d’un même modèle sont identiques et leur rendu colorimétrique est probablement l’optimum que sait obtenir leur fabricant. Le calibrage est délicat : l’exposition doit être très précise. De plus les images issues des APN comportent des non linéarités volontaires, qui améliorent l’aspect des photos mais qui perturbent les logiciels de profilage. Après avoir passé de nombreuses heures en expérimentations et re-linéarisation de ces non linéarités (!), je suis revenu aux images… d’origine. Il existe sans doute des situations où le profilage d'un APN s'avère indispensable mais ces situations sont, vraisemblablement, très particulières. Il existe encore d’autres difficultés, que je ne détaillerai pas ici.
L’opération ressemble au profilage de l’écran. On imprime une image spéciale, comportant (on s’en doutait !) différentes zones colorées, qui devront ensuite être mesurées une par une avec un instrument de mesure adapté à des mesures par réflexion : un spectrophotomètre. Le logiciel de profilage se charge du reste.
A noter : le profil obtenu est spécifique du papier et des encres utilisées au moment de son obtention.
Pour utiliser le profil, il convient, soit d'effectuer une conversion vers l'espace d'imprimante dans le logiciel où l’image est ouverte, si cette option existe (et désactiver la conversion au niveau du pilote d'impression) ; soit, indiquer au pilote d'impression d'utiliser le profil, auquel cas il ne faut faire aucune autre conversion avant d'imprimer.
A noter qu'il est aussi possible de profiler une imprimante avec un logiciel spécial et un scanner, même si le spectrophotomètre reste l'outil de choix pour des profils de grande qualité. Le principe est assez séduisant a priori : on scanne simultanément une mire spéciale préalablement imprimée depuis l'imprimante à profiler, et une charte de profilage de scanner. Le logiciel profile ainsi correctement le scanner puis génère un profil pour l'imprimante. Le résultat reste, toutefois, aléatoire.
Voyons maintenant comment fonctionne le CMS et comment l'utiliser.
Le dispositif logiciel appelé CMS ou Color Management System (système de gestion des couleurs), traduit les valeurs RVB en Lab, ou inversement, en se servant des profils ICC.
Le dessin ci-après illustre les flux de conversion d’une image numérique issue d’un scanner, par exemple, vers l’espace RVB d’un moniteur :
Conversion depuis un espace RVB vers un autre.
Les pixels de l’image issue du scanner sont donc
décrits
par des valeurs RVB dont les significations sont propres au scanner. Le
profil du scanner va
d’abord être
récupéré par le CMS. Ce
profil peut avoir été intégré à
l’image par le logiciel de pilotage du scanner (ce qui
permettra
d’interpréter l’image correctement quel
que soit
l’ordinateur où elle se retrouvera) ou sinon devra
être attribué à l’image par
l’utilisateur.
Par ailleurs, le CMS va identifier le profil du moniteur si celui-ci lui a été correctement associé par le système d’exploitation.
Ensuite, au moment de l’affichage de l’image, le CMS effectue une double conversion RVB vers Lab puis Lab vers RVB, de façon à envoyer au moniteur les signaux corrects.
Comme je l’indiquais précédemment lors de l’introduction des profils, le gamut est l’étendue de l'ensemble des nuances de couleurs qu’un dispositif sait gérer. Si la conversion depuis un espace RVB ayant un gamut large vers un autre espace ayant un gamut plus réduit est faite abruptement (RVB vers Lab puis Lab vers RVB), il va y avoir des pertes. Certaines valeurs Lab de l’espace d’entrée n’ont pas d’équivalent RVB dans l’espace de sortie. Il va donc falloir trouver une correspondance approximative à ces couleurs orphelines. C'est encore le CMS qui se charge d’effectuer les approximations nécessaires. Celles-ci peuvent se faire de différentes façons, appelées intentions de rendu. C'est vous qui choisissez l'approximation la mieux adaptée au type d’image à convertir.
Adaptation des gamuts lors de la conversion.
Une image numérique est habituellement destinée à être modifiée, transmise pour impression ou publiée sur le Web par exemple. Elle est rarement à usage unique. Une conversion définitive telle qu’illustrée par la figure précédente n’est pas pratique, puisqu’elle se limite à adapter l’image issue d’un scanner aux caractéristiques d’un moniteur et de celles-ci seules.
On pourrait songer à la convertir en Lab dès le départ, de façon à pouvoir être reproduite correctement sur n’importe quel système. Malheureusement certains ordinateurs où elle se retrouvera n’ont pas forcément de CMS. La plupart de ceux-ci ne lisent que les formats basés sur le RVB.
On pourrait aussi convertir les images dans un espace RVB géré à peu près correctement un peu partout. C’est ce dernier choix qui a été fait par un consortium de constructeurs. A cet effet, des espaces standards dits indépendants du périphérique ont été imaginés, également décrits par des profils ICC. L’un des standards qui a été défini s’appelle l’espace sRGB. Ainsi, même en l’absence de CMS, la plupart des scanners, APN, imprimantes grand public se comprennent en sRGB même si parfois cette langue se révèle pauvre en nuances… de couleurs ! Le sRGB, c’est un peu le basic english des équipements grand public !
C’est pour cela que pour un moniteur, en pratique, on conseille de choisir un calibrage qui est le plus standard possible et le sRGB est très bien adapté à cela. Le sRGB a été défini comme étant l’espace d’un moniteur cathodique moyen réglé de la façon suivante : luminance de 80 cd/m², température de couleur de 6 500 K, gamma de 2.2, un voile de 0.2 cd/m², le tout dans un éclairage ambiant de 64 Lux. C’est plutôt précis, n’est-ce pas ?
Il existe d’autres espaces standard, offrant un gamut plus étendu et parfois mieux adaptés à certains usages (l'Adobe RGB est l'un des plus répandus, par exemple).
La bonne utilisation des profils s’avère souvent compliquée et déroutante car elle est plutôt contre-intuitive. C’est la raison pour laquelle je vais détailler cette partie.
Lorsqu’une image est récupérée d’un périphérique d’entrée, il convient donc de lui associer le profil de ce périphérique. Cette image peut être enregistrée dans un fichier en même temps que son profil d’entrée, pour peu que l’on utilise un format qui accepte l’intégration de profils ICC (le TIFF par exemple). Les valeurs RVB des pixels de cette image restent à ce moment absolument inchangés.
Lors de l’ouverture du fichier dans le logiciel de traitement, l’image est aussitôt affichée, comme je l’expliquais plus haut. Une conversion à la volée est faite dans le profil du moniteur de façon à obtenir un affichage correct. Mais seul le système d’affichage reçoit ces valeurs converties ; dans le logiciel de traitement de l’image (Photoshop par exemple), ce sont les valeurs RVB d’origine qui sont manipulées par l’utilisateur. Celui-ci agit sur l’image au sein de son espace de travail qui est ici, dans notre exemple, toujours celui du périphérique d’entrée.
Ceci dit, au moment de l’ouverture du fichier, automatiquement ou par action volontaire de votre part, l’image peut être convertie dans un autre espace de travail, de préférence un espace standard tel qu'Adobe RGB ou sRGB. Ici encore, la conversion à la volée permet un affichage correct, mais les travaux sur l’image se font cette fois dans le nouvel espace de travail choisi. Ensuite l’image pourra être enregistrée, en n’oubliant pas d’intégrer le profil standard dans le fichier.
Au moment d'imprimer une image, il conviendra d'utiliser le profil de l'imprimante, c'est-à-dire d'en indiquer le nom dans les paramètres d'impression du logiciel utilisé. Une conversion aura lieu depuis l'espace de travail courant vers l'espace de l'imprimante. Cette conversion s'effectuera au choix, soit dans le logiciel de retouche, soit au niveau du pilote d'imprimante, mais pas dans les deux !
Un logiciel de retouche évolué comme Photoshop permet de simuler de l’aspect de l’image sur un périphérique de sortie quelconque (imprimante, autre écran, etc). Cette simulation s’appelle une épreuve-écran ; elle s’obtient en choisissant sélectionnant le format d’épreuve souhaité, c’est-à-dire le profil ICC du périphérique de sortie. Ceci revient strictement, du point de vue de l’affichage, à attribuer à l’image ce profil ICC de sortie si l’option conserver les valeurs chromatiques reste cochée. Pendant l’affichage, il y aura conversion à la volée depuis le profil de sortie vers le profil du moniteur. C’est un moyen de voir comment se comporterait l’image si elle était envoyée telle quelle à l' imprimante :
Epreuve avec conservation des valeurs chromatiques.
Epreuve sans conservation des valeurs chromatiques.
a) Pas d’épreuve-écran : je vois mon image telle quelle, au mieux, sur mon moniteur calibré.
b) Epreuve-écran avec conservation des valeurs chromatiques : je vois à quoi ressemblerait mon image si elle était imprimée telle quelle.
c) Epreuve-écran sans conservation des valeurs chromatiques : je vois à quoi ressemblerait mon image si elle était imprimée en utilisant le profil de l’imprimante.
Si les résultats de b) et c) diffèrent beaucoup, mais que a) et c) sont proches, c’est que l’utilisation du profil de l’imprimante améliore de beaucoup son rendu par défaut.
Si a) et b) sont proches c’est que l’imprimante fait très bien son travail, par défaut.
Si a) et c) diffèrent beaucoup, soit le profil n’est pas bon, soit il fait ce qu’il peut mais l’espace de l’imprimante est décidément trop éloigné de l’espace de travail. Certaines couleurs seront massacrées.
Autres types
d'épreuves-écran
Sous Photoshop notamment, il est possible de sélectionner d'autres types d'épreuves écran prédéfinies. Par exemple :
RVB Macintosh et RVB Windows : simulation du résultat obtenu si le profil de l'image était respectivement Apple RGB et sRGB;
RVB Moniteur : simulation du résultat obtenu en visualisant l'image telle quelle sur le moniteur, sans tenir compte du profil de l'image.
Les conversions entre profils sont paramétrables par l’utilisateur. Il est ainsi possible de choisir la meilleure façon de traiter les couleurs hors gamme, pour une utilisation donnée.
Ce choix (l'intention de rendu) est à effectuer chaque fois que les espaces d’origine et de destination diffèrent, le cas le plus gênant étant un espace de destination plus petit. Choisir un mode de conversion adapté permet de répondre aux problèmes dus à une limitation technologique ou théorique.
Les modes de conversion qui ont été prévus et qu’il est possible de choisir sont les suivants :
Colorimétrie relative : | La conversion essaye de reproduire fidèlement le plus grand nombre possible de couleurs d'origine. Si une couleur de l'espace source n'existe pas dans l'espace de destination, elle est convertie en la couleur la plus proche. Si le point blanc de l'espace destination (l'illuminant) est différent de celui de l'espace source, l'ensemble des couleurs est adapté de façon à être conforme au point blanc de destination. Le fait que les couleurs soient corrigées conformément à l'illuminant de l'espace destination permet de respecter ce que l'on observe dans le monde réel, où les couleurs changent avec l'illuminant. L'aspect général est préservé car l'oeil et le cerveau s'adaptent admirablement à un changement d'illuminant. Ce mode est celui qui présente le plus d'intérêt en photographie numérique. |
Perception : | La conversion essaye de reproduire l'aspect global de la scène d'origine et tous ses éventuels dégradés de teintes, sans chercher à respecter la fidélité unitaire d'un maximum de couleurs d'origine. Si une couleur de l'espace source n'existe pas dans l'espace de destination, toutes les autres couleurs sont traitées de façon à préserver les rapports des couleurs d'origine entre elles. Visuellement cela revient à une moindre saturation globale de l'image convertie. A l'instar du mode Colorimétrie relative, si le point blanc de l'espace destination (l'illuminant) est différent de celui de l'espace source, l'ensemble des couleurs est adapté de façon à être conforme au point blanc de destination. Ce mode se révèle parfois un meilleur choix que le mode Colorimétrie relative pour les images comportant d'importantes portions très saturées, qui autrement seraient rendues par des aplats disgracieux. |
Colorimétrie absolue : | La conversion essaye de reproduire fidèlement le plus grand nombre possible de couleurs d'origine. Si une couleur de l'espace source n'existe pas dans l'espace de destination, elle est convertie en la couleur la plus proche. Si le point blanc de l'espace de destination (l'illuminant) est différent de celui de l'espace source, il n'en est pas tenu compte. En conséquence, le fait que les couleurs ne soient pas corrigées conformément à l'illuminant de l'espace destination peut conduire à une impression d'anomalie lors de la conversion d'une photographie d'une scène, car dans la réalité les couleurs changent avec l'illuminant. Ce mode est à réserver aux situations où il est primordial de respecter strictement certaines couleurs, comme celles d'un logo d'entreprise par exemple. |
Saturation : | Comme son nom le laisse entendre, ce mode de conversion essaye de conserver la saturation d'un maximum de couleurs d'origine, éventuellement au détriment de la fidélité des teintes. Ce mode est adapté à la conversion d'images de type schémas, graphiques ou autres supports de présentation où une bonne saturation est plus importante que la stricte conformité aux couleurs d'origine. |
Je vous en propose une illustration un peu artificielle, puisque je vais volontairement caricaturer les effets décrits, à l'aide des images ci-dessous. Je pars d'un espace sensé être large et vais simuler des conversions dans un espace artificiel beaucoup plus étroit, tout d'abord dans les modes Colorimétrie relative, Perception et Saturation :
Image dans l'espace d'origine. |
|
Colorimétrie relative. Observez la disparition des nuances là où les couleurs sont les plus éclatantes. |
|
Perception. Toute l'image est affadie mais les nuances sont préservées dans l'ensemble. |
|
Saturation. Certaines teintes ont subi un glissement mais le claquant initial est maintenu. |
Ensuite, je vais tenter d'illustrer le mode Colorimétrie absolue, à partir d'un profil d'imprimante artificiel bricolé pour l'occasion. Ce profil simule un profil établi pour imprimer sur un papier franchement bleu :
Colorimétrie absolue, papier bleu, profil pour papier bleu. Aspect de l'impression sur le papier bleu pour lequel le profil a été établi. La justesse des couleurs a été préservée au mieux, au détriment du réalisme de l'aspect visuel d'ensemble. La scène paraît curieuse, surtout dans les hautes lumières. |
|
Colorimétrie relative, papier bleu, profil pour papier bleu. Ce mode est visiblement inadapté si l'objectif premier est la préservation des couleurs d'origine. La plupart des couleurs sont fausses. L'ensemble toutefois pourrait paraître équilibré si la situation n'était pas si caricaturale. |
|
Colorimétrie absolue, papier blanc, profil pour papier bleu. Ce cas sert juste à illustrer ce que donne une conversion en mode colorimétrie absolue vers un espace dont le point blanc est décalé vers le bleu. |
Quelques observations sur les modes de rendu :
Une fois que tous les dispositifs sont calibrés, profilés et que le CMS est mis en œuvre, la cohérence des couleurs est assurée de bout en bout, moyennant certaines pertes lorsque certaines couleurs issues d’un équipement sont hors gamut pour un autre. Le résultat le plus important est la prévisibilité du résultat des opérations.
L’ensemble des flux dans notre laboratoire numérique peut être schématisé ainsi (ici, avec scanner, moniteur et imprimante) :
Flux de conversion dans la chaîne
scanner-écran-imprimante
Après ce survol de la gestion des couleurs, vous serez peut-être surpris du si grand nombre de notions qui interviennent. Mais, en attendant que la technique progresse et masque progressivement tous ces concepts et toutes ces difficultés, il faudra bien vivre avec. Et pour tirer un maximum de satisfactions de son laboratoire numérique : "Y’a plus qu’à" !
Pour compléter ce survol, je vous propose quelques informations et définitions plus précises : l'espace LAB, la température de couleur, le gamma, puis quelques liens et ouvrages utiles.
L’espace LAB est une représentation de l’ensemble de toutes les couleurs visibles, avec un système de coordonnées permettant d’identifier chaque couleur. Voici comment il a été conçu.
En 1931, la Commission Internationale de l’Eclairage, qui cherchait à normaliser et mettre en équations tout ce qui a trait à la lumière, se dit qu’elle n’avait pas encore modélisé le principal, nos yeux, et donc qu’il urgeait d’y remédier. Elle répéta des expériences basées sur les travaux d’un certain Young quelques années auparavant, lui-même inspiré par les travaux de Newton, Maxwell et autres géniaux précurseurs. La CIE recruta par voie d’annonce des volontaires ayant une bonne vue. L’annonce a vraisemblablement été imprimée en Times taille 2 puisqu’une foule de douze volontaires se pressa aux portes du vénérable établissement.
Les chercheurs de la CIE leur en firent alors voir de toutes les
couleurs. A l’aide d’un dispositif de leur
invention, ils
présentèrent à chaque cobaye un petit
rond
coloré, projeté sur un écran
à partir de la
lumière issue d’un prisme.
Ensuite, ils demandèrent à chaque sujet
d’essayer
de reconstituer la même couleur dans un second un petit rond,
celui-là étant obtenu par la projection de trois
lampes
respectivement rouge, verte et bleue. Notons au passage que le choix
des longueurs d’onde exactes nécessita quelques
soirées de tâtonnements.
L’intensité des
lampes était commandée par des boutons de
réglage.
Ainsi, pour chaque couleur du spectre, il devait être
possible de
déterminer quelles proportions des couleurs
élémentaires étaient
nécessaires pour que
le sujet ne fasse plus la différence entre la couleur de
référence et la couleur
synthétisée.
Le dispositif expérimental de la CIE.
Cela marcha… à peu près. Certaines
couleurs
s’avérèrent impossibles à
reconstituer. Pour
ces couleurs-là, on constata que les sujets cherchaient
à
tourner les boutons en deçà de zéro,
pour parvenir
à reconstituer la couleur cible. Il aurait fallu des valeurs
négatives pour la lampe correspondante (soustraire de la
lumière).
Les chercheurs de la CIE, qui sont des gens astucieux et pleins de ressources, ne se démontèrent pas et eurent l’idée d’ajouter la couleur correspondante à la source de référence (à gauche sur la figure précédente), quand un bouton était positionné à une valeur inférieure à zéro, plutôt que de chercher à produire une couleur négative dans les lampes de droite.
Quoique troublante que fût cette idée, cela marcha et les résultats se révélèrent très constants d’un sujet à l’autre. La CIE dessina sur son plus beau papier millimétré les moyennes obtenues, ce qui donna les courbes ci-dessous :
Les résultats des mesures.
Ces trois courbes indiquent, pour chaque longueur d’onde du
spectre visible, l’intensité requise pour chacune
des
trois sources élémentaires rouge, verte et bleue.
Comme
on le voit, les courbes pour les lampes rouge et verte descendent sous
zéro par endroits. Elles ont été
baptisées Fonctions d’adaptation (CMF ou Color
Matching
Functions).
Un standard avec des valeurs de couleurs négatives, ça n’était ni très causant, ni très commode à utiliser. Nos chercheurs firent appel à un collègue matheux de leur équipe, qui leur bricola une transformation permettant d’avoir uniquement des valeurs positives. Les courbes finalement obtenues étaient les suivantes :
Les résultats normalisés.
Notre matheux ne fut pas gêné d’avouer
que les
courbes ne correspondaient plus à des longueurs
d’onde
réelles. Il expliqua avoir fait une intégration
sur lambda de
la distribution d’énergie sur chaque courbe, ou un
truc du
genre. Personne ne comprit rien à part le fait que ces
valeurs
étaient des grandeurs imaginaires.
C’était
embarrassant mais il fallait leur trouver des noms pour que la
postérité les retienne. Les chercheurs
étant
dotés d’une grande imagination, ces couleurs
virtuelles
furent baptisées X, Y et Z. La CIE, craignant de
n’être pas prise au sérieux,
s’empressa
prudemment d’ajouter que cela correspondait à des valeurs de tri-stimulus aptes à
décrire toutes
les couleurs, ce qui rassura quelque peu ses clients.
C’est ce résultat remarquable qui fut retenu et rendu célèbre dans toute la galaxie sous le nom d’Observateur Standard à 2°. Rassurons tout de suite le lecteur : la CIE n’a pas congelé un des volontaires standards pour le conserver comme référence. 2° est l’angle de vision sous lequel les taches colorées étaient affichées sur l’écran pendant les expériences de 1931, car cela permettait de ne solliciter que la portion de la rétine la plus sensible aux couleurs.
Peu de temps après (en fait, en 1964 mais la CIE avait un planning très rempli) on décida de recommencer, mais avec des ronds colorés plus grands, vus sous un angle de champ de 10° histoire de chatouiller d’autres zones de la rétine. Cette fois, une cinquantaine de personnes s’empressa de participer au jeu, et la moyenne qui émergea des résultats fut publiée sous le nom original d’Observateur Standard à 10°. Néanmoins, c’est le standard à 2° qui reste le plus utilisé en gestion des couleurs.
Ce qui intéressa les physiologistes, dans la figure avec les courbes XYZ (qui définissent l’espace appelé CIE XYZ ) c’est que, tout imaginaires que fussent les grandeurs X, Y et Z, ces courbes décrivaient la sensibilité de chacun des trois types de cônes de notre rétine en fonction de la longueur d’onde.
Il fallut ensuite rendre ces résultats plus pratiques pour les professionnels de la couleur. L’espace CIE XYZ, tridimensionnel, n’était pas facile à manipuler par le pékin moyen. La représentation des couleurs en 3D dans cet espace est un informe patatoïde. Les matheux se sont de nouveau emparés du bidule et en ont tiré une foule de variantes plus ou moins adaptées à tel ou tel usage, de préférence projetées en deux dimensions. Ces différents espaces ont été baptisés aussi poétiquement que leur ancêtre : CIE Yxy, CIE Lu’v’, CIE L*a*b*…
Les plus répandus sont néanmoins le CIE Yxy, la
fameuse semelle de chaussure qui figure si
fréquemment
dans la littérature spécialisée, et le
CIE L*a*b*
(CIELAB), familièrement appelé LAB,
sensé linéariser la perception des
différences de
couleur. Ces deux espaces sont représentés
ci-après :
CIE Yxy | CIELAB |
Les espaces CIE Yxy et CIELAB.
Ce dernier espace LAB, référence universelle des
conversions colorimétriques, le voilà. Il est
beau et il
est simple. Nous n’en détaillerons pas toutes les
finesses, notons juste qu’un 3e axe (appelé L)
sert
à spécifier la luminance.
Souvenons-nous que chaque fois que nous utilisons un profil colorimétrique, ce sont les yeux de douze courageux volontaires qui y sont modélisés. Evidemment, on peut légitimement se demander si réellement la vision de ces douze personnes (toutes originaires de la banlieue de Londres) est représentative de celle d’un Maori, d’un Inuit, d’un Touareg ou d’un Breton. Mais enfin, ça marche !
La température de couleur sert essentiellement, dans le contexte qui nous concerne, à qualifier un éclairage. Pour la mesurer précisément, on utilise un thermocolorimètre. Son unité de mesure est le Kelvin. Pour une définition plus précise, consulter un traité de thermodynamique ! On y parlera de rayonnement du corps noir, de la loi de Stefan-Bolzmann, de la couleur des astres… Nous nous contenterons de l’essentiel.
La lumière blanche naturelle émise par le soleil à midi, en été, sous nos latitudes, au niveau de la mer, a une température de couleur de 5 400 K. Cette valeur grimpe à 10 000 voire 20 000 K si la couverture nuageuse ou si l’altitude augmentent. Elle devient de plus en plus bleue à mesure que les Kelvins augmentent, et inversement de plus en plus rouge quand les Kelvins diminuent.
Rayonnement du corps noir de 1 000 K à 30 000 K.
Un bon moniteur cathodique possède normalement les
réglages nécessaires pour choisir la
température
de couleur désirée. Par défaut
celle-ci est le
plus souvent de l’ordre de 7 500 K, voire 9 300 K et la
couleur
dominante tire plutôt vers les bleus.
Pour les travaux de photographie numérique, une valeur de 6 500 K est conseillée pour l’écran, ainsi que je le suggérais au chapitre dédié au calibrage. Cette valeur correspond à un éclairage standardisé par la CIE sous le nom d’ illuminant standard D65. Pour éclairer des épreuves imprimées, l’illuminant standard D50 est recommandé (source lumineuse de 5 000 K).
La figure suivante donne une idée de l’aspect d’un carré gris neutre sur un moniteur réglé à différentes valeurs de température de couleur :
Différents réglages de température de couleur.
Voilà encore un terme que l’on rencontre constamment en imagerie numérique et souvent en photographie. Devenu un nom commun, il désigne l’exposant gamma dans la fonction mathématique qui relie une luminance de sortie à un signal d’entrée. Dans sa forme la plus simple : Sortie = Entréeg
Dans quasiment toutes les transformations d’une image numérique, que ce soit son acquisition, son affichage, son impression, sa conversion d’un espace colorimétrique vers un autre, ses modifications de contraste, etc., le gamma intervient. Quand une transformation est linéaire, g = 1 mais la plupart du temps, il diffère de l’unité.
C’est notamment toujours le cas lorsqu’une image
est
affichée via un écran cathodique. La raison en
est
physique : un écran cathodique transforme en
lumière
l’impact d’électrons sur une surface
photoémissive. Or, l’intensité de la
lumière
émise par un tube cathodique est
contrôlée par la
tension électrique appliquée entre
l’écran
et le canon à électrons. La relation entre
l’intensité lumineuse L et la tension E
n’est pas
linéaire, c’est une fonction puissance :
Cette fonction a l’allure suivante :
Allure de la fonction gamma.
On dit que le gamma d’un écran
cathodique est
d’environ 2.5 . Tous les moniteurs vidéo ont un
gamma
supérieur à 1. Cela entraîne que, pour
qu’une
image soit correctement affichée, chacun de ses pixels doit
décrire la luminosité de la scène
selon une
fonction inverse du gamma de l’écran, de
façon
à rétablir la linéarité. Si
l’écran est décrit par la loi Sortie =
Entréeg
alors l’image doit
être codée
selon la loi inverse ValeurPixel = Luminance 1/g .
On pourrait se demander pourquoi les électroniciens n’ont pas choisi de linéariser l’écran ; cela aurait tellement simplifié la vie de tout le monde !
L’explication est historique. Les premiers récepteurs de télévision avaient une électronique aussi rudimentaire que coûteuse. Linéariser l’affichage en intervenant sur l’amplificateur vidéo, qui était à l’époque basé sur des tubes, aurait été très compliqué et aurait coûté horriblement cher. Il fut alors décidé de linéariser l’image au niveau des émetteurs de télévision : les signaux vidéo, avant transmission par voie hertzienne, subissaient l’application d’un gamma de 1 / 2.5 . Depuis cette époque, la télévision, la vidéo, l’infographie ont énormément évolué mais il fallait assurer une compatibilité ascendante entre les équipements nouveaux et anciens. Le gamma est donc resté supérieur à 1 dans tous les téléviseurs et tous les moniteurs.
En informatique, le gamma d’un moniteur n’est pas le seul facteur à intervenir dans le gamma final de l’affichage : la carte vidéo de l’ordinateur intervient aussi et puisque tout est numérique jusqu’à l’affichage final, les transformations s’effectuent aisément par de simples calculs. L’électronique permet pour sa part des interventions complexes sur les signaux. Il est donc désormais possible d’ajuster finement la valeur du gamma et c’est d’ailleurs ce que l’on fait au moment du calibrage d’un écran.
Ce qu’il faut retenir ici, c’est que toute image numérique tient compte de ce fait et est codée de façon non linéaire. La plupart des profils colorimétriques tels que le sRGB, l’Adobe RGB, l’Apple RGB, etc. effectuent leurs conversions avec des gammas différents de 1. Le sRGB par exemple a un gamma de 1 / 2.2, et c’est pour cela que la plupart des images numériques des sites Web sont codées en sRGB. Elles s’afficheront assez correctement sur un moniteur non calibré, de gamma 2.5 .Elles seront un peu contrastées, le gamma final étant de 2.5 / 2.2 soit 1.14 . Sur un MacIntosh, elles apparaîtront un peu plus claires : 1.8 / 2.5 = 0.72 .
Combinaison des gammas à l’affichage.
Aspect d’une même image, de gamma natif 1
/ 2.2 sur
différents moniteurs. Les différences sont ici
subtiles :
Aspect visuel pour différents gammas.
Mais attention : les changements de gamma agissent sur le contraste apparent des images, mais aussi sur la saturation des couleurs ! L’effet n’est donc pas anodin. Voici une même palette de couleurs affichée dans 3 gammas différents :
Impact du gamma sur la saturation.
On constate que la saturation augmente avec le gamma ; certaines
couleurs
peuvent donc déborder de
l’espace
colorimétrique du moniteur (disparition de nuances et
apparition
d’aplats).
J'en proposerai très peu ; vous savez combien la pertinence et la durée de vie de ce genre d’information sont variables ! Ce sont des sites que j'ai trouvés très informatifs et de bonne qualité, tout simplement :
Théorie sur la couleur, programmes et applets de démonstration, FAQ :
Didacticiels sur la photo et le labo numériques :
Accurate Image Manipulation for Desktop Publishing
Norman Koren photography and tutorials
Gestion des couleurs en pratique :
Gestion de la couleur avec Photoshop 6 et plus - Charles Vassalo
Guide de la gestion des couleurs - Arnaud Frich
Tirages numériques sur Fuji Frontier - Pehache
Wild Works - Jean-Marc Mannuci
Webring avec logiciels libres ou gratuits :
Sans arrière-pensée car je ne suis en rien lié aux auteurs et éditeurs cités !
Sur la gestion des couleurs :
Gestion des couleurs – Par Bruce Fraser, Chris Murphy, Fred Bunting - Peachpit Press.
Gestion de la couleur - Calibrage et profils ICC - Gérard Niemetzky - Eyrolles.
La gestion des couleurs pour les photographes - Jean Delmas - Eyrolles
Sur la retouche photo (il faut bien que tout cela serve à quelque chose !) :
Photoshop CS pour les photographes – Par Martin Evening - Eyrolles.