I sensori CCD
e l'acquisizione digitale
delle immagini a colori
di Andrea de Prisco
Sono due i problemi cardine della fotografia digitale: l'acquisizione delle immagini reali (siano esse i soggetti effettivamente ripresi o la loro rappresentazione su supporto fotografico tradizionale) e il corretto "trasporto" dell'informazione colore da un dispositivo all'altro. Di quest'ultimo argomento, per la verità assai dettagliato e ricco di affascinanti colpi di scena, non è escluso che ritorneremo presto a parlare, analizzando anche la percezione soggettiva del nostro apparato visivo, inquadrando le argomentazioni dal punto di vista della fruizione digitale delle immagini. Detto in parole povere, il problema della corrispondenza cromatica è "semplicemente" quello di riuscire a mantenere la corretta percezione (soggettiva) dei colori, pur utilizzando differenti dispositivi per la loro fruizione o manipolazione digitale. Un'immagine visualizzata a monitor quanto più possibile fedele all'originale appena acquisito, trattamento dei pixel corrispondenti senza incidere negativamente sulla gamma cromatica (sia qualitativamente che quantitativamente), fruizione dell'immagine digitale, con i colori ancora corrispondenti all'originale, anche al di fuori dei freddi limiti dei dispositivi elettronici utilizzati. Fedeltà cromatica, senza rischiare brutte sorprese, anche dopo la stampa tipografica, a sublimazione, a getto d'inchiostro o dopo la finale fotorestituzione su pellicola che sancisce il "ritorno al tradizionale" dopo l'incantevole viaggio in quel mondo che simpaticamente amiamo definire "dei bit colorati". Come anticipato, in questa sede non analizzeremo gli aspetti cromatici delle immagini (intesi come corrispondenza/fedeltà dei colori) ma ci soffermeremo principalmente sui sensori CCD (Charge Coupled Device) delle fotocamere digitali, evidenziando limiti e capacità dei sistemi di acquisizione diretta. Il colore, pur ampiamente "strillato" nel titolo dell'articolo, c'entra in maniera più quantitativa che qualitativa. Vedremo, in altri termini, in che modo gli attuali sistemi di acquisizione diretta delle immagini digitali possano essere nella maggioranza dei casi piuttosto insufficienti a garantire le prestazioni dichiarate dai vari costruttori di fotocamere digitali, nonostante anche per loro (così come per qualsiasi entità, intelligente e non, del nostro universo!) sia valido "l'assioma" che la matematica è sempre stata tutt'altro che un'opinione.
Colori e CCD
Il problema, se vogliamo, nasce dal fatto che gli attuali sensori CCD utilizzati dagli scanner e dalle fotocamere digitali non hanno alcuna conoscenza cromatica della realtà. Reagiscono ai fotoni liberando elettroni senza essere, di fatto, sensibili alle frequenze in gioco, ovvero al colore della luce percepita. Dunque un sensore CCD, almeno allo stato attuale, è un dispositivo rigidamente monocromatico ("vede" a livelli di grigio) e genera una tensione elettrica variabile in funzione della quantità di luce che lo raggiunge. A latere, un convertitore analogico/digitale fa il resto: la tensione in uscita dal sensore CCD, trasmessa singolarmente per ogni pixel di cui è formato il dispositivo di acquisizione (da poche centinaia di migliaia di elementi ai molti milioni dei dorsi digitali "one shot" o "three shot" più sofisticati), viene convertita in formato numerico ed utilizzata così com'è dalla rimanente circuiteria o dal computer collegato al dispositivo . Maggiore è la risoluzione del convertitore, maggiore sarà il numero di sfumature effettivamente riconosciute durante l'acquisizione. Fortuna nostra è che, tecnologicamente parlando, il colore può essere inteso come un'estensione del bianco e nero: è sufficiente ricorrere alla sintesi additiva (nell'acquisizione e nella visualizzazione) o sottrattiva (nella stampa a colori) per riconoscere o aggiungere cromaticità delle nostre immagini. Senza entrare più di tanto nel merito di queste argomentazioni, ci limiteremo in questa sede ad affermare che attraverso una terna di filtri RGB e un sensore CCD monocromatico siamo in grado di riconoscere le singole componenti cromatiche primarie dell'immagine acquisita e tornare a ragionare anche in termini qualitativi. Ovvero, una volta nota per ogni singolo pixel la quantità di rosso, di verde e di blu di cui la porzione d'immagine è formata, abbiamo un quadro piuttosto chiaro delle sue caratteristiche cromatiche. Posto, dunque, che un sensore CCD è in grado di percepire solo livelli di luminosità, nella sua accezione più semplice l'acquisizione a colori si riduce ad effettuare tre singole esposizioni anteponendo all'obiettivo di ripresa un filtro rosso, un filtro verde e uno blu. Otteniamo in questo modo tre immagini monocromatiche che, opportunamente ricombinate tra loro, ripropongono l'immagine a colori corrispondente, o quasi, alla realtà. Inutile sottolineare che un sistema di ripresa organizzato in questo modo crea di certo non pochi problemi. Primo tra tutti il fatto che fotocamera e soggetto ripreso, durante le tre esposizioni, devono rimanere assolutamente immobili. Una minima variazione di inquadratura, infatti, provocherebbe un vistoso "fuori registro" con evidenti e antiestetiche sbavature di colore nei contorni dei dettagli. Per lo stesso motivo sarebbe poi impossibile realizzare telecamere a colori a CCD singolo proprio in virtù del fatto che nulla è più movimentato di una ripresa video. L'ostacolo delle tre riprese successive si può aggirare più o meno facilmente utilizzando tre singoli sensori CCD ognuno filtrato diversamente oppure anteponendo ai singoli pixel una fitta rete di microfiltri RGB, come nello schema in figura. L'immagine "letta" da un sensore CCD realizzato con questa tecnologia è ovviamente a colori. Per ogni punto conosciamo sempre una delle tre caratteristiche cromatiche primarie (il rosso, il verde, oppure il blu) e le altre due possono essere facilmente interpolate ricorrendo ai pixel situati nell'intorno di quell'area, che sicuramente saranno filtrati anche secondo le componenti cromatiche mancanti. Sempre in figura sono presi due generici pixel del sensore (A e B) ed è schematizzato una basilare tecnica di interpolazione che tiene conto solo ed esclusivamente dei punti adiacenti. Da segnalare che non è assolutamente casuale il fatto che siano presenti più elementi filtrati in verde rispetto a quelli filtrati in rosso e in blu (i primi sono esattamente il doppio dei secondi e dei terzi) in quanto la regione del verde è quella di maggiore sensibilità per il nostro apparato visivo ed è proprio in quella "zona" dello spettro visibile che riusciamo a riconoscere un numero maggiore di dettagli e di sfumature.
Il "balletto" dei numeri
Quel che preoccupa maggiormente, di questi tempi, è il "coraggio" della stragrande maggioranza dei costruttori di fotocamere digitali (amatoriali e professionali) i quali utilizzano il numero di pixel del sensore CCD monocromatico per indicare la risoluzione a colori dei loro prodotti. Così è possibile scoprire che magicamente, un sensore CCD da poco meno di 500.000 elementi monocromatici è capace (a detta dei costruttori) di fornire immagini a colori da 800x600 pixel, mentre chiunque abbia un minimo di dimestichezza con il funzionamento dei dispositivi di questo tipo è in grado di accorgersi che è necessario "sprecare" ben tre elementi del CCD, differentemente filtrati in RGB, per avere conoscenza cromatica di quella singola porzione d'immagine. Giocando, abilmente, con l'interpolazione software dei punti a colori mancanti (e sfruttando quanto più possibile il fatto che i pixel verdi sono in quantità doppia rispetto a quelli rossi e blu) si riesce ad ottenere un numero di punti validi ridotti alla metà invece che ad un terzo (diciamo 250.000 pixel "veri" a colori utilizzandone, in partenza, 500.000), ma mai e poi mai è fisicamente possibile eguagliare la risoluzione monocromatica del sensore CCD con quella a colori ottenibile via microfiltratura RGB. Ci sarebbe da dire... "loro non lo capiscono", il fatto è che lo capiscono fin troppo bene, ma tacciono la verità approfittando dell'attuale confusione e disorientamento dell'utente medio. Peccato poi scoprire che l'immagine, ad esempio, 800x600 così ottenuta è assolutamente priva di dettaglio, con evidenti sbavature cromatiche nei contorni dell'immagine dovute al fatto che le tre immagini monocromatiche percepite dal sensore, oltre che interpolate, sono per di più sfasate tra loro di almeno un pixel, condizione che non giova certo alla resa finale del dispositivo.
L'interpolazione cromatica
Dunque, a quanto pare, non si può generare un'immagine a colori da un singolo sensore CCD microfiltrato, senza ricorrere all'interpolazione software. E' possibile, però minimizzare il problema ricorrendo ad uno schema di funzionamento più sofisticato, come quello mostrato in figura. Si basa sull'utilizzo di pixel rettangolari (invece che quadrati) di dimensione esattamente pari alla metà di punti immagine che intendiamo acquisire. Secondo lo schema in figura per ogni pixel della nostra immagine conosciamo il valore di due delle tre componenti cromatiche primarie mentre ben quattro pixel nel suo intorno possono fornire informazioni circa la terza. Ad esempio del pixel A conosciamo esattamente la quantità di rosso e di blu di cui è composto il pixel acquisito mentre dai pixel identificati con la lettera B "abbiamo di che interpolare" circa la componente verde. Lo stesso accade per il pixel C (così come per gli altri punti da acquisire) di cui è nota la quantità di rosso e di verde mentre il blu possiamo interpolarlo dai quattro pixel identificati dalla lettera D.
Aumentiamo i CCD
Ma il vero "salto di qualità" si ha eliminando del tutto o minimizzando al massimo il meccanismo di interpolazione software dei punti colore. E, come è facile prevedere, se non intendiamo effettuare più esposizioni con differenti filtri, è necessario ricorrere a 2 o a 3 sensori CCD utilizzati insieme. In figura è mostrato uno schema esemplificativo di una fotocamera digitale basata su due sensori CCD nonché la soluzione "no limits" di 3 sensori CCD, uno per componente primaria di sintesi additiva. E' evidente che nell'ultimo caso (3 CCD) non è necessario compiere alcuna operazione di interpolazione software di natura cromatica, in quanto di ogni pixel della nostra immagine conosciamo esattamente ognuna delle tre componenti cromatiche che identificano il rispettivo colore. Più interessante, dal punto di vista algoritmico, la situazione della coppia di sensori CCD, il cui schema di interpolazione è mostrato in basso. Dei due CCD disponibili (di pari risoluzione grafica) ad uno è demandato il compito di leggere tutti i pixel verdi dell'immagine, l'altro si occupa delle componenti rosso e blu, secondo lo schema a scacchiera mostrato. E' evidente che in questo caso di ogni punto conosciamo sempre esattamente due componenti cromatiche e solo la terza dovrà essere interpolata. Ad esempio del pixel A è noto il verde e il rosso (il blu è da interpolare) mentre del pixel B conosciamo il verde e il blu, lasciando al software il calcolo della componente rossa. Anche in questo caso la predominanza di pixel verdi (che essendo presenti sul 100% della superficie non necessitano di interpolazione alcuna) permette risultati interessanti in termini di risoluzione finale. Volendo, infine, esagerare a tutti i costi, anche dallo schema appena discusso, basato su due soli sensori CCD, permette di evitare l'interpolazione software anche per le componenti rosso e blu ricorrendo ad un piccolo trucchetto elettromeccanico. "Basta" (scritto tra virgolette per ovvi motivi) montare il CCD rosso/blu su un supporto mobile a controllo numerico ed effettuare con questo due acquisizioni in rapidissima sequenza, a pochi millesimi di secondo l'una dall'altra. Tra la prima e la seconda lettura, il servomeccanismo sposta il sensore CCD di un pixel in diagonale leggendo in questo modo il valore di tutti i punti che con lo schema statico sarebbero stati interpolati. L'uovo di Colombo? Aspettiamo, fiduciosi, il primo apparecchio dal funzionamento simile. Poi ne riparliamo...
Giochiamo a perdere
Per gli amanti delle forti emozioni, abbiamo preparato
un semplice "esercizio" di Photoshop per offrire a tutti la possibilità
di rendersi conto di persona dei limiti interpolativi dell'acquisizione
digitale tramite un singolo sensore CCD a colori microfiltrato. Chi ha
già avuto a che fare con le fotocamere digitali "monosensore"
sa già di cosa stiamo parlando, ma chi volesse studiare (o semplicemente
verificare) maggiormente il problema può trovare numerosi spunti
interessanti in questo semplice procedimento. Facciamo una breve premessa.
Ogni immagine a colori in formato RGB è in realtà formata
da tre byteplane monocromatici rosso, verde e blu (nel linguaggio di Photoshop
sono detti "canali"). Un'apposita finestra del noto programma
di fotoritocco digitale permette di richiamarli, di visualizzarli singolarmente
e di effettuare sugli stessi ogni possibile operazione normalmente applicabile
all'intera immagine. Ad esempio possiamo agire su un singolo canale per
modificare il contrasto di quella determinata componente cromatica, ma
anche effettuare operazioni più bizzarre, come ad esempio decidere
di dare un colpo di sfocatura ad uno dei tre colori primari lasciando invariato
il resto. In quest'esempio lasceremo da parte gli esperimenti creativi
e ci concentreremo maggiormente sulla simulazione di un sensore CCD interpolato.
Prendiamo una qualsiasi immagine ricca di dettagli e richiamiamo la finestra
dei canali. Cliccando su uno dei tre colori (rosso, verde, blu) attiviamo
il canale corrispondente che viene visualizzato, giustamente, come un'immagine
a livelli di grigio. Attiviamo il canale del rosso e, dal menu dei filtri
digitali, richiamiamo l'effetto mosaico. Questo filtro riduce la risoluzione
dell'immagine, sostituendo ad ogni gruppo quadrato di pixel un unico punto
di dimensione maggiore generando il colore come media dei pixel interessati.
Avendo attivato il canale del rosso, l'effetto mosaico verrà applicato
solo a quest'ultimo. Impostiamo un valore 2 (dimezzando in questo modo
la risoluzione orizzontale e verticale) ottenendo pixel di dimensione doppia.
Lasciamo invariato il canale del verde (ci poniamo nella consueta ipotesi
di disporre di un numero maggiore di pixel di questo colore rispetto alle
altre due componenti cromatiche) ed effettuiamo la medesima operazione
sul canale del blu. Siamo pronti: ricomponiamo l'immagine a colori, cliccando
sul "canale" RGB e agendo di zoom andiamo a vedere da vicino
cos'è successo alla nostra immagine.
In alto abbiamo riportato due dettagli dell'immagine prima e dopo la cura. Per essere ancora più realistici, potremmo spostare di un pixel il byteplane del rosso e del blu, per simulare anche il non perfetto allineamento delle due immagini interpolate. Vedremo il disturbo cromatico ancora più evidente, come di fatto è nella realta. Buon divertimento...
Nel mondo professionale
... esistono due distinte scuole di pensiero. Troviamo
dispositivi basati su portentosi CCD superficiali da milioni e milioni
di pixel per l'acquisizione "one shot" o "three shot"
e i CCD lineari per quella "a scansione". I primi permettono,
come ovvio, anche l'acquisizione di soggetti in movimento (si possono "scattare"
lo stesso tipo di foto delle fotocamere tradizionali) per i secondi, dal
funzionamento simile ai comuni scanner piani, è assolutamente necessario
che soggetto e fotocamera rimangano ben fermi per tutto il tempo d'esposizione,
normalmente dell'ordine di alcuni minuti. A fronte di questo non trascurabile
handicap, i dorsi digitali a scansione basati su un sensore CCD lineare
(o trilineare) offrono performance sicuramente superiori, sia per risoluzione
grafica che per resa cromatica. Grazie, poi, alla presenza di tre differenti
file di pixel, singolarmente filtrate RGB, non viene effettuata alcuna
interpolazione cromatica dei pixel, a tutto vantaggio della qualità
immagine finale, assolutamente paragonabile (alcuni dicono superiore...)
a quella della pellicola fotografica tradizionale. In alto è mostrato
il dorso digitale Dicomed BigShot,
dotato di un incredibile sensore CCD da sedici milioni di pixel, di dimensioni
pari al formato fotografico 6x6 delle fotocamere professionali Hasselblad.
Esiste in tre differenti versioni: monocromatico per l'acquisizione in
bianco e nero, a colori con la consueta microfiltratura RGB dei pixel e
monocromatico con rivoluzionario filtro LCD che cambia colore istantaneamente
dal rosso al verde al blu filtrando singolarmente le tre componenti cromatiche
primarie. Sarebbe bello, en passant, vedere presto una tecnologia simile
anche negli apparecchi fotografici digitali di costo umano, proprio quelli
che potrebbero presto invadere il mercato non appena saranno in grado di
fornire una qualità immagine appena accettabile. Ma torniamo al
BigShot. Nel CD-ROM dimostrativo di questo incredibile dorso digitale (nel
quale, crediamo, la Dicomed abbia inserito il "meglio del meglio del
meglio"), siamo andati a cercare un'immagine particolare per vedere
come se la cavava la versione a colori dello strabiliante sensore CCD "multimilionario"
sui dettagli più fini dell'immagine.
Abbiamo scelto l'immagine della bella fotomodella qui mostrata (scattata,
per dovere di cronaca, allo Joe Stafford Photography di Minneapolis). Ottima,
non c'è che dire! Ma armiamoci di lente di ingrandimento e andiamo
a vedere i dettagli minori dell'immagine. Non stiamo cercando il pelo nell'uovo...
ma i singoli capelli sul bel volto della modella. Lo "scoop"
è mostrato nel particolare a lato: notate il disturbo cromatico
di cui abbiamo parlato in tutto l'articolo come sia presente anche a quei
livelli di prodotto. I capelli cambiano ripetutamente colore, dal rosso
al verde al blu, ma (siamo disposti a giurarlo) non si tratta di una nuova
moda. Arriverà il giorno in cui tutto questo sarà definitivamente
risolto? Chi vivrà vedrà...