Tesi Robotica Analisi, progettazione e implementazione... | Page 110

i i “LP_Tesi” — 2013/10/17 — 18:27 — page 110 — #110 i 110 i 5. PRIMA RELEASE che lo guida. Il Raster non fa altro che memorizzare nella BRAM denominata appunto raster una riga dell’immagine originale e inviarla al modulo successivo seguendo regole predeterminate. Per ogni processor sono presenti due Raster, il primo riceverà sulla porta di input la riga dell’immagine di sinistra, mentre il secondo la riga omologa dell’immagine di destra. In uscita si avranno a disposizione i pixel memorizzati nei Raster, questi vengono spediti in modo da consentire al modulo successivo di creare la matrice dei punteggi. Essendo un algoritmo di programmazione dinamica, per creare la matrice, i pixel dovranno essere inviati nel seguente modo, siano: n la lunghezza dell’immagine, rasterL il raster per la riga sinistra e rasterR per quella destra, il processo di esecuzione può essere definito con i seguenti passi: • Passo 1: rasterL invia il primo pixel presente in memoria n volte, durante questo periodo rasterR invia tutti i pixel che ha a disposizione, in questo modo si hanno in uscita le coppie di pixel di indici (1,1),(1,2),...,(1,n). Arrivato all’n-esima trasmissione rasterL sposta la testina di lettura in avanti; • ... • Passo i: rasterL invia l’i-esimo pixel presente in memoria n volte, durante questo periodo resterR invia tutti i pixel che ha a disposizione, in questo modo si hanno in uscita le coppie di pixel di indici (i,1),(i,2),...,(i,n), arrivato all’n-esima trasmissione rasterL sposta la testina di lettura in avanti; • ... • Passo n: rasterL invia l’n-esimo pixel presente in memoria n volte, durante questo periodo rasterR invia tutti i pixel che ha a disposizione, in questo modo si hanno in uscita le coppie di pixel di indici (n,1),(n,2),...,(n,n), arrivato all’n-esima trasmissione i Raster si fermano avendo inviato tutte le possibili combinazioni di pixel. i i i i