ARTIFICIAL VISION

Ingegneria Informatica ARTIFICIAL VISION

0622700045
DIPARTIMENTO DI INGEGNERIA DELL'INFORMAZIONE ED ELETTRICA E MATEMATICA APPLICATA
EQF7
COMPUTER ENGINEERING
2022/2023



OBBLIGATORIO
YEAR OF COURSE 2
YEAR OF DIDACTIC SYSTEM 2017
AUTUMN SEMESTER
CFUHOURSACTIVITY
324LESSONS
324LAB
Objectives
L’INSEGNAMENTO MIRA ALL’ACQUISIZIONE DI COMPETENZE SULLE PRINCIPALI METODOLOGIE E TECNICHE IMPIEGATE PER REALIZZARE UN SISTEMA DI VISIONE ARTIFICIALE.

CONOSCENZE E CAPACITÀ DI COMPRENSIONE
ARCHITETTURA DI UN SISTEMA DI VISIONE ARTIFICIALE. ACQUISIZIONE DI IMMAGINI, OTTICHE E SENSORI. SISTEMI DI ACQUISIZIONE 2D E VISIONE BINOCULARE. CENNI ALLE TECNICHE DI LOW LEVEL PROCESSING (FILTRI LINEARI, OPERATORI MORFOLOGICI) E INTERMEDIATE LEVEL PROCESSING (SEGMENTAZIONE, EDGE DETECTION). APPROCCI TRADIZIONALI O BASATI SU DEEP LEARNING PER RICONOSCIMENTO DI OGGETTI E PER ANALISI DEI VOLTI. ANALISI DI VIDEO: TECNICHE DI INSEGUIMENTO DI SINGOLI OGGETTI DA TELECAMERA MOBILE, TECNICHE DI INSEGUIMENTO DI PIÙ OGGETTI DA TELECAMERA FISSA.

CONOSCENZA E CAPACITÀ DI COMPRENSIONE APPLICATE
DIMENSIONARE IL SISTEMA DI ACQUISIZIONE DELLE IMMAGINI E/O DEI VIDEO RISPETTO ALLE SPECIFICHE DEL PROBLEMA. PROGETTARE ED IMPLEMENTARE UN SISTEMA DI VISIONE ARTIFICIALE PER L’INTERPRETAZIONE DI IMMAGINI E/O VIDEO USANDO FUNZIONI DI LIBRERIA PER LA VISIONE ARTIFICIALE (OPENCV) INTEGRANDOLE CON TECNICHE DI MACHINE LEARNING.
Prerequisites
PER IL PROFICUO RAGGIUNGIMENTO DEGLI OBIETTIVI PREFISSATI È RICHIESTA LA CONOSCENZA DEL LINGUAGGIO PYTHON E DEI PRINCIPALI FRAMEWORK PER IL MACHINE LEARNING ED IL DEEP LEARNING QUALI KERAS E TENSORFLOW.
Contents
Unità didattica 1: Architettura dei sistemi di visione artificiale
(ORE LEZIONE/ESERCITAZIONE/LABORATORIO 4/0/0)
- 1 (2 ORE Lezione): Introduzione al corso. Introduzione storica ai sistemi di visione artificiale.
- 2 (2 ORE Lezione): Architettura di un sistema di visione artificiale e fasi del processo di elaborazione
CONOSCENZE E CAPACITÀ DI COMPRENSIONE: Architettura generale di un sistema di visione artificiale
CONOSCENZE E CAPACITÀ DI COMPRENSIONE APPLICATE: Riconoscere i diversi componenti e stadi di elaborazione di un sistema di visione artificiale.

Unità didattica 2: Acquisizione, rappresentazione e preprocessing delle immagini
(ORE LEZIONE/ESERCITAZIONE/LABORATORIO 10/6/0)
- 3 (2 ORE Lezione): Architettura di un sistema di acquisizione di immagini. Ottica: modelli pinhole e lente sottile. Concetti chiave: lunghezza focale, angolo di campo, profondità di campo, apertura, esposizione.
- 4 (2 ORE Lezione): Tipi di sensori: visibile, infrarosso, termico. Elementi di imaging di profondità.
- 5 (2 ORE Esercitazione): Metodi e strumenti per la progettazione di un sistema di acquisizione di telecamere in uno scenario reale. Discussione di un esempio
- 6 (2 ORE Lezione): Rappresentazione dell'immagine. Spazi colore: RGB e HSV. Temperatura di colore.
- 7 (2 ORE Esercitazione): Introduzione a OpenCV. Operazioni di base con le immagini: caricamento da/salvataggio su file, acquisizione e visualizzazione di immagini/video
- 8 (2 ORE Lezione): Thresholding. Filtri passa-basso. Filtri passa-alto. Operatori morfologici.
- 9 (2 ORE Lezione): Algoritmo di rilevamento dei bordi di Canny. Etichettatura delle componenti connesse.
- 10 (2 ORE Esercitazione): Presentazione e discussione di una pipeline basata su fasi di elaborazione di livello basso e livello intermedio per affrontare un problema reale di visione artificiale.
CONOSCENZE E CAPACITÀ DI COMPRENSIONE: Parametri principali di un sistema di acquisizione di immagini. Principali tecniche di pre-elaborazione delle immagini, ambiti di applicazioni, vantaggi e limiti. Libreria software OpenCV per la visione artificiale.
CONOSCENZE E CAPACITÀ DI COMPRENSIONE APPLICATE: Individuare il sistema di acquisizione delle immagini a partire dalle specifiche relative alla distanza degli oggetti da analizzare, dell'area di inquadrare, della risoluzione minima. Individuare le tecniche di pre-elaborazione e di regionalizzazione delle immagine più adeguate per lo specifico problema di visione artificiale.

Unità didattica 3: Individuazione e riconoscimento di oggetti
(ORE LEZIONE/ESERCITAZIONE/LABORATORIO 10/4/0)
- 11 (2 ORE Lezione): RILEVAMENTO E RICONOSCIMENTO DI OGGETTI CON APPROCCI TRADIZIONALI: ALGORITMO DI VIOLA JONES
- 12 (2 ORE Lezione): Object detection mediante approcci basati sul deep learning
- 13 (2 ORE Esercitazione): IMPLEMENTAZIONE SOFTWARE DI UN SISTEMA DI OBJECT DETECTION
- 14 (2 ORE Lezione): ALGORITMI DI ANALISI DEI VOLTI: ESTRAZIONE DEI PUNTI FIDUCIALI PER NORMALIZZAZIONE DEI VOLTI
- 15 (2 ORE Lezione): Principal Component Analysis per il riconoscimento di volti
- 16 (2 ORE Lezione): RILEVAMENTO, VERIFICA E RICONOSCIMENTO DI VOLTI
- 17 (2 ORE Esercitazione): SOFT BIOMETRICS (CARATTERIZZAZIONE ETA', SESSO, ETNIA, STATO EMOTIVO)
CONOSCENZE E CAPACITÀ DI COMPRENSIONE: Rilevamento e riconoscimento di oggetti mediante tecniche di machine learning tradizionale e con tecniche di deep learning. Approfondimento rispetto al problema dell'analisi dei volti umani.
CONOSCENZE E CAPACITÀ DI COMPRENSIONE APPLICATE: Applicare tecniche di machine learning tradizionale e deep learning per la realizzazione di un sistema di rilevamento e riconoscimento di oggetti. Usare le tecniche di basso e medio livello per la preparazione dei dati per le fasi di addestramento del sistema di machine learning. Valutare le performance del sistema implementato.

Unità didattica 4: INTERPRETAZIONE AUTOMATICA DI VIDEO
(ORE LEZIONE/ESERCITAZIONE/LABORATORIO 6/0/0)
- 18 (2 ORE Lezione): TECNICHE PER L'INSEGUIMENTO DI SINGOLI OGGETTI IN MOVIMENTO DA TELECAMERA FISSA O MOBILE
- 19 (2 ORE Lezione): TECNICHE PER L'INSEGUIMENTO DI PIU' OGGETTI IN MOVIMENTO DA TELECAMERA FISSA MEDIANTE SOTTRAZIONE E AGGIORNAMENTO DEL BACKGROUND
- 20 (2 ORE Lezione): Presentazione di applicazioni commerciali per la visione artificiale
CONOSCENZE E CAPACITÀ DI COMPRENSIONE: Tecniche di analisi di sequenze video. Mantenimento ed aggiornamento del background. Tracciamento degli oggetti di interesse da telecamere fisse e mobili.
CONOSCENZE E CAPACITÀ DI COMPRENSIONE APPLICATE: Progettare ed implementare un sistema di visione artificiale per l'analisi di flussi video usando gli algoritmi già disponibili nella libreria OpenCV.

Unità didattica 5: PROJECT WORK
(ORE LEZIONE/ESERCITAZIONE/LABORATORIO 0/0/8)
- 21 (2 ORE Laboratorio): Presentazione progetto finale del corso
- 22 (2 ORE Laboratorio): Implementazione progetto finale del corso
- 23 (2 ORE Laboratorio): Implementazione progetto finale del corso
- 24 (2 ORE Laboratorio): Implementazione progetto finale del corso
CONOSCENZE E CAPACITÀ DI COMPRENSIONE: -
CONOSCENZE E CAPACITÀ DI COMPRENSIONE APPLICATE: Progettare ed implementare un sistema di visione artificiale completo sfruttando tecniche di machine learning tradizionale e di deep learning.

TOTALE ORE LEZIONE/ESERCITAZIONE/LABORATORIO 30/10/8
Teaching Methods
L’INSEGNAMENTO CONTEMPLA LEZIONI TEORICHE, ESERCITAZIONI IN AULA ED ESERCITAZIONI PRATICHE DI LABORATORIO. NELLE ESERCITAZIONI IN AULA VENGONO ASSEGNATI AGLI STUDENTI, SIA INDIVIDUALMENTE CHE DIVISI PER GRUPPI DI LAVORO, DEI PROGETTO DA SVILUPPARE UTILIZZANDO I CONTENUTI DELL’INSEGNAMENTO. I PROGETTI SONO STRUMENTALI, OLTRE ALL’ACQUISIZIONE DELLE COMPETENZE E ABILITÀ SUI CONTENUTI DELL’INSEGNAMENTO, ANCHE A SVILUPPARE E RAFFORZARE LE CAPACITÀ DI LAVORARE IN TEAM. NELLE ESERCITAZIONI IN LABORATORIO GLI STUDENTI IMPLEMENTANO I PROGETTI ASSEGNATO UTILIZZANDO LA LIBRERIA OPENCV.

PER POTER SOSTENERE LA VERIFICA FINALE DEL PROFITTO E CONSEGUIRE I CFU RELATIVI ALL’ATTIVITÀ FORMATIVA, LO STUDENTE DOVRÀ AVERE FREQUENTATO ALMENO IL 70% DELLE ORE PREVISTE DI ATTIVITÀ DIDATTICA ASSISTITA.
Verification of learning
LA PROVA DI ESAME È FINALIZZATA A VALUTARE NEL SUO COMPLESSO: LA CONOSCENZA E LA CAPACITÀ DI COMPRENSIONE DEI CONCETTI PRESENTATI AL CORSO; LA CAPACITÀ DI APPLICARE TALI CONOSCENZE PER LA RISOLUZIONE DI PROBLEMI DI PROGRAMMAZIONE CHE RICHIEDONO L’USO DI TECNICHE DI VISIONE ARTIFICIALE; L’AUTONOMIA DI GIUDIZIO, LE ABILITÀ COMUNICATIVE E LA CAPACITÀ DI APPRENDERE.

LA PROVA SI ARTICOLA IN DUE FASI: UNA PRIMA CONSISTE IN UN COLLOQUIO ORALE E NELLA DISCUSSIONE DEI MID TERM PROJECTS SVOLTI DURANTE IL CORSO.
UNA SECONDA FASE PREVEDE LA REALIZZAZIONE DI UN FINAL TERM PROJECT: GLI STUDENTI, DIVISI IN TEAM, DEVONO REALIZZARE UN SISTEMA FINALIZZATO AD UNA COMPETIZIONE TRA I VARI TEAM. SONO OGGETTO DI VALUTAZIONE LE SCELTE PROGETTUALI E METODOLOGICHE EFFETTUATE, INSIEME CON IL RISULTATO OTTENUTO DAL TEAM DURANTE LA COMPETIZIONE.
LO SCOPO E’ QUELLO DI VALUTARE LE CONOSCENZE E LE CAPACITÀ DI COMPRENSIONE ACQUISITE, LA CAPACITÀ DI APPLICARE LE CONOSCENZE, L’AUTONOMIA DI GIUDIZIO E LA CAPACITÀ DI LAVORARE IN GRUPPO.


NELLA VALUTAZIONE FINALE, ESPRESSA IN TRENTESIMI, LA VALUTAZIONE DEI MID TERM PROJECTS E DEL COLLOQUIO ORALE PESERÀ PER IL 40%, MENTRE IL FINAL TERM PROJECT PESERÀ PER IL 60%. LA LODE POTRÀ ESSERE ATTRIBUITA AGLI STUDENTI CHE DIMOSTRINO DI SAPER APPLICARE LE CONOSCENZE ACQUISITE CON AUTONOMIA ANCHE IN CONTESTI DIVERSI DA QUELLI PROPOSTI NEL CORSO
Texts
DISPENSE FORNITE DAI DOCENTI.

SZELISKI. “COMPUTER VISION: ALGORITHMS AND APPLICATIONS”, SPRINGER
M. SONKA, V. HLAVAC, R. BOYLE: "IMAGE PROCESSING, ANALYSIS AND MACHINE VISION", CHAPMAN & HALL.

IL MATERIALE DIDATTICO SARà DISPONIBILE NELLA SEZIONE DEDICATA DELL'INSEGNAMENTO ALL'INTERNO DELLA PIATTAFORMA E-LEARNING DI ATENEO (HTTP://ELEARNING.UNISA.IT) ACCESSIBILE AGLI STUDENTI DEL CORSO TRAMITE LE CREDENZIALI UNICHE DI ATENEO
More Information
IL CORSO E' TENUTO IN INGLESE
  BETA VERSION Data source ESSE3 [Ultima Sincronizzazione: 2022-09-16]