
This introductory computer vision class will address fundamental questions about getting computers to "see" like humans. We investigate questions such as  What is the role of vision in intelligence? How are images represented in a computer? How can we write algorithms to recognize an object? How can humans and computers "learn to see better" from experience? We will write a number of basic computer programs to do things like recognize handwritten characters, track objects in video, and understand the structure of images.
The course will introduce a number of key concepts, techniques and algorithms. The focus will be on the mathematical foundations rather than the use of software packages as black box. The course requires appropriate mathematical background in probability and statistics, calculus, linear algebra. Prior familiarity with Matlab will be helpful, but not required. Students will be taught basic programming using Matlab during the course. The course has the following official prerequisites: CMPSCI 240 or CMPSCI 383 with a 'C' or better.
Honors Colloquium (370HH): The colloquium will focus on advanced topics and recent research topics related to computer vision. Students will participate in group discussions and carry out a group or individual project which will be an extension to the project work in CMPSCI 370. Students will be graded based on their active participation during meetings, written summaries of assigned readings, and project work.
Textbook: There is no required textbook for this class. The book below is a useful reference. You may purchase it if you want a hard copy. It is also available online as a pdf.
Grading: We will use the following grading scheme:
Week  Lec  Date  Topic  Slides  Resources  Homework 
1  1  Jan 19  Introduction to computer vision  RS 1  
2  Jan 21  Matlab tutorial in class  Matlab resources  hw01  
Image formation  
2  3  Jan 26  The pinhole camera model  RS 2.1, Vector geometry by Denis Sevee  
4  Jan 28  Lenses, sensors  RS 2.2  
3  5  Feb 02  Color spectrum, perception, trichromatic theory, spaces, constancy  RS 2.3  
6  Feb 04  
Image processing and modeling  
4  7  Feb 09  Signal quantization, color maps, image enhancement  RS 2.3, 3.1  
8  Feb 11  Image filtering, convolution, blurring, denoising, sharpening  RS 3.2  hw02  
5  No class (Monday class shedule)  
9  Feb 18  Derivative filters, edge detection  RS 3.2, 4.2  
6  10  Feb 23  Local features, corner detection  RS 4.1, 4.2  
11  Feb 25  hw03  
7  No class (Instructor outoftown)  
12  Mar 03  Scale invariant feature transform (SIFT)  RS 4.1, 4.2  
8  13  Mar 08  Midterm review in class  Review notes  
14  Mar 10  Midterm in class  
9  Mar 15  Spring break  
Mar 17  Spring break  
10  15  Mar 22  SIFT continued, feature matching, robust matching using RANSAC, transformation families  RS 4.1, 4.2, 6.1  
16  Mar 24  hw04  
Image recognition and other topics  
11  17  Mar 29  Introduction to recognition  RS 14  
No class (Instructor outoftown)  
12  18  Apr 05  The machine learning framework, datasets in computer vision, descision tree classifiers  Link to cv
datasets Decision trees in CIML book 

19  Apr 07  
13  20  Apr 12  Image representations, e.g. histogramoforientedgradients and bagofvisualwords  RS 14  hw05  
21  Apr 14  
14  22  Apr 19  Deep learning: shallow vs. deep architectures, neurons and neural networks, CNNs for computer vision  learning, visualization, software  List of deep learning resources: http://deeplearning.net  
23  Apr 21  
15  24  Apr 26  Optical flow  RS 8 