CS083/CS183, Fall 2012
Computer Vision

Course description

This course provides an introduction to computer vision, the art of teaching computers to see. Topics include image formation, feature detection, segmentation, 3D reconstruction from multiple views, motion estimation, and object recognition. The course will also discuss modern applications of computer vision such as 3D photo tourism, visual search, image stitching, and face recognition.

Course goals

This course is designed for undergraduate and graduate students interested in topics concerning analysis of images and video, real-world perception and computational geometry. The material is also relevant for students planning to work in areas loosely related to computer vision, such as computer graphics, robotics, signal processing and pattern recognition.

Administrative information

Instructor
Lorenzo Torresani | 109 Sudikoff | office hours: Tuesdays 1-3pm & Wednesdays 2:30-3:50pm
Teaching assistant
Chen Fang | 221 Sudikoff | office hours: Thursdays 4-7pm
Course staff email
cs183@cs.dartmouth.edu
Lectures
T&Th 10-11:50am | x-hour (used occasionally to make up cancelled classes) W 3-3:50
007 Kemeny Hall
Lab
Sudikoff 001: Linux machines with Matlab. As an alternative, you can install and use Matlab on your machine by following the instructions provided here.
Required textbook
Richard Szeliski, Computer Vision: Algorithms and Applications, published by Springer. An electronic version of this manuscript can be downloaded here.
Additional references
An additional optional text is Computer Vision: A Modern Approach by David Forsyth and Jean Ponce, Prentice Hall, 2002.

Grading and policies

Grading scheme
The course grade will be based 10% on in-class participation, 45% on the homework assignments (each of the three homework assignments will count for 15% of the final grade), and 45% on the term project. The homeworks will require answering questions and implementing some algorithms in Matlab, but prior knowledge of Matlab is not required. During x-hours on September 19th, we will present a tutorial covering the basics of Matlab. In addition, the College will offer a Matlab class on September 25th (see details here).
Late homeworks
Each student has 3 free late days to be used over the course of the term as he/she likes. Once these days are used up, any homework turned in late will be penalized 25% per late day. No exception! The late days can be used only for the homeworks, not for the project submissions. Any portion of a late day is counted as one full day. Assignments are typically due at 11:59 pm of the due date. The code portion of each homework submission must be turned in via Blackboard. The answers to technical questions can either be written on paper and left in the course mailbox near the Sudikoff entrance or be submitted in electronic form via Blackboard.
Homework and Project Schedule
Howework 1: out on 9/27/2012; due on 10/11/2012.
Howework 2: out on 10/11/2012; due on 10/25/2012.
Howework 3: out on 10/25/2012; due on 11/8/2012.
Project proposal & spotlight presentation: 9/27/2012.
Project milestone: 10/23/2012.
Project final: 11/13/2012.
Auditing
Please contact the instructor if you would like to audit the course.

Academic integrity

You may discuss the assignments with other current CS083/183 students, but your submission must be entirely your own work. That is, your code and any other solutions you submit must be created, written/typed, and documented by you alone. You may not copy anything directly from another student's work. For example, memorizing or copying onto paper a portion of someone else's solution would violate the honor code, even if you eventually turn in a different answer. Similarly, e-mailing a portion of your code to another student, or posting it on-line for them to see would violate the honor code. We do encourage discussion of assignments between students, subject to these rules.

You cannot make use of any code taken from outside references for your homeworks, unless explicitly authorized to do so by the instructor. As a rule of thumb, you should treat any external code as software written by another CS083/183 student: you are not allowed to copy it or to use it as a template to implement your solution.

You are allowed to use external software for your project. However, you should clearly report the use of external code and include pointers to such software in your project write-up. The project grade will be based on the novelty of your solution/application but also on the amount of new code written by you to implement the idea. So keep this in mind when considering to use software written by someone else.

These rules will be strictly enforced and any violation will be treated seriously