dimanche 11 mars 2012

Atelier photo (sommaire)

Après deux ans et demi pour rédiger les 7 articles que m'ont inspirés des amis me demandant en 2009 de leur faire un atelier pour apprendre à se servir de leur réflex tout neuf, voici enfin un ensemble cohérent et à peu près complet. Il ne manque plus à cela qu'un sommaire, une page les réunissant tous afin d'y accéder plus simplement. La voici: Je mettrai aussi cette page à jour si jamais j'ajoute des articles à cet atelier (j'ai déjà l'idée de parler des flashs dans un futur post). Merci enfin pour les commentaires que vous m'avez laissé, ça me fait plaisir de savoir que mon travail est utile.

samedi 10 mars 2012

Atelier photo (post 7)

Le stockage numérique des images (Lien)
Source: Andre Gunther Photography

Jusqu'à maintenant, on a parlé de capture de l'image sur une surface sensible, de représentation des couleurs dans un espace colorimétrique. On a aussi vu que l'oeil, comme les appareils photo numériques, enregistrent les images sous forme de matrices de "pixels".
Maintenant, on va voir comment passer de ces tableaux de points de couleur issus d'un espace colorimétrique, à la suite de 0 et de 1 que constitue un fichier image tel qu'un JPEG.

Avant d'entrer dans les détails techniques des formats d'image, on va parler d'un outil très utilisé en photo : l'histogramme.

L'histogramme (Lien)

Vous avez sans doute déjà vu ce diagramme dans un logiciel photo ou sur l'écran d'un appareil, et vous vous êtes peut-être demandé à quoi il correspondait.

Voici une image:


Et voici deux de ses histogrammes:
Histogramme par couleur
Histogramme par luminosité
Il existe différents types d'histogrammes, mais leur principe reste le même et un seul d'entre eux est vraiment à connaître.
Un histogramme est une représentation graphique du contenu d'une image. Une fois que l'on a compris comment on le crée, on comprend à quoi il peut servir.
Pour créer un histogramme de luminosité, transformer votre image en un tableau d'autant de lignes et de colonnes qu'elle contient de pixels. Inscrivez dans chacune des cases de ce tableau la luminosité du pixels situé à la même place. Comptez ensuite combien il y a de cases pour chaque valeur de luminosité. Vous obtenez alors un liste de valeurs de luminosité (par ordre croissant), et un nombre de pixels (de cases) pour chacune de ces luminosités. Avec ces informations, construisez un histogramme classique tel que celui ci-dessous:


Chacune des barres (séries) de cette histogramme correspond à la somme d'éléments de la liste dont on vient de parler, et ce en fonction de la largeur de la barre.
Si on prend l'exemple de la barre noir, la plus à gauche, elle s'étend de l'abscisse 0 à l'abscisse 50 et est d'une hauteur de 3240. Ceci signifie que le nombre d'éléments de la liste compris entre 0 et 50 est égal à 3240. En d'autres termes, 3240 pixels de l'image ont une luminosité comprise entre 0 et 50.

Si l'on affine beaucoup plus les barres de l'histogramme, et que l'on enlève les étiquettes de données, on obtient alors un histogramme tel que celui-ci (ne cherchez pas de correspondance numérique exacte avec le précédent histogramme car les données ne sont qu'illustratives):


Il n'est pas nécessaire sur un tel diagramme d'avoir d'échelle, car ce qui importe ce sont les proportions. En abscisse, il suffit de savoir que le minimum est à gauche et la maximum à droite (aucun pixel de l'image ne sort de ces limites). En ordonnée, peu importe combien de pixels représente la hauteur des barres, ce que l'on souhaite matérialiser c'est la variation de cette hauteur depuis la luminosité minimum jusqu'à la luminosité maximum.

Pour l'histogramme par couleur c'est la même chose, mais trois fois.
Au lieu de remplacer chaque pixel par sa luminosité dans un seul tableau, on va créer trois tableaux dans lesquels chaque pixel sera remplacé par l'intensité de sa composante rouge pour le premier tableau, vert pour le second, et bleu pour le troisième.
On crée à partir de ces tableaux trois histogrammes de la même façon que pour celui de luminosité, chacun de la couleur de la composante qu'il représente et on les superpose ensuite.
Sous Photoshop, dont sont extraits les histogrammes présentés au début, la superposition des couleurs rouge, vert et bleu est traitée selon la synthèse additive des couleurs. Ainsi, on aperçoit des parties de couleur cyan, magenta et jaune qui sont en fait des zones de superposition entre les histogrammes bleu et vert, rouge et bleu, et rouge et vert. Seule exception à cette synthèse, la superposition des trois composantes ne donne pas du blanc mais du gris moyen, visible sur cet histogramme le long de l'abscisse.

Maintenant que l'on a vu ce qu'était un histogramme, voyons à quoi il peut bien servir.

Il n'y a pas vraiment de règle d'utilisation de l'histogramme, comme il n'y a pas de "bon" ou de "mauvais" histogramme. Personnellement, comme j'en parle dans un précédent post, l'histogramme me sert à deux moments:
  • Lors de la prise de vue, il me permet de vérifier où j'ai du "blanc cramé", et donc de modifier l'ouverture et la vitesse pour les clichés suivants.
  • Lors du développement, il me permet de vérifier que je ne crée pas de "blanc cramé" lorsque je corrige l'exposition d'un cliché au format RAW

Très bien, mais c'est quoi le "blanc cramé"?

Tous système, qu'il soit biologique ou fabriqué par l'homme, possède ses propres limites. Dans le cas des surfaces sensibles, argentiques ou numériques, il y a une limite au delà de laquelle la quantité de lumière reçue "sature" la surface sensible ses composants rouge, vert et bleu. Il en résulte alors un blanc pure qui ne correspond pas à la lumière reçue, mais au fait que celle-ci était trop intense pour la sensibilité de la surface avec laquelle on a tenté de la fixer.
Un "blanc cramé" est un blanc qui représente une perte d'information dans l'image. Même une lumière rouge (ou un objet rouge) peut créer un "blanc cramé" sur une image. Pouvez vous voir la bouche de la personne debout à droite sur cette photo?


Cette personne était tellement éclairée que la lumière qu'elle a reçue, une fois renvoyée vers l'objectif de l'appareil photo, a saturé le capteur de celui-ci. Le résultat est un visage tout blanc avec un maillot non pas bleu, comme celui des personnes assises au centre de l'image, mais blanc. Sur cette photo, le phénomène vient du fait que la personne debout est juste sous la lumière des projecteurs, alors que tous les autres sont dans l'ombre, c'est cela qui explique la différence d'éclairement.

En définitive, l'histogramme m'est vraiment utile pour vérifier que je ne crée pas cette effet "blanc cramé" sur mes photos, mais cela ne signifie pas que cet effet soit à proscrire de toutes vos photos, car il est parfois utilisé pour se créer un fond blanc.


The bride - Explored, première mise en ligne par Andrew Scott Clarke.

Sur la partie gauche de cette photo, il y avait sans doute une pièce avec des meubles et une ou plusieurs fenêtres, mais rien de tout cela n'est visible. Le photographe a volontairement surexposé cette partie de l'image pour noyer tout ce qu'il ne voulait pas avoir sur la photo (la pièce et ses meubles) dans un "blanc cramé". Cette méthode est très pratique hors studio lorsque l'on veut supprimer des éléments de l'image.

Cependant, elle est également utilisée en studio:


Nat High Key - Glamour Editing, première mise en ligne par Jon Wee Photos.

Sur ce cliché, aucun fond blanc n'a été utilisé, mais un fond "gris neutre" tel que celui-ci:



Grâce à ce fond, le photographe pourra disposer d'un fond blanc si il l'éclaire de façon à le "cramer", comme sur la photo que l'on vient de montrer, ou d'un fond noir si il ne l'éclaire pas du tout (du moins beaucoup moins que son sujet):


My American Dream, première mise en ligne par Photos by Enzo D.

Sur cette photo, le fond a non seulement été laissé dans une pénombre suffisante pour apparaitre noir, mais également le guitariste, afin de le faire disparaître lui aussi. D'ailleurs, pour faciliter son éclairage, le photographe a sans doute demandé au guitariste de porter une chemise noir à manches longues, afin de l'aider à l'assombrir en la privant de lumière.

Il n'est pas nécessaire d'être en studio pour reproduire cet effet de fond noir, comme pour le "blanc cramé", il sera très utile en extérieur pour isoler un sujet.


Black Cat, White Light, première mise en ligne par pixel_boy.

Cette technique de création de blanc et de noir par la simple maîtrise de l'exposition est très utile à connaître, même si il est souvent nécessaire pour l'utiliser de disposer de lumière artificielle dont on pourra contrôler la puissance (flashs ou éclairages de studio). Pour le noir, il sera aussi parfois nécessaire de disposer de tissus noir pour mieux faire disparaître certains éléments de l'image.

Sur certains appareils photo, l'histogramme contient des graduations sur son axe horizontal. Lorsque c'est le cas, il peut être utilisé pour plus que simplement vérifier si il n'y a pas de noir parfait ou de blanc cramé. Avec cette photo prise avec un Canon EOS 500D par exemple:


L'histogramme nous montre qu'il n'y a ni noir parfait ni blanc cramé, mais la présence de ces quatre lignes verticales dans celui-ci est une indication supplémentaire. Ces barres nous indiquent la partie de l'amplitude de sensibilité du capteur que l'on a utilisé. Quatre barres délimitent cinq zones, or nous voyons que cet histogramme est totalement absent de la zone la plus à droite (celle des blancs). Ceci signifie que le capteur aurait pu capter des luminosités plus élevées que celles de notre image. Plus élevées certes, mais de combien? C'est là que les limites des cinq zones jouent un rôle. Chaque zone représente 1IL de large (voir le paragraphe sur l'indice de lumination pour plus de détails), ce qui signifie que pour occuper cette cinquième zone vide, on aurait dû exposer le cliché d'1IL de plus, soit un facteur 2 d'ISO, de vitesse ou un facteur 1,4 de diaphragme.
Voici ce que l'on obtient si on expose notre cliché d'1IL de plus en réduisant la vitesse d'un facteur 2 (on passe de 1/1250s à 1/640s):


L'histogramme s'étend maintenant dans cette cinquième zone, l'exposition est meilleure car la dynamique du capteur est mieux utilisée. La luminosité maximum de l'image est plus proche du maximum que le capteur peut saisir, mais sans le dépasser afin de ne pas avoir de blanc cramé.

Et si on augmente encore d'1IL, en passant de 1/640s à 1/320s? On obtient cela:


La dynamique est encore mieux exploitée puisque l'on a toujours pas de blanc cramé, mais que l'histogramme s'approche encore plus de sa limite droite (celle des blancs).

Et à 1/200s?



Maintenant l'histogramme touche sa limite droite, des blancs cramés apparaissent, le cliché est donc surexposé, il fallait s'arrêter avant (au réglage précédent en l'occurrence).

Voici comment l'histogramme que l'appareil photo affiche lors de la lecture d'une image peut être utilisé lors de la prise de vue afin d'améliorer les images prises, mais également de faciliter le post traitement, car plus la dynamique du capteur est utilisée de façon complète, plus la latitude de corrections sera grande lors du développement (sous Lightroom par exemple).


La compression (Lien)

Comme on l'a vu avec le post sur les capteurs d'image, une photo numérique est constituée d'une immense matrice de points de couleur, représentés chacun par trois composantes (rouge, vert et bleu). Une image peut donc être enregistrée comme un tableau dont chaque case contient la quantité de rouge, de vert et de bleu du point de couleur qu'elle représente.

Comme on l'a vu à propos du codage des couleurs, la quantité de rouge, vert et bleu se représente sur une échelle finie. Si l'on souhiate mélanger ces trois informations dans une seule, il suffit alors de définir la taille de cette échelle puis de l'utiliser comme base de comptage pour chacune des quantités. Si on définit par exemple dix niveaux de rouge (de 0 à 9), dix de vert et dix de bleu, chaque couleur pourra se coder sur une échelle de 0 à 999, les unités pour le rouge, les dizaines pour le vert, et les centaines pour le bleu. Dans ce système, le noir sera 0, le blanc 999, le rouge pur 9, le vert pur 90 et le magenta (rouge+bleu) 909.

Une fois la couleur de chaque point codée par un nombre, il ne reste plus qu'à faire une liste de tous les nombres de tous les points de l'image, de gauche à droite puis ligne par ligne, pour avoir la totalité de l'image codée.

Cette méthode fonctionne bien, mais elle prend de la place. C'est pour cela que des méthodes de compression ont été inventées.

Comprimer? Comme une canette qu'on écrase avant de la mettre au recyclage?
Oui, c'est un peu le principe, mais avec l'information que l'on a dans une image il est possible d'aller plus loin.

Lorsque l'on comprime une canette, on essai de réduire sa taille au minimum, c'est à dire la place que prend l'aluminium dont elle est constituée, en réduisant l'espace rempli d'air qu'elle a à l'intérieur. Avec une image on peut faire la même chose. Imaginez l'image d'un oiseau sur fond de ciel bleu cyan. Avec le codage dont on a parlé, beaucoup de pixels de cette image auraient une valeur égale à (vert+bleu) 99. Au lieu d'écrire une longue liste de 99, 99, 99, ... on pourrait tout simple dire 99 se répète cent cinquante mille fois si il y a bien cent cinquante mille pixels de cette couleur à la suite.
De cette façon, on peut réduite la place que prend une image, sans détériorer sa qualité car aucune information n'est perdu. Lors de la décompression, on reproduira bien les cent cinquante mille pixels cyan de l'image d'origine. Ce principe de compression, appelé RLE pour Run Lengh Encoding est utilisé dans les format TIF, GIF et PNG.

Malheureusement, il est rare qu'une image soit constituée d'une longue série de pixels de couleur rigoureusement exacte, même si l'on a un ciel parfaitement bleu.
Aussi, d'autres méthodes de compression sans pertes on été mises au point pour réduire tout de même la taille des images, elle sont cependant nombreuses et un post de blog ne suffirait pas à en faire le tour. La seule chose à retenir est que ces méthodes ne peuvent compresser que si l'information enregistrée est plus pauvre que le format utilisé, un peu comme un bibliothécaire qui aurait prévu de la place dans ses rayonnages pour tous les auteurs de cinq continents depuis l'invention de l'écriture, et qui s'apercevrait lorsqu'il reçoit ses livres qu'il n'a que de la littérature occidentale écrite ou traduite en anglais du XII ème siècle à nos jours. Une grande partie de ses rayons se retrouveraient alors vides. C'est un peu le même principe avec la compression sans perte, on classe et on range de façon à ce que l'on possède prenne le moins de place possible, sans pour autant se débarrasser d'un quelconque livre.

Lorsque les méthodes sans pertes ne sont pas assez efficaces, il est nécessaire de réduire l'information contenue dans l'image, et ainsi de dégrader sa qualité. Le but est que cette dégradation soit la moins visible possible, pour une diminution de taille maximum.

La première méthode de compression avec perte et celle dite de" sous-échantillonnage de la chrominance", ou plus simplement de réduction du nombre de couleurs.
L'idée de cette méthode et de diminuer le nombre de couleurs d'une image en se disant que cette perte de nuances ne sera pas vue par l'oeil. Avec un ciel bleu par exemple, si on passe celui-ci de deux cent bleus différents à vingt, il est probable que l'oeil ne s'en aperçoive pas (un oeil non exercé bien sûr).

Prenons pour exemple cette image:

Nous y voyons beaucoup de nuances dans ses couleurs, il y a en a exactement 83771 différentes. Maintenant nous décidons de réduire le nombre de couleurs de cette image à 256, en regroupant les couleurs proches puis en les remplaçant par une seule. Ainsi, 327 nuances de bleus différentes mais proches seront remplacées par une seule d'entre elles.

Nous obtenons cette image:
La différence est criante. Cependant, certaines méthodes de compression comme le GIF, vont, en gardant seulement 256 couleurs, utiliser une ruse pour limiter l'impression de perte de qualité.
Nous venons de voir la méthode RLE pour compresser sans perte une image. Avec l'image ci-dessus elle serait efficace, car on voit en parcourant les lignes horizontales de pixels que l'on a des séries avec exactement la même couleur. Si maintenant nous décidons de faire une croix sur l'efficacité potentielle de la compression RLE, pour tromper l'oeil en délayant les zones de pixels d'une même couleur dans d'autres d'une nuance proche dans notre table de 256 nuances, voici ce que cela donnerait:


Nous avons ici 256 couleurs uniques, comme sur l'image précédente, mais elles sont en quelque sorte brassées pour que l'oeil ne puisse plus voir d'à plats disgracieux. Bien évidemment, sur une image comme celle-ci la compression RLE sera très inefficace, si bien qu'elle prendra plus de place avec ce mode de compression, mais sa qualité sera meilleure.

Les deux images précédentes ont été faite en compressant plus que de raison au format GIF l'image d'origine. Le format GIF est un format de compression utilisant des méthodes très simples (avec pertes si l'image d'origine a plus de 256 couleurs mais sans pertes dans le cas contraire). Il existe cependant un format extrêmement répandu, le JPG, il se base sur une méthode qu'il est donc intéressant.

Le format JPG (pour Joint Photographic experts Group) utilise plusieurs méthodes combinées pour compresser, dont le sous-échantillonnage de la chrominance et le RLE, mais même lorsque la qualité maximum est sélectionnée, il y a toujours une perte d'information et une dégradation de le qualité de l'image, aussi imperceptible soit elle.

Sans entrer dans les détails, la principale caractéristique de la compression JPG est la transformée cosinus qu'elle applique. Cette dénomination semble savante mais dans la pratique cela se traduit pas un lissage des contrastes. Si deux pixels adjacents ont des couleurs très différentes (comme ça peut être le cas pour une image qui est une capture d'écran d'ordinateur), la compression JPG va créer un flou au niveau de cette limite. On peut voir cet effet si on zoom sur l'image que l'on a présenté plus haut.

Voici l'image d'origine non compressée zoomée:


Puis la voici avec une compression JPG très forte:


On peut voir que l'algorithme de compression a créé des artéfacts autour de chaque limite de couleur, tout simplement parce que la transformée cosinus n'est pas capable de coder des changements brutaux de couleurs, ils doivent être nécessairement progressifs.
Un autre aspect intéressant de la compression JPG est visible dans l'angle droit de de ligne noir, près du centre et légèrement en haut à gauche de cette image. On voit des pixels gris au dessus et au dessous de cet angle, et si l'on regarde attentivement, on s'aperçoit que ces deux copies de l'angle noir s'inscrivent dans un carré de huit pixels de coté : quatre en dessous, l'angle noir constitue le cinquième, et trois au dessus. Cela provient du fait que la compression JPG commence par découper l'image en carrés de huit pixels de coté, puis traite ces carrés les uns après les autres. De ce fait, une image JPG présentera, si on l'examine attentivement, la présence de ces artéfacts carrés de huit pixels de coté.

Dernière chose sur la compression JPG : Même en sélectionnant la qualité maximum lors de l'enregistrement du fichier, il y aura toujours un artéfact de compression.
Voici la même image compressée en qualité JPG maximum:


L'artéfact est très léger mais on peut le voir à la limite entre le blanc et le rouge. La transformé cosinus a adouci la transition en ajoutant un pixel de limite rouge sombre entre le blanc et le rouge pur. Ceci n'est qu'un détail mais il souligne bien que même avec la qualité maximum, une compression avec perte reste une compression avec perte.

En conclusion, il est utile de choisir pour chaque enregistrement d'image le format adapté à l'usage de l'on souhaite faire du fichier : compression sans perte (PSD, PNG, TIF, DNG, RAW), compression avec perte (JPG ou GIF si l'original a plus de 256 couleurs), ou sans compression (BMP).

Le format RAW (Lien)
Source: Understanding What is stored in a Canon RAW .CR2 file, How and Why, Wikipedia

RAW signifie "cru", "brut" en anglais. Ce format est appelé ainsi car il contient les données brutes acquise par l'appareil photo, sans aucune modification.

Ce qu'il faut savoir tout d'abord sur le format RAW, c'est que contrairement au JPG ou au TIF, il ne répond à aucune norme. RAW n'est qu'un terme pour désigner le format brut des données issues d'un appareil photo, mais chaque fabricant code ses fichiers RAW de façon différente. Plus que cela, chaque modèle d'appareil photo code ses fichiers RAW de façon différente. Ainsi, pour lire un fichier RAW il est nécessaire de posséder un programme d'importation compatible avec le modèle d'appareil photo utilisé (le logiciel du fabricant de l'appareil, Adobe Photoshop Lightroom, ou encore Darktable). Pour cette raison, les extensions des fichiers RAW dépendent du fabricant de l'appareil (mais pas nécessairement du modèle). Ainsi, les fichiers RAW Canon ont l'extension CR2, mais ne sont pas tous lisibles de la même façon (car leur codage dépend du modèle de l'appareil). Malgré cela il existe un format RAW qui se veut universel (bien qu'ayant été créé par Adobe) : le DNG, pour Digital Negative. Malheureusement, il n'a été adopté par aucun fabricant d'appareil photo.

Comme nous l'avons vu, les images sont enregistrées avec trois composantes (rouge, vert et bleu) quantifiées sur une échelle. Cette échelle dépend du format d'enregistrement de l'image. Lorsque l'image n'est pas compressée, cette échelle va de 0 à 255 (8 bits) ou de 0 à 65535 (16 bits) pour chacune des trois composantes de couleur. On parle alors de 16 millions de couleurs dans le premier cas (256 à la puissance 3), et de 16 bits par composantes dans le second (car 281 milliers de milliards de couleurs c'est un peu long à prononcer). Une petite parenthèse au sujet de ces nombres de couleurs impressionnants : il existe peu d'études sur le nombre de couleurs que l'oeil humain (le cerveau plus exactement) est capable de différencier, mais on sait par exemple que des employées d'une fabrique de laine du début du XXème siècle étaient capables de trier sans se tromper 20 000 teintes de laine différentes, et certains experts estiment que l'oeil humain peut différencier jusqu'à 10 millions de couleurs.
Dans le cas d'une image RAW, l'échelle de codage des composantes est celle du capteur d'image, soit 15 bits par exemple pour les réflex Canon.

L'avantage d'utiliser le format RAW est que l'on dispose du maximum de latitude de réglage lors du développement du cliché (mais pour cela il faut disposer d'un logiciel de développement comme Lightroom). Par comparaison, une image RAW de Canon Eos 500D a chacune de ses composantes de couleur codée sur 15 bits (de 0 à 32767), alors qu'une image JPG de ce même appareil a ses composantes de couleur codées sur 8 bits (0 à 255), soit 128 fois moins. Bien sûr, si l'on ne possède pas de logiciel de développement, ou que l'on ne souhaite pas en utiliser, le format RAW perd tout son intérêt.
Même si la latitude de réglage lors du développement est plus grande grâce au format RAW, il y a des situations dans lesquelles il ne peut rien.
Nous avons vu plus haut que l'on peut avoir dans une photo des blancs cramés (high key), et des noirs parfaits (low key), qui sont produit lorsque la quantité de lumière atteint la limite de l'échelle enregistrable pour les trois composantes. Dans de tels cas, le format RAW n'apportera rien au niveau des zones cramées de l'image, car si la limite de l'échelle de quantification est atteinte, qu'elle aille de 0 à 255 ou de 0 à 32767, chacune de ses extrémités correspondent à la même quantité de lumière. Une zone cramée en JPG sera donc aussi cramée en RAW.
Dernier mot sur l'utilisation du format RAW : il utilise une compression sans perte (sauf sur certains boitiers Nikon où il est aussi possible de sélectionner une compression avec perte). Comme on a l'a vu avec la compression JPG, celle-ci crée des artéfacts dans l'image, et ce même avec la compression minimum. Le format RAW est aussi compressé, mais avec un algorithme qui ne modifie pas les informations enregistrées (exception à la règle dont j'ai parlé plus haut, cet algorithme s'appelle lossless JPG, mais il n'a de JPG que le nom car il n'utilise pas de transformée cosinus, d'où son absence de pertes). Ainsi, une image RAW ne présentera aucun des artéfacts que l'on pourra voir dans une image JPG, c'est donc le format idéal pour retravailler une image sous Photoshop, car on pourra ensuite choisir de conserver une compression sans perte, alors qu'avec le JPG on aura déjà perdu de l'information.