ETD

Archivio digitale delle tesi discusse presso l'Università di Pisa

Tesi etd-02032017-122226


Tipo di tesi
Tesi di laurea specialistica
Autore
BELLE', MAURO
URN
etd-02032017-122226
Titolo
Implementazione di un algoritmo di obstacle avoidance e object tracking tramite un sistema di visione monoculare
Dipartimento
INGEGNERIA DELL'INFORMAZIONE
Corso di studi
INGEGNERIA DELLA AUTOMAZIONE
Relatori
relatore Pollini, Lorenzo
Parole chiave
  • monocular vision
  • object tracking
  • Obstacle avoidance
Data inizio appello
23/02/2017
Consultabilità
Completa
Riassunto
Con il termine di image processing si intende la processazione di immagini utiliz-
zando operazioni matematiche in cui l'input è un'immagine, come ad esempio un
frame di una fotografia o di un video. L'output può essere ancora un'immagine
o un set di caratteristiche o parametri relazionati all'immagine. Questa parti-
colare tecnica è molto importante, in quanto può essere applicata a molteplici
campi, dall'automazione industriale all'intrattenimento, alla videosorveglianza.
Scopo di questa tesi è realizzare un sistema composto da una macchini-
na dotata di una webcam che, tramite image processing, raggiunge un target
(identificato in una pallina arancione) parzialmente nascosto da un ostacolo, che
è in grado di aggirare con un angolo di sterzata più o meno ampio in base alle
informazioni relative alla distanza dell'ostacolo ed alla visibilità della regione di
incertezza creata intorno al target, entrambe fornite dall'algoritmo creato. La
regione di incertezza rappresenta tutte le probabili posizioni in cui il target si
potrebbe trovare, con una probabilità che aumenta all'aumentare della visibilità.
Il livello di visibilità di un oggetto in un punto può essere inizialmente de-
finito come l'esistenza o meno di una linea, detta Line Of Sight (LOS), che
congiunge il suddetto punto e l'oggetto. La presenza di un ostacolo tra questi
due determinerà la non esistenza della LOS. Questo modo però è troppo sempli-
cistico per rappresentare il livello di visibilità necessario per lo scopo di questa
tesi; per questo motivo è stata definita una regione di incertezza attorno all'og-
getto, nel caso in questione la pallina, che dia un'informazione probabilistica sul
livello di visibilità. Ad esempio, nel caso in cui non ci sia la presenza di ostacoli, tutte le LOS
relative alla regione di incertezza varranno 1, garantendo così una piena visibi-
lità, che avrà valore unitario; al contrario, se la pallina è parzialmente dietro ad
un ostacolo, che la copre nella sua parte destra, le LOS di destra varranno 0, ed
il valore della visibilità sarà compreso tra 0 ed 1, in base al grado di copertura
della pallina. Se si definiscono delle possibili posizioni della webcam, a sinistra,
a destra, in alto o in basso di 20 cm, si potranno sfruttare ulteriori informazioni
riguardanti la visibilità della pallina: in questo caso, spostandosi sulla sinistra, si avrà un aumento della visibilità. Si determina così un gradiente di visibilità che
sarà maggiore o minore quando la visibilità sarà maggiore o minore. Il gradiente
si traduce in una variazione di angolo che indica in maniera proporzionale di
quanto la macchinina dovrà girare per evitare l'ostacolo ed ottenere una piena
visibilità della pallina.
Tramite calibrazione della webcam si avranno a disposizione i suoi parametri
instrinseci, quali il field of view e l'angle of view, che serviranno per una stima
in real time della distanza tra la webcam e la pallina, e tra la webcam e gli
ostacoli che risiedono nell'ambiente circostante.
Il punto di forza di questa tesi sta nel fatto che viene utilizzato un sistema
di visione monoculare, grazie al quale si riesce ad avere una buona stima della
distanza e si riesce a determinare una mappa di visibilità in real-time che stabi-
lisce se si è in presenza o meno di un ostacolo, permettendo alla macchinina di
aggirarlo. L'algoritmo creato riceve, tramite seriale collegata al microcontrollore
principale, dei pacchetti di dati contenenti gli effettivi valori degli angoli di roll,
pitch e yaw dovuti agli ammortizzatori, che vengono stimati dalla IMU montata
sulla macchinina. Questi valori compenseranno quelli errati che non tengono
conto degli angoli, che fornirebbero così una stima non fedele della distanza.
Infine sarà possibile effettuare il tracking della pallina arancione grazie al-
l'aiuto della libreria OpenCV, elaborando ogni singolo frame del flusso video.


File