Su quale principio fisico-matematico si basano gli autofocus delle macchine fotogafiche? E’ possibile realizzare in modo semplice un algoritmo che valuti la nitidezza di una sequenza di immagini? Grazie.

Vi sono vari principi sui quali si può basare un sistema autofocus.
Innanzitutto occorre distinguere tra sistemi ATTIVI e sistemi PASSIVI.

Sistemi attivi

Tra questi si annoverano i sistemi ad infrarossi e quelli ad ultrasuoni,
che funzionano sostanzialmente sulla rivelazione dell’eco di un raggio
infrarosso o un suono ad alta frequenza emessi dall’apparecchio stesso.

I sistemi ad ultrasuoni sono quelli concettualmente più semplici, nel senso
che quando un sensore emette il suono, l’obiettivo inizia la sua escursione
tra distanza zero e infinito: quando il suono riflesso dall’oggetto
inquadrato torna al sensore la messa a fuoco si interrompe. Più tempo passa
prima della ricezione dell’eco, più l’obiettivo arriverà vicino alla
posizione infinito; chiaramente, occorre che la corsa dell’obiettivo sia
tarata con la distanza di messa a fuoco delle lenti. Ciò è reso possibile
dal fatto che il suono si propaga abbastanza lentamente nell’aria (circa
340 m/s), per cui un soggetto a qualche metro rifletterà il suono dopo
qualche millisecondo, dando tempo all’obiettivo di muoversi appropriatamente.

Sistemi attivi ad infrarossi.

Sono in linea di principio simili ai precedenti, con la differenza che il
fascio infrarosso emesso effettua una scansione della scena sincronizzata
col movimento della messa a fuoco. Quando al sensore che inquadra il
soggetto al centro della scena arriva il riflesso del soggetto il
meccanismo si blocca e, se è tarato opportunamente, il soggetto riflettente
è a fuoco.

Sistemi passivi

Tra i sistemi passivi troviamo quelli che sono comunemente impiegati sulle
camere fotografiche compatte o reflex.

In generale tutti si basano sulla rilevazione del MASSIMO CONTRASTO
dell’immagine ottenuta variando la messa a fuoco dell’obiettivo.
Strutturalmente si possono distinguere tra telemetrici e non. Quelli
telemetrici sono per lo più costituiti da due sensori, un prisma e due
specchi, di cui uno mobile. (fig. 1)


Il fotosensore di destra inquadra il
centro della scena e misura il livello di luminosità di una piccolissima
zona. Lo specchio di destra si muove finché il sensore di sinistra rivela
esattamente la stessa luminosità dell’altro. Dall’angolazione risultante
dello specchio mobile si determina la distanza, che può essere comunicata
all’obiettivo sia meccanicamente che elettronicamente.

I sistemi basati su questo principio sono chiaramente ingannati da soggetti
uniformi e privi di contrasto.

I primi sistemi autofocus per reflex erano basati su un principio simile,
ma utilizzando cellule non lineari. In questo modo, quando la scena
inquadrata presentava il massimo contrasto il segnale del sensore era
massimo perché la non linearità della risposta del sensore compensava la
riduzione dell’area luminosa . In altre parole, se una scena non è a fuoco
i contorni appaiono sfumati e di luminosità media, quando invece è a fuoco,
le zone più luminose diventano più piccole ma più luminose, ed il sensore
cambia la sua risposta.

I sistemi più moderni sono invece basati sulla rivelazione del contrasto
del segnale che arriva su una ccd posta sul piano focale dell’obiettivo, in
generale dietro una zona semitrasparente dello specchio della reflex.
Quando la luminosità di pixels contigui della ccd ( in generale una ccd
lineare, o due lineari disposte a croce) presenta le variazioni più brusche
si considera a fuoco la scena.

L’ultima generazione di sensori autofocus è infine costituita dal
cosiddetto sistema a “contrasto di fase”, che ha uno schema di
funzionamento un po’ più complicato dei precedenti, ma cercherò di
illustrare brevemente.

Questo sistema si basa su una CCD posta oltre il piano focale
dell’obiettivo, oltre uno schermo composto da microlenti cilindriche.
Quando l’immagine è a fuoco, cioè il punto coniugato dell’oggetto è sul
piano focale, le lentine rendono paralleli i raggi provenienti dall’oggetto
immagine posto sul piano focale e determinano un’immagine di una certa
estensione, che viene assunta come riferimento, sulla CCD. Quando il
soggetto è fuori fuoco determinerà una immagine più piccola o più grande di
quella corretta, così che il sistema può spostare l’obiettivo direttamente
nella direzione corretta. Ciò velocizza di molto le operazioni di messa a
fuoco, e ciò ha reso l’autofocus a contrasto di fase il più diffuso sistema
per le reflex commerciali. Da notare infatti che i sistemi passivi non
dipendono da delicate tarature dei movimenti delle lenti e sono quindi gli
unici adattabili a fotocamere reflex che permettono di cambiare l’ottica.

Per quanto riguarda la realizzazione di un algoritmo per valutare la
nitidezza di una sequenza di immagini io ritengo che il modo più semplice
sia di avere un’immagine digitale e isolare una porzione con dei contorni
netti (il bordo di un palazzo, l’occhio di una persona, ecc) ed analizzare
i livelli di luminosità dei singoli pixels. L’immagine più a fuoco
risulterà quella con la variazione più netta, quindi con il maggior
gradiente numerico della luminosità, che in sostanza è il metodo utilizzato
negli autofocus passivi che si avvalgono di CCD.

Si potrebbe scegliere una linea di pixels e, detta S(n) l’intensità
dell’n-esimo pixel, calcolare D(n)=S(n)-S(n-1) o eventualmente allungare la
zona di confronto utilizzando una media su qualche punto. A questo punto
l’immagine più a fuoco, a parità di sequenza analizzata, sarà quella che
ha i più alti valori di D per qualche n, che corrisponderà alla zona con
cambiamento di colore scelto.