Vinaora Nivo Slider 3.xVinaora Nivo Slider 3.xVinaora Nivo Slider 3.xVinaora Nivo Slider 3.xVinaora Nivo Slider 3.xVinaora Nivo Slider 3.x

IMAGE PROCESSING FOR COMPUTER VISION

SCHEDA DELL'INSEGNAMENTO (SI)
SSD ING-INF/03

 

LAUREA MAGISTRALE IN INGEGNERIA INFORMATICA

ANNO ACCADEMICO: 2022-2023

 

INFORMAZIONI GENERALI - DOCENTE

DOCENTE: GIUSEPPE SCARPA
TELEFONO: 0817683768
EMAIL: Questo indirizzo email è protetto dagli spambots. È necessario abilitare JavaScript per vederlo.

 

INFORMAZIONI GENERALI - ATTIVITÀ

INSEGNAMENTO INTEGRATO (EVENTUALE): 
MODULO (EVENTUALE):
CANALE (EVENTUALE):
ANNO DI CORSO (I, II, III): II
SEMESTRE (I, II): II
CFU: 9

 

INSEGNAMENTI PROPEDEUTICI

(se previsti dall'Ordinamento del CdS)

...................................................................................................................................................

 

EVENTUALI PREREQUISITI

Teoria dei Segnali

 

OBIETTIVI FORMATIVI

L’insegnamento si propone di fornire agli studenti nozioni approfondite sullo sviluppo e l’applicazione di tecniche di elaborazione delle immagini per la soluzione di tipici problemi di computer vision, spaziando da metodi tradizionali per l’elaborazione dei segnali, cioè orientati alla modellizzazione, ad approcci moderni basati su reti neurali convoluzionali. Specifici problemi di computer vision considerati quali obiettivi formativi del corso sono la rivelazione, caratterizzazione ed il matching di feature locali, il fitting e l’allineamento di modelli geometrici, la classificazione di immagini, la segmentazione semantica o per istanze di immagini, la rivelazione, localizzazione ed il riconoscimento degli oggetti, la stima della posa, la stima della profondità, la corrispondenza stereo, la ricostruzione 3D da viste multiple.

 

RISULTATI DI APPRENDIMENTO ATTESI

(Descrittori di Dublino)

Conoscenza e capacità di comprensione
Lo studente dovrà conoscere sia tecniche di filtraggio classiche che approcci basati su moderne reti neurali convoluzionali per la soluzione di problemi di visione computazionale quali la rivelazione, descrizione ed il matching di feature locali, il fitting e l’allineamento di modelli geometrici, la classificazione di immagini, la segmentazione semantica o per istanze, la rivelazione, localizzazione e riconoscimento di oggetti, la stima della posa, la stima della profondità, la corrispondenza stereo, la ricostruzione 3D da viste multiple, dalla prospettiva dell’elaborazione dei segnali. Per i problemi elencati lo studente dovrà altresì conoscere le metriche o gli indici prestazionali utili alla valutazione delle possibili soluzioni.

Capacità di applicare conoscenza e comprensione
Lo studente deve acquisire la capacità di progettare, sviluppare e testare algoritmi di elaborazione delle immagini allo stato dell’arte finalizzati alla risoluzione di comuni problemi di visione computazionale, tra cui la rivelazione, descrizione ed il matching di feature locali, il fitting e l’allineamento di modelli geometrici, la classificazione di immagini, la segmentazione semantica o per istanze, la rivelazione, localizzazione e riconoscimento di oggetti, la stima della posa, la stima della profondità, la corrispondenza stereo, la ricostruzione 3D da viste multiple.

 

PROGRAMMA-SYLLABUS

Richiami sul filtraggio delle immagini. Dominio spazio-scala e decomposizione piramidale. Richiami sugli ambienti di programmazione per lo sviluppo di algoritmi di computer vision.
Formazione dell'immagine: La luce e il colore. Il modello pinhole camera. La proiezione del mondo 3D nel piano dell’immagine: matrice di proiezione della camera e calibrazione della camera. Trasformazioni geometriche di tipo proiettivo.
Early vision: Rivelazione dei contorni; segmentazione mediante trasformata watershed; template matching e descrizione tessiturale; rivelazione di angoli (Harris detector) e linee (trasformata di Hough).
Rivelazione e descrizione di keypoint: Definizione di keypoint e proprietà di ripetitività. Proprietà di invarianza dei rivelatori rispetto ad illuminazione, traslazione, rotazione, scala, trasformazioni affini e omografie. Rivelatore di Harris. Differenza di gaussiane (DoG). Piramide di DoG. Orientazione e scala di un keypoint. Descrittori di feature: proprietà discriminative; descrittori di comune impiego (SIFT, SURF, MSER,...); descrittori di forma e contesto.
Matching, fitting ed allineamento: Matching di feature mediante criterio del rapporto delle distanze. Fitting ed allineamento: metodo dei minimi quadrati lineare o robusto; algoritmo ICP; trasformata di Hough generalizzata; algoritmo RANSAC. Rivelazione, riconoscimento e classificazione.
Elaborazione delle immagini mediante reti neurali convoluzionali (CNN): Architetture convoluzionali per l'elaborazione delle immagini. Addestramento di CNN per l’elaborazione delle immagini: backpropagation e algoritmo di ottimizzazione SGD (e varianti). Moduli (layer) di comune impiego: convoluzione, pooling, unpooling, batch normalization, funzioni di attivazione (ReLU e sue varianti, Tanh, sigmoide). Funzioni di costo per l'elaborazione delle immagini. Dropout e data augmentation. Modelli CNN per super-risoluzione, classificazione, segmentazione, rivelazione e localizzazione di oggetti, stima della profondità, stima della posa.
Visione multi-view: Visione stereo: disparità e profondità. Vincoli epipolari; matrice essenziale e matrice fondamentale. Problemi di corrispondenza densi. Ricostruzione 3D da multi-view: Structure from Motion (SfM).

 

MATERIALE DIDATTICO

• R. Szeliski, “Computer vision: algorithms and applications”, Springer 2010.
• R.-I. Hartley, A. Zisserman, “Multiple View Geometry in Computer Vision”, C. U. P., 2nd Ed., 2004.
• I. Goodfellow, et al., “Deep Learning”, MIT Press, 2017.
• Dispense del docente.

 

MODALITÀ DI SVOLGIMENTO DELL'INSEGNAMENTO

Il corso prevede sia lezioni frontali (circa il 60% del totale) che attività di laboratorio. Sono tra l’altro previsti tutorial introduttivi sia sul linguaggio di programmazione Python e gli annessi toolbox per il deep learning che sull’uso di piattaforme di calcolo in cloud funzionali agli obiettivi del corso. Parte delle ore di laboratorio saranno dedicate allo sviluppo in itinere, con tutoraggio, dei progetti degli studenti ai fini della valutazione finale.

 

VERIFICA DI APPRENDIMENTO E CRITERI DI VALUTAZIONE

a) Modalità di esame:

L'esame si articola in prova:
 Scritta e orale  
 Solo scritta o intercorso a metà  
 Solo orale  
 Discussione di elaborato progettuale   
 Altro

 

In caso di prova scritta i quesiti sono (*):
 A risposta multipla  
 A risposta libera  
 Esercizi numerici  

 

L’esame prevede la presentazione di un progetto svolto individualmente o in gruppo, con relativa discussione, ed un colloquio generale sui contenuti del corso. Il progetto è di norma sviluppato in itinere e presentato al termine del corso in un workshop di chiusura, mentre il colloquio può tenersi in qualsiasi appello dell’a.a. corrente senza vincoli temporali.

 

Utilizziamo i cookie sul nostro sito Web. Alcuni di essi sono essenziali per il funzionamento del sito, mentre altri ci aiutano a migliorare questo sito e l'esperienza dell'utente (cookie di tracciamento). Puoi decidere tu stesso se consentire o meno i cookie. Ti preghiamo di notare che se li rifiuti, potresti non essere in grado di utilizzare tutte le funzionalità del sito.