# Computer Vision 2018/2019

### Official course page

https://www.unive.it/data/course/255294### Moodle page (requires course enrollment)

https://moodle.unive.it/course/view.php?id=962### Weekly timetable:

Monday 12:15 - 13:45 (Aula Delta 2C)Tuesday 12:15 - 13:45 (Aula Delta 2C)

### Referral texts

- R. Szeliski. Computer Vision Algorithms and Applications. Springer
- R. C. Gonzalez e R.E. Woods. Digital Image Processing (3rd edition). Pretience Hall
- D. Forsyth, J. Ponce. Computer Vision: A Modern Approach (2nd edition). Pearson

### Course slides:

- Introduction
- Image Formation Process
- Intensity transformations
- Color vision
- Spatial filtering
- Filtering in frequency domain
- Morphological image processing
- Edge features
- Finding curves
- Point features
- Flow and tracking
- 2D Projective geometry
- 3D Projective geometry
- Pinhole camera
- Camera calibration
- Epipolar geometry

### Lab slides:

### Final Project:

Download the document with all the information needed to develop your final project for the exam. Follow the instructions inside.

*NOTE: Submission of the final project must be performed via* moodle

### Other materials:

- Lab session #1 notebook and data: chroma.zip
- FFT and template matching examples: FFT_and_templatematch.zip
- Deblurring example: deblur.zip

## > Lesson 24: April 30th

## Laboratory

- Students' seminars

## > Lesson 23: April 29th

## Laboratory

- Chessboard detection for camera calibration

## > Lesson 22: April 24th

## Final project

- Discussion about the exam

## > Lesson 21: April 23rd

## Epipolar geometry

- The Fundamental matrix: geometric and algebraic derivation
- F related to K, R and T
- Properties of the Fundamental matrix
- F produced by a pure translation
- The Essential matrix
- The 8-points algorithm
- Triangulation

## > Lesson 20: April 16th

## Camera Calibration

- Camera pose recovery
- The final non-linear optimization
- Parametrizing R with the Rodrigues formula
- Examples

## Epipolar geometry

- Reconstruction ambiguity
- Corresponding points and the epipolar plane

## > Lesson 19: April 15th

## Camera Calibration

- Calibration targets
- Basic equations and the DLT solution
- Zhang's camera calibration
- Recovering K from Homographies

## Pinhole camera model

- Radial distortion

## > Lesson 18: April 9th

## Pinhole camera model

- Camera obscura and the pinhole model
- Camera and lenses
- Equations of the pinhole camera model
- Intrinsic and extrinsic parameters
- The projection matrix
- Finite projective camera and its decomposition
- Image of points on a plane
- Homography estimation and error functions
- Vanishing points and lines

## > Lesson 17: April 8th

## 2D Projective geometry and transformations

- Conics and dual conics
- Projectivities in the 2D projective space
- Projective vs. Affine transformation
- Spatial transformations on images: forward and inverse warp
- Nearest-neighbour and bilinear interpolation

## 3D projective geometry

- Projective 3-space
- 3D planes
- Rigid motions
- Projective transformation
- The plane at infinity

## > Lesson 16: April 2nd

## Flow and tracking

- Tracking as inference problem
- Linear Kalman Filter
- Traking with Kalman filter

## 2D Projective geometry and transformations

- The 2D projective space
- Points and lines
- The duality principle
- Ideal points and line at infinity
- The projective plane

## > Lesson 15: April 1st

## Flow and tracking

- Motion field and Optical flow
- Brightness constancy equation
- The aperture problem
- Lukas-Kanade flow
- Feature-based techniques
- Linear assignment problem

## > Lesson 14: March 26th

## Point Features

- SIFT
- Feature matching

## > Lesson 13: March 25th

## Point Features

- Harris corner detector

## > Lesson 12: March 20th

## Finding Curves

- The RANSAC algorithm
- The Hough transform for lines and circles
- Line fitting examples

## > Lesson 11: March 19th

## Finding Curves

- Problem overview
- Line fitting
- Implicit curves
- Distance functions and approximations

## > Lesson 10: March 13th

## Edge features

- Features in computer vision
- Edge models
- Image gradient
- Derivatives and noise
- Marr-Hildreth edge detector
- Canny edge detector

## > Lesson 9: March 5th

## Morphological image processing

- Dilation and Erosion
- Opening and closing
- Boundary following
- Grayscale morphology

## > Lesson 8: March 4th

## Filtering in frequency domain

- Low-pass and High-pass filters
- Notch filters
- Deconvolution
- Practical examples of some filtering techniques

## > Lesson 7: February 25th

## Spatial filtering

- Sharpening filters
- Image Laplacian

## Filtering in frequency domain

- Continuous Fourier transform
- DFT
- Spectrum / Phase angle
- 2D Convolution theorem

## > Lesson 6: February 19th

## Spatial filtering

- Mechanics of spatial filtering
- Linear filters
- Correlation and convolution
- Template matching
- Smoothing spatial filters
- Min, max and median filters
- Filters and noise

## > Lesson 5: February 18th

## Laboratory session

- High vs Low level programming languages for scientific computing
- Python ecosystem
- Numpy library
- Loading images with OpenCV
- Image pixels' manipulation

## > Lesson 4: February 12th

## Color vision

- Color fundamentals
- Human vision
- Color matching
- Color models
- Color cameras
- Transformations
- Chroma keying compositing

## > Lesson 3: February 11

## Intensity transformations

- Negative
- Gain/bias
- Log/Gamma
- Image Histogram
- Histogram equalization and matching

## > Lesson 2: February 5th

## The image formation process

- Light and the visible spectrum
- The BRDF
- The imaging process
- Sampling and Quantization
- Relationships between pixels

## > Lesson 1: February 4th

## Introduction

- About this course
- What is computer vision?
- Optical illusions to understand human vision
- Computer vision vs. Computer graphics
- Computer vision applications