À quoi ressemble un fichier RAW non traité?

86

Je sais que des personnes utilisent des logiciels sophistiqués tels que Lightroom ou Darktable pour post-traiter leurs fichiers RAW. Mais si je ne le fais pas? À quoi ressemble le fichier, juste, tu sais, RAW ?

mattdm
la source
21
La matrice. Cela ressemble à la matrice.
Hueco
2
Apparenté, relié, connexe; Les fichiers RAW stockent 3 couleurs par pixel, ou seulement une? et pourquoi le rouge, le vert et le bleu sont-ils les couleurs primaires de la lumière? ce qui explique comment les capteurs des caméras numériques minimisent le chemin ou que les yeux / le cerveau perçoivent une couleur qui, dans un sens, n'existe pas réellement comme nous le supposons souvent.
Michael C
3
@ Hueco, une matrice Bayer, peut-être.
Marc
J'ai déplacé la discussion sur la meilleure façon de traiter cela comme une question canonique à discuter . Continuons-le s'il vous plaît afin que nous n'ayons pas de bruit dans les commentaires, quelle que soit la décision prise.
AJ Henderson
1
Cela ne ressemble pas vraiment à "l'image brute sortie de l'appareil" que beaucoup de gens semblent penser avoir quand ils ouvrent un fichier image brut dans une application de traitement brut. C'est la base de cette question.
Michael C

Réponses:

185

Il existe un outil appelé dcraw qui lit divers types de fichiers RAW et en extrait des données de pixels. Il s’agit en fait du code original qui se trouve au bas de nombreux logiciels de conversion open source et même commerciaux.

J'ai un fichier RAW de mon appareil photo et j'ai utilisé dcraw dans un mode qui lui dit de créer une image en utilisant des valeurs 16 bits littérales et non mises à l'échelle du fichier. J'ai converti cela en un fichier JPEG 8 bits à des fins de partage, en utilisant un gamma perceptuel (et une taille réduite pour le téléchargement). Cela ressemble à ceci:

dcraw -E -4

Il est évident que le résultat est très sombre, bien que si vous cliquez pour développer, et si votre moniteur est décent, vous pouvez voir soupçon de quelque chose .

Voici le format JPEG couleur hors-caméra reproduit à partir de ce même fichier RAW:

JPEG hors caméra

(Crédit photo: ma fille utilise mon appareil photo, au fait.)

Pas totalement noir après tout. Une question approfondie couvre mieux les détails de la localisation exacte de toutes les données , mais en bref, nous avons besoin d'une courbe qui étend les données sur la plage de foncées et de lumières disponibles dans un fichier JPEG 8 bits sur un écran typique. .

Heureusement, le programme dcraw a un autre mode qui convertit une image plus "utile" mais à peine traitée. Ceci ajuste le niveau du noir le plus foncé et du blanc le plus brillant et redimensionne les données de manière appropriée. Il peut également régler la balance des blancs automatiquement ou à partir du réglage de l'appareil photo enregistré dans le fichier RAW, mais dans ce cas, je lui ai dit de ne pas le faire, car nous souhaitons examiner le moins de traitement possible.

Il y a toujours une correspondance un-à-un entre les sites photos sur le capteur et les pixels dans la sortie (encore une fois, j'ai réduit cette taille pour le téléchargement). Cela ressemble à ceci:

dcraw -d -r 1 1 1 1

Maintenant, cela est évidemment plus reconnaissable en tant qu’image - mais si nous zoomons dessus (ici, donc chaque pixel est en fait grossi 10 ×), nous voyons que c’est tout… pointillé:

Zoom et recadrage 10 ×

En effet, le capteur est recouvert d’un réseau de filtres colorés - de très petits filtres colorés de la taille de chaque photosite. Comme mon appareil photo est un appareil photo Fujifilm, il utilise un motif appelé «X-Trans» par Fujifilm:

10 × xtrans

Certains détails sur le modèle particulier sont plutôt intéressants, mais dans l’ensemble, ce n’est pas très important. La plupart des appareils utilisent aujourd'hui un motif appelé Bayer (qui se répète tous les 2 × 2 au lieu de 6 × 6). Les deux modèles ont plus de sites filtrés en vert que les sites rouges ou bleus. L'œil humain est plus sensible à la lumière dans cette plage, donc utiliser plus de pixels pour obtenir plus de détails avec moins de bruit.

Dans l'exemple ci-dessus, la section centrale est une partie du ciel, qui est une nuance de cyan. En RVB, il y a beaucoup de bleu et de vert sans beaucoup de rouge. Les points noirs sont donc les sites de filtres rouges - ils sont sombres, car cette zone a moins de lumière dans les longueurs d'onde qui traversent ce filtre. La bande diagonale dans le coin supérieur droit est une feuille vert foncé. Ainsi, même si tout est un peu sombre, vous pouvez voir le vert - les blocs plus grands de 2 × 2 avec ce motif de capteur - sont relativement les plus brillants dans cette zone.

Quoi qu'il en soit, voici une section 1: 1 (lorsque vous cliquez pour obtenir la version complète, un pixel de l'image correspondra à un pixel de l'écran), dans la section JPEG de l'appareil photo:

Recadrage 1: 1 d'une image hors caméra

... et voici la même zone de la conversion en niveaux de gris rapide ci-dessus. Vous pouvez voir le pointillé du motif X-Trans:

Recadrage 1: 1 de la version de dcraw -d -r 1 1 1 1

Nous pouvons en fait prendre cela et coloriser les pixels afin que ceux correspondant au vert dans le tableau soient mappés sur des niveaux de vert au lieu de gris, de rouge à rouge et de bleu à bleu. Cela nous donne:

1: 1 avec colorisation xtrans

... ou pour l'image complète:

image complète de dcraw -d -r 1 1 1 1 avec colorisation xtrans

La dominante verte est très apparente, ce qui n’est pas surprenant, car il y a 2½ × plus de pixels verts que de rouges ou de bleus. Chaque bloc 3 × 3 comporte deux pixels rouges, deux pixels bleus et cinq pixels verts. Pour contrer cela, j'ai créé un programme de mise à l'échelle très simple qui convertit chacun de ces 3 × 3 blocs en un seul pixel. Dans ce pixel, le canal vert est la moyenne des cinq pixels verts et les canaux rouge et bleu de la moyenne des deux pixels rouges et bleus correspondants. Cela nous donne:

xtrans colorized, démaquillage de bloc naïf

... Ce qui n'est en fait pas à moitié mauvais. La balance des blancs est éteinte, mais puisque j'ai délibérément décidé de ne pas m'ajuster, ce n'est pas une surprise. Le fait de frapper la "balance des blancs automatique" dans un programme d'imagerie compense cela (comme ce serait le cas si dcraw l'avait réglé en premier lieu):

xtrans colorized, démaquillage de bloc naïf + auto-niveaux

Les détails ne sont pas très intéressants par rapport aux algorithmes plus sophistiqués utilisés dans les appareils photo et les programmes de traitement RAW, mais les bases sont clairement là. De meilleures approches créent des images en couleur en pondérant les différentes valeurs autour de chaque pixel plutôt qu'en utilisant de gros blocs. Puisque la couleur habituellement change progressivement sur les photos, cela fonctionne assez bien et produit des images où l'image est en couleur sans réduire les dimensions en pixels. Il existe également des astuces astucieuses pour réduire les artefacts de bord, le bruit et d'autres problèmes. Ce processus est appelé "dématriçage", car le motif des filtres colorés ressemble à une mosaïque en mosaïque.

Je suppose que cette vue (où je n’ai vraiment pris aucune décision et que le programme n’a rien fait automatiquement de manière intelligente) aurait pu être définie comme "l’apparence standard par défaut" du fichier RAW, mettant ainsi fin à de nombreux arguments Internet. Mais il n’existe pas de norme - il n’existe pas de règle selon laquelle cette interprétation "naïve" est particulière.

Et ce n'est pas le seul point de départ possible. Tous les programmes de traitement RAW du monde réel ont leur propre idée d'un état de base par défaut à appliquer à un nouveau fichier RAW au chargement. Ils doivent faire quelque chose (sinon nous aurions cette chose sombre et inutile en haut de cet article), et ils font généralement quelque chose de plus intelligent que ma simple conversion manuelle, ce qui est logique, car cela vous permet d'obtenir de meilleurs résultats.

mattdm
la source
4
Belle photo. Et bonne réponse.
Marc.2377
10

C'est une très grande grille de chiffres. Tout le reste est en cours de traitement.

WolfgangGroiss
la source
Les commentaires ne sont pas pour une discussion prolongée; cette conversation a été déplacée pour discuter .
AJ Henderson
7

Je sais que mattdm a déjà très bien répondu à cette question, mais je pensais que cet article pourrait vous intéresser:

Données génétiques: comment fonctionnent les appareils photo numériques

En cas de perte du lien, voici un résumé:

L'œil humain est le plus sensible aux couleurs dans la région de la longueur d'onde verte (coïncidant avec le fait que notre soleil émet plus intensément dans la région verte).

L'œil de la caméra (dispositif à couplage de charge (CCD) ou semi-conducteur à oxyde de métal complémentaire (CMOS)) est sensible uniquement à l'intensité de la lumière, pas à la couleur.

Les filtres optiques permettent de filtrer différentes longueurs d'onde de la lumière. Par exemple, un filtre passe-vert ne laisse passer que la lumière verte.

Les filtres optiques utilisés dans les appareils photo numériques ont la taille des capteurs de pixels individuels et sont disposés dans une grille pour correspondre au réseau de capteurs. Des filtres rouges, verts et bleus (un peu comme nos cellules à cône) sont utilisés. Cependant, comme nos yeux sont plus sensibles au vert, le filtre de la matrice Bayer dispose de 2 filtres de pixels verts pour chaque pixel rouge et bleu. La matrice Bayer comporte des filtres verts formant un motif en damier, tandis que les filtres rouges et bleus occupent des rangées alternées.

Revenons à votre question initiale: à quoi ressemble un fichier RAW non traité?

Cela ressemble à un réseau à damier noir et blanc de l'image d'origine.

Le logiciel sophistiqué de post-traitement des fichiers RAW applique d'abord le filtre Bayer. Cela ressemble plus à l'image réelle après cela, avec des couleurs d'intensité et d'emplacements corrects. Cependant, il existe toujours des artefacts de la grille RVB du filtre Bayer, car chaque pixel n’est qu’une couleur.

Il existe diverses méthodes pour lisser le fichier RAW codé par couleur. Le lissage des pixels est similaire au flou, donc trop de lissage peut être une mauvaise chose.

Certaines des méthodes de dématriçage sont brièvement décrites ici:

Voisin le plus proche: La valeur d'un pixel (une seule couleur) est appliquée à ses autres voisins colorés et les couleurs sont combinées. Aucune "nouvelle" couleur n'est créée dans ce processus, seules les couleurs initialement perçues par le capteur de l'appareil photo.

Interpolation linéaire: par exemple, fait la moyenne des deux valeurs bleues adjacentes et applique la valeur bleue moyenne au pixel vert situé entre les pixels bleus adjacents. Cela peut brouiller les arêtes vives.

Interpolation quadratique et cubique: semblable à l'interpolation linéaire, approximations d'ordre supérieur pour la couleur intermédiaire. Ils utilisent plus de points de données pour générer de meilleurs ajustements. linear ne regarde que deux, quadratique à trois et cubique à quatre pour générer une couleur intermédiaire.

Splines Catmull-Rom: semblable au cubique, mais prend en compte le dégradé de chaque point pour générer la couleur intermédiaire.

Demi-cosinus: utilisé comme exemple de méthode d'interpolation, il crée des demi-cosinus entre chaque paire de couleurs similaires et comporte une courbe infléchie lisse entre elles. Cependant, comme indiqué dans l'article, il ne présente aucun avantage pour les matrices Bayer en raison de la disposition des couleurs. Cela équivaut à une interpolation linéaire mais à un coût de calcul plus élevé.

Les logiciels de post-traitement haut de gamme disposent de meilleures méthodes de dématriçage et d'algorithmes intelligents. Par exemple, ils peuvent identifier les contours nets ou les changements de contraste élevés et conserver leur netteté lors de la combinaison des canaux de couleur.

jreese
la source
-6

Je pense que beaucoup de gens imaginent que les fichiers bruts sont simplement un tableau de valeurs de pixels sortant directement du capteur de l'appareil photo. Dans certains cas, c’est vraiment le cas et vous devez fournir des informations sur le capteur afin de permettre au logiciel d’interpréter l’image. Mais bon nombre des caméras grand public donnent généralement des "fichiers bruts" qui sont plus ou moins conformes à la spécification de fichier TIFF (dans certains cas, les couleurs peuvent être éteintes). On peut essayer de changer simplement l'extension de fichier en ".tif" et voir ce qui se passe lors de l'ouverture du fichier. Je pense que certains d'entre vous verront une bonne image, mais pas tout le monde, car il existe des différences entre la façon dont différents camerabrands résolvent ce problème.

Un fichier TIFF au lieu d'un "fichier brut réel" est une bonne solution. Un fichier TIFF peut avoir 16 bits par couleur. C'est suffisant pour toutes les caméras que je connais.

Ed: Je me demande pourquoi cette réponse a été rejetée. La réponse est essentiellement correcte (à l'exception du fait que les fabricants d'appareils photo n'ont pas à utiliser les structures TIFF, mais beaucoup le font).

En ce qui concerne le tableau de pixels sortant tout droit du capteur, il n’est pas ridicule d’attendre une telle chose. Parce que c'est ainsi que fonctionnent de nombreux capteurs en dehors du marché des caméras grand public. Dans ces cas, vous devez fournir un fichier séparé décrivant le capteur.

Soit dit en passant, le mot "RAW" est utilisé car il devrait signifier que nous obtenons les données de capteur non traitées. Mais il est raisonnable que les fabricants d'appareils photo utilisent un format structuré au lieu de fichiers bruts pour de vrai. De cette façon, le photographe ne doit pas connaître les données exactes du capteur.

Ulf Tennfors
la source
2
J'ai eu des applications de récupération de fichiers « récupérés » fichiers .CR2 au format TIFF. Ces fichiers ne s'ouvriraient pas avec une application pouvant fonctionner avec des fichiers TIFF. Remettre les extensions de fichier à nouveau en .cr2 rendait les fichiers .cr2 parfaitement utilisables.
Michael C
5
Cela ne veut pas dire que les fichiers RAW n'utilisent pas souvent de conteneurs de format TIFF, c'est tout à fait correct. C'est simplement que ce que vous voyez ne correspond probablement pas aux données "RAW" au sens où je les cherche.
Mattdm le
2
Ok, pour clarifier, le fichier utilise des structures du format de fichier TIFF. Mais comme il ne fait pas exactement ce que dit la spécification TIFF, ce n'est pas un fichier TIFF strict. Mais le fait est qu'une bibliothèque TIFF pourrait être utilisée pour lire le fichier. Il n'est pas nécessaire de tout créer à partir de zéro pour lire ce fichier.
Ulf Tennfors le
5
Aucune personne sensée ne s'attendrait à ce qu'un fichier RAW soit des données directement du capteur sans métadonnées telles que l'heure, les informations relatives à l'appareil photo, etc. Le fait que les formats de type TIFF soient utiles pour structurer les données n'a pas vraiment d'importance, cela ne diminue pas non plus le principe conceptuel selon lequel ces données sont "directement" sorties du capteur sans post-traitement.
Whatsisname
3
Le format TIFF est un conteneur et non un format d'image. vous pouvez stocker des données au format TIFF tout en conservant des données de capteur brutes au lieu d'une image que toute personne sans connaissances spécifiques à l'appareil photo pourrait utiliser.
le