[miniGuida] Una panoramica sulla demosaicizzazione

Tematiche legate a tecniche e post produzione digitale, strumenti, proiettori, computer, stampa digitale, archiviazione.

Moderatori: maxofrome, Enrico, Mauro, old_kappa, Buster

[miniGuida] Una panoramica sulla demosaicizzazione

Messaggioda ntx » sab gen 28, 2012 10:04 pm

ATTENZIONE
Il messaggio che segue trattera' di caratteristiche delle immagini a livello del singolo pixel. Saranno presenti crop al 200% e differenze tanto sottili da essere spesso sfuggenti.
A fronte di cio' questo messaggio non e' adatto a chi ritiene siano seghe mentali (e non e' detto abbia torto), a chi guarda le foto sul monitor o le stampa in piccolo formato. :D



Uno dei parametri che spesso non si va a modificare - o addirittura non e' possibile proprio farlo - e' l'algoritmo di demosaicizzazione. Eppure, a seconda dell'algoritmo utilizzato, si possono spremere piu' o meno a fondo i dati raccolti dal sensore, si puo' raggiungere una maggior nitidezza o si puo' evitare l'effetto Moire in demosaicizzazione (che fa schifo tanto).

Gli algoritmi di demosaicizzazione sono tanti, in futuro aumenteranno e su questo messaggio non trattero' nemmeno tutti quelli esistenti.
Gli algoritmi di demosaicizzazione presi in gioco sono quelli disponibili su Photivo (o RawTherapee) e su parecchi altri software che includono le librerie DCRaw (o suoi surrogati).

Su Photivo sono attualmente disponibili i seguenti algoritmi: demosaicizzazione bilineare, VNG, VNG a 4 colori, PPG, AHD, AMaZE, DCB, VCD e LMMSE. Ognuno di questi e' nato con il medesimo scopo: ricostruire il piu' fedelemente possibile quel 66.6% di informazione colore che manca ad ogni pixel del nostro RAW.

A fianco degli algoritmi di demosaicizzazione, ultimamente, sono nati anche degli algoritmi secondari che preparano "al meglio" la matrice prima della demosaicizzazione: e' il caso, ad esempio, dell'algoritmo di rifinitura EECI o degli algoritmi di riduzione del rumore FDBB.
Questi algoritmi lavorano a livello di matrice e quindi non sono assimilabili ai normali filtri.

Per vedere la qualita' di un algoritmo di demosaicizzazione occorre dargli in pasto un'immagine con dettagli estremamente fini, a livello della frequenza di Nyquist: dettagli piu' fini rispetto alla frequenza di Nyquist non sono risolvibili dal sensore. Cio' significa che la frequenza di Nyquist e' pari ad un pixel (per forza di cose ;) ).

Le seguenti immagini - crop al 200% - mostrano il comportamento dei vari algoritmi quando trattano dettagli finissimi:

Bilineare
Immagine

VNG
Immagine

VNG a 4 colori
Immagine

PPG
Immagine

AHD
Immagine

AMaZE
Immagine

DCB
Immagine

VCD
Immagine

LMMSE
Immagine

La prima selezione che e' possibile fare e' quella degli algoritmi che risentono dell'effetto Moire. L'effetto si presenta sul muro della casa producendo bande arancio e blu.
Esse sono molto evidenti sul Bilineare, su entrambi i VNG e sull'AHD. Con il PPG viene attenuato poiche' viene spostato soprattutto sulle componenti rosse e blu. Infine viene tenuto sotto controllo decisamente bene dal DCB, dall'AMaZE e dal LMMSE.

La seconda selezione e' quella sul livello di dettaglio. Questa e' difficile da inquadrare poiche' va valutato quanto gli artefatti della demosaicizzazione seguono quello che poteva essere il dettaglio reale (e che oramai abbiamo perso - lo dico giusto per chiarire le cose).
Gli artefatti sono tutte quelle strutture a forma di labirinto che permeano l'immagine. Queste strutture cercano di propagare i colori cercando di azzeccarne la direzione giusta di propagazione: azzeccare la direzione giusta significa rendere l'immagine piu' nitida.
In questo frangente la fanno da padroni gli algoritmi AMaZE e DCB. Il DCB, in particolare, riesce a raggiungere una precisione molto elevata. Fate caso a come riesce a confinare la propagazione dei colori sul muro del casotto in basso a sinistra: riesce a descrivere i mattoni quasi uno per uno.

Per alcuni non e' una novita' che AMaZE e DCB siano i migliori algoritmi attualmente disponibili. Resistono all'effetto Moire e hanno una precisione elevata. In particolare il DCB e' oggi l'unico algoritmo che riesce a raggiungere la frequenza di Nyquist... con l'unica debolezza di non saperlo fare altrettanto bene quando sono presenti aberrazioni cromatiche.

Il DCB ha un'altra peculiarita': puo' essere regolato per operare una maggiore rifinitura dei dettagli. Peculiarita' che nasce per limitare un po' la struttura a labirinto che produce la propagazione del colore.
Un esempio (crop 200%):
Immagine

Qui vediamo il DCB a singola passata (a sx, "DCB x1"), a doppia passata (al centro, "DCB x2") e a quadrupla passata (a dx, "DCB x4"). Si possono fare anche piu' di 4 passate (8, 20, 109, ecc.) ma non ho mai notato miglioramenti tali da giustificare lo spingersi oltre il 4x.
Ad ogni modo nell'immagine si puo' notare come le strutture a labirinto sul muro della casa vengano "limate" man mano che si aumentano le passate di rifinitura, malgrado il dettaglio dei mattoni sul casotto non viene perso.

Fra gli algoritmi di secondari importanti c'e' l'EECI. Si tratta di un analizzatore di gradienti che lavora a livello di matrice. Esso permette il recupero di una maggior nitidezza con gli algoritmi con precisione meno elevata.
Non bisogna aspettarsi da questo algoritmo un effetto tipo l'applicazione della maschera di contrasto: il suo effetto spesso e' un riposizionamento di pixel piu' o meno intensi in modo da enfatizzare o smorzare la direzione di un gradiente. E' normale, usando questo filtro, di ritrovarsi con una immagine finale con un numero piu' elevato di colori unici.

Altro algoritmo secondario importante e' l'FDBB, che esiste in due versioni una piu' blanda dell'altra, e che serve per operare una lieve riduzione del rumore a livello di matrice.
Il suo effetto rende, come tutte le riduzioni di rumore, piu' morbida l'immagine. In particolare - e questo e' il suo principale difetto - rende morbida la componente rossa della matrice... e i rossi, in generale, risentono della cosa. La contropartita e' una riduzione del rumore cromatico assieme ad un mantenimento dei dettagli.
Logicamente l'FDBB e' da usare in coppia con gli algoritmi di demosaicizzazione piu' precisi.
Per vedere come l'FDBB agisce sui rossi vediamo queste due immagini (crop al 100%).

DCB
Immagine

DCB + FDBB2
Immagine

Nella seconda si puo' notare come il riflesso rosato del binario in basso a sx venga quasi desaturato del tutto, oppure nel camino della casa in sfondo il rosa viene smorzato. Basta osservare, infine, i cavi della linea ferroviaria per accorgersi come sono meno definiti.


Perche' parlare di tutti gli algoritmi e non solo del DCB visto che e' tanto preciso? Non basta mettere le iterazioni di rifinitura a 4 e poi non curarsene piu?
Effettivamente quando si sviluppa un RAW sono pochi i motivi per non preferire il DCB, ma ci sono almeno due casistiche (fra quelle con cui ho avuto a che fare io) in cui si puo' preferire un'altro algoritmo di demosaicizzazione.

Il primo caso riguarda la ritrattistica.
Partendo dal presupposto che cromaticamente rendono allo stesso modo (e' il software che manipola il prodotto della demosaicizzazione a fare la differenza cromatica, non l'algoritmo in se), per la resa della pelle e' meglio preferire LMMSE poiche' non acuisce il dettaglio come fa il DCB (e' piu' morbido) e il suo algoritmo contiene un analizzatore di gradienti (qualcosa di simile al citato EECI) che quindi restituisce piu' sfumature. LMMSE e' simile all'AHD ma non produce i falsi colori di quest'ultimo.

Il secondo caso riguarda il bianco e nero.
Il modo in cui lavora il DCB rende molto, forse troppo, nitidi i singoli canali. In particolare, volendo sviluppare un B/N simulando il filtro rosso, ci si rende subito conto che questo canale puo' presentare artefatti poco piacevoli e talvolta simili ad un abbassamento di risoluzione.
Anche qui la soluzione e' rivolgersi ad un algoritmo meno sgarbato e morbido: la scelta (la mia) cade di nuovo su LMMSE che riesce a produrre un risultato molto piu' lavorabile e piacevole.
Un'immagine spiega bene la differenza (crop 100%):
Immagine

Malgrado i coppi del tetto siano piacevolmente piu' nitidi nel risultato prodotto dal DCB (a sx), c'e' da rilevare la pessima resa - con scalini vistosi - sui cavi della linea ferroviaria.
Utilizzando l'LMMSE, invece, tutto e' ammorbidito, si intravede appena un accenno di scalinatura sui cavi e i coppi risultano avere una resa un po' piu' morbida. Il vantaggio di LMMSE, in questo caso, a parte le sfumature piu' graduali, e' anche una maggior lavorabilita' dell'immagine: ad esempio e' piu' adatta ad essere trattata con i vari filtri di enfatizzazione del microcontrasto (maschera di contrasto, high-pass filter, sharpening, ecc.)... l'altra, quella fatta con il DCB, con un nulla vi farebbe il bordino bianco.


Bene, chiudo anche questa mini guida (mica tanto mini a dire il vero). Spero di esser stato chiaro e non avervi incasinato tanto la testa.
Ovviamente qui riporto la mia esperienza farcita con i miei gusti e le mie considerazioni... non vuole essere la regola su cosa usare e cosa no.

Eventuali dubbi esponeteli e se so fugarli non mi tirero' indietro.

Ciao
Jenner
ntx
Tetratricoctomo
 
Messaggi: 14285
Iscritto il: gio mag 07, 2009 7:55 am
Località: Bassa romagnola
 

Re: [miniGuida] Una panoramica sulla demosaicizzazione

Messaggioda cheip » sab gen 28, 2012 10:23 pm

Bella guida! Grazie mille! Queste conoscenze mi mancavano! :ook:
Rivogliamo l'autologin!!!

My homepage: http://goo.gl/zKrIUk

cheip
Avatar utente
cheip
Azionista del forum
 
Messaggi: 3825
Iscritto il: sab set 11, 2010 11:43 pm
Località: Vicino Torino
 

Re: [miniGuida] Una panoramica sulla demosaicizzazione

Messaggioda eridano » dom gen 29, 2012 12:38 am

i miei complimenti alla cultura fotografica di Jenner.
eridano
senior member
 
Messaggi: 387
Iscritto il: gio gen 27, 2011 3:43 pm
Località: Forlì
 

Re: [miniGuida] Una panoramica sulla demosaicizzazione

Messaggioda Raul_Endymion » dom gen 29, 2012 1:00 am

Guida molto interessante, grazie! :ook:
Proprio in questi giorni ho cominciato a fare le mie prime prove di sviluppo raw, in seguito alla lettura della tua miniguida di Photivo (altro :ook: ).
Ieri ho fatto alcune prove di confronto tra Amaze e DCB (con RawTherapee, usando sia foto mie che quelle della prova standard in studio di DPreview), proprio per cercare di valutare gli effetti dei diversi algoritmi, e questa tua panoramica è stata davvero utile.
ntx ha scritto:Eventuali dubbi esponeteli e se so fugarli non mi tirero' indietro.

Appena ne saprò abbastanza per fare domande che non siano troppo da principiante approfitterò della tua disponibilità! :cincin:
LX, K 28/3.5, K 55/1.8, K 135/2.5 e qualcos'altro...
K-r, P30, MEsuper
DA L 18-55
A 28/2.8, A 35-70/3.5-4.5, A 35-105/3.5, A 50/1.7, A 50/2, A 70-210/4, M 200/4
Avatar utente
Raul_Endymion
senior member
 
Messaggi: 374
Iscritto il: gio lug 07, 2011 9:46 pm
Località: Milano
 

Re: [miniGuida] Una panoramica sulla demosaicizzazione

Messaggioda Liviux » lun gen 30, 2012 9:29 am

Un lavoro eccellente, Jenner! Dubito che se ne trovino in rete di altrettanto esaustivi e ponderati.
In effetti, nelle ultime versioni di Digikam ho visto comparire tutti questi nuovi algoritmi di demosaicizzazione, ma finora sono riuscito a confrontarne solo la lentezza. Va anche detto che, considerata la nitidezza delle foto che faccio, di solito basta il bilineare!
:ook:
Avatar utente
Liviux
Azionista del forum
 
Messaggi: 3761
Iscritto il: ven feb 27, 2009 10:46 am
Località: Papuasia sud-orientale
 

Re: [miniGuida] Una panoramica sulla demosaicizzazione

Messaggioda Crisci » lun gen 30, 2012 9:37 am

...porca vacca ... ma sei uno scienziato :shock:
:clap: :clap: :clap:
Pentax MX Black - Pentax K20D - Pellicosauro Brontolosauro
"La mia obsolescenza è programmata"
Avatar utente
Crisci
Postofilo forsennato
 
Messaggi: 644
Iscritto il: mer ott 07, 2009 2:06 pm
Località: Zena
 

Re: [miniGuida] Una panoramica sulla demosaicizzazione

Messaggioda fanagot » lun gen 30, 2012 9:50 am

:cincin: :clap: :cincin: :clap:

Solo una domanda, hai per caso fatto prove di stampa?
Voglio dire, a parte vedere le immagini al 100%, queste differenze si riescono a notare su una stampa tipo 20x30 o 30x40?
Mancano molte foto di obiettivi che TU magari hai. Controlla nell'archivio e provvedi! Immagine
Avatar utente
fanagot
Non ho ancora svaccato abbastanza?
 
Messaggi: 29941
Iscritto il: ven feb 15, 2008 10:14 am
Località: Paperopoli
 

Re: [miniGuida] Una panoramica sulla dem...[APPELLO AI MODS]

Messaggioda Crisci » lun gen 30, 2012 11:00 am

...ma questa miniguida (come quella di photivo che vedo poco sotto) andrebbe messa in evidenza in cima alla pagina !!! :cincin:
Pentax MX Black - Pentax K20D - Pellicosauro Brontolosauro
"La mia obsolescenza è programmata"
Avatar utente
Crisci
Postofilo forsennato
 
Messaggi: 644
Iscritto il: mer ott 07, 2009 2:06 pm
Località: Zena
 

Re: [miniGuida] Una panoramica sulla dem...[APPELLO AI MODS]

Messaggioda fanagot » lun gen 30, 2012 11:21 am

Crisci ha scritto:...ma questa miniguida (come quella di photivo che vedo poco sotto) andrebbe messa in evidenza in cima alla pagina !!! :cincin:


oppure creare una sub directory "Guide"
Mancano molte foto di obiettivi che TU magari hai. Controlla nell'archivio e provvedi! Immagine
Avatar utente
fanagot
Non ho ancora svaccato abbastanza?
 
Messaggi: 29941
Iscritto il: ven feb 15, 2008 10:14 am
Località: Paperopoli
 

Re: [miniGuida] Una panoramica sulla demosaicizzazione

Messaggioda ntx » lun gen 30, 2012 11:52 am

Vi ringrazio per l'accoglienza verso questa nuova miniGuida... in fin dei conti nascono a seguito di un mio bisogno e visto che gia' ci sono butto giu' anche uno scritto ad uso di tutti.

@Liviux: Parlando di semplici prestazioni il DCB e' il piu' lento (le iterazioni di rifinitura influiscono molto marginalmente sui tempi). Un buon compromesso prestazioni/qualita' e' LMMSE. Debbo pero' anche dire che sul mio Core i3 ogni demosaicizzazione risulta molto veloce e fatico a rilevare differenze nei tempi solo fra DCB e Bilineare... sostanzialmente penso che le differenti prestazioni si facciano sentire solo in una conversione batch di decine di RAW.

@fanagot: Una premessa prima di rispondere alla tua domanda: gli artefatti sono a livello della risoluzione del sensore quindi occorre circoscrivere la visibilita' degli artefatti non solo alle dimensioni di stampa ma anche alla risoluzione del sensore.
Con la K200D - 10 megapixel - in una stampa 20x30 l'effetto Moire si vede, gli artefatti di demosaicizzazione tipo quelli dell'AHD non si vedono mentre quelli tipo PPG, pur indistinguibili, hanno effetti sul tono. Con stampe 45x30 riesci a seguire gli artefatti a labirinto del PPG e VCD (hanno sufficente contrasto) con gli altri algoritmi gli artefatti ancora sfuggono (hanno un basso contrasto con il tono dominante). Con il 60x40 e i formati quadrati 40x40 e 50x50, gli artefatti si vedono, il DCB resiste bene e le iterazioni di rifinitura sono da usare solo se hai zone dove gli artefatti hanno un buon contrasto con il tono dominante.
Come diretta conseguenza una foto croppata - poniamo della meta' - stampata in 20x30 ha gli stessi problemi della stampa 60x40, cosi' come - specularmente - un sensore da 40 megapixel fara' sentire i primi problemi solo con stampe da 120x80. E' ovvio quindi che la K5, con i suoi 16 megapixel, ha spostato molto piu' avanti la dimensione di stampa dove cominciano a servire certi accorgimenti.
E' palese che - come autore delle foto e finanziatore delle stampe - mi metto a guardare un 60x40 da 10 cm di distanza e tutti i difetti mi balzano all'occhio... mia moglie, invece, non sa nemmeno di cosa parlo quando gli indico un difetto (usando toni che paiono parlare di una stampa completamente compromessa).

Ciao
Jenner
ntx
Tetratricoctomo
 
Messaggi: 14285
Iscritto il: gio mag 07, 2009 7:55 am
Località: Bassa romagnola
 

Re: [miniGuida] Una panoramica sulla demosaicizzazione

Messaggioda lordofthestrings » mar feb 07, 2012 3:08 pm

Wow, complimenti ma soprattutto grazie, non ho fatto a tempo a realizzare il significato del tuo (suppongo) neologismo "foveonizzazione" che mi ritrovo a leggere questo! Me lo devo guardare con calma a casa sul monitor (un po') migliore perchè sono al lavoro...
Certo che, in pochi mesi, "diventare pentaxiano", iscrivermi al forum e trovare addirittura un "azionista del forum" che tratta così spesso argomenti interessanti usando software open source è quasi... passatemi il termine... commovente! Almeno per me, che utilizzo Linux (e Photivo)... Io di solito cerco di non dirlo troppo in giro (che uso Linux)... Se posso permettermi una battuta, è un po' come andare a dire in giro... "Pentax"! Fanno una strana faccia, un momento di silenzio, e cambiano argomento :-)
Tra l'altro, ho dato un'occhiata veloce su google e non ho trovato niente di simile (neanche con sw proprietario). Quindi ancora complimenti :clap: .
lordofthestrings
senior member
 
Messaggi: 171
Iscritto il: mar ago 30, 2011 10:22 am
 

Re: [miniGuida] Una panoramica sulla demosaicizzazione

Messaggioda ThePath » dom mar 18, 2012 9:53 pm

Grande Jenner, ho scoperto solo ora questa guida. Complimenti per me che sono un profano di demosaicizzazione è stato iluminante, grazie.
K3,K5II,K-x,Q,Me Super,Minolta Hi Matic CS, DA*16-50,DA18-55wr,M 50 1.7,M 135 3.5,K 55 1.8, Pentax FA 50 1.4, Pentax K 50 1.2, Cosinon 50 1.8, Helios 44 58/2, Tamron 17-50 2.8,DA 35 2.4,Samyang 8,Tamron 70-200 2.8,Sigma 105 2.8 DG macro,DA70 limited
Avatar utente
ThePath
Postofilo forsennato
 
Messaggi: 929
Iscritto il: dom gen 30, 2011 12:57 am
 


Torna a Camera chiara

Chi c’è in linea

Visitano il forum: Nessuno e 0 ospiti