logo SBA

ETD

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

Tesi etd-01072024-161227


Tipo di tesi
Tesi di laurea magistrale
Autore
CAGOL, FEDERICO
Indirizzo email
f.cagol@studenti.unipi.it, fcagol95@gmail.com
URN
etd-01072024-161227
Titolo
Confronto tra strategie di deep learning per l'identificazione e la classificazione di oggetti artificiali in ambiente subacqueo
Dipartimento
INGEGNERIA DELL'INFORMAZIONE
Corso di studi
INGEGNERIA ROBOTICA E DELL'AUTOMAZIONE
Relatori
relatore Prof. Costanzi, Riccardo
correlatore Dott. Gentili, Alessandro
Parole chiave
  • YOLO
  • SSD
  • ShuffleNet
  • ResNet50
  • DenseNet201
  • VGG19
  • FasterRCNN
  • Computer Vision
  • RAMI
Data inizio appello
20/02/2024
Consultabilità
Non consultabile
Data di rilascio
20/02/2094
Riassunto
Il progetto "Metrological Evaluation and Testing of Robots in International CompetitionS" (METRICS), guidato dal Laboratorio Nazionale di Metrologie e Prove (LNE ) organizza delle gare di robotica in quattro ambiti individuati dalla Commissione Europea come prioritari: salute, agroalimentare, ispezione e manutenzione delle infrastrutture e produzione agile. Per ognuno di questi settori, sono stati indetti dei concorsi al ne di migliorare l'identificazione e controllo dei fattori di influenza, la misurazione delle condizioni ambientali (luminosità, temperatura, vento, condizioni del terreno, ecc.) e la descrizione degli ambienti di prova (oggetti da riconoscere e movimentare, disposizione degli arredi e delle pareti, database dei test, ecc.). In particolare, all'interno dell'ambito ispezione e manutenzione delle infrastrutture, la competizione RAMI (Robotics for Asset Maintenance and Inspection), monitorata
dal STO-CMRE (Science and Technology Organization Center for Maritime Research and Experimentation), mira ad affrontare compiti di manutenzione svolti da robot aerei e subacquei, in modo da aumentare la sicurezza dei lavoratori in situazioni di pericolo; tuttavia,
per rendere possibile tutto ciò, è necessario aumentare il livello di autonomia dei robot.

In questo lavoro di tesi viene analizzato nel dettaglio il confronto tra diverse tipologie di algoritmi di rilevamento e classificazione di oggetti artificiali specifici in ambiente subacqueo.
Il dataset di addestramento contenente le immagini OPI (Object of Potential Interest, ossia di potenziale interesse) è stato fornito a tutti i partecipanti alla competizione. Le immagini, raccolte direttamente in ambiente subacqueo, sono state suddivise in sei classi: boe colorate, numeri neri su tubi gialli, numeri neri su sfondo rosso, marcatori rossi su tubi gialli, console di manipolazione e immagini senza OPI.
Gli algoritmi presentati di seguito, sono stati sviluppati seguendo alcuni passaggi.
In primo luogo, è stato applicato un algoritmo di correzione del colore al fine di ripristinare i colori originali degli oggetti e dello sfondo. È stato così definito un dataset espanso contenente sia immagini corrette che immagini originali. Dopodiché è stato suddiviso in tre sotto dataset: Training (70%), Validation (20%) e Test (10%), a seconda dell'utilizzo.
In secondo luogo, sono state allenate diverse reti neurali convoluzionali (CNN) con lo scopo di verificare le caratteristiche di classificazione di ognuna, utilizzando il transfer learning, in cui un modello preaddestrato su un'attività viene messo a punto per una nuova attività correlata (tutte le reti sono state allenate sul dataset ImageNet e sono in grado di classificare fino a 1000 classi differenti). Al fine di rendere confrontabili i risultati ottenuti, ogni rete CNN è stata allenata con gli stessi parametri (dataset Training, dimensione del mini-batch, risoluzione dell'immagine in ingresso, ecc.) e con alcune tecniche di augmentation (per migliorarne la variabilità).
La rete neurale che ha ottenuto l'accuratezza migliore (99.1%) in fase di classificazione è risultata essere la ResNet50.
Infine, sono stati selezionati alcuni rilevatori di oggetti, tra i quali il fasterRCNN, l'SSD e tre versioni del YOLO, in modo da ottenere un confronto sulle prestazioni e sulla precisione di rilevamento tramite la metrica mAP.
Le procedure esposte, sono state, inoltre, sviluppate in due linguaggi di programmazione differenti: Matlab e Python. In questo modo, è stato possibile verificare ulteriormente i risultati ottenuti ed evidenziare i limiti di ogni linguaggio: in Matlab si sono utilizzati
diversi toolkit predefiniti, sia per l'etichettatura delle immagini, sia per l'addestramento di reti neurali e rilevatori di oggetti; in Python, invece, si sono modificate due repository GitHub già implementate come codice di partenza. In entrambi i casi, è richiesto un utilizzo imponente di memoria grafica e RAM: per le simulazioni, è stata utilizzata una scheda grafica NVidia GeForce RTX3070 con 8 GB di memoria grafica e 16 GB di memoria RAM.
I migliori rilevatori ottenuti dall'ambiente Matlab e Python sono rispettivamente il fasterRCNN con backbone la rete neurale VGG19 (con mAP = 92.033%, e velocità di rilevazione 18.95 fps) e lo YOLOv5 con backbone CSP-DarkNet53 (con mAP = 93.732% e velocità di rilevazione pari a 28.5 fps).
File