universita' degli studi di perugia dipartimento di ... 2016-17/malena... · socket.io express...

20
UNIVERSITA' DEGLI STUDI DI PERUGIA        DIPARTIMENTO DI MATEMATICA E                                              INFORMATICA Laurea Triennale in Informatica USO DELL’INTELLIGENZA ARTIFICIALE PER IL CONTROLLO REMOTO DEL DRONE PARROT ARDRONE 2.0 ARTIFICIAL INTELLIGENCE USE FOR REMOTE CONTROL OF DRONE PARROT ARDRONE 2.0 Autore: Relatore: Antonio Malena Prof. Stefano Bistarelli

Upload: others

Post on 14-Jul-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: UNIVERSITA' DEGLI STUDI DI PERUGIA DIPARTIMENTO DI ... 2016-17/Malena... · Socket.io Express Nodejs framework per realizzare applicazioni Web in JavaScript. IL PROGETTO DI PARTENZA

UNIVERSITA' DEGLI STUDI DI PERUGIA       DIPARTIMENTO DI MATEMATICA E                                              INFORMATICA Laurea Triennale in Informatica

USO DELL’INTELLIGENZA ARTIFICIALE PER IL CONTROLLO REMOTO DEL DRONE PARROT ARDRONE 2.0

ARTIFICIAL INTELLIGENCE USE FOR REMOTE CONTROL OF DRONE

PARROT ARDRONE 2.0

Autore: Relatore: Antonio Malena Prof. Stefano Bistarelli

Page 2: UNIVERSITA' DEGLI STUDI DI PERUGIA DIPARTIMENTO DI ... 2016-17/Malena... · Socket.io Express Nodejs framework per realizzare applicazioni Web in JavaScript. IL PROGETTO DI PARTENZA

INTRODUZIONE

OBIETTIVI:

Modifica dell’archittettura di rete per il controllo remoto di ardrone 2.0

Modifica delle librerie standard per la trasmissione delle immagini sul browser e per il controllo

Utilizzo di una libreria di riconoscimento dell’immagine per il volo autonomo del drone

Page 3: UNIVERSITA' DEGLI STUDI DI PERUGIA DIPARTIMENTO DI ... 2016-17/Malena... · Socket.io Express Nodejs framework per realizzare applicazioni Web in JavaScript. IL PROGETTO DI PARTENZA

PARROT ARDRONE 2.0

Page 4: UNIVERSITA' DEGLI STUDI DI PERUGIA DIPARTIMENTO DI ... 2016-17/Malena... · Socket.io Express Nodejs framework per realizzare applicazioni Web in JavaScript. IL PROGETTO DI PARTENZA

VOLO E MOVIMENTO

Page 5: UNIVERSITA' DEGLI STUDI DI PERUGIA DIPARTIMENTO DI ... 2016-17/Malena... · Socket.io Express Nodejs framework per realizzare applicazioni Web in JavaScript. IL PROGETTO DI PARTENZA

OBIETTIVI:

Modifica dell’archittettura di rete per il controllo remoto di ardrone 2.0

Modifica delle librerie standard per la trasmissione delle immagini sul browser

Utilizzo di una libreria di riconoscimento dell’immagine per il volo autonomo del drone

Page 6: UNIVERSITA' DEGLI STUDI DI PERUGIA DIPARTIMENTO DI ... 2016-17/Malena... · Socket.io Express Nodejs framework per realizzare applicazioni Web in JavaScript. IL PROGETTO DI PARTENZA

COLLEGAMENTO PUNTO A PUNTO

Page 7: UNIVERSITA' DEGLI STUDI DI PERUGIA DIPARTIMENTO DI ... 2016-17/Malena... · Socket.io Express Nodejs framework per realizzare applicazioni Web in JavaScript. IL PROGETTO DI PARTENZA

PC-ROUTER-ARDRONE

Page 8: UNIVERSITA' DEGLI STUDI DI PERUGIA DIPARTIMENTO DI ... 2016-17/Malena... · Socket.io Express Nodejs framework per realizzare applicazioni Web in JavaScript. IL PROGETTO DI PARTENZA

ARDRONE- unipg-802.1x

unipg-802.1x

Page 9: UNIVERSITA' DEGLI STUDI DI PERUGIA DIPARTIMENTO DI ... 2016-17/Malena... · Socket.io Express Nodejs framework per realizzare applicazioni Web in JavaScript. IL PROGETTO DI PARTENZA

CLIENT-SERVER-ARDRONE

ARDRONE

SERVERCLIENT

Modulo 3g usb

Page 10: UNIVERSITA' DEGLI STUDI DI PERUGIA DIPARTIMENTO DI ... 2016-17/Malena... · Socket.io Express Nodejs framework per realizzare applicazioni Web in JavaScript. IL PROGETTO DI PARTENZA

OBIETTIVI:

Modifica dell’archittettura di rete per il controllo remoto di ardrone 2.0

Modifica delle librerie standard per la trasmissione delle immagini sul browser e per il controllo

Utilizzo di una libreria di riconoscimento dell’immagine per il volo autonomo del drone

Page 11: UNIVERSITA' DEGLI STUDI DI PERUGIA DIPARTIMENTO DI ... 2016-17/Malena... · Socket.io Express Nodejs framework per realizzare applicazioni Web in JavaScript. IL PROGETTO DI PARTENZA

NODEJS E I MODULI

Node-ar-drone

Dronestream e Brodway.js

Socket.io

Express

Nodejs framework per realizzare applicazioni Web in JavaScript

Page 12: UNIVERSITA' DEGLI STUDI DI PERUGIA DIPARTIMENTO DI ... 2016-17/Malena... · Socket.io Express Nodejs framework per realizzare applicazioni Web in JavaScript. IL PROGETTO DI PARTENZA

IL PROGETTO DI PARTENZA

Page 13: UNIVERSITA' DEGLI STUDI DI PERUGIA DIPARTIMENTO DI ... 2016-17/Malena... · Socket.io Express Nodejs framework per realizzare applicazioni Web in JavaScript. IL PROGETTO DI PARTENZA

IL PROGETTO

Aggiunta dei button per il completo controllo del drone

Canvas per il Tracking del colore

Page 14: UNIVERSITA' DEGLI STUDI DI PERUGIA DIPARTIMENTO DI ... 2016-17/Malena... · Socket.io Express Nodejs framework per realizzare applicazioni Web in JavaScript. IL PROGETTO DI PARTENZA

OBIETTIVI:

Modifica dell’archittettura di rete per il controllo remoto di ardrone 2.0

Modifica delle librerie standard per la trasmissione delle immagini sul browser e per il controllo

Utilizzo di una libreria di riconoscimento dell’immagine per il volo autonomo del drone

Page 15: UNIVERSITA' DEGLI STUDI DI PERUGIA DIPARTIMENTO DI ... 2016-17/Malena... · Socket.io Express Nodejs framework per realizzare applicazioni Web in JavaScript. IL PROGETTO DI PARTENZA

TRACKING

Tracking.JS

Tracking del colore

Cascade classifier training

Prima di trovare tracking.js

Hand.js

Riconoscimento del viso

WebGL non supportato

Opencv e haar cascade file

jsfeat

Page 16: UNIVERSITA' DEGLI STUDI DI PERUGIA DIPARTIMENTO DI ... 2016-17/Malena... · Socket.io Express Nodejs framework per realizzare applicazioni Web in JavaScript. IL PROGETTO DI PARTENZA

SOLUZIONE

Si aggiunge un id al webglcanvas

Si richiama ad intervalli di pochi millisecondi la funzione copyCanvas().

Page 17: UNIVERSITA' DEGLI STUDI DI PERUGIA DIPARTIMENTO DI ... 2016-17/Malena... · Socket.io Express Nodejs framework per realizzare applicazioni Web in JavaScript. IL PROGETTO DI PARTENZA

DEMO

Autonomus ardrone

Page 18: UNIVERSITA' DEGLI STUDI DI PERUGIA DIPARTIMENTO DI ... 2016-17/Malena... · Socket.io Express Nodejs framework per realizzare applicazioni Web in JavaScript. IL PROGETTO DI PARTENZA

TRACKING

Il client si occupa della gestione della libreria per il tracking grazie alla libreria tracking.js per javascript

Il colore viene riconosciuto tramite il costruttore tracking.ColorTracker() e restituisce un oggetto(tracker) nel quale è possibile scrivere il codice da eseguire una volta riconosciuto il colore, in questo caso ciano.

Si lega il tracker ad un oggetto html (<img>, <video> e <canvas>), in questo caso <canvas>

Page 19: UNIVERSITA' DEGLI STUDI DI PERUGIA DIPARTIMENTO DI ... 2016-17/Malena... · Socket.io Express Nodejs framework per realizzare applicazioni Web in JavaScript. IL PROGETTO DI PARTENZA

APPLICAZIONI FUTURE

Parrot bepop

Compressione immagini

Modulo 3g usb

Riconoscimento forme complesse

APPLICAZIONI FUTURE

Page 20: UNIVERSITA' DEGLI STUDI DI PERUGIA DIPARTIMENTO DI ... 2016-17/Malena... · Socket.io Express Nodejs framework per realizzare applicazioni Web in JavaScript. IL PROGETTO DI PARTENZA

UNIVERSITA' DEGLI STUDI DI PERUGIA       DIPARTIMENTO DI MATEMATICA E                                              INFORMATICA Laurea Triennale in Informatica

USO DELL’INTELLIGENZA ARTIFICIALE PER IL CONTROLLO REMOTO DEL DRONE PARROT ARDRONE 2.0

ARTIFICIAL INTELLIGENCE USE FOR REMOTE CONTROL OF DRONE

PARROT ARDRONE 2.0

Autore: Relatore: Antonio Malena Prof. Stefano Bistarelli

GRAZIE A TUTTI PER L’ATTENZIONE