Perché la maggior parte delle fotocamere non supporta il formato PNG?


56

Preferisco il formato PNG a JPG, perché JPG utilizza la compressione con perdita .

Quando acquisisco uno schermo nel mio PC o scansiona una foto o un documento nel mio scanner, li salvo sempre in formato PNG.
Se una fotocamera potesse salvare i suoi dati in formato PNG, utilizzerei la funzione anche se avessi bisogno di acquistare più schede di memoria.

Ma non ho visto nessuna fotocamera che lo faccia. Perchè no? Perché la maggior parte (o nessuna) fotocamera supporta il formato PNG?

PS La mia fotocamera non supporta RAW.


7
Molti supportano TIFF, che supporta anche la compressione senza perdita. Ma poi la domanda diventa "Perché la maggior parte dei browser Web non supporta TIFF?"
mattdm,

3
Preferisci PNG a JPG per la fotografia? Non ho mai visto una discussione per questo prima.
dpollitt,

1
È un po 'ironico che il link che dai usi png come esempio di compressione con perdita di dati :)
Toby Allen,

6
@JZL Sebbene PNG supporti le tavolozze dei colori (colore indicizzato), non le richiede. Sono sicuro che stiamo parlando del buon vecchio colore RGB a 24 o 48 bit qui. GIF, d'altra parte, supportava solo il colore indicizzato ed era limitato a 256 colori nella palette.
Coneslayer

2
@Pacerier Molti di loro. Invece di elencare, dai un'occhiata a questa tabella su Wikipedia .
Mattdm,

Risposte:


58

Il formato JPEG ha il vantaggio di fornire file di piccole dimensioni. I formati RAW hanno il vantaggio di preservare tutti i dati raccolti durante lo scatto.

Il formato PNG non offre nessuno di questi vantaggi, quindi non si ottiene nemmeno un compromesso tra gli altri formati, si ottengono quasi solo gli svantaggi di entrambi i formati.


3
Un punto da notare qui, non esiste "il formato RAW". Quindi, se Benjamin desiderasse uno standard, dovrebbe convertire il suo RAW in DNG.
Leonidas,

Sì, RAW significa semplicemente il formato interno della fotocamera e varia da fotocamera a fotocamera. Di recente ho usato una fotocamera il cui formato raw prevedeva due byte per pixel e diverse migliaia di byte di intestazione / piè di pagina (ugh).
John Robertson,

Tenderei ad essere d'accordo con Leonidas qui. Il vero problema è che DNG non è adottato da più produttori di fotocamere. Come fotografi, possediamo i nostri negativi, ma i nostri negativi digitali sono bloccati in formati di file proprietari, spesso con dettagli nascosti dalla NDA. L'adozione di DNG da parte di Canon o Nikon farebbe molto per risolverlo. Non accadrà, però.
RBerteig,

2
@Giovanni, l'utilizzo di 2 byte / pixel è anormale? In quale altro modo potresti adattare il valore di 12 o 14 bit fornito dal sensore per ciascun pixel? In seguito potresti fare un po 'di compressione, ma per un mucchio di dati più o meno casuali potrebbe non valerne la pena.
Nick T,

1
@ John Robertson: la maggior parte dei chip registra solo un colore per pixel, non tre, quindi RAW a 14 bit corrisponde a RGB a 42 bit, dopo che due componenti di colore per pixel sono stati interpolati dai pixel circostanti.
Guffa,

44

A parte le dimensioni delle immagini, una grande ragione è che PNG non ha un mezzo standardizzato per incorporare EXIF ​​e che immediatamente eviterà i produttori di fotocamere. Ci sarebbero molte informazioni perse facendo la conversione delle immagini in PNG nella fotocamera di conseguenza e, per la maggior parte, verrebbero probabilmente visti come negativi dalla maggior parte dei fotografi.


7
+1 Non ho mai capito che non esisteva un incorporamento EXIF ​​standardizzato per PNG. Buono a sapersi.
Coneslayer

5
La ragione più probabile. I metadati sono carini.
Leonidas,

3
Wiki : iTXt contiene testo UTF-8, compresso o meno, con un tag di lingua opzionale. Il blocco iTXt con la parola chiave "XML: com.adobe.xmp" può contenere Extensible Metadata Platform (XMP).
Kevin Peno,

6
La mancanza di dati EXIF ​​sarebbe "vista come negativa" dai fotografi? Bah! Questi giovani fotografi digitali scattano snapper! Ai miei tempi, i fotografi usavano il cinema e sapevano che aspetto avesse davvero un negativo! :-)
Pensando in modo strano

4
@Oddthinking Almeno il negativo aveva dei piccoli metadati ai bordi!
Coneslayer

27

PNG può utilizzare un algoritmo di compressione senza perdita di dati, ma è in perdita rispetto ai dati non elaborati. Si perde profondità di bit, la fotocamera potrebbe introdurre artefatti di demosaicing, si potrebbe cuocere in un cattivo bilanciamento del colore, la fotocamera potrebbe applicare una nitidezza inappropriata, la riduzione del rumore nella fotocamera potrebbe sbiadire i dettagli, ecc. Non penso che ci sia una grande richiesta per un formato grande quanto raw, ma meno suscettibile di postelaborazione.


3
Il .png sarebbe quasi sicuramente più grande del raw poiché il png dovrebbe memorizzare tre valori di colore per pixel anziché un campione raw, quindi per un png a 8 bit che è 24 bit per pixel contro 12 o 14 bpp per il raw.
Matt Grum,

3
@John Ma è peggio di raw, che è quello che dovresti usare per l'editing. Il PNG sembra un mezzo infelice tra JPEG e Raw.
Coneslayer

5
@Matt Dato che il PNG utilizza anche la compressione (il risultato) non deve essere affatto più grande (dipende dagli algoritmi). Per dirlo in una domanda: se converti un file ASCII (8 bit per carattere) in un file UTF16, un risultato compresso dovrebbe diventare significativamente più grande? Se rispondi con "sì", rileggi gli algoritmi di compressione.
Leonidas,

1
@Leonidas Hai ragione, ma mi aspetto che chiunque chieda output PNG (anziché raw) si aspetterà che il risultato sia immediatamente utilizzabile dalla fotocamera, il che significa che vuoi cose come la nitidezza per mitigare il filtro antialiasing e probabilmente la riduzione del rumore. Non tecnicamente necessario, ma se i tuoi file PNG richiedono ulteriori modifiche, quindi, ancora una volta, non vedo il vantaggio rispetto a Raw.
Coneslayer

2
@coneslayer Suppongo che Benjanmin abbia lo stesso problema che ho avuto / ho quando ho rielaborato le immagini: (1) JPG ha già perso alcuni dati delle immagini e (2a) RAW è proprietario (software disponibile solo da qualche tempo), (2b) non tutte le fotocamere offre RAW. Diversi anni fa ho desiderato troppo disperatamente TIFF o PNG nella mia compatta.
Leonidas,


2

PNG è una grafica di rete portatile . È mirato per il web e per immagini piuttosto semplici (a colori). La sua compressione è molto inefficace per la grafica realistica in quanto si scatta con una fotocamera, quindi i risultati sono quasi non compressi. Pertanto, puoi semplicemente utilizzare i file RAW, che aggiungono il vantaggio, che non esiste una conversione con perdita di dati in uno spazio colore RGB.

Il motivo per cui viene utilizzato JPEG è semplicemente che la sua compressione è molto buona e funziona molto bene con una grafica più realistica in cui i singoli artefatti sono invisibili all'occhio umano. Inoltre, JPEG è supportato da quasi tutti i dispositivi e offre molti modi per aggiungere metadati aggiuntivi, inclusi i profili colore.

Nessun singolo formato di file RGB è in grado di memorizzare l'immagine esattamente come la vede il sensore della fotocamera; c'è sempre qualche tipo di perdita in quella conversione. Pertanto, ha senso utilizzare un formato con una buona compressione che non danneggi davvero l'immagine in totale. Se stai cercando un vero formato senza perdita di dati, RAW della fotocamera è l'unica direzione in cui puoi andare, da cui puoi creare qualsiasi file desideri.


Conversione in perdita nel spazio colore RGB? Come mai? Cosa perdi esattamente mentre converti i dati del sensore Bayer (dati additivi) in una forma delle versioni RGB? (A proposito: PNG offre anche profili ICC in linea di principio, FF prevede di supportarlo, ho letto.)
Leonidas

@Leonidas: non esiste uno "spazio" di colori RGB. La fotocamera raccoglie molte più informazioni di quelle interpretabili da qualsiasi spazio colore RGB (sRGB, Adobe RGB ecc.). Pertanto, quando la conversione viene eseguita in un file RGB, si perdono sempre alcune informazioni / colori. L'unico modo per preservarlo è salvare i dati nel modo in cui la fotocamera li vede, vale a dire il RAW.
colpì

@poke Puoi spiegare come un tipico sensore RGGB produce dati che non possono essere convertiti senza perdita di dati in qualsiasi formato RGB? (Sono consapevole che ci sono più, nota "una forma delle versioni RGB".)
Leonidas

@Leonidas: posso sbagliarmi, e se conosci meglio (o mi stai ingannando per dire qualcosa di sbagliato qui), per favore correggimi, ma dato che il sensore non separa la luce che vede in 256 passaggi per ogni colore , Non penso che nessun normale formato di file RGB o spazio colore RGB sia in grado di contenere tutte queste informazioni. Sono consapevole che il sensore acquisisce i dati come informazioni RGB, quindi in teoria potrebbe esserci uno spazio cromatico RGB se ce ne fosse uno in grado di contenere tutte le informazioni che l'immagine contiene effettivamente.
colpì

@poke Nessun trucco qui, dubito seriamente che non ci sarà alcun formato RGB che offra la gamma del sensore. Per quanto riguarda la discriminazione, penso che i formati a 16 bit / canale offrano spazio sufficiente per riceverlo. Ad esempio in photo.stackexchange.com/questions/8707/raw-processing-software/… jrista menziona un demosaicing chiamato Bayer Drizzle che sembra davvero essere stato progettato per mantenere tutti i dati disponibili.
Leonidas,

1

Entrambi i formati hanno i loro pro e contro.

Ma il vero motivo per cui JPEG è più prevalente di PNG è che le persone dietro JPEG fanno licenze aggressive, che mancano a PNG. (www.libpng.org/pub/png/)

Questo è molto simile a MP3 vs. OGG vs. FLAC. Creatori MP3 autorizzati in modo aggressivo all'inizio ... portando alla popolarità. Per questo motivo, ora, i produttori si avvicinano all'MP3 per ottenere le licenze!


0

IMO dovresti sempre scattare in RAW, se non sei preoccupato per i costi di memoria RAW è la strada da percorrere. Questo ti dà la migliore opportunità di correggere le immagini in post elaborazione.

Di seguito una citazione da: http://www.hackerfactor.com/blog/index.php?/archives/252-PNG-and-Cameras.html

PNG è assolutamente meraviglioso per l'archiviazione di immagini a colori a 24 bit reali. L'elaborazione dei file PNG è molto semplice e non richiede campi specifici dell'applicazione. Tuttavia, è computazionalmente costoso, non ha la capacità di memorizzare più immagini e non ha molti campi di testo standardizzati per la gestione dei metadati.

JPEG è un formato di file dispendioso pieno di campi specializzati. È anche una cattiva scelta per la rappresentazione del vero colore. Tuttavia, è poco costoso dal punto di vista computazionale, supporta la memorizzazione di più immagini e il ridimensionamento delle immagini è banale. E purtroppo, è stato ampiamente accettato come standard di fatto.

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.