In questo articolo vorrei cercare di affrontare il tema della calibrazione dei files acquisiti, in particolare (come da titolo) i flat field.

Chi mi ha seguito un pò sa che già da tempo avevo scritto qualcosa in merito, una serie di articoli che poi ho riletto in seguito alle mie ultime intuizioni e agli ultimi accorgimenti che mi sono pervenuti da astrofotografi piu bravi di me e ho compreso che c’è un errore in cui si casca molto facilmente soprattutto quando si è agli inizi. Bene, comunque sia, prima di iniziare dovrei fare un appello, o meglio un “incipit”.

In questa passione ci sono un sacco di persone preparate. Io non ho mai trovato alcuna passione che sia multidisciplinare come l’astrofilia (e in particolare l’astrofotografia o la ricerca astronomica amatoriale). In questo settore si trova di tutto: dal meccanico d’auto che si autocostruisce i pezzi della propria montatura, all’ingegnere elettronico che si autocostruisce un ccd, fino all’ingegnere informatico che produce i software. Questo va anticipato perchè l’argomento che tratto è molto tecnico, e sto cercando di comprenderlo a fondo per poter spiegare le mie idee in merito. Sono quindi a rivolgermi a chi davvero ha qualcosa da suggerire invitandolo a correggermi se per caso c’è qualcosa di non corretto o se ho compreso male alcuni passaggi teorici.  Ricordate che chi scrive è un impiegato, nulla di piu. E quindi ci sono molti aspetti tecnici che non riuscirò mai a comprendere appieno.

Ora veniamo al dunque: perchè dedicare un articolo ai flat?

Risposta: semplice..perchè mi sono accorto nel tempo che il flat determina in maniera assoluta l’esito di una ripresa. E’ importante tanto quanto i light. Mentre per il rumore si può tentare con qualche noise reductor software (sconsigliabile, ma fattibile) per quel che riguarda l’applicazione del flat non ho trovato niente che sostituisca questa importante fase della calibrazione di una immagine. Un mio conoscente si affidava a Lightroom per rimuovere la vignettatura vantandosi di questo software come espediente per non fare i flat, ma il flat field in realtà non corregge solo la vignettatura anzi agisce in piu direzioni che si traducono in una possibilità enorme riguardo lo stretching di segnale.

Nel mio percorso mi sono abituato a chiedere, tanto…a tutti. Trovo questo l’unico umile metodo per imparare, nel frattempo si socializza e si allargano i propri orizzonti. In questi quasi 3 anni di astrofotografia mi sono trovato a contatto con diverse realtà: si passa da “quello che non fa i flat e chi li fa perde tempo” (è una stupidaggine) a quelli che invece li ottengono considerando aspetti diversi della propria strumentazione. Questo ha portato a risposte completamente diverse alla tipica domanda “scusa ma a quanto va esposto un flat?”. Si va da chi li espone a 1/3 della FWC del sensore, a chi li espone a metà della dinamica in bit (esempio 16 bit = 65535 ADU / 2 = 30.000 adu circa) a chi invece li espone in seguito ad una verifica sul campo dell’effetto che restituiscono sull’immagine (ergo: a fine sessione, scatta, applica e osserva. In base a ciò che osserva, ritocca le esposizioni).

Personalmente, questa gran differenza tra i metodi mi ha messo in gran confusione.  Sopratuttto mi sono accorto sulla mia pelle che applicare il criterio dell’astrofilo X che riprende con il sensore X, non funzionava sul mio sensore. Per quasi otto mesi ho avuto problemi coi flat, che risultavano sovraesposti se applicavo il criterio della metà della dinamica, mentre risultavano sottoesposti se applicavo un criterio suggeritomi da altri astrofili che affermavano il contrario dei primi. Insomma, un gran pasticcio. Il punto è che in linea di massima i flat funzionano grosso modo a tutti coloro che li applicano e questo causa ancora piu confusione se inizi ad avere dei problemi di segnale nelle tue immagini.

In buona sostanza, mi sono accorto che in parecchi utilizzano un metodo che a ben vedere funziona perfettamente solo con determinate caratteristiche del sensore. Non me ne voglia alcuno di voi, non è una critica. E’ solo una sensazione che ho provato sulla pelle e che mi ha lasciato n pò sperduto.

Ora, ho cercato un punto di appoggio. Ho pensato durante questi mesi di crearmi un punto di appoggio, su cui muovermi, che fosse fisso e valido per tutti i sensori. E confrontando piu fonti e leggendo a destra e a manca, sono arrivato ad una conclusione che ritengo concettualmente valida. Questo non implica che non ci sia qualcuno che abbia già spiegato in chiaro il discorso, però se cosi fosse io non l’ho trovato da nessuna parte.

LA QUESTIONE PARTE DALLA DINAMICA

Il primo errore che ho fatto e portato avanti nel tempo, è stato quello di confondere la dinamica del sensore con la dinamica del convertitore. Normalmente nelle schede tecniche dei CCD si legge che la dinamica è 16 bit, i quali corrispondono a 65.500 c.ca valori di grigio. Ora, in realtà questa non è la dinamica reale del sensore, ma è la dinamica di conversione del valore letto sul pixel XY. E’ una differenza importante, perchè leggere “esporre un flat per la metà della sua dinamica” porta a pensare che questo vada esposto fino ad ottenere un valore pari a 30.000 adu circa.

La verità è un’altra: parlando con astrofotografi davvero bravi, ho compreso in realtà che la dinamica del sensore è la capacita dello stesso di contenere all’interno dello stesso frame segnali forti e segnali deboli. Se prendiamo una astrofotografia, ad esempio, abbiamo in diversi casi una grandissima differenza dinamica tra la luminosità dell’oggetto e le nebulose che lo affiancano. Un esempio tipico può essere rappresentato da M42, la Nebulosa di Orione, dove al centro abbiamo grande luminosità, mentre nelle parti piu esterne abbiamo una nebulosità molto debole. Ecco, la gamma dinamica del sensore è quella che permette a tutti e due i “segnali” di convivere nello stesso frame, nella stessa immagine.

Perchè è importante sapere questo? Perchè le nostre immagini sono afflitte da alcuni problemi, tipo la vignettatura e le macchie di polvere. E cosa sono queste se non l’espressione della dinamica di un sensore?

Andiamo avanti: possiamo ottenere informazioni sulla dinamica del nostro sensore? Certo. Il valore si ricava da una semplicissima formula che è questa:

FWC/R.O.N.

dove:

FWC = Full Well Capacity che esprime la capacità in elettroni dei pixel del sensore

R.O.N.= ReadOut Noise che esprime il valore in elettroni del rumore di lettura introdotto nelle fasi di scarico dell’immagine.

Esempio, il sensore che io ho a disposizione (Moravian G2.8300) ho questi dati:

FWC = 25.000

ReadOut Noise = 8

Vado a dividere FWC/Ron ed ottengo una dinamica del sensore pari a 3.125 E.

LA CONVERSIONE IN ADU

Per renderlo fruibile, questo valore va convertito in Adu, in modo da poter visualizzare poi a monitor la media del Flat Field e comprendere cosi se siamo arrivati ad esporlo per tutta la gamma dinamica a disposizione.

Per convertire il valore di dinamica ottenuto in Adu, è necessario avere il gain, il guadagno. Questo valore si ottiene in due modi

a) dalle schede tecniche

b) Applicando la formula:   FWC / dinamica di conversione (65.500 adu per sensori a 16bit)

Nel mio caso: 25000/65537 = 0,389 e/adu

Sapendo questo valore posso convertire la gamma dinamica del sensore in ADU e ottenere cosi un flat field che abbia una media rientrante in quel valore.

Quindi, sempre nel mio caso: 3.125 / 0,389 = 8.033 Adu

Ecco quindi, che esponendo il mio sensore fino ad ottenre un flat di 8.033 Adu, mi permette di calibrare la mia immagine avendo come base la gamma dinamica del sensore stesso.

Questa procedura l’ho testata su due sensori: sulla Atik314 mi ha risolto tutto il problema che avevo in precedenza (cioè flat sovraesposti) mentre sul sensore G2.8300 fin’ora non ha mai restituito alcuna vignettatura e mi ha permesso di sviluppare tutto il segnale a disposizione.

horse

Miracolo o fortuna? non lo so, ma il concetto alla base ha una sua sostanza e lo sto applicando con successo dopo le diverse fatiche compiute nell’arrivarci.

IL CONCETTO DI BASE

Mi sono imbattuto spesso in discussioni proprio in merito alle vignettature, dove in alcuni casi questa viene risolta con un flat mentre in altre no. Inoltre mi è capitato anche di leggere (e vivere in prima persona) molte difficoltà nel comprendere perchè un metodo di flat a volte funziona e a volte no.

Nel ragionamento in cui mi sono imbattuto tutto questo appare molto chiaro. Perchè in realtà un flat, visto da questo punto qua, non riuscirà mai a correggere differenze di luminosità talmente ampie da sforare la gamma dinamica del sensore con cui è stato rilevato. Paradossalmente, stessa ottica e sensore con una dinamica piu larga, potrebbe invece risolvere almeno parzialmente il problema ove fortemente pronunciato. Va da se però che se la vignettatura è causata da un adattatore da 31,8mm su un sensore full frame..beh..li non c’è flat che tenga..non arriva luce 😀

Inoltre, spesso viene considerato il flat come una semplice divisione che si adopera sul valore dei pixel. Cercando e leggendo, ho invece compreso come in realtà il flat non sia una divisione spicciola ma si traduca in realtà nell’applicazione di un valore di guadagno sul pixel, in modo da permettere un’0mogeneità di risposta su tutta l’immagine. Essendo che un sensore non avrà mai due pixel che lavorano nella stessa maniera (ci saranno quelli piu sensibili e queli meno sensibili) applicando un flat si approssima un valore omogeneo tra i pixel permettendo cosi una immagine piu regolare e piu facilmente elaborabile.

E pensandoci bene, una macchia di polvere non può essere “vista” anche come una serie di pixel che lavorano meno?

L’APPLICAZIONE CORRETTA DEL FLAT

Arrivo in conclusione a dire che considerando il metodo di lavoro di un flat field, considerando la sua naturale applicazione e l’intervento che fa sul singolo pixel (e solo su quello), viene spontaneo raccomandarne l’utilizzo in queste modalità

a) ottenere almeno 11 flat

b) applicarli esclusivamente con funzioni di Media e non  Sigma o Sdmask etc.

Questo è facilmente intuibile: la media prende il valore del singolo pixel e ne calcola una media matematica con il numero di frame. Sdmask e Sigma invece, calcolano una deviazione standard sui pixel adiacenti, facendo cosi perdere unaparte dell’efficacia del flat col rischio (ripeto, rischio..non certezza, ma rischio) di avere un’immagine calibrata con ancora una parte delle sue aberrazioni ben in vista durante le fasi di stretching.

Se ritenete che quanto qua scritto non sia per nulla corretto, sono pronto a discuterlo. Ma io ho risolto lo stesso problema su due sensori diversi…

Siate buoni con me, ci sto mettendo la faccia :mrgreen:

 

 

17 commenti
  1. Piermario Gualdoni
    Piermario Gualdoni dice:

    Direi che non fa una piega. Ho anch’io, come sai, la G2 8300 e a 8000 ADU il flat corregge perfettamente. Ho provato a fare flat a 14-15000 ADU ma davano sovracorrezione, gli angoli del frame diventavano più luminosi del centro

    Rispondi
  2. Giovanni Leoni
    Giovanni Leoni dice:

    bravo come sempre il nostro Fabio, io ho seguito alla lettera la formula proposta, per ora la verifica sulla mia qhy9 ha confermato alla grande la formuletta!. verra’ scrupolosamente riapplicate sulle mie altre ccd. un consiglio a tutti colore che usano metodi “alternativi” : prima di negare l’efficenza del metodo fate una serie di flat alla Mortari e confrontate le due risultanti… ci vuole poco.salutissimi e cieli sereni a tutti

    Rispondi
  3. Fabio Mortari - Rimini
    Fabio Mortari - Rimini dice:

    Grazie Ragazzi, mi fa molto piacere ciò che scrivete. A questi aggiungo anche i complimenti che l’articolo ha ricevuto da Plinio C., che ha ritenuto quanto scritto “convincente” e questo mi ha dato molta tranquillità.
    Invito tutti i lettori che avessero qualcosa da aggiungere, di utilizzare il blog e possibilmente non il mio account facebook onde evitare di parlare di argomenti analoghi in piu stream. Grazie a tutti

    Rispondi
  4. Fabio Mortari - Rimini
    Fabio Mortari - Rimini dice:

    Li facevo a 17.500 adu.
    Infatti calcolando la formula abbiamo che il suo Range Dinamico è 4.237 e. che diviso per il gain 0,267 da un valore pari a 17.367 adu.
    Quindi esponevo finchè non raggiungevo un valore “median” in un range compreso tra i 17.000 e 17.500 adu.

    Rispondi
      • Fabio Mortari
        Fabio Mortari dice:

        Ciao
        hai ragione ma ho sbagliato io la tascrizione, il numero indicato come riferimento dei flat è corretto
        17.500 / 3.7 fa 4730 e non 4237. Un refuso data dalla trascrizione
        4730 / 0.267 fa 17.715
        Puoi verificare i dati in autonomia a questo link:
        http://www.dangl.at/ausruest/atik_314/atik_314_e.htm
        da dove evince il mio refuso trascrittivo, non concettuale.
        GRazie per l’intervento
        Fabio

        Rispondi
        • Valerio
          Valerio dice:

          Ciao Fabio Grazie per la cortese risposta Non volevo correggerti, ma solo una conferma dato che sto impazzendo da più di una settimana a fare i conti con ADU guadagni ISO flat ecc.. ecc,,,
          Approfitto per farti gli auguri di BUONE FESTE e cieli sereni ” si spera ” Valerio 🙂

          Rispondi
  5. Angelo Gambino
    Angelo Gambino dice:

    Salve! Grazie mille per aver condiviso con tutti noi il frutto delle tue ricerche. Io sono un “astrofotografo” ancora alle primissime armi e mi sto imbattendo proprio adesso nel problema dell’acquisizione dei flat frames.
    Possiedo una camera ZWO ASI 1600 e secondo quanto letto nel tuo tutorial io dovrei esporre fino ad ottenere 1138 ADU circa.
    Questo significa che devo esporre fino a che il valor medio del mio flat raggiunge questo valore? Oppure ho capito male io?
    Inoltre volevo chiederti …se ho acquisito light frames con un certo gain, devo tenere lo stesso gain anche durante l’acquisizione delle immagini di flat? Ovviamente in quel caso terrei conto del gain applicato per correggere i valori di FWC e Read noise da applicare nella tua formula…

    Grazie anticipatamente per la risposta e grazie ancora per la guida molto chiara! 🙂

     

     

    Rispondi
    • Fabio Mortari - Rimini
      Fabio Mortari - Rimini dice:

      Ciao Angelo

      a mio avvisoè bene non cambiare il gain. Tieni conto anche del fatto che questo valore deve essere lo stesso sia per i light, che per i bias che per il dark

      Si, la tecnica è “giusta” nel senso, va esposto ilflat fino ad ottenere un valore median pari alal gamma dinamica. Ma aggiornerò l’articolo perchè è bene comprendere anche il valore di bias.

      Esempio, nel mio 8500 è la gamma dinamica, 600 è il bias, devo andare a 9.000/9.500 (considerando un valore medio un pò di tolleranza ci sta)

      Ovviamente non 30.000 come ho sentito dire da tanti…

      Altra cosa, per quel che riguarda il tuo valore mi sembra bassino…bisognerebbe fare un paio di calcoli su che valore di gain stai utilizzando solo che il tempo è davvero poco. Ti consiglio di fare un pò di ricerca in questo ambito.

      Rispondi
  6. Francesco
    Francesco dice:

    Grazie per questo articolo. Solo una domanda: per quale motivo il rapporto dinamico è espresso in elettroni? Dovrebbe essere un numero puro, visto che deriva dalla divisione di due numeri di elettroni (FWC e Ron), quindi non dovrebbe aver bisogno di nessuna conversione in ADU.

    Rispondi
    • Fabio Mortari - Rimini
      Fabio Mortari - Rimini dice:

      Ciao Francesco. La conversione in ADU la faccio solamente perchè quando riprendi un flat devi sapere in base al guadagno, su che valori devi stare. A me in realtà non interessa a livello “spicciolo” l’elettrone, ma l’ADU perchè è quello che vedo a monitor quando riprendo. Quindi la gamma dinamica viene convertita in ADU solo per rendere “tangibile” il valore che leggi dalla valore “median” dei fit.

      Rispondi
  7. Davide Mancs
    Davide Mancs dice:

    Ottimo articolo, chiaro, comprensibile e soprattutto: giusto (anzi, forse per un articolo sui flat è meglio dire…CORRETTO)

    Davide

    Rispondi
  8. Moreno Picchi
    Moreno Picchi dice:

    Complimenti per il tutorial.
    Vorrei capire però una cosa. Io sono in possesso di una ASI 294 Pro che lavora a 14 bit. Non riesco a capire come convertire il rapporto FWC/RN in ADU.
    Mi spiego: a gain 0, dal suo grafico, ho FWC 63700 con RN 7,5; il loro rapporto mi da 8494
    A unity gain (120) ho FWC 15000 e RN 5,9, il loro rapporto è 2542
    Come faccio a convertire questi valori in ADU se conosco la dinamica a 14bit?
    Grazie

    Rispondi
    • Fabio Mortari
      Fabio Mortari dice:

      Grazie per i complimenti. Purtroppo come da articolo relativo ai flat sui CMOS non mi è stato possibile approfondire dettagliatamente i miei dubbi e le mie conoscenze, pertanto non avendo a disposizione un CMOS per le riprese non ho strumenti validi e certi con cui fornire risposte circostanziate.

      Rispondi

Lascia un Commento

Vuoi partecipare alla discussione?
Fornisci il tuo contributo!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *