Tesi Robotica Un coprocessore per Stereo-Matching: Profiling ... | Page 62

i i “MF_Tesi” — 2011/9/12 — 11:39 — page 62 — #62 i 4.3. IMPLEMENTAZIONE IN C i 62 indica la distanza relativa degli oggetti nella scena. Il calcolo della disparità per ogni pixel viene calcolata come descritto in precedenza. In più nella mappa di disparità vengono memorizzate diverse informazioni utilizzando colori diversi, ad esempio le occlusioni sono rappresentate in verde, in rosso la disparità dell’immagine di destra rispetto a quella di sinistra e in blu la disparità dell’immagine di sinistra rispetto a quella di destra. Più intensi sono i colori, più è alta la disparità. Funzioni ausiliarie 2 7 12 dir **createPath(int linesize) { dir **ret; int i; ret = (dir **)malloc(sizeof(dir *) * linesize); for(i = 0; i < linesize; i++) { ret[i] = (dir*)malloc(sizeof(dir) * linesize); memset(ret[i], 0, linesize * sizeof(dir)); } return ret; } Questa funzione alloca una matrice le cui celle sono di tipo dir. In questo tipo di matrice viene memorizzato il percorso risultato della procedura di backtracking. 3 8 13 void printScore(dirVal **score, int linesize) { int i, j; for(i = 0; i < li