Tesi Robotica Un coprocessore per Stereo-Matching: Profiling ... | Page 50
i
i
“MF_Tesi” — 2011/9/12 — 11:39 — page 50 — #50
i
4.2. DESCRIZIONE DELL’ALGORITMO
4.2.2
i
50
Backtracking
Il processo di backtracking è piuttosto semplice. Si parte dal punteggio più alto
posizionato nell’ultima riga e nell’ultima colonna. Individuata la cella si segue
a ritroso la direzione che ha portato a quella cella e così via fino a raggiungere l’angolo superiore sinistro della matrice che contiene un valore indicativo
che segnala il termine della procedura di backtracking. Al termine di questa
procedura il risultato ottenuto è una serie di allineamenti con punteggio ottimale. Affinché sia possibile individuare una soluzione super-ottima gli autori
dell’algoritmo hanno imposto una serie di vincoli sulla sequenza allineata.
Figura 4.2.1: Rappresentazione grafica degli allineamenti ottimi di due scanilnes.
In particolare per l’allineamento della riga i rispettivamente dell’immagine sinistra li e la corrispondente riga sull’immagine destra ri vengono calcolati dei
vincoli di allineamento tra li e la media di ri e ri+1 . Le soluzioni presenti
in entrambi gli allineamenti sono da favorire. Estendendo questo ragionamento
possiamo considerare tutte le possibili combinazioni tra (li ), (li +li+1 ), (li−1 +li ),
(li−1 + li + li−1 ), e (ri ), (ri + r1+1 ), (ri−1 + ri ), (ri−1 + ri + ri+1 ) e considerando anche la lettura da destra verso sinistra delle scanline, per un totale di 32
vincoli comple