Negli ultimi anni l'Intelligenza Artificiale (AI – Artificial Intelligence) sta dirompendo in ogni ambito della nostra vita. È applicata in maniera proficua al marketing, alla ricerca in ambito biologico, fisico e chimico, nella sicurezza, nel trading, alla guida e in molti altri ambiti… e alla robotica!
Nel corso ci andremo ad occupare soprattutto di quest'ultima tematica, la guida autonoma (Autonomous driving).
Lo scopo del corso sarà quello di realizzare un robot che sarà in grado di seguire un percorso non prestabilito, dovrà quindi essere addestrata una Rete Neurale (Neural Network) a seguire una strada non nota a priori (lane following) che può presentare ostacoli o pericoli (obstacle detection).
Per poter acquisire le informazioni del mondo circostante il robot sarà dotato di una videocamera; le immagini così acquisite dovranno essere elaborate e modificate tramite algoritmi di Computer Vision (CV) per poter essere date come input agli algoritmi di AI.
La maggior parte degli algoritmi di AI e CV sarà sviluppata in Python, i moduli utilizzati saranno Keras, openCV, scikit, TensorFlow, matplotlib.
Per la parte di attuazione dei comandi e controllo della macchina verrà utilizzato un framework molto diffuso nell'ambito della robotica ROS (Robot Operating System) www.ros.org.
Il robot sulla quale testeremo gli algoritmi sarà una piattaforma robotica, basta su Arduino e Jetson Nano, una scheda realizzata da nVidia (si... quella che fa le schede video!) per lo sviluppo di applicazioni di intelligenza artificiale e machine learning.
Programma:
Obiettivi:
Nel programma in PDF sono riportati i principali software che verranno utilizzati durante il corso.