Panoramica

Annunci

  • [02/03/2022] Questo è il sito web dell’edizione 2021-2022 del corso. Le edizioni precedenti sono disponibili al ai link 2020 e 2021.

Breve descrizione del corso

Il corso è finalizzato ad acquisire e sperimentare le tecniche di base per l’analisi di immagini e video. Verranno illustrati i concetti fondamentali per l’analisi delle immagini e verranno illustrate le principali tecniche di object detection, object tracking e action detection. Durante il corso saranno presentati modelli di reti neurali CNN e RNN, tecniche di transfer learning, Residual and Attention network ed una introduzione ai modelli generativi e alle Adversarial networks. Gli esempi applicativi faranno uso del linguaggio Python e dei framework di Deep Learning Pytorch/Tensorflow.

Competenze specifiche:

  • comprensione dei concetti legati all’image e al video processing
  • conoscenza degli aspetti caratterizzanti di machine learning e deep learning
  • comprensione delle principali tecniche per l’analisi di immagini e video
  • abilità di utilizzare algoritmi di image analysis per la risoluzione di problemi specifici

Docenti

  • Giuseppe Manco. Ricevimento: mercoledì’ 14:30-16:30.
  • Francesco Pisani. Rivevimento lunedì 15-17.

Programma

  1. Introduzione alla computer vision
    • Concetti fondamentali su Image processing e analysis: Image Basics, Python per Image Processing, Manipolazione di immagini.
    • Trasformazioni: Normalizzazione, filtri, Edge detection, morfologia, thresholding e segmentazione.
  2. Classificazione di immagini e video
    • Introduzione alla classificazione: applicazioni; approcci classici; scikit-Learn per la classificazione; limitazioni.
    • Deep Learning: Review su Neural Networks per l’analisi di immagini e video. Convolutional Neural Networks. Reti ricorrenti. Gestione dell’overfitting.
    • Concetti avanzati. Principali architetture di rete e loro caratteristiche: VGG, AlexNet, Inception and Residual Networks, Attention Networks. Transfer Learning.
  3. Concetti avanzati
    • Object Detection: Sliding windows, boundary boxes e anchors. Region Proposal Networks. Yolo e Darknet. Applicazioni.
    • Object tracking e action recognition. Optical flow; Single/multiple objects tracking; Action classification and localization.
    • Image segmentation e synthesis. UNet. Neural style transfer.
    • Modelli Generativi: Probabilistic Modeling, Autoencoders. Generative Adversarial Networks. Applicazioni: Colorization, Reconstruction, Super-Resolution, Synthesis, Text-to-image.
    • Adversarial Machine Learning. Principali attacchi e contromisure. Adversarial-free deep networks.

Materiale didattico

  • Lucidi delle lezioni
  • Notebooks e lucidi delle esercitazioni
  • Libri di consultazione:
    • E.R. Davies, Computer Vision: Principles, Algorithms, Applications, Learning. Fifth edition. Elsevier/Academic Press, 2018 [Davies18]
    • Jan Erik Solem, Programming Computer Vision with Python. O’Reilly Media, 2012. [Solem12]
    • Mohamed Elgendy, Deep Learning for Vision Systems. Manning, 2020. [Elg20]
    • Rafael C. Gonzalez, Richard E. Woods, Digital image processing. 4th edition. Pearson, 2018. [Gon18]
    • Richard Szeliski, Computer Vision: Algorithms and Applications. Springer, 2022. [Sze22]
    • Jason M.Kinser, Image operators: image processing in Python. CRC Press, 2019. [Kin19]

Sillabo delle lezioni

Lezione Argomenti Materiale didattico Data
1 Introduzione al corso. Image fundamentals Slides, notebook 02/03/2022
2 Image processing. Filtri Slides, notebooks 03/03/2022
3 Laboratorio: Python e image processing Slides, notebooks 09/03/2022
4 FFT. Trasformazioni e filtri Slides, notebooks 10/03/2022
5 Edge detection. Canny Edge Detector Slides, notebooks 16/03/2022
6 Introduzione alla classificazione. Features: Harry’s corner detection Slides, notebooks 17/03/2022
7 Laboratorio: Edge detection. Hough Transform Slides, notebooks 23/03/2022
8 Feature modeling. SIFT. Slides, notebooks 24/03/2022
9 Reti Neurali. Convoluzione. Slides, notebooks 30/03/2022, 31/03/2022
10 Architetture Convoluzionali. Slides, notebooks 06/04/2022
11 Object Detection. Multi-shot detection. Slides, notebooks 07/04/2022
12 Backpropagation e architetture convolutionali. Saliency maps e activation maps. Slides, notebooks 13/04/2022
13 Batch normalization e transfer learning Slides, notebooks 20/04/2022
14 Single-Shot Object detection. Activity recognition Slides, notebooks 21/04/2022
15 Segmentation Slides, notebooks 27/04/2022, 28/04/2022
16 Segmentation Slides, notebooks 04/05/2022
17 Optical flow. Depth estimation Slides, notebooks 05/05/2022
18 Generative models: Variational Autoencoders, GAN Slides, notebooks 11/05/2022, 18/05/2022, 19/05/2022
20 Seminari 25/05/2022
21 Presentazione progetto Slides, notebooks 26/05/2022