Torniamo a degli argomenti seri!
Non che le cene non lo siano ma visto che oltre a mangiare e guardare reality ho fatto altre cose perchè non parlarne!
Il progetto di Visione Artificiale
Il progetto è stato creato dalla collaborazione tra me e Monia Mosconi, l’obbiettivo è:
realizzare un programma che riesca, data un’immagine (solo bmp), a trovare in essa, se vi sono, tutti i cartelli stradali, segnalandone la posizione e indicandone la categoria.
Per realizzare tale proposito ci siamo basati su tecniche di estrazione delle features, tecniche di segmentazione delle immagini e altri particolari algoritmi per l’estrazione dei contorni o il calcolo delle aree.
Per chi è interessato ad una spiegazione teorica metto a disposizione la relazione stilata come presentazione del progetto.
Per chi invece ha voglia di guardarsi il codice metto a disposizione il file con tutte le "funzioni" da noi utilizzate per realizzare il progetto. Vi avviso che il progetto è stato scritto tramite Visual Studio 6 e che il file è parte di un progetto creato con questo ambiente di sviluppo (qui tutto il progetto).
Il file è commentato ma ci sono due cose che dovreste sapere:
1) Per utilizzare le funzionalità "trasformata di Hough" dovete andare a modificare il valore del flag "Trasformata_Hough" all’inzio del file dove vengono dichiarate le variabili;
2) Per utilizzare o meno l’operatore morfologico "Erosion" dovete commentare o decommentare il richiamo a tale funzione all’interno della funzinalità "Dilation".
Ora arriviamo alle note dolenti. Utilizzando il programmino su un set di immagini diverso da quello delle nostre prove (test - trainig) si notano alcuni problemi. Il principale è l’errata etichettatura delle figure nell’immagine che dipende in parte dalla tecnica di segmentazione (tramite campionature) e dal fatto che l’algoritmo di etichettatura deve essere modificato per ottenere un numero di etichette superiore a 255.
Quindi vi suggerisco di fare attenzione a come vengono effettuate le operazioni di etichettatura…potrebbero esserci dei problemi.
Per rassicurare tutti, alla fine ho preso 25 nell’esame in questione, l’elaborato è stato valutato e ha perso molti punti per i problemi che vi ho descritto. Due suggerimenti per migliorare il programmino: cambiate metodo di segmentazione (utilizzate HSI), modificate l’algoritmo di etichettatura.
Per il resto le funzionalità funzionano e fanno il loro dovere.
Alcuni link utili: immagini test set, immagini training set
Posted under C/C++, Linguaggi di Programmazione, Micro$oft
This post was written by Filippo on September 24, 2006