Università degli Studi di Napoli "Parthenope"

Scheda dell'insegnamento

Anno accademico: 
2016/2017
Tipologia di insegnamento: 
Caratterizzante
Tipo di attività: 
Obbligatorio
Corso di afferenza: 
Corso di Laurea triennale (DM 270) in INFORMATICA
Settore disciplinare: 
INFORMATICA (INF/01)
Lingua: 
Italiano
Crediti: 
6
Anno di corso: 
3
Docenti: 
Ciclo: 
Secondo Semestre
Ore di attivita' frontale: 
48

Obiettivi

L'obiettivo è di fornire strumenti concettuali e algoritmi di base per l’identificazione di elementi di interesse in immagini di scene reali, nonché metodi di elaborazione più sofisticati per l'estrazione di informazione da sequenze di immagini e tecniche introduttive di visione artificiale.

Conoscenza e capacità di comprensione: Lo studente deve dimostrare di conoscere e saper comprendere i fondamenti della gestione delle immagini digitali e delle implementazioni delle soluzioni algoritmiche efficienti per la manipolazione ed estrazione della informazione in esse contenuto.

Capacità di applicare conoscenza e comprensione: Lo studente deve dimostrare di saper utilizzare la propria conoscenza acquisita per risolvere problemi reali su immagini reali. Inoltre, deve dimostrare di possedere competenze adeguate a formulare ed argomentare soluzioni originali a casi di studio reali.

Autonomia di giudizio: Lo studente deve essere in grado di valutare in maniera autonoma i risultati della letteratura scientifica e delle soluzioni commerciali proposte nel campo dell’elaborazione delle immagini e video digitali.

Abilità comunicative: Lo studente deve essere in grado di argomentare con rigore scientifico e terminologia appropriata gli approcci e gli algoritmi noti nel settore. Deve essere in grado di catturare gli aspetti chiave delle soluzioni proposte in letteratura e saperne illustrare sinteticamente il funzionamento.

Capacità di apprendimento: Lo studente deve essere in grado di aggiornarsi e approfondire in modo autonomo argomenti e applicazioni specifiche nel campo dell’elaborazione delle immagini digitali in contesti di studio vari e diversificati.

Prerequisiti

E’ richiesta una buona conoscenza della programmazione di tipo procedurale e delle strutture dati elementari, con particolare riguardo al linguaggio di programmazione C/C++. Pertanto, la conoscenza dei corsi di Programmazione I e Programmazione II è richiesta per il sostenimento dell’esame e si ritiene già posseduta dallo studente.
E’ altresì richiesta una conoscenza basilare dell’algebra lineare, con riferimento specifico ai vettori e alle matrici e alle operazioni algebriche impiegate per la loro manipolazione. Tali concetti si ritengono già possedute dallo studente e nessuna lezione del corso verrà dedicata a tali concetti.

Contenuti

Il corso è basato sul concetto di immagine digitale e quindi sull’acquisizione e digitalizzazione della scena osservata. Da qui si illustra un’ampia collezione di algoritmi per la stereopsi, l’analisi dei contorni, la segmentazione di oggetti fino alle sequenze video e l’analisi del movimento.

Metodi didattici

L’insegnamento è strutturato in 48 ore di didattica frontale, organizzate in lezioni da 2 ore scandite dal calendario accademico. La didattica frontale consiste in lezioni teoriche ed esercitazioni pratiche tenute dal docente sugli argomenti previsti dal corso. Le lezioni teoriche hanno l’obiettivo di trasmettere allo studente la conoscenza degli algoritmi per l’elaborazione delle immagini nonché delle nozioni tecniche e scientifiche utili alla comprensione e all’implementazione di questi ultimi. Durante l’insegnamento sono proposte agli studenti delle lezioni pratiche che si svolgono in modo collettivo in aula e che propongono dei quesiti ed esercizi volti a verificare la comprensione degli argomenti trattati. Lo svolgimento degli esercizi proposti dal docente permette di verificare l’applicazione pratica degli argomenti visti a livello teorico e la capacità degli studenti di proporre implementazioni alternative.
E’ consigliata la frequenza costante del corso che è tuttavia facoltativa. Le prove di esame saranno uguali per tutti gli studenti, frequentanti e non.

Verifica dell'apprendimento

L’esame consiste in una prova scritta composta da una parte pratica ed una teorica.

Non è previsto alcuna prova orale, ma solo una prova scritta alla quale viene dato il voto unico. La prova scritta, che si tiene in laboratorio, consiste di 4 domande:

- la prima richiede l'implementazione di un algoritmo di Elaborazione delle Immagini. A tale proposito sono insegnati durante il corso vari algoritmi di Elborazione delle immagini e per alcuni di essi mostrata l'implementazione in OpenCV. Queste implementazioni - e solo queste - sono oggetto di esame. E' una scelta pertanto casuale tra 13 codici. La lista, già indicata durante il corso, è di seguito riportata. Oggetto della valutazione sono la conoscenza e la capacità dello studente di implementare l’algoritmo richiesto e la qualità dell’output prodotto. La valutazione si arricchisce di ulteriori elementi riguardanti la capacità di programmazione, l’originalità della soluzione proposta e l’impiego di strutture dati.

ALGORITMI

1) Hough per rette
2) Hough per cerchi
3) Canny Edge detector
4) Harris Corner Detector
5) Distance Transform
6) Background Subtraction
7) Optical Flow
8) Region Growing
9) Split-and-merge
10) K-means clustering
11) Meng-Hee Hang clustering
12) Isodata clustering
13) Ohlander clustering

Per completezza, si elencano anche gli strumenti di processing di base che si acquisiscono durante il corso, non oggetto diretto della prima traccia, ma utili comunque alla preparazione complessiva: Roberts/Sobel/Prewitt; Smoothing Filters; Sharpening Filters; Histogram Equalization; Erode/Dilate; Distance/Similarity measure; Color conversions.

La prima domanda prevede un punteggio max di 15.

- le altre 3 sono domande di teoria. Sono domande che tipicamente si farebbero all'orale, ma per le quali si richiede una risposta scritta. Lo studente deve descrivere (e non implementare) - algoritmi spiegati durante il corso. Ogni domanda prevede il punteggio max di 5.

Lo studente ha 4 ore per svolgere la prova. La prova si intende superata se si consegue un punteggio pari a 7/15 del primo esercizio e con il punteggio complessivo pari a 18. Necessario al superamento dell’esame è un corretto utilizzo della terminologia e una chiara e sintetica esposizione scritta che esponga i collegamenti logici tra gli aspetti considerati.

Testi

[1] FORSYTH D.A, PONCE J., “Computer Vision - a Modern Approach”, Pearson, 2011.
[2] GONZALEZ R., WOODS R., "Digital Image Processing", 3rd ed, Prentice Hall, 2008.
[3] TRUCCO E., VERRI A., “Introductory techniques for 3-D computer vision”, Prentice Hall, 1998.
[4] RADKE R. J., “Computer Vision for Visual Effects”, Cambridge Press, 2012
[4] Lezioni e-learning.

Altre informazioni

Il materiale didattico, in lingua inglese, è accessibile in modalità e-learning al link http://e-scienzeetecnologie.uniparthenope.it. Per fruire dei contenuti pubblicati sulla piattaforma, lo studente deve essere regolarmente registrato ed iscritto al corso.
I ricevimenti sono da concordare con il docente tramite email.