4.3. Campo visivo

Una camera vede un cono di mondo davanti a sé; tutto ciò che è al di fuori di quel cono cade oltre i bordi del sensore. L’ampiezza angolare di quel cono è il campo visivo (FOV) ed è determinata da due grandezze: la dimensione del sensore e la lunghezza focale dell’obiettivo.

4.3.1. La formula del FOV

Un obiettivo verticale con dietro un sensore di larghezza S a distanza f. Due raggi partono dai bordi superiore e inferiore del sensore, passano per il centro dell'obiettivo e divergono nella scena dal lato opposto, definendo un cono il cui angolo completo è indicato come FOV.

Un sensore di larghezza \(S\) a distanza \(f\) dietro l’obiettivo definisce un cono di raggi incidenti. L’angolo completo di quel cono è il campo visivo.

Un sensore di larghezza \(S\) si trova a distanza \(f\) dietro l’obiettivo, perpendicolare all’asse ottico. Il modello a lente sottile afferma che un raggio passante per il centro dell’obiettivo prosegue senza deflessione; tracciamo quindi uno di tali raggi da ciascun bordo del sensore: ognuno passa dritto per il centro dell’obiettivo e prosegue nella scena dal lato opposto. Insieme delimitano il cono di luce che il sensore può raccogliere, e l’angolo tra essi in corrispondenza dell’obiettivo è il campo visivo.

Metà di quel cono è un triangolo rettangolo. Un cateto è l’asse ottico che va dal centro dell’obiettivo al centro del sensore, di lunghezza \(f\). L’altro cateto è il mezzo sensore, dal centro del sensore fino a un bordo, di lunghezza \(S / 2\). L’ipotenusa è il raggio stesso, che va dal centro dell’obiettivo al bordo del sensore.

Il teorema di Pitagora lega tra loro le tre lunghezze dei lati, ma Pitagora non fornisce gli angoli, e l’angolo nel vertice in corrispondenza dell’obiettivo è ciò che ci interessa. La trigonometria è il ponte che collega i rapporti tra i lati agli angoli. In qualunque triangolo rettangolo, la tangente di un angolo è definita come il rapporto tra il cateto opposto e il cateto adiacente. Per l’angolo di mezzo FOV, il cateto opposto è il mezzo sensore \(S / 2\) e il cateto adiacente è il cateto sull’asse ottico \(f\), quindi

\[\tan(\text{half-FOV}) = \frac{S / 2}{f} = \frac{S}{2f}\]

L’angolo stesso si ottiene applicando l’inverso della tangente, la funzione arcotangente, a entrambi i membri:

\[\text{half-FOV} = \arctan \! \left( \frac{S}{2f} \right)\]

Il cono è simmetrico rispetto all’asse, quindi il FOV completo è il doppio del mezzo angolo:

\[\text{FOV} = 2 \cdot \arctan \! \left( \frac{S}{2f} \right)\]

Dalla formula discendono due conseguenze:

  • La lunghezza focale dell’obiettivo determina l’angolo, non la dimensione assoluta. Un obiettivo «grandangolare» è ampio perché la sua lunghezza focale è corta: quanto più piccolo è \(f\), tanto più grande diventa il rapporto \(S / 2f\) e tanto più ampio è il cono. Una lunghezza focale lunga restringe il cono (un obiettivo «teleobiettivo»).

  • Conta anche la dimensione del sensore. Montare lo stesso obiettivo davanti a un sensore più piccolo ritaglia il cono: lo stesso obiettivo ha un campo visivo più stretto su un sensore più piccolo rispetto a uno più grande. Ecco perché i valori di lunghezza focale su camere diverse non sono direttamente confrontabili; il FOV dipende sia da \(f\) sia da \(S\).

4.3.2. Tre scelte di obiettivo

Prendiamo un sensore da 4,8 mm × 3,6 mm (una dimensione comune di piccolo formato che corrisponde all’incirca a ciò che offrono i sensori delle OpenMV Cam) e tre scelte di obiettivo.

lunghezza focale

FOV diagonale

FOV orizzontale

FOV verticale

descrizione

2,8 mm

~94°

~81°

~66°

grandangolo

4 mm

~74°

~62°

~48°

normale

8 mm

~41°

~33°

~25°

stretto / tele

Tutte e tre le colonne usano la stessa formula. Il FOV diagonale usa \(S\) pari alla diagonale del sensore \(\sqrt{W^2 + H^2}\) (6 mm per questo sensore); il FOV orizzontale usa \(S = W = 4.8\) mm; il FOV verticale usa \(S = H = 3.6\) mm. Dimezzare la lunghezza focale quasi raddoppia ciascun cono; raddoppiarla li dimezza quasi.

Le schede tecniche degli obiettivi di solito pubblicano il FOV diagonale come unico valore di riferimento, poiché attraversa il sensore da un angolo all’altro. I FOV orizzontale e verticale sono più direttamente utili quando si pianifica cosa entrerà nel frame, perché il frame è rettangolare e un’area di lavoro rettangolare è delimitata in orizzontale e in verticale, non lungo la diagonale.

4.3.3. Scegliere una lunghezza focale

Il FOV richiesto dall’applicazione è determinato dalla dimensione della regione che la camera deve vedere e dalla distanza a cui sarà collocata. Se la camera si trova a 1 m sopra un’area di lavoro di 0,6 m × 0,6 m, il FOV angolare necessario per coprire un lato è \(2 \cdot \arctan(0.3 / 1) \approx 33°\), e l’obiettivo da 8 mm sopra ci si avvicina.

Andare più larghi di quanto richieda l’applicazione rende gli oggetti più piccoli nel frame, spreca pixel sullo sfondo e aumenta la distorsione dell’obiettivo. Andare più stretti fa cadere parti della scena oltre i bordi del sensore. L’obiettivo giusto è la lunghezza focale più lunga che copra ancora l’area di lavoro alla distanza prevista della camera.