CS 143 Introduction to Computer Vision
Fall 2013, MWF 1:00 to 1:50, Kasser House, Foxboro Auditorium
Instructor: James Hays
TAs: Hari Narayanan (HTA), Libin "Geoffrey" Sun, Greg Yauney, Bryce Aebi, Charles Yeh, and Kurt Spindler.

Course Description
Course Catalog EntryHow can computers understand the visual world of humans? This course treats vision as a process of inference from noisy and uncertain data and emphasizes probabilistic, statistical, data-driven approaches. Topics include image processing; segmentation, grouping, and boundary detection; recognition and detection; motion estimation and structure from motion. This offering of CS 143 will emphasize the core vision tasks of scene understanding and recognition. We will train and evaluate classifiers to recognize various visual phenomena.
The course will consist of five programming projects and two written quizzes. This course satisfies the graduate A.I area requirement.
Prerequisites
This course requires programming experience as well as linear algebra, basic calculus, and basic probability. Previous knowledge of visual computing will be helpful. The following courses (or equivalent courses at other institutions) are helpful prerequisites:- CS 123, Introduction to Computer Graphics
- CS 129, Computational Photography
- CS 195-F, Introduction to Machine Learning
Textbook
Readings will be assigned in "Computer Vision: Algorithms and Applications" by Richard Szeliski. The book is available for free online or available for purchase.Grading
Your final grade will be made up from- 80% 5 programming projects
- 20% 2 written quizzes
Important Links:
Contact Info and Office Hours:
You can contact the professor or TA staff with any of the following:- James: hays[at]cs.brown.edu
- HTA and Professor: cs143headtas[at]cs.brown.edu
- TAs and Professor: cs143tas[at]cs.brown.edu
- James (hays), Monday and Friday, 2:00-3:00, CIT 375.
- Geoff (lbsun), Wednesday, 3:00-5:00, CIT 311.
- Hari (hnarayan), Sunday 4:00-6:00, CIT 219.
- Charles (ccyeh), Monday 6:00-8:00, CIT 219.
- Greg (gyauney), Monday 8:00-10:00, CIT 219.
- Kurt (kspindle), Tuesday 6:00-8:00, CIT 219.
- Bryce (baebi), Thursday 6:00-8:00, CIT 219.
Tentative Syllabus
Class Date | Topic | Slides | Reading | Projects |
W, Sept 4 | Introduction to computer vision | .ppt, .pdf | Szeliski 1 | |
| ||||
F, Sep 6 | Cameras and optics | .ppt, .pdf | Szeliski 2.1, especially 2.1.5 | Project 1 out |
M, Sep 9 | Light and color | .ppt, .pdf | Szeliski 2.2 and 2.3 | |
W, Sep 11 | Image filtering | .ppt, .pdf | Szeliski 3.2 | |
F, Sep 13 | Thinking in frequency | .ppt, .pdf | Szeliski 3.4 | |
M, Sep 16 | Image pyramids and applications | .ppt, .pdf | Szeliski 3.5.2 and 8.1.1 | |
| ||||
W, Sep 18 | Edge detection | .ppt, .pdf | Szeliski 4.2 | |
F, Sep 20 | Interest points and corners | .ppt, .pdf | Szeliski 4.1.1 | Project 1 due |
M, Sept 23 | Local image features | .ppt, .pdf | Szeliski 4.1.2 | Project 2 out |
W, Sept 25 | Feature matching and hough transform | .ppt, .pdf | Szeliski 4.1.3 and 4.3.2 | |
F, Sept 27 | Model fitting and RANSAC | .ppt, .pdf | Szeliski 6.1 | |
| ||||
M, Sept 30 | Stereo | .ppt, .pdf | Szeliski 11 | |
W, Oct 2 | Epipolar Geometry and Structure from Motion | .ppt, .pdf | Szeliski 7 | |
F, Oct 4 | Feature Tracking and Optical Flow | .ppt, .pdf | Szeliski 8.1 and 8.4 | |
| ||||
M, Oct 7 | Machine learning intro and clustering | .ppt, .pdf | Szeliski 5.3 | |
W, Oct 9 | Machine learning: clustering continued | .ppt, .pdf | Szeliski 5.3 | Project 2 due |
F, Oct 11 | Machine learning: classification | .ppt, .pdf | Project 3 out | |
M, Oct 14 | No classes | |||
W, Oct 16 | Quiz 1 | |||
| ||||
F, Oct 18 | Recognition overview and bag of features | .ppt, .pdf | Szeliski 14 | |
M, Oct 21 | Large-scale instance recognition | .ppt, .pdf | Szeliski 14.3.2 | |
W, Oct 23 | Detection with sliding windows: Viola Jones | .ppt, .pdf | Szeliski 14.1 | |
F, Oct 25 | Detection continued and Quiz 1 discussion | See above | Szeliski 14.2 | |
M, Oct 28 | Scene recognition with SUN database | .ppt, .pdf | ||
W, Oct 30 | Mixture of Gaussians and advanced feature encoding | .ppt, .pdf | Project 3 Due | |
F, Nov 1 | Modern object detection | .ppt, .pdf | Szeliski 14.1 | |
M, Nov 4 | Internet scale vision, pt 1 | .ppt, .pdf | Szeliski 14.5 | Project 4 out |
W, Nov 6 | Internet scale vision, pt 2 | .ppt, .pdf | ||
F, Nov 8 | Guest lecture: Carl Vondrick, HOGgles | Project page | ||
M, Nov 11 | Human computation and crowdsourcing | .ppt, .pdf | ||
W, Nov 13 | Attributes and more crowdsourcing | .ppt, .pdf | ||
F, Nov 15 | Sketch Recognition and more crowdsourcing | .ppt, .pdf | ||
M, Nov 18 | Modern boundary detection and Pb | .ppt, .pdf | Szeliski 4.2 | Project 4 due |
W, Nov 20 | Modern boundary detection and sketch tokens | .ppt, .pdf, gPb, Sketch Tokens | Szeliski 4.2 | |
F, Nov 22 | Guest lecture: Sobhan Parizi, Deformable Part Models | |||
M, Nov 25 | Project 5 introduction | .ppt, .pdf | Szeliski 5.5 | Project 5 out |
W, Nov 27 | No classes | |||
F, Nov 29 | No classes | |||
M, Dec 2 | Context and Spatial Layout | .ppt, .pdf | ||
W, Dec 4 | Context and Scene parsing | .ppt, .pdf | ||
F, Dec 6 | Quiz 2 | |||
M, Dec 9 | No classes | |||
W, Dec 11 | No classes | |||
S, Dec 14, 2:00 PM | Exam Period - not used | Project 5 due |
Acknowledgements
The materials from this class rely significantly on slides prepared by other instructors, especially Derek Hoiem and Svetlana Lazebnik. Each slide set and assignment contains acknowledgements. Feel free to use these slides for academic or research purposes, but please maintain all acknowledgements.Previous Versions of Course
The 2011 offering of CS 143 can be found hereMichael Black's 2009 offering of CS 143 can be found here