ETH Zurich - D-INFK - IVC - CVG - Lectures - Computer Vision

Computer Vision


Course Information

Instructors: Marc Pollefeys, Luc Van Gool
Teaching assistants: Marc Pollefeys's Part:
Federico Camposeco, Bastien Jacquet.
Luc Van Gool's Part:
Taha Koltukluoglu, Danfeng Qin.
Lectures: Wednesdays from 13:15-16:00 in CHN C 14
Exercises: Thursdays from 13:15-15:00 in HG G 26.1
Exercises: Thursdays from 15:00-17:00 in HG G 26.1

Computer Vision (following Tomaso Poggio, MIT): Computer Vision, formerly an almost esoteric corner of research and regarded as a field of research still in its infancy, has emerged to a key discipline in computer science. Vision companies have emerged and commercial applications become available, ranging from industrial inspection and measurements to security database search, surveillance, multimedia and computer interfaces. Computer Vision is still far from being a solved problem, and most exciting developments, discoveries and applications still lie ahead of us. Understanding the principles of vision has implications far beyond engineering, since visual perception is one of the key modules of human intelligence.

Course Objectives

The objectives of this course are:
1.To introduce the fundamental problems of computer vision.
2.To introduce the main concepts and techniques used to solve those.
3.To enable participants to implement solutions for reasonably complex problems.
4.To enable participants to make sense of the computer vision literature.

Course Topics

Camera models and calibration, invariant features, Multiple-view geometry, Model fitting, Stereo Matching, Segmentation, 2D Shape matching, Shape from Silhouettes, Optical flow, Structure from motion, Tracking, Object recognition, Object category recognition

Target Audience

The target audience of this course are Master students, that are interested to get a basic understanding of computer vision.


Fundamentals of calculus and linear algebra, basic concepts of algorithms and data structures, basic programming skills in Matlab and C.

Some useful links

The Computer Vision Homepage
Middlebury Stereo Vision Page
VLFeat SIFT package for MATLAB
Course Notes
Computer Vision: Algorithms and Applications

Lecture Slides

Introduction and geometry[pdf]
Camera models and calibration[pdf]
Multiple-view geometry[pdf]
Model fitting[pdf]
Stereo Matching[pdf]
Image Segmentation[pdf]
Shape from X[pdf]
Feature Extraction and Matching[pdf][26MB]
Object Recognition[pdf][84MB]
Object Category Recognition[pdf][32MB]
Optical Flow[pdf][4MB]


Put all your files (report, code, images) in a zip named "".
Where ETHID is your student id found on your student card (eg. 13-999-999).
Then email it to the Teaching Assistant with subject "CV13 : Assignment 37" (replace "37" with the actual assignment number).

Assignment 1[pdf][slides][code]
Assignment 2[pdf][slides][code][images][Feedback]
Assignment 3[pdf][slides][code]
Assignment 4[pdf][slides][code][Feedback]
Assignment 5[pdf][slides][code]
Assignment 6[pdf][slides][code]
Assignment 7[pdf][slides][code][data]
Assignment 8[pdf][slides][code][data]
Assignment 9[pdf][slides][code][data][reference]
Assignment 10[pdf][slides][code][data]

Exam Information!!!

Venue: preparation room CNB G 110
Date: 28.01.2014-30.01.2014 (This depends on your allocated date. Please check "mystudies"!)
Time: This depends on your allocated time slot (Please check "mystudies" website!). You will be given 1 hour preparation time before your allocated time slot. During this hour, you will be given the question and you may prepare your answers on sheets of blank papers. So, please show up 1 hour before your allocated time!
Things that can be brought in: NOTHING!!! You will be provided with blank sheets of paper and pens to prepare your answers.

Sample Exam Questions

To help students get a feeling of what kind of questions that will be asked in the exam, we provide 3 sample questions here.

Sample Question 1: Chamfer Matching
(From the Lecture "2D Shape Description" which was present last years but removed in this year.)

A. Explain the Chamfer Matching technique. How does it tackle the challenges of shape matching in clutter? What are its strong and weak points?

B. Give the computational complexity of a naive implementation of Chamfer Matching, as a function of the number of edgels in the template, the number of edgels in the image, and the number of windows evaluated. How can you modify the algorithm to improve this complexity? What is the complexity of the modified algorithm?

Sample Question 2: Camera model

A. Decompose a camera projection matrix in its different components, i.e. intrinsic and extrinsic. Give a geometric interpretation of all the parameters.

B. What is radial distortion? How can you insert it in this model?

Sample Question 3: Motion Extraction

A. The condensation tracker iterates between two steps. Which are those? And how are they implemented in case of the particle filter?

B. How well would a particle filter be suited to track detailed, full body pose?

© CVG, ETH Zürich