Tesi Robotica Un co-processore per Stereo-Matching: Architettura | Page 42
i
i
“LP_Tesi” — 2011/9/9 — 21:20 — page 42 — #42
i
3.3. IMPLEMENTAZIONE MATLAB
i
42
Sulla riga 1 troviamo il prototipo, il quale per funzionare ha bisogno: delle due
immagini (sinistra e destra), del Gap e dell’EGap. In genere le due immagini
possono essere caricate nelle variabili IL e IR attraverso la funzione di libreria
imread(). A questo punto [riga 5-6] si istanziano le matrici che andranno a
contenere la mappa delle occlusioni sinistra e destra tramite la funzione zeros(),
che crea una matrice di zeri di dimensione arbitraria. Una volta che l’ambiente
di lavoro è completo parte un ciclo for che andrà a scandire le righe omologhe
delle due immagini.
Nel ciclo per ogni coppia di righe vengono chiamate in sequenza le seguenti
funzioni:
• TrueFillPath2: prende in input le due immagini, il valore di Gap ed EGap
e in ultimo la riga che si sta processando, una volta che la computazione è
finita in uscita avremo due matrici che contengono gli allineamenti ottenuti
tramite il backtrack;
• ReduceNumberPath3: prendendo in input gli allineamenti calcolati, decide quali abbiano un punteggio maggiore tramite l’uso di vincoli la cui
soddisfazione permette di calcolare una sorta di indice di bontà dell’allineamento. In output quindi avremo a disposizione l’allineamento migliore e
altre informazioni riscontrate durante la computazione;
• DisparityMap: una volta che l’allineamento migliore è stato calcolato non
resta che calcolare la singola disparità di ogni pixel della riga.
Il valore assoluto delle due righe di disparità così ottenute vengono quindi salvate
nelle mappe delle occlusione istanziate precedentemente [riga 14-15].
Quando il ciclo finisce le componenti blue e rosse della mappa delle occlusioni
vengono sommate e castate a uint8 per creare un immagine in scala di grigio
contenente la mappa di disparità sinistra e destra [riga 18-19].
Passiamo ora alla descrizione in dettaglio delle funzioni chiamate.
3.3.2
TrueFillPath2
Cuore dell’algoritmo di allineamento (Alg:3.4) calcola la matrice dei punteggi e
ne esegue il backtrack.
i
i
i
i