caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta...

39
Caratterizzazione di un sistema di visione stereo Stefano Mattoccia Università di Bologna Dipartimento di Elettronica Informatica e Sistemistica (DEIS) ora DIPARTIMENTO DI INFORMATICA – SCIENZE E INGEGNERIA (DISI) email: [email protected] web: www.vision.deis.unibo.it/smatt

Upload: buikiet

Post on 09-Nov-2018

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

Caratterizzazione di un sistema di visione

stereo

Stefano Mattoccia

Università di Bologna

Dipartimento di Elettronica Informatica e Sistemistica (DEIS) ora

DIPARTIMENTO DI INFORMATICA – SCIENZE E INGEGNERIA (DISI)

email: [email protected]

web: www.vision.deis.unibo.it/smatt

Page 2: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

INDICE

1� Introduzione .................................................................................................................... 3�2� Sensori di immagine........................................................................................................ 4�3� Geometria di un sistema stereoscopico .......................................................................... 6�4� Descrizione di un sistema di visione stereoscopico ........................................................ 9�

4.1� Calibrazione ............................................................................................................ 10�4.2� Rettificazione........................................................................................................... 13�4.3� Matching stereo....................................................................................................... 15�4.4� Triangolazione......................................................................................................... 18�

5� Sistemi di visione stereoscopica ................................................................................... 23�6� Caratterizzazione di un sistema stereoscopico reale .................................................... 25�

6.1� Baseline 6.88 cm – Focale 4.5 mm - Subpixel 1 ..................................................... 27�6.2� Baseline 6.88 cm – Focale 4.5 mm - Subpixel 4 ..................................................... 28�6.3� Baseline 6.88 cm – Focale 4.5 mm - Subpixel 8 ..................................................... 30�6.4� Baseline 13.75 cm – Focale 4.5 mm - Subpixel 1 ................................................... 31�6.5� Baseline 13.75 cm – Focale 4.5 mm - Subpixel 4 ................................................... 32�6.6� Baseline 13.75 cm – Focale 4.5 mm - Subpixel 8 ................................................... 33�6.7� Baseline 13.75 cm – Focale 9.0 mm - Subpixel 1 ................................................... 35�6.8� Baseline 13.75 cm – Focale 9.0 mm - Subpixel 4 ................................................... 36�6.9� Baseline 13.75 cm – Focale 9.0 mm - Subpixel 8. .................................................. 37�

7� Conclusioni.................................................................................................................... 38�8� Bibliografia .................................................................................................................... 39�

Page 3: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

1 Introduzione Questo documento descrive le caratteristiche di un sistema di visione stereo introducendo sia le metodologie necessarie per determinare informazioni 3D dense partendo da una coppia di telecamere sia le prestazioni, in termini di capacità di risoluzione 3D, che è possibile ottenere. In particolare, saranno introdotte le procedure preliminari che sono necessarie per determinare le caratteristiche del sistema stereo (calibrazione), le operazioni che è necessario eseguire durante il funzionamento del sitema (rettificazione e calcolo delle corrispondenze) e le caratteristiche in termini di capacità di percepire le distanze di un sistema stereo reale. In seguito si farà riferimento ad un sistema stereo, con elaborazione su FPGA, recentemente sviluppato presso l’Università di Bologna nell’ambito di un progetto di ricerca e mostrato nella figura seguente.

LEFTRIGHT

Figura 1 Prototipo di telecamera stereo con elaborazione su FPGA sviluppata all’Università di Bologna (DEIS)

La possibilità di realizzare sensori in grado di fornire informazioni tridimensionali ha implicazioni di notevole interesse sia in ambito scientifico sia in ambito industriale per via delle tante applicazioni nelle quali tali sensori potrebbero essere utilizzati. Di particolare interesse risultano sensori tridimensionali di tipo passivo basati su telecamere tradizionali in quanto potenzialmente più economici e meno invasivi nell’ambiente in cui sono posti rispetto a sensori basati su tecnologie di tipo attivo quali stereo attivo (i.e. stereo con un sistema di proiezione sia con luce strutturata che non strutturata), luce strutturata (e.g. Microsoft Kinect), time of flight, sensori basati su tecnologia laser, etc. Tra le diverse tecniche di computer vision note in letteratura e mirate alla ricostruzione della struttura tridimensionale di una scena osservata da una o piu’ telecamere (e.g. shape from motion, shape from shading, shape from texture) la visione stereoscopica è quella che ha riscosso la maggiore attenzione principalmente perchè non impone alcun vincolo sulle caratteristiche degli oggetti presenti nella scena (e.g. presenza o meno di oggetti in movimento, presenza o meno di particolari condizioni di illuminazione). Tuttavia, come sarà evidenziato in seguito esistono alcune limitazioni nella capacità di ottenere informazioni da un sistema di tipo stereo passivo in particolare in presenza di superfici completametne uniformi. Questo limite può essere rimosso da un sistema di tipo attivo, ovvero dotato di un sistema di proiezione che genera un pattern (che potrebbe essere noto oppure casuale) sulla scena osservata dalle telecamere.

Page 4: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

La visione stereoscopica consente di inferire la struttura tridimensionale di una scena osservata da due o piu’ telecamere (nel caso di due telecamere si parla di visione binoculare). Il principio alla basa della visione stereoscopica, noto sin dal rinascimento, consiste in una triangolazione mirata a mettere in relazione la proiezione di un punto della scena sui due (o più) piani immagine delle telecamere (e.g. tali punti sono denominati punti omologhi) che compongono il sistema di visione stereoscopico (stereo rig). L’individuazione dei punti omologhi, problema noto in letteratura come il problema della corrispondenza (correspondence problem o matching stereo), consente di ottenere una grandezza denominata disparità (disparity) mediante la quale, conoscendo opportuni parametri del sistema stereoscopico, è possibile risalire alla posizione 3D del punto considerato. Il problema delle corrispondenze rimane ancora aperto e produce tuttora un’ampia attività di ricerca nonostante siano stati proposti sin dagli anni ‘60 innumerevoli algoritmi. Dopo avere introdotto la geometria di un sistema stereoscopico ed avere descritto i moduli che consentono di inferire informazioni tridimensionali, si descriverà lo stato dell’arte relativo ad algoritmi di matching stereo facendo riferimento ad algoritmi di matching di tipo denso (e.g. algoritmi che mirano ad inferire informazioni 3D per ogni punto) concepiti per sistemi binoculari di tipo passivo. Alcuni esempi di utilizzo della visione stereo per applicazioni in tempo reale sono disponibili a questo indirizzo: www.vision.deis.unibo.it/smatt/stereo.htm

2 Sensori di immagine

L’elemento di base di una telecamera stereo sono i sensori di immagine (nella figura seguente è mostrato un sensore di immagine prodotto da Aptina e utilizzato nella telecamera stereo sviluppata presso il DEIS). Tale sensore ha una risoluzione utile di 752x480 pixel e un massimo frame rate di 60 fps. Ciascun pixel ha una dimensione di 6 um.

Figura 2 Sensore di imamgine Aptina Il sensore della figura è di tipo global shutter. Ovvero, i pixel dell’immagine sono aggiornati tutti nello stesso istante. Questa caratteristica consente un’acquisizione senza i problemi tipici dei sensori rolling shutter (si osservi a tal proposito la figura seguetne).

Page 5: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

rolling shutter global shutter

Figura 3 A sinsitra acquisizione con sensore roling shutter - A destra acquisizione con sensore global shutter

www.ptgrey.com/ www.ptgrey.com/

L’acquisizione delle immagini può avvenire in modalità monocromatica o a colori. In questo secondo caso tipicamente si utilizzano dei sensori di immagine dotati di filtro, come quello indicato nella figura seguente, che seleziona in accordo alle tre componenti di colore RGB la luce incidente su ciascun punto del sensore di immagine.

Bayer pattern

Figura 4 Sensore a colori: pattern Bayer

Il pattern Bayer consente, mediante interpolazione, di ottenre le tre componenti di colore RGB dell’intera immagine come è possibile dedurre dalla immagine seguente nella quale è mostrata l’immagine a singolo canale risultante dall’acquisizione di una immagine con pattern Bayer e la corrispondente immagine a colori ottenuta mediante interpolazione. La figura mostra anche un particolare dell’immagine raw Bayer che consente di evidenziare l’effetto del pattern di acquisizione. Si osservi tuttavia che l’immagine a colori è ottenuta mediante interpolazione. Pertanto, la risoluzione delle immagini non coincide, per costruzione, con quella del sistema di partenza. Questo può avere effetti negativi nel calcolo delle distanze e si suggerisce di utilizzare sensori a colori solo in caso di necessità. Per questo motivo, in questa relazione si farà riferimento sempre a sensori monocromatici che garantiscono una migliore accuratezza nella misura della distanza.

Page 6: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

Esempio di immagine raw conpattern Bayer (alto SX) Corrispondente immagine a colori (alto DX) Particolare dell’immagine raw Bayer (a SX)

Figura 5 A sinsitra un esempio di immagine Bayer raw e a destra la versione interpolata. Nel dettaglio in rosso un particolare dell’immagine raw ottenuta applicando il pattern Bayer.

3 Geometria di un sistema stereoscopico La trasformazione prospettica che mappa un punto dello spazio nel piano immagine di una telecamera implica la perdita dell’informazione relativa alla distanza. Questo può essere facilmente rilevato osservando la figura seguente nella quale due distinti punti (e.g. P e Q) nello spazio intersecati dallo stesso raggio che parte dal centro ottico Ol della telecamera corrispondono allo stesso punto (e.g. p≡q) nel piano immagine. Un metodo per poter risalire a quale punto dello spazio corrisponda la proiezione di un punto sul piano immagine di una telecamera consiste nell’utilizzo di due o più telecamere. Infatti, come mostrato nella figura seguente nel caso di un sistema composto da due telecamere, tra tutti punti nello spazio che giacciono sul raggio che passa per il centro ottico Ol e il punto q, proiezione di Q sul piano immagine πl, al più un solo punto (punto omologo) viene proiettato (e.g. q’) anche sul piano immagine πr. La determinazione dei punti omologhi consente di mettere in relazione le proiezioni dello stesso punto sui due piani immagini e di risalire, mediante una procedure denominata triangolazione, alle coordinate dei punti dello spazio rispetto ad un sistema di riferimento opportuno. Sia dato un punto q su un piano immagine πl, proiezione del punto Q appartenente allo spazio 3D. Per ottenere, attraverso la triangolazione, le coordinate 3D del punto nello spazio è necessario determinare (problema delle corrispondenze) il punto omologo q’ nel piano immagine πl. Tale problema, dato il punto q nel piano immagine πl,, richiederebbe una ricerca bidimensionale del punto omologo q’ all’interno del piano immagine πr.

Page 7: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

Ol

P

Q

p≡q

πl

Ol

P

Q

p≡q

Ol

P

Q

p≡q

πl

Figura 6 Proiezione di due distinti punti nello spazio sul piano immagine

P

Q

p≡q p

q

Ol Or

πl πr

P

Q

p≡q p

q

Ol Or

πl πr

Figura 7 Sistema stereoscopico

Page 8: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

In realtà, sfruttando una particolare caratteristica della geometria del sistema stereoscopico, è possibile effettuare la ricerca del punto omologo in uno spazio monodimensionale. Infatti, come mostrato nella figura seguente, gli omologhi di tutti i punti dello spazio che potrebbero risultare proiezione nello stesso punto q del piano immagine πl, (e.g. punto p proiezione di P o lo stesso punto q proiezione di Q) giacciono sulla retta generata dall’intersezione tra il piano immagine πr e il piano (denominato piano epipolare) che passa per la retta OlQP e i due centri ottici Ol e Or. Tale vincolo, denominato vincolo epipolare, consente di limitare lo spazio di ricerca dei punti omologhi a un segmento di retta semplificando considerevolmente il problema delle corrispondenze sia da un punto di vista della complessità algoritmica sia per quanto concerne la correttezza della soluzione. Si fa notare che il problema delle corrispondenze non necessariamente ha soluzione: infatti a causa della diversa posizione delle telecamere che compongono un sistema di visione stereoscopico nello spazio è possibile che un punto non risulti proiettato su tutti i piani immagini delle telecamere. In tal caso il problema delle corrispondenze non ha soluzione e non è possibile determinare la distanza del punto esaminato dalle telecamere (occlusioni). Un sistema di visione stereoscopico è completamente caratterizzato mediante i parametri intrinseci ed estrinseci. I primi consentono di definire la trasformazione che mappa un punto dello spazio 3D nelle coordinate del piano immagine di ogni telecamera e risultano le coordinate relative al piano immagine del principal point (punto di intersezione tra il piano immagine e la retta ortogonale al piano immagine stesso passante per il centro ottico), la distanza focale, ed eventualmente altri parametri che descrivono altre caratteristiche del sensore (distorsione delle lenti, forma dei pixels, etc). I parametri estrinseci rappresentano le posizioni di ogni telecamera rispetto ad una sistema di riferimento noto.

P

Q

p≡q p

q

Ol Or

πl πr

P

Q

p≡q p

q

Ol Or

πl πr

Figura 8 Sistema stereoscopico: vincolo epipolare La determinazione dei parametri intrinseci ed estrinseci, ottenuta mediante la procedura di calibrazione, consente quindi di descrivere completamente il sistema stereoscopico e in particolare

Page 9: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

di inferire informazioni relative alle coordinate dei punti nello spazio mediante la triangolazione di punti omologhi.

P

Q

p≡q p

q

OrOl

πl πr

P

Q

p≡q p

q

OrOl

πl πr

Figura 9 Immagini rettificate (i.e. in forma standard) La conoscenza dei parametri intrinseci ed estrinseci consente anche di trasformare le immagini acquisite dal sistema stereoscopico al fine di produrre un sistema virtuale nel quale i piani immagine delle telecamere giacciono sullo stesso piano e nel quale la ricerca dei punti omologhi avviene esaminando le medesime righe nei diversi piani immagine. Tale configurazione del sistema stereoscopico ottenuta mediante una procedura denominata rettificazione è mostrata in seguito. Osservando la figura si può notare come il sistema risultante dopo la rettificazione risulti composto da due piani immagine virtuali θl e θr giacenti sullo stesso piano. Le immagini stereoscopiche ottenute da un sistema rettificato sono denominate immagini in forma standard. Si può osservare infine che nelle immagini in forma standard i piani xy dei sistemi di riferimento centrati nei centri ottici delle due telecamere sono complanari.

4 Descrizione di un sistema di visione stereoscopico Da un punto di vista operativo i passi necessari per risalire alle coordinate dei punti dello spazio mediante un sistema di visione sono rappresentati nella figura seguente: calibrazione, retttificazione, ricerca delle corrispondenze (matching) e trinagolazione. Ciascuno dei moduli che compongono un sistema stereo mostrato in Figura 10 sarà descritto nelle pagine successive.

Page 10: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

Rectification

Stereo Matching

Triangulation

Calibration (offline)

PC, FPGA

Intrinsic and extrinsic

Figura 10 Schematizzazione delle operazioni eseguite da un sistema stereo reale

4.1 Calibrazione La calibrazione è una procedura eseguita offline ed è mirata all’individuazione dei parametri che caratterizzano un sistema di visione stereoscopico. Tali parametri, denominati parametri intrinseci ed estrinseci, sono utilizzati dalla procedura di rettificazione per trasformare le immagini acquisite dal sistema stereoscopico in modo da ottenere immagini stereoscopiche in una forma particolare (forma standard) e per ottenere le coordinate 3D dei punti mediante la procedura di triangolazione. Esistono in letteratura diverse tecniche per effettuare la calibrazione di un sistema stereoscopico (per maggiori dettagli si consideri [4]). Tipicamente però questa operazione viene eseguita con tecniche basate sull’utilizzo di pattern geometrici dei quali sono note con precisione le caratteristiche (dimensione e posizione delle features presenti nel pattern, etc). Mediante l’acquisizione di tali pattern (generalmente contenenti features simili a scacchiere) in diverse posizioni e utilizzando procedure ampiamente note (e.g [3,4]) è possibile stimare i parametri intrinseci ed estrinseci che caratterizzano il sistema stereoscopico. Nella figura seguente è mostrate una serie di immagini utilizzate per la calibrazione di un sistema stereoscopico mediante l’utilizzo di un pattern planare (scacchiera).

Page 11: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

R

T

R

T

Figura 11 Calibrazione mediante l’acquisizione di un pattern noto in differenti posizioni (10 in questo caso)

A titolo di esempio è riportato il risultato di una calibrazione ottenuta con gli strumenti disponibili nella libreria OpenCV [3]. Parametri intriseci: %YAML:1.0 M1: !!opencv-matrix rows: 3 cols: 3 dt: d data: [ 7.1154337862658645e+002, 0., 3.7723795586805210e+002, 0., 7.1309643379849263e+002, 2.3530087334135001e+002, 0., 0., 1. ] D1: !!opencv-matrix

Page 12: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

rows: 1 cols: 5 dt: d data: [ -1.8110975538924773e-001, 0., 1.1309453959622308e-003, 3.7610586107565285e-003, 0. ] M2: !!opencv-matrix rows: 3 cols: 3 dt: d data: [ 7.1359498857470669e+002, 0., 3.5304919535561504e+002, 0., 7.1462630861957427e+002, 2.1861043914290744e+002, 0., 0., 1. ] D2: !!opencv-matrix rows: 1 cols: 5 dt: d data: [ -1.9265785782052938e-001, 0., 5.9966339340456901e-003, 2.7064901718796175e-004, 0. ] Parametri estrinseci: %YAML:1.0 R: !!opencv-matrix rows: 3 cols: 3 dt: d data: [ 9.9957549776916033e-001, -1.1819337079150670e-002, -2.6629448558780258e-002, 1.2807717054179856e-002, 9.9922365802638546e-001, 3.7256457483625487e-002, 2.6168428370755864e-002, -3.7581704476760187e-002, 9.9895086407952327e-001 ] T: !!opencv-matrix rows: 3 cols: 1 dt: d data: [ -7.4687095295390078e+000, 2.3792075463499363e-001, -2.7755655785543165e-001 ] R1: !!opencv-matrix rows: 3 cols: 3 dt: d data: [ 9.9894404587028007e-001, -4.4993044781251448e-002, 9.2961896295202170e-003, 4.4814486117491469e-002, 9.9882219980254039e-001, 1.8597715333856932e-002, -1.0122008414384145e-002, -1.8161473038449095e-002, 9.9978382955653611e-001 ] R2: !!opencv-matrix rows: 3 cols: 3 dt: d data: [ 9.9880422745327913e-001, -3.1817579005910993e-002, 3.7118147686284179e-002, 3.2494799102761977e-002,

Page 13: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

9.9931362845340532e-001, -1.7786512265207003e-002, -3.6526747086612195e-002, 1.8971390394270801e-002, 9.9915258248867012e-001 ] P1: !!opencv-matrix rows: 3 cols: 4 dt: d data: [ 7.4964622703176894e+002, 0., 3.5327717971801758e+002, 0., 0., 7.4964622703176894e+002, 2.2959369468688965e+002, 0., 0., 0., 1., 0. ] P2: !!opencv-matrix rows: 3 cols: 4 dt: d data: [ 7.4964622703176894e+002, 0., 3.5327717971801758e+002, -5.5999103889072167e+003, 0., 7.4964622703176894e+002, 2.2959369468688965e+002, 0., 0., 0., 1., 0. ] Q: !!opencv-matrix rows: 4 cols: 4 dt: d data: [ 1., 0., 0., -3.5327717971801758e+002, 0., 1., 0., -2.2959369468688965e+002, 0., 0., 0., 7.4964622703176894e+002, 0., 0., -1.3386753983005378e-001, 0. ] La procedura di calibrazione determina per ogni telecamera la distanza focale, le coordinate del punto principale (in coordinate pixel rispetto al piano immagine) ed altri parametri quali l’eventuale deformazione dei pixel rispetto alla ideale forma quadrata (skew) ed i parametri che caratterizzano le deformazioni provocate dalle ottiche (distortion). La calibrazione determina anche i parametri estrinseci rappresentati da un vettore di traslazione ed uno di rotazione che descrivono la trasformazione che mappa una piano immagine sull’altro rispetto ad un sistema di riferimento prefissato. La calibrazione consente di determinare, mediante i parametri estrinseci, anche la distanza tra i centri ottici delle telecamere (baseline) parametro fondamentale per calcolare le distanze mediante la procedura di triangolazione che sarà descritta in seguito. Poiché i parametri stimati mediante calibrazione caratterizzano completamente un sistema di visione stereoscopico è di fondamentale importanza ottenere dei valori affetti da errori che consentano di mantenere le misure di distanza entro i limiti imposti dall’applicazione considerata. A questo fine, oltre alla scelta degli algoritmi di calibrazione e alla fase di calibrazione stessa, influisce anche l’accuratezza con la quale sono note le caratteristiche del pattern che deve essere di alcuni ordini di grandezza superiore a quella con la quale si intende determinare le distanze nello spazio 3D.

4.2 Rettificazione La rettificazione è una procedura, che sfruttando i parametri intrinseci ed estrinseci ottenuti mediante calibrazione, mira a trasformare le immagini stereoscopiche provenienti dal dispositivo di acquisizione in modo che risultino soddisfatti alcuni vincoli. Tra questi, la rettificazione consente di trasformare le immagini in forma standard: nel caso di sistemi binoculari questo assicura che dato un punto in un’immagine il suo omologo possa essere rintracciato sulla stessa riga dell’altra

Page 14: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

immagine consentendo una notevole riduzione dei calcoli ed una maggiore affidabilità nella soluzione del problema delle corrispondenze. Mediante la rettificazione è possibile trasformare le immagini in modo che i punti omologhi di una riga (scanline) dell’immagine possano essere ricercati nella corrispondente riga dell’altra immagine. La rettificazione consente anche di ridurre i problemi legati alla distorsione provocata dalle ottiche, e di ottenere immagini con la stessa distanza focale .

Stereo camera in standard form

Figura 12 Procedra di rettificazione

A titolo di esempio, è mostrato nelle due figure seguenti l’effetto della rettificazione di immagini acquisite da un sistema stereoscopico alla risoluzione di 640x480 pixel. Nella prima immagine sono visualizzate le immagini acquisite dal sistema stereo mentre nell’immagine seguente è mostrato il risultato della rettificazione ottenuta mediante i parametri stimati con la procedura di calibrazione e i cui risultati sono stati riportati in precedenza a titolo di esempio.

Left Right

Figura 13 Immagini acquisite da un sistema stereo prima della rettificazione

Page 15: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

Left (Rectified) Right

Figura 14 Immagini dopo la procedura di rettificazione

Dal confronto tra le due figure precedenti si può notare come punti omologhi siano, nelle immagini rettificate di Figura 14, sulla stessa linea verticale come evidenziato dalle linee e dai cerchi sovrapposti alla figura stessa. La stessa proprietà non può essere verificata prima della rettificazione come, anche in questo caso, evidenziato in Figura 13. Le rettificazione è eseguita ad ogni acquisizione di una coppia di immagini stereo ed è fondamentale per poter eseguire la ricerca delle corrispondenze (matching stereo), il passo successivo per individuare la mappa di disparità.

4.3 Matching stereo La bibliografia relativa alla visione stereo è estremamente vasta, si veda a tal proposito [1,2,5] per avere un’idea, ed è possibile in prima istanza classificare gli algoritmi di matching stereo in due categorie principali: algoritmi di tipo feature-based e algoritmi di tipo denso (dense stereo). I primi consentono di ottenere informazioni di disparità (denominate mappe di disparità) per un numero limitato di punti delle immagini per i quali sono identificate features particolari come linee, segmenti, angoli. Tali algoritmi sono efficienti dal punto di vista computazionale, per via del ridotto numero di features identificabili nelle immagini rispetto al numero totale di punti, ed anche estremamente affidabili perché le features estratte dalle immagini generalmente sono intrinsecamente distintive e non pongono problemi di ambiguità nella soluzione del problema delle corrispondenze. Tali algoritmi però sono in questo momento poco utilizzati perché le mappe di disparità sono limitate ai soli punti che presentano features distintive. Contrariamente gli algoritmi di tipo denso mirano a generare mappe di disparità per ogni punto dell’immagine e in accordo a [2] è possibile classificare tali algoritmi in due principali categorie: algoritmi di tipo locale (local) e algoritmi di tipo globale (global). Gli algoritmi di tipo locale cercano i punti omologhi singolarmente e indipendentemente gli uni dagli altri sfruttando generalmente un supporto locale (local support) nell’intorno di ogni punto esaminato (tale area nell’intorno di ogni punto è denominata anche finestra di correlazione (correlation window)) allo scopo di aumentare il rapporti segnale/rumore. Utilizzando un supporto locale tali algoritmi implicitamente assumono che all’interno del supporto locale la disparità sia costante, anche se tale ipotesi non essendo sempre verificata, conduce a una discrepanza tra gli oggetti della scena e le mappe di disparità in prossimità di punti posti a differente distanza dalle telecamere. E’ importante osservare che esistono anche algoritmi locali che adattano il proprio supporto in base alle caratteristiche locali delle immagini mediante le quali è possibile ottenere eccellenti risultati ad un costo computazionale tipicamente molto più alto rispetto agli algoritmi locali standard. Tuttavia

Page 16: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

esistono alternative (e.g. [9]) che consentono di ottenere risultati equivalenti a un costo computazionale estremamente ridotto. Generalmente gli algoritmi di tipo locale standard hanno una struttura molto regolare dal punto di vista computazionale e possono essere implementati su FPGA come nel caso della telecamera stereo sviluppata presso il DEIS e utilizzati in applicazioni di tipo real-time. Oltre all’assunzione sulla costanza della disparità all’interno della finestra di correlazione gli algoritmi di tipo locale hanno un limite legato al fatto che non necessariamente sono in grado di produrre mappe di disparità completamente dense (e.g. non è garantito che per ogni punto dell’immagine sia possibile stabilire un valore di disparità). Questo avviene principalmente per due motivi: a causa di regioni uniformi e a causa di occlusioni. Nel primo caso non è possibile determinare informazioni di disparità in regione che presentano intensità costante o comunque pochi elementi distintivi a causa dell’elevata ambiguità nella soluzione del problema delle corrispondenze. Nel secondo caso, a causa della geometria del sistema stereoscopico, in presenza di punti adiacenti posti a differente distanza dalle telecamere risulta che alcuni punti siano visibili in una immagine ma non nell’altra dello stereo-pair: In casi come questo non è possibile risolvere il problema delle corrispondenze. Diversamente dagli algoritmi di tipo locale gli algoritmi densi di tipo globale non utilizzano tipicamente alcun supporto locale ma, formulando alcune ipotesi sulla natura degli oggetti (smoothness assumption), ricercano un assegnamento di disparità tale che venga minimizzata una funzione costo globale (global cost function). La maggior differenza tra tali algoritmi è proprio nel metodo con il quale viene minimizzata la funzione costo (e.g. simulated annealing, probabilitic diffusion, graph-cuts) . Tali algoritmi, in particolare quelli basati su graph-cuts consentono di ottenere mappe di disparità decisamente migliori rispetto agli algoritmi di tipo local ma ad un costo computazione estremamente elevato che li rende attualmente non utilizzabili in applicazioni real-time. Inoltre, anche se alcuni algoritmi sfruttando il metodo della minimizzazione della funzione di costo sono in grado di risolvere il problema delle occlusioni, le occlusioni analogamente agli algoritmi di tipo local possono causare mappe di disparità non completamente dense. E’ importante osservare che esistono anche algoritmi di tipo locale o semi-globale che utilizzano una funzione costo non puntuale ma basata su supporto variabile mediante i quali si ottengono eccellenti. A titolo di esempio sono riportate sotto la mappe di disparità di un algoritmo locale standard (in alto) e quella ottenuta da un algoritmo allo stato dell’arte locale [10]. E’ evidente la differenza nell’accuratezza con la quale sono rilevati i contorni.

Page 17: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

State of the art(ICCV 2011)

Traditionalalgorithm

Figura 15 In alto, mappa di disparità generata da un algoritmo locale standard e sotto la mppa di disparità di un

algoritmo recentemetne proposto [10].

A titolo di esempio, nella figura seguente sono mostrate le immagini rettificate su FPGA dalla telecamera stereo di Figura 1 elaborate con un algoritmo di matching stereo in real-time sempre su una scheda di elaborazione basata su FPGA.

Page 18: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

Figura 16 (Alto) Immagini rettificate , (Basso) Mappa di disparità ottenuta elaborando le immagini rettificate

Left (Rectified) Right

Matching*

4.4 Triangolazione Una volta risolto il problema delle corrispondenze stereo e noti i parametri del sistema stereoscopico ottenuti mediante calibrazione, per i punti per cui esiste e per quelli per cui è stato possibile determinare l’omologo, si può inferire la distanza del punto dalle telecamere. Si consideri la figura seguente, nella quale si considera un sistema stereoscopico ideale o nel quale le immagini siano state poste in forma standard mediante la procedura di rettificazione. Si indichi inoltre con (xl,yl) e (xr,yr) le coordinate (in millimetri) delle proiezioni del punto P sui due piani immagini θl e θr rispetto ai sistemi di riferimento con origine nei centri ottici delle due telecamere. Tali punti hanno coordinate (ul,vl) e (ur,vr) rispetto ai sistemi di riferimento con origine nel punto in alto a sinistra di ogni immagine. Si fa notare che, per ottenere le coordinate in millimetri dei punti (ul,vl) e (ur,vr) appartenenti ai due piani immagine rispetto al sistema di riferimento centrato nell’asse ottiche di ciascuna telecamera si trasla l’origine delle coordinate nel punto principale (principal point) di ogni telecamera e si moltiplica tale valore per la dimensione orizzontale del pixel nel caso della coordinata x e per la dimensione verticale del pixel nel caso della coordinata y.

Page 19: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

Z

xl xr

Ol Or

b

θl θr

P(X,Y,Z)

fX

ul ur

Cul Cur

A

Figura 17 Triangolazione in un sistema stereoscopico in forma standard Le dimensioni del pixel possono coincidere nel caso di sensori immagine con pixel quadrati o essere diversi. In questo ultimo caso è necessario conoscere sia le dimensioni orizzontali (Dimx) sia le dimensioni verticali (Dimy) del pixel per ottenere le coordinate in millimetri. Indicando con (Cul,Cvl) e (Cur,Cvr) le coordinate del principal point rispetto al sistema di riferimento immagine centrato nel punti in alto a sinistra di ogni immagine risulta rispettivamente per i punti sulle immagini θl e θr

( ) xulll DimCux ⋅−=

( ) yvlll DimCvy ⋅−= e

( ) xurrr DimCux ⋅−=

( ) yvrrr DimCvy ⋅−= Si assuma come sistema di riferimento quello con origine nel centro ottico Ol avente assi x e y paralleli ai piani immagine e asse z passante per il centro ottico Ol e il centro dell’immagine è possibile scrivere le relazioni che individuano le coordinate X e Y rispetto a tale sistema di riferimento a partire dalle coordinate immagine xl e yl. Indicando con con f la distanza focale, con b la baseline e utilizzando la similitudine tra i triangoli OlPOr e xlPxr è possibile scrivere la seguente relazione che individua la distanza Z del punto P dalla retta che passa per i centri ottici Ol e Or delle due telecamere:

Page 20: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

Zb

fZxxb rl =

−−+

Indicando con x

rl

Dimxxd −

= la disparità, risulta

xDimdbfZ

⋅=

Per la coordinata X, dalla similitudine tra i triangoli OlPA e OlClxl, risulta

lxf

XZ=

da cui

fxZX l=

Analogamente per Y, risulta

fyZY l=

Mediante le relazioni precedenti si ottengono le coordinate X,Y,Z del punto P rispetto al sistema di riferimento con origine nell’centro ottico Ol.

La figura seguente schematizza il processo di calcolo della nuvola di punti (X,Y,Z) a partire dalla mappa di disparità e i paramettri del sistema stereo calcolati durante la calubrazione.

dfbZ ⋅

=

fxZX R=

fyZY R=

d(x,y (X,Y,Z

disparity map depth map

Figura 17 Generazione della nuvola di punti a partire dalla mappa di disparità e parametri del sistema steereo

(calubrazione).

Page 21: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

Un sistema stereo è finalizzato alla determinazione delle distanze dalla telcamera. Pertanto si definisce horopter la porzione di spazio all’interno del quale il sensore è in grado di eseguire la misura. Ovviamente la dimensione dell’horopter dipenderà dalle caratterisctiche del sistema stereo sia dai valori di disparità utilizzati per la ricerca di punti corrispondenti, come mostrato nella figura seguetne.

mindfb ⋅

maxdfb ⋅

Horopter

Figura 18 Horopter di un sistema stereo All’interno dell’horopter le misure di distanza avvengono in modo discreto come mostrato nella figura seguente. La determinazione di disparità mediante metodologie sub pixel consente di diminuire la distanza tra un piano di misura e il successivo e, come vedremo nella sezione sperimentale, questa metodologia sarà di grande aiuto nel migliorare la risoluzione nella misura di un sistema stereo.

Page 22: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

mindfb ⋅

maxdfb ⋅

Figura 19 Discretizzazione nel calcolo delle distanze e horopter di un sistema stereo Le due figure seguetni mostrano un’interessante proprietà di un sistema stereo. Ovvero, agendo via software sui parametri dell’algoritmo per il calcolo delle corrispondenze (e mantenendo lo stesso range di ricerca delle disparità) è possibile spostare l’horopter del sistema per eseguire (con lo stesso costo computazionale) una misura all’interno di un volume più vicino o in un volume più lontano.

mindfb ⋅

4min +⋅

dfb

Figura 20 Modifica dell’horopter agendo sull’intervallo di disparità (1 di 2)

Page 23: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

mindfb

+Δ⋅

4min ++Δ⋅

dfb

Figura 21 Modifica dell’horopter agendo sull’intervallo di disparità (2 di 2)

5 Sistemi di visione stereoscopica Oltre al sistema sviluppato presso il DEIS esistono alcuni produttori/centri di ricerca di sistemi stereoscopici in grado di fornire sia le telecamere sincronizzate sia il software di matching stereo. I produttori di sistemi stereo noti e un link relativo ai siti web sono mostrati nella figura seguente. Nel caso dei sistemi stereoscopici prodotti da Point Grey Research [8] l’elaborazione è eseguita via software dallo stesso processore del personal computer utilizzato per connettersi alle telecamere stereo mentre nel caso dei sistemi prodotti da Videre Design [7], TYZX [9] e Focus Robotics [11] l’elaborazione è eseguita in hardware mediante schede dedicate basate su FPGA. Nel caso di TYZX e Focus Robotics le telecamere stereo sono connesse al personal computer attraverso una scheda PCI mentre nel caso di Videre Design le telecamere stereo sono connesse al PC mediante interfaccia firewire (IEEE 1394a). Videre Design produce anche telecamere non dotate di FPGA nelle quali il matching stereo è eseguito sul PC al quale è connessa la telecamera mediante un opportuno software fornito dal produttore. Tra questi, quelli all’interno del box giallo consentono di eseguire rettificazione e matching stereo sulla telecamera stessa, tipicamente mediante l’utilizzo di unità di elaborazione basate su FPGA. Tale caratteristica è comune anche al sistema stereo sviluppato presso il DEIS e mostrato in Figura 1. Tra i maggiori produttori di telecamere stereo con elaborazione su FPGA (ASICS in questo caso specifico) evidenziamo TYZX e FocusRobotics. Il sistema sviluppato da VidereDesign sembra non essere più disponbile sul mercato. Tra i sistemi senza unità di elaborazione a bordo evidenziamo il sistema Bumblebee prodotto da Pointgrey research. Si evidenzia anche che il sistema Minoru riportato in figura non consente di ottenere immagini sincronizzate ed è pertanto non idoneo ad essere utilizzato su sistemi in movimento o con oggetti nella scena in movimento. Si osserva infine che, nella maggior parte dei casi, l’algoritmo di matching stereo implementato su FPGA è di tipo molto semplice per via della difficoltà nell’implementazione di algoritmi complessi

Page 24: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

su dispositivi con ridotte risorse come sono le FPGA. Tuttavia, come nel caso della telecamera sviluppata presso il DEIS, sono in corso attività finalizzate all’implementazione di algoritmi anche con struttura di elaborazione non locale.

www.videredesign.com

www.ptgrey.com www.nvela.com

www.valdesystems.com

www.focusrobotics.com www.tyzx.com

www.minoru3dwebcam.com

*

FPGA/ASICDSP

www.visionst.com

Figura 22 Sistema stereoscopici disponibili sul mercato: in alto sistemi con elaborazione su FPGA/ASICS/SDP, in basso sistemi senza elaborazione a bordo della telecamera.

Una volta descritte le caratteristiche principali di un sistema stereo, nelle pagine seguenti si procederà alla caratterizzazione di un sistema stereo reale facendo riferimento alla telecamera stereoscopica con elaborazione su FPGA sviluppata presso il DEIS mostrata in Figura 1. Le caratteristiche salienti di questa telecamera sono le seguenti:

- Sensori di immagine Aptina con risoluzione effettiva pari a 640x480 - Sensori di immagine monocromatici o a colori - Massimo frame rate 60 fps - Baseline variabile in accordo alle specifiche esigenze - Lenti intercambiabili in accordo alle specifiche esigenze

Page 25: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

6 Caratterizzazione di un sistema stereoscopico reale Al fine di analizzare le caratteristiche di un sistema stereoscopico considereremo il caso di un sistema binoculare, con piani immagini coplanari e assi ottici paralleli come mostrato nella figura seguente. Nel caso queste ultime ipotesi (sistema stereoscopico in forma standard) non fossero verificate nella realtà, è possibile sempre ricondursi a tale ipotesi mediante le procedure di calibrazione e rettificazione descritte in precedenza.

b HFOV W(z)

z

Z0

Figura 23 Sistema di visione stereoscopico con telecamere in forma standard

Le caratteristiche di un sistema stereoscopico come quello mostrato in figura sono completamente definite mediante la conoscenza della distanza tra i due centri ottici (baseline), le ottiche (distanza focale), la risoluzione e le dimensioni dei sensori di immagine utilizzati che nel caso più generale sono diversi nella direzione verticale e orizzontale. Come mostrato nella figura precedente il campo visivo (field of view) da un sistema stereoscopico risulta essere l’intersezione tra i campi visivi delle due telecamere. Indicando con cx,cy le coordinate in pixel del centro dell’immagine (punto principale o principal point) di dimensione W×H con origine in alto a sinistra, con fx e fy la focale misurata in pixel (risp) orizzontali e verticali, i field of view verticali (VFOV) e orizzontali (HFOV) del sistema stereoscopico risultano rispettivamente

fycyHarctg

fycyarctg −−

+=1 VFOV

fxcxWarctg

fxcxarctgHFOV −−

+=1

Page 26: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

I campi visivi dipendono dalle lenti scelte e vengono stimati nella fase di calibrazione. A titolo di esempio utilizzando lenti con focale da 8mm risultano HFOV 59°, VFOV 46,5° mentre utilizzando lenti con focale da 4,8mm risultano HFOV 87,7°, VFOV 71,7°. Oltre ai parametri che determinano la geometria del sistema di visione stereoscopico indicati precedentemente vi è un ulteriore parametro da considerare per caratterizzare il sistema. Tale parametro è il range di disparità, cioè l’intervallo di pixel entro il quale si effettua la ricerca dei punti omologhi. La scelta del range di disparità determina la regione dello spazio, all’interno del campo visivo del sensore, entro il quale è possibile misurare le distanze (horopter).

b

dmax dmin

Z0 HFOV

Z W(Z)

Figura 24 Horopter di un sistema di visione stereoscopico con intervallo di disparità compreso tra dmin e dmax

Nella figura precedente è mostrata la regione dello spazio nel quale viene eseguita la misura con il sistema stereoscopico nel caso in cui l’intervallo di disparità (range di disparità) sia compreso tra i valori dmin e dmax. Con le line tratteggiate verticali sono indicate le distanze corrispondenti ai valori di disparità dell’intervallo specificato. Essendo la distanza dipendente dal reciproco della disparità tali piani non sono equidistanti l’uno dall’altro. La distanza Z0 ove inizia il campo visivo del sistema stereoscopico può essere determinata sfruttando la similitudine tra i triangoli

bZ

Sf

x

0=

dove Sx è la dimensione orizzontale in millimetri del sensore immagine. Note le caratteristiche delle telecamere è possibile determinare anche W(Z), sempre mediante similitudine tra triangoli, risulta

Page 27: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

0

0 )()(Z

ZZbZW −

=

Allo scopo di analizzare le prestazioni fornite da un sistema di visione stereoscopico consideriamo il sistema mostrato in Figura 1 in alcune configurazioni di particolare interesse. In questo caso i sensori hanno una risoluzione effettiva di 640x480 pixels e la dimensione di un pixel è pari a 6 um. Per le ragioni espresse in precedenza, si considererà il caso di sensori monocromatici. La metodologia con la quale sarà eseguita la caratterizzazione sarà la seguente: per ogni configurazione analizzata verrà mostrato il range di misura con un range di disparità intero compreso tra 1 e 64 mostrando il range effettivo di misura e la risoluzione ottenibile dalla misura. Più precisamente, la risoluzione nella misura della distanza (e.g. la più piccola variazione di distanza che puo’ essere percepita dal sistema) fornita da un sistema stereoscopico è descritta dalla relazione seguente, nella quale ΔZ rappresenta la differenza di distanza tra i punti Z1 e Z2 adiacenti.

1+ii ZZZ −=Δ

6.1 Baseline 6.88 cm – Focale 4.5 mm - Subpixel 1 Nel grafico seguetne è mostrato l’andamento delle distanze misurabili da un sistema stereoscopico con le caratteristiche specificate nel caso in cui l’intervallo di disparità sia compreso tra 1 e 64 e la risoluzione del sistema stesso. Dal grafico si possono notare alcune caratteristiche del sistema considerato. Esso è in grado di effettuare misure di distanza da circa 80 cm fino a circa 5 m. In realtà, poiché la distanza dipende dal reciproco della disparità, come si può osservare dal grafico la risoluzione di un sistema stereoscopico peggiora allontanandosi dalle telecamere (e.g. diminuendo il valore di disparità). Si può, infatti, osservare dal grafico come a 5 m la risoluzioe del sistema stereo sia pari a circa la distanza misurata (i.e. 2.5 m).

0.00

500.00

1000.00

1500.00

2000.00

2500.00

3000.00

0.00 1000.00 2000.00 3000.00 4000.00 5000.00 6000.00

distanza [cm]

Riso

luzi

one

[cm

]

Figura 25 Andamento della risoluzione in funzione della distanza misurata dal sistema stereo nella

configurazione esaminata.

Page 28: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

Pertanto la distanza massima alla quale è possibile eseguire una misura accurata risulta essere decisamente inferiore. Tale distanza è stabilita valutando la risoluzione minima che si desidera ottenere dal sistema stereoscopico. Ad esempio, in questa configurazione se si desidera una risoluzione inferiore a 10 cm è necessario eseguire misure da 2.24 m in poi come mostrato nel grafico seguente.

0.00

1.00

2.00

3.00

4.00

5.00

6.00

7.00

8.00

9.00

10.00

0.00 50.00 100.00 150.00 200.00 250.00

distanza [cm]

Riso

luzi

one

[cm

]

Figura 26 Dettaglio sull’andamento della risoluzione in funzione della distanza misurata dal sistema stereo nella

configurazione esaminata.

6.2 Baseline 6.88 cm – Focale 4.5 mm - Subpixel 4 E’ possibile incrementare via software la risoluzione nella misura della distanza di un sistema stereoscopico utilizzando algoritmi di matching capaci di risolvere il problema delle corrispondenze con risoluzione subpixel. In tal modo è come se si avesse a disposizione un sensore immagine virtuale con pixel di dimensioni che sono una porzione del pixel reale. Tipici valori di risoluzione subpixel usati da algoritmi di matching stereo per applicazioni real-time come quelli che sono oggetto della seguente analisi sono 1/16, 1/8, ¼ e 1/2. Nel caso esaminato, con risoluzione subpixel di 1/4, si ottiene una dimensione orizzontale del pixel pari a 1/16 della dimensione reale ed è possibile ottenere risoluzioni sicuramente migliori da un punto di vista teorico. Si evidenzia che la risoluzione subpixel introduce un minimo carico computazionale confrontato al costo computazionale degli algoritmi di matching stereo e che la sua reale efficacia è legata a vari fattori quali rumore, risoluzione delle immagini, dimensioni della finestra di correlazione, etc per cui il valore della risoluzione subpixel deve essere valutato empiricamente in funzione del particolare caso applicativo esaminato. Il range di distanze misurabile e la risoluzione del sistema stereo con subpixel 4 è mostrato nella figura seguente. Si può notare come il range di misura si sia esteso, mantenendo però le stesse problematiche evidenziate in precedenze rispoetto alla risoluzione nella misura (circa 10 m alla massima distanza di 20 m). Si può inoltre notare come l’utilizzo del subixel, rispetto al caso precendente si subpixel 1, consenta di eseguire misure più accurate anche a più grande distanza.

Page 29: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

0.00

2000.00

4000.00

6000.00

8000.00

10000.00

12000.00

0.00 5000.00 10000.00 15000.00 20000.00 25000.00

distanza [cm]

Riso

luzi

one

[cm

]

Figura 27 Andamento della risoluzione in funzione della distanza misurata dal sistema stereo nella

configurazione esaminata.

Il grafico seguente mostra come un vincolo sulla risoluzione di 10 cm consente in questo caso di eseguire misure nel range compreso tra circa 4.5 m e 80 cm. L’effetto del subpixel è pertanto consigliato anche se, in pratica, sarà in parte vanificato dalla capacità del sistema stereo di individuare sempre corrispondenze corrette.

0.00

2.00

4.00

6.00

8.00

10.00

12.00

0.00 50.00 100.00 150.00 200.00 250.00 300.00 350.00 400.00 450.00 500.00

distanza [cm]

Riso

luzi

one

[cm

]

Figura 28 Dettaglio sull’andamento della risoluzione in funzione della distanza misurata dal sistema stereo nella

configurazione esaminata.

Page 30: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

6.3 Baseline 6.88 cm – Focale 4.5 mm - Subpixel 8 Incrementando ulteriormente il fattore di subpixel a 8 si ottengono i seguenti risultati, dai quali è possibile percepire le medesime problematiche evidenziate in precedenza sulla risoluzione nella misura a distanze elevate (ovviamente maggiori in questo caso rispetto ai casi precedenti).

0.00

5000.00

10000.00

15000.00

20000.00

25000.00

0.00 5000.00 10000.00

15000.00

20000.00

25000.00

30000.00

35000.00

40000.00

45000.00

distanza [cm]

Riso

luzi

one

[cm

]

Figura 29 Andamento della risoluzione in funzione della distanza misurata dal sistema stereo nella

configurazione esaminata.

0.00

2.00

4.00

6.00

8.00

10.00

12.00

0.00 100.00 200.00 300.00 400.00 500.00 600.00 700.00

distanza [cm]

Riso

luzi

one

[cm

]

Figura 30 Dettaglio sull’andamento della risoluzione in funzione della distanza misurata dal sistema stereo nella

configurazione esaminata.

Page 31: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

E’ possibile inoltre evidenziare il benefico effetto nell’aumento della distanza misurabile che supera teoricamente i 40 m (anche se in pratica non utilizzabile a tale distanza per via della risoluzione di circa 20 m). Come nei casi precedenti è riportato il range di misura vincolando la risoluzione ad un valore inferiore a 10 cm. Si osservi come in questo caso sia possibile eseguire una misura con tale risoluzione in una range compreso tra 80 cm e più di 6 m. Si osserva inoltre come alla distanza di 80 cm la risoluzione nella misura sia pari a 0.16 cm

6.4 Baseline 13.75 cm – Focale 4.5 mm - Subpixel 1 Raddoppiando la baseline, ovvero incrementando di due volte la distanza tra i die sensori rispetto al caso precedente, il sistema è in grado percepire maggiori distanze e con migliore risoluzione (a parità di ditanza). La figura seguente mostra il consueto grafico distanza vs risoluzione per il sistema con baseline doppia e stessa configurazione delle lenti da 4.5 mm.

0.00

1000.00

2000.00

3000.00

4000.00

5000.00

6000.00

0.00 2000.00 4000.00 6000.00 8000.00 10000.00 12000.00

distanza [cm]

Riso

luzi

one

[cm

]

Figura 31 Andamento della risoluzione in funzione della distanza misurata dal sistema stereo nella

configurazione esaminata.

Dalla figura è possibile notare che, mantendo lo stesso intervallo di disparità, l’intervallo di misura (horopter) si è spostato vero una regione più lontana dalla telecamera rispetto al caso con baseline di 6.88 cm. Dal grafico seguente si può inoltre osservare come l’incremento della baseline abbia portato significativi miglioramenti in termini di risoluzione nella misura. In queste circostanze è possibile eseguire misure con risoluzione migliore di 10 cm da poco più di 1.5 m a più di 3 m.

Page 32: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

0.00

2.00

4.00

6.00

8.00

10.00

12.00

0.00 50.00 100.00 150.00 200.00 250.00 300.00 350.00

distanza [cm]

Riso

luzi

one

[cm

]

Figura 32 Dettaglio sull’andamento della risoluzione in funzione della distanza misurata dal sistema stereo nella

configurazione esaminata.

6.5 Baseline 13.75 cm – Focale 4.5 mm - Subpixel 4 Aumentando il fattore di subpixel da 1 a 4 si ottengono significativi miglioramenti sia in termini di distanze misurabili sia in termini di migliore risoluzione nella misura della distanza come è possibile osservare dalla figura seguente.

0.00

5000.00

10000.00

15000.00

20000.00

25000.00

0.00 5000.00 10000.00

15000.00

20000.00

25000.00

30000.00

35000.00

40000.00

45000.00

distanza [cm]

Riso

luzi

one

[cm

]

Figura 33Andamento della risoluzione in funzione della distanza misurata dal sistema stereo nella

configurazione esaminata.

Page 33: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

Il grafico che mostra il range di misura con una risoluzione inferiore a 10 cm è il seguente. Si osservi come sia possibile in questa configurazione eseguire misure con almeno tale risoluzione a una distanza compresa tra 1.5 m e più di 6 m.

0.00

2.00

4.00

6.00

8.00

10.00

12.00

0.00 100.00 200.00 300.00 400.00 500.00 600.00 700.00

distanza [cm]

Riso

luzi

one

[cm

]

Figura 34 Dettaglio sull’andamento della risoluzione in funzione della distanza misurata dal sistema stereo nella

configurazione esaminata.

6.6 Baseline 13.75 cm – Focale 4.5 mm - Subpixel 8

0.00

5000.00

10000.00

15000.00

20000.00

25000.00

30000.00

35000.00

40000.00

45000.00

0.00 10000.00

20000.00

30000.00

40000.00

50000.00

60000.00

70000.00

80000.00

90000.00

distanza [cm]

Riso

luzi

one

[cm

]

Figura 35 Andamento della risoluzione in funzione della distanza misurata dal sistema stereo nella

configurazione esaminata.

Page 34: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

Aumentando ulteriormente il fattore di subpixel da 4 a 8 si ottengono miglioramenti considerevoli sia in termini di distanze misurabili sia in termini di migliore risoluzione nella misura della distanza come è possibile osservare nella figura seguente. Inoltre, l’andamento della risoluzione in funzione della distanza mostra come sia possibile eseguire misure con una risoluzione inferiore a 10 cm da circa 1.5 m fino a circa 9 m.

0.00

2.00

4.00

6.00

8.00

10.00

12.00

0.00 100.00 200.00 300.00 400.00 500.00 600.00 700.00 800.00 900.00 1000.00

distanza [cm]

Riso

luzi

one

[cm

]

Figura 36 Dettaglio sull’andamento della risoluzione in funzione della distanza misurata dal sistema stereo nella

configurazione esaminata.

Page 35: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

6.7 Baseline 13.75 cm – Focale 9.0 mm - Subpixel 1 Mantenendo il sistema nella configurazione precedente e aumentando la focale si ottengono ulteriori miglioramenti in termini di capacità di eseguire misure a più lunga distanza e migliore risoluzione. Ovviamente, l’effetto collaterale è una riduzione del campo visivo del sistema stereo.

0.00

2000.00

4000.00

6000.00

8000.00

10000.00

12000.00

0.00 5000.00 10000.00 15000.00 20000.00 25000.00

distanza [cm]

Riso

luzi

one

[cm

]

Figura 37 Andamento della risoluzione in funzione della distanza misurata dal sistema stereo nella

configurazione esaminata

0.00

2.00

4.00

6.00

8.00

10.00

12.00

0.00 50.00 100.00 150.00 200.00 250.00 300.00 350.00 400.00 450.00 500.00

distanza [cm]

Riso

luzi

one

[cm

]

Figura 38 Dettaglio sull’andamento della risoluzione in funzione della distanza misurata dal sistema stereo nella

configurazione esaminata.

Page 36: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

6.8 Baseline 13.75 cm – Focale 9.0 mm - Subpixel 4 Utilizzando un fattore subpixel di 4 si ottengono, come prevedibile, ulteriori miglioramenti nella capacità di range sensing del sistema stereo rispetto al caso di subpixel 1.

0.00

5000.00

10000.00

15000.00

20000.00

25000.00

30000.00

35000.00

40000.00

45000.00

0.00 10000.00

20000.00

30000.00

40000.00

50000.00

60000.00

70000.00

80000.00

90000.00

distanza [cm]

Riso

luzi

one

[cm

]

Figura 39 Andamento della risoluzione in funzione della distanza misurata dal sistema stereo nella

configurazione esaminata. Si osservi come, in questo caso, il range di misura con risoluzione inferiore a 10 cm sia compreso tra circa 9 m e 3.20 m circa.

0.00

2.00

4.00

6.00

8.00

10.00

12.00

0.00 100.00 200.00 300.00 400.00 500.00 600.00 700.00 800.00 900.00 1000.00

distanza [cm]

Riso

luzi

one

[cm

]

Figura 40 Dettaglio sull’andamento della risoluzione in funzione della distanza misurata dal sistema stereo nella

configurazione esaminata.

Page 37: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

6.9 Baseline 13.75 cm – Focale 9.0 mm - Subpixel 8. Utilizzando un fattore subpixel di 8 si ottengono, come prevedibile, ulteriori miglioramenti nella capacità di range sensing del sistema stereo rispetto ai due casi precedenti.

0.00

10000.00

20000.00

30000.00

40000.00

50000.00

60000.00

70000.00

80000.00

90000.00

0.00 20000.00

40000.00

60000.00

80000.00

100000.00

120000.00

140000.00

160000.00

180000.00

distanza [cm]

Riso

luzi

one

[cm

]

Figura 41 Andamento della risoluzione in funzione della distanza misurata dal sistema stereo nella

configurazione esaminata.

Si osservi come il sistema stereo sia in questo caso in grado di eseguire misure con risoluzione inferiore a 10 cm tra poco più di 3 m fino a più di 12 m.

0.00

2.00

4.00

6.00

8.00

10.00

12.00

0.00 200.00 400.00 600.00 800.00 1000.00 1200.00 1400.00

distanza [cm]

Riso

luzi

one

[cm

]

Figura 42 Dettaglio sull’andamento della risoluzione in funzione della distanza misurata dal sistema stereo nella

configurazione esaminata.

Page 38: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

7 Conclusioni In questa relazione sono state mostrate le caratteristiche tecniche principali di un sistema stereo per applicazioni di logistica descrivendo i principali componenti, le metodologie per l’identificazione dei parametri del sistema e classificando gli algoritmi per il calcolo delle corrispondenze. In seguito, si è eseguita un analisi delle prestazioni ottenibili da un tale sistema in differenti configurazioni: modificando il fattore di interpolazione subpixel, la distanza tra le due telecamere (baseline) e la distanza focale. Dall’analisi risulta evidente come a parità di baseline e distanza focale sia conveniente utilizzare metodologie di interpolazione sub pixel nel calcolo delle disparità. Tale approccio consente infatti, a un ridotto costo computazionale, di migliorare le prestazioni generali di un sistema stereo per quanto concerne la risoluzione nella misura della distanze.

Page 39: Caratterizzazione di un sistema di visione stereo · un particolare dell’immagine raw ottenuta applicando il pattern Bayer. 3 Geometria di un sistema stereoscopico La trasformazione

8 Bibliografia [1] www.vision.deis.unibo.it/smatt/stereo.htm [2] D. Scharstein and R. Szeliski, “A Taxonomy and Evaluation of Dense Two-Frame Stereo Correspondence Algorithms”, IJCV 47(1/2/3):7-42, April-June 2002 [3] ”Camera Calibration in OpenCV”, http://opencv.willowgarage.com/ [4] E. Trucco, A. Verri “Introductory Techniques for 3-D Computer Vision”, Prentice Hall, 1998. [5] S. Mattoccia “Stereo vision: algorithms and applications”, documento disponibile a questo indirizzo: http://www.vision.deis.unibo.it/smatt/Seminars/StereoVision.pdf [6] Point Grey Research, www.ptgrey.com [7] TYZX, www.tyzx.com [8] Focus Robotics, www.focusrobotics.com/ [9] S. Mattoccia, S. Giardino, A. Gambini, "Accurate and efficient cost aggregation strategy for stereo correspondence based on approximated joint bilateral filtering", Asian Conference on Computer Vision (ACCV2009), September 23- 27, 2009, Xi'an, China, [10] L. De-Maeztu, S. Mattoccia, A. Villanueva, R. Cabeza, "Linear stereo matching", International Conference on Computer Vision (ICCV 2011), November 6-13, 2011, Barcelona, Spain