Page précédente — Retour accueil «numérique»
Cette page rapporte quelques réflexions sur le rétablissement des couleurs
quand on a fait une erreur importante sur la balance des blancs au moment de la prise
de vue.
En général, faute de mieux, on se contente de rééquilibrer les
niveaux couleur par couleur ou on applique une correction par courbes
linéaires comme indiqué ci contre.
Les résultats ne sont jamais très bons. Evidemment, si on n'a rien de
mieux, on passera tout de même par là...
Si on a un Photoshop récent, on peut aussi essayer de corriger par les
«filtres de couleur» 85 ou 81, mais on
verra que ça ne va pas très loin non plus.
Tout d'abord, je me suis imprimé une imitation de «Color
Checker», à partir d'un fichier trouvé dans le site de
Lindbloom. Le
résultat n'est sûrement pas aussi bon que les chartes
originales vendues par Gretag-Macbeth, ne serait-ce que parce que les
colorants pigmentaires de mon imprimante doivent avoir davantage de
métamérisme, mais ce devrait être bien assez bon pour
les essais qui vont suivre. C'est essentiellement sur les gris de la
dernière rangée que nous allons discuter,
mais j'ai laissé les autres couleurs pour que l'on puisse voir
comment elles sont
affectées par des balances de blanc incorrectes.
Bien entendu, on peut juger que ce premier essai constitue une approche
bien théorique qui n'a pas grand chose à voir avec les «vraies»
photos de tous les jours... mais on verra plus loin que celles-ci
peuvent être encore plus difficiles à rattraper.
J'ai photographié cette charte dans une lumière assez mal
définie : photographie en intérieur dans une pièce
largement vitrée sous un franc soleil de midi, mais à l'ombre,
donc dans la lumière partiellement rediffusée par des murs recouverts
d'une toile écrue jaune-brun
clair, qui ne pouvait que «réchauffer» l'éclairage
ambiant.
J'ai fait trois clichés avec mon APN :
(i) image JPEG en mettant le réglage du blanc sur 3000K
(éclairage artificiel, température certainement trop basse)
(ii) image JPEG en mettant le réglage du blanc sur 5500K (ambiance
ensoleillée, température correcte à l'extérieur
mais pas pour la
lumière diffusée en intérieur)
(iii) image en RAW.
Comme on pouvait s'y attendre, aucune des deux images JPEG n'est
correcte.
On voit ci-dessous le résultat des deux premières prises de vue
(colonne de gauche) et le résultat de la tentative de rattrapage
avec les corrections linéaires expliquées plus haut (j'ai
ajusté les pentes des différentes corrections de manière à remettre le
premier blanc de la charte à sa valeur théorique Lab=(91,0,0)
mesurée sur le papier)
Aucune des deux images JPEG corrigées n'est satisfaisante. Après correction, la première image reste trop bleue dans les gris moyens et la deuxième trop rouge. Et l'ensemble des couleurs garde un aspect assez douteux...
Par contre, l'image raw traitée de manière à amener ce
premier blanc vers la valeur cible
(L=91, soit des composantes rvb toutes égales à 229 en
adobe-98)
est beaucoup plus satisfaisante.
Tous ses gris ne sont pas rigoureusement neutres, mais ceux de notre
charte imprimée ne l'étaient pas davantage, et puis
l'éclairage de la scène était certainement assez loin
d'une courbe de corps noir (la figure ci-contre a été
obtenue en affichant 4000K dans le module raw, assez loin de
l'éclairage solaire du moment), ce qui doit aussi provoquer
quelques légers glissements de couleur.
Pour bien enfoncer le clou : avec des corrections par courbes plus
compliquées (cf à droite), on peut corriger tous les gris de l'image, mais
pas les couleurs. L'image ci-dessous montre ce qui se passe dans le cas
de nos deux images JPEG : on peut ainsi retrouver les mêmes
gris dans les deux chartes, mais il y reste de
grosses différences dans les couleurs.
Du temps des films argentiques, on avait le choix entre les films «lumière du jour» et les films «lumière artificielle» et, si nécessaire, on pouvait utiliser les uns à la place des autres en vissant sur l'objectif des filtres Wratten 85 ou 81. Ce n'était évidemment pas aussi bon que de travailler avec le film adapté, mais c'était mieux que rien.
Depuis sa version 8 (CS), Photoshop propose une simulation de ces filtres
dans ses réglages colorimétriques ou dans ses calques de
réglages. L'image suivante montre ce qu'on peut ainsi obtenir dans
le cas d'une image réelle. On voit à gauche l'image avec une
exposition correcte (réglage «beau temps» à 5000K)
puis l'image prise avec un réglage pour la lumière
artificielle, et, en dessous, deux tentatives de rattrapage avec le filtre
couleur 85.
Dans les deux cas, on reste très loin des couleurs de
référence, mais on peut toutefois admettre qu'on aboutit
à une sorte de réinterprétation des couleurs,
plutôt bien équilibrée... (surtout la 4ème image)
qui serait même très
intéressante si elle était volontaire, de sorte que la
conclusion du temps de l'argentique — que c'est mieux que rien –, reste
valable.
A titre de comparaison, l'image ci-contre montre ce qu'on obtient avec une
simple égalisation des histogrammes.
Ce n'est pas vraiment plus près des couleurs d'origine, et, dans ce cas
précis, le résultat n'est pas vraiment heureux (il se peut qu'on rencontre
des images où ça se passerait mieux). La difficulté avec ces
images est que les histogrammes sont généralement écrêtés, soit sur
la gauche soit sur la droite ; à titre d'exemple, on voit ci-dessous ceux
de notre image «bleue» :
il manque tous les rouges sombres, mais aussi les verts et les bleus les
plus intenses. Bref, comme l'exposition erronnée a fait perdre une partie
importante de l'information sur les couleurs, on peut concevoir
qu'on aura du mal à récupérer l'image.
Encore une autre recette potentiellement
utile pour ces cas difficiles : appliquer un calque de réglage «couleur unie» en mode couleur,
avec le masque des ombres dans le masque de fusion, l'ajustage se faisant
en cherchant la bonne couleur à mettre dans le calque.
On attribue généralement le succès du rééquilibrage des blancs en raw et son échec à partir des images JPEG au fait qu'on travaille avec un γ=1 dans le module raw et avec un γ=2,2 sur les composantes RVB des images JPEG. On va voir que c'est un peu plus subtil que cela.
Nous allons commencer par un peu de travail inutile ; c'est comme ça que le métier rentre — et puis, cela pourra peut-être resservir un jour.
Bref, nos JPEG impliquent un γ de 2,2 ? (ou approchant ?) Qu'à cela ne tienne ! Il est très facile de se fabriquer un Adobe-98-modifié avec un γ=1.
Dans les préférences couleurs de Photoshop :
(i) Amener Adobe RGB (1998) comme l'espace de travail RVB par défaut
(ii) Dans la liste déroulante des espace de travail, choisir ensuite
RVB personnalisé. Dans le dialogue qui suit, changer le nom et prendre
γ=1. Fermer le dialogue
(iii) Revenir à la liste déroulante et choisir cette fois Enregistrer
sous ; prendre le même nom
(iv) Relancer Photoshop : vous verrez votre Adobe-98-modifié dans les
espaces de travail possibles.
Donc, vous partez de vos images JPEG en Adobe-98 ou en sRGB. Convertissez-les dans votre Adobe-98 modifié (si vous êtes inquiet des erreurs d'arrondi, passez d'abord en 16 bits; ça ne changera rien au final). Vous êtes maintenant en γ=1. Refaites la correction sur les trois primaires par niveaux ou par courbes : on arrive aux mêmes couleurs (non satisfaisantes) qu'avec la correction initiale dans le γ d'origine !
Si vous n'en croyez pas vos yeux, reconvertissez vers l'Adobe-98 ou le sRGB d'origine et reportez le résultat dans un calque par dessus l'image initiale que vous avez modifiée directement. Passez en mode différence pour comparer les couleurs : tout passe au noir... Ce sont les mêmes couleurs !
Bien entendu, on pouvait éviter tout ce travail avec un peu de calcul, mais ça ne convaincra que les gens qui peuvent calculer. Les autres devront faire l'expérience que je viens de décrire.
Le passage entre les espaces Adobe-98 original et modifié
s'écrit
[B.L.]
X2= X1 ^ (1/γ) ou
X1= X2 ^ γ
(avec γ=2,2)
En conséquence, la correction directe sur l'image JPEG en Adobe-98 se
traduit par
(1)
X2_corrigé,direct = C2 · X2_brut
alors que le passage par l'espace avec γ=1, suivi de la correction
dans cet espace, puis du retour à l'espace initial se traduisent
successivement par
X1_brut= X2_brut ^ γ
X1_corrigé = C1 · X1_brut,
X2_corrigé,nouveau= X1_corrigé ^ (1/γ)
soit enfin, à cause du caractère purement diagonal de C1,
(2)
X2_corrigé,nouveau = C1^(1/γ) · X2_brut,
Les équations (1) et (2) ont la même forme. Comme on s'est arrangé pour retrouver la même couleur pour un pixel particulier (le blanc de la charte), il s'ensuit que les matrices de correction sont identiques, et cela pour toute l'image. On retrouve donc les mêmes couleurs (X2_corrigé,nouveau=X2_corrigé,direct) pour tous les points.
Les essais ou le petit calcul précédents montrent que ce n'est pas une simple correction (linéaire ou non) par courbes sur les RVB bruts.
A ce que j'ai compris (aucune garantie !) l'opération réalisée est plutôt un mélange de couches, c.à.d. une opération linéaire, mais non diagonale, dans l'espace des RVB bruts. L'élévation à la puissance 1/γ quand on passe ensuite en sRGB ou en Adobe-98 crée alors un mélange non linéaire entre les couches. Si on n'a pas fait une bonne évaluation de la température de couleur sur les RVB bruts, l'erreur résultante sera extrêmement difficile à rattraper.