Il formato Canon * .CR2 / CRW contiene dati "veramente RAW"?


11

Nel mio lavoro mi occupo di * .CR2 immagini grezze scattate da una DSLR Canon in modalità raw. Quando ho letto del formato qui , sono stato sorpreso di scoprire che ha 4 IFD TIFF che contengono a) Immagine JPEG formato originale b) Immagine JPEG in miniatura c) Dati RGB non compressi d) Immagine JPEG senza perdita.

La mia impressione fino ad ora era che qualsiasi file di immagine RAW catturato dalla fotocamera avrebbe avuto dati Bayer grezzi, cioè dati di tipo bayer tipo R, Gr, B, Gb e alcuni dati EXIF ​​sulle impostazioni di acquisizione della fotocamera, ecc.

Ma dopo aver letto questa specifica CR2 sono un po 'confuso su come può avere un dato RGB o anche sorprendentemente dati JPEG. Questi sembrano essere i dati dopo il demosaicing (ottenendo i dati pixel R / G / B mancanti per il modello Bayer del sensore originale). In tal caso non considererei * .CR2 come dati "veramente grezzi". Ha effettuato la demosaicing prima di scaricare il cosiddetto file raw.

Mi sto perdendo qualcosa?

Altri formati di Camera Raw (ad es. Nikon - * .NEF, Kodac - * .kdc, Pentax - * .ptx / pef, ...) hanno dati bayer grezzi reali senza alcuna elaborazione?


2
La pagina a cui ti colleghi dice che contiene il modello Bayer, quindi sì, ha il modello Bayer.

Il link sul formato è rotto
Pedro77,

Risposte:


11

Penso che ti manchi sicuramente qualcosa. Considerare: JPG viene utilizzato per archiviare (e generalmente comprimere, con perdita) di immagini. Qualsiasi immagine Cos'è un'immagine? È un grande fascio di pixel, quando tutto è detto e fatto.

Anche l'output del sensore della fotocamera è un grande fascio di pixel. Capita semplicemente di non essere pixel RGB a colori, sono pixel monocromatici - se un singolo pixel rappresenta RG o B dipende dalla sua posizione sul sensore di immagine, che è noto. Ma la loro natura monocromatica, in base al colore per posizione, non significa che non possano essere utilmente memorizzati in modo JPG. Un fascio di pixel è un insieme di pixel e perché reinventare la ruota?

Guarda più da vicino il documento. "Quindi con una griglia BAYER di RG / GB, le righe pari hanno interfogliato i dati HuffCode / Diff per ... RGRGRG ..., mentre le righe dispari sono ... GBGBGB ...". Pertanto, l'output Bayer non elaborato viene archiviato in un formato JPG. Senza perdita, si afferma (altrimenti avremmo un problema!) E presumibilmente in profondità di oltre 8 bit. Hai cucinato troppo per ottenere una foto utile.

Le altre immagini JPG vengono utilizzate per l'anteprima, l'istogramma e così via. Ha senso cucinarli una volta per tutte mentre l'immagine viene scattata, piuttosto che doverlo fare al volo ogni volta che vuoi guardarli. Ciò significa anche che il computer può pescare questi per scopi di anteprima una volta scaricata la fotocamera sul PC.

*** Non posso aggiungere un commento per qualche motivo, quindi questo va qui: Goldenmean, cosa ti fa pensare che c'è un problema che non hai informazioni RGB complete per ogni pixel? Supponendo che si stia creando un formato RAW e si abbia una misura di 128 da una cella sensore "rossa"; puoi scegliere di archiviarlo come 128,0,0 o 128,128,128 oppure, di cui ti senti intelligente, 128, "dati dalla cella successiva", "dati dalla cella successiva" per risparmiare spazio. Non importa davvero. È compito del convertitore RAW tenere traccia di questo (anche se sono sicuro che i programmatori lo apprezzerebbero se documentassi il modo in cui hai scelto di memorizzare i dati del sensore) e ne ricava un'immagine reale.


2
Il formato JPG con perdita di dati che tutti conosciamo è apparentemente abbastanza diverso dallo schema confuso "Lossless JPEG" utilizzato in questi file non elaborati.
Lyman Enders Knowles,

2
@Lyman: Sì, lo è. Ad esempio, viene utilizzato anche in DNG,
vedi

Capisco: "tutto ciò che riguarda i pixel" e anche il "codec JPEG senza perdita di dati", ma rimangono ancora delle domande, come può avere 3 componenti per ogni pixel archiviato nel raw. Il sensore non fornisce una tripletta per ogni pixel fisico, ma fornisce solo uno dei 3 (R, G o B), non tutti e 3 i formati che sembrano essere memorizzati per il pixel di eack. Ecco il qn.
goldenmean

2

Il DNG contiene JPG in scala di grigi senza perdita di dati con una risoluzione 4 volte superiore al file jpg a colori " normale ". Adesso è più chiaro?

Qual è il problema nel posizionare 3 tipi di palline nere in un crogiolo destinato a contenere 3 palline colorate ?

Nel file JPG non ci sono colori, ci sono solo numeri, come in qualsiasi altro formato di file. E usano JPG perché è più facile codificarlo in questo modo, perché il processore della fotocamera è già realizzato per creare tali file.

Probabilmente scriverebbero i dati della matrice in zip, rar, flac o qualsiasi altro formato lossless praticamente allo stesso modo. Ma ciò richiederebbe un mucchio di algoritmi aggiunti al software della fotocamera, che non sono necessari.


Sono confuso dalla tua spiegazione. il collegamento non funziona più, ma l'OP indica che ci sono file TIFF. Se la fotocamera è in grado di produrre file TIFF, perché è necessario codificare i dati grezzi in JPG? JPG senza perdita di dati non significa perdita di dati nella compressione, ma ciò non significa necessariamente che la conversione da dati di matrice grezza in JPG non trasformi o perda informazioni in qualche modo, vero?
MikeW
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.