CMSC 25040/35040
Introduction to Computer Vision


General information

Instructor:Pedro F. Felzenszwalb
Email:pff (at) cs.uchicago.edu
Office:Ryerson 162C
Lecture:MWF 11:30-12:20 Ryerson 277

Overview

This course is an introduction to some of the fundamental concepts in computer vision. We will cover selected topics in low-level image analysis, perceptual grouping, 3D reconstruction, motion estimation and object recognition. Our approach will be to focus on mathematical models and efficient algorithms.

There is no required textbook for the course. This webpage will have handouts covering the material from class.

Handouts & References

01. Slides from the first lecture
02.
Computer vision issues (Chapter 1 of Ballard & Brown)
03.
Edge detection + extra pictures
04.
Comparing Images Using the Hausdorff Distance (Huttenlocher, Klanderman, Rucklidge)
05.
Integral Image (from Leptonica.com)
06.
Exact Maximum A Posteriori Estimation for Binary Images (Greig, Porteous, Seheult)
07.
Graph-Based Energy Minimization Methods (Veksler)
08.
Pictorial Structures for Object Recognition (Felzenszwalb, Huttenlocher)
09. The Robust Estimation of Multiple Motions (Black, Anandan)
10. Random Sample Consensus (Fischler, Bolles)
11. Hough Transform (Chapter 4 of Ballard & Brown)
12. Geometric context (Invited lecture by Derek Hoiem)
13. Efficient Graph Based Image Segmentation (Felzenszwalb, Huttenlocher)
14. Learning to Detect Natural Image Boundaries (Martin, Fowlkes, Malik)
15. Normalized Cuts and Image Segmentation (Shi, Malik)
16. Representation and Detection of Deformable Shapes (Felzenszwalb)
17. Recognition by Linear Combinations of Models (Ullman, Basri)

Assignments

Edge detection
Due: October 11th.
Test images:
zip archive.

Stereo
Due: October 25th.
Test images:
zip archive.

Ransac
Due: November 10th.
Test images:
zip archive.

Software

Here is a small library of C++ functions that you can use to load, save and manipulate images.
Look at the readme file and 'test.cpp' for a small example program

xv is a good image viewer that handles pbm/pgm/ppm files. It runs under Unix with X11 (including macs).
wv is a viewer for pbm/pgm/ppm files that runs under Windows.
ImageMagick is a nice set of image manipulation utilities. It also includes a viewer.

Links

The Computer Vision Homepage
Computer Vision Bibliography
IEEE Transactions on Pattern Analysis and Machine Intelligence
International Journal of Computer Vision