Computer Vision

Fall 2008


Tues/Thurs 12:30 – 2:00 pm

Parlin Hall 1 (PAR 1)


CS 378, Unique # 55770



Instructor: Prof. Kristen Grauman 

Email: grauman @ cs

Office hours: Wednesdays 1:00-2:00 pm, Thursdays 2-3 pm in CSA 114


TA : Harshdeep Singh

Email: harshd @ cs

Office hours : Tuesdays 3:30-4:30 pm, Fridays 2-3 pm in TAY CS Lab.




Schedule     Blackboard     Overview     Requirements     Links     Syllabus outline     eGradebook





Pset 4 hardcopy turnin: either in class on 12/4, otherwise drop in CS homework drop box (put course name at top).


Use the class schedule to view all reading assignments, deadlines, and problem sets.


Grades, late days used available on eGradebook.





Billions of images are hosted publicly on the web---how can you find one that “looks like” some image you are interested in?  Could we interact with a computer in richer ways than a keyboard and mouse, perhaps with natural gestures or simply facial expressions?  How can a robot identify objects in complex environments, or navigate uncharted territory?  How can a video camera in the operating room help a surgeon plan a procedure more safely, or assist a radiologist in more efficiently detecting a tumor?  Given some video sequence of a scene, can we synthesize new virtual views from arbitrary viewpoints that make a viewer feel as if they are in the movie?


Computer vision is at the heart of many such questions: the goal is to develop methods that enable a machine to “understand” or analyze images and videos.   In this introductory computer vision course, we will explore various fundamental topics in the area, including image formation, feature detection, segmentation, multiple view geometry, recognition and learning, and motion and tracking.  An outline of the syllabus is here. 


This course is intended for upper-level undergraduate students. 




Basic knowledge of probability and linear algebra; data structures, algorithms; programming experience.


Previous experience with image processing or machine learning will be useful but is not required.  Problem sets will include Matlab programming problems.


If you are unsure if your background is a good match for this course, please come talk to me.


Course requirements


Problem sets:  Problem sets will be given approximately every two weeks, and will involve a combination of concept questions and programming problems.  The programming problems will provide hands-on experience working with techniques covered in or related to the lectures.  Students are encouraged to discuss the assignment, but all code and written responses must be completed individually.


Due dates:  All problem sets are to be submitted by 11:59 PM on the day they are due.  The instructions in each problem set will designate which parts to submit electronically and which if any to submit via hardcopy.  Any hardcopy portions should be submitted in class or left in CSA 114.  Create a pdf file for the report portion of the assignments.  (The CS machines have openoffice which can be used to convert doc files to pdf if you work in Word and don’t have a Adobe PDF printer.)


Over the course of the term you have an allowance of four free late days for problem set turn-ins, meaning you can accrue up to three days in late assignments with no penalty.  Late problem sets beyond this allowance lose 50% of the total possible credit per day late.  Please plan ahead so you can spend your late days wisely.  No late problem sets will be accepted after solutions are given in class or posted online.  Notify Harshdeep via email (harshd@cs) by the due date if you will be using any late days.


Exams:  There is an in-class midterm quiz and a comprehensive final exam.  For each exam students may use a single sheet (8.5 x 11”) of notes.


Participation: Regular attendance and participation in in-class activities is expected.  If for whatever reason you are absent, it is your responsibility to find out what you missed that day.


Grading policy:  Grades will be determined roughly as follows. 

·        Problem sets (55%)

·        Midterm quiz (15%)

·        Final exam (20%)

·        Class participation, includes attendance (10%)


Please read the UTCS code of conduct.


Important dates


Midterm exam: Tuesday Oct 14 (in class) tentative

Last class meeting: Thursday Dec 4

Final exam: Saturday Dec 13, 7:00-10:00 PM in UTC 3.104




The recommended textbook is Computer Vision: A Modern Approach, by Forsyth and Ponce.  You may also find the following books useful.  Copies of all of them are on reserve at the PCL library.


Computer vision : a modern approach, David A. Forsyth and Jean Ponce.


Computer vision, Linda G. Shapiro and George C. Stockman.


Introductory techniques for 3-D computer vision, Emanuele Trucco and Alessandro Verri.


Computer vision, Dana H. Ballard and Christopher M. Brown.  (available online)


Multiple view geometry in computer vision, Richard Hartley and Andrew Zisserman.


Pattern classification, Richard O. Duda, Peter E. Hart, and David G. Stork.


Machine learning, Tom M. Mitchell.





·        UTCS Computing / Facilities web page

·        For remote access: Run an X server for Windows (such as XMing), then login to your CS account with an SSH client (like Putty)

·        CV Online

·        OpenCV (open source computer vision library)

·        Weka (Java data mining software)

·        Object recognition databases (list compiled by Kevin Murphy)

·        Various useful databases and image sources (list compiled by Alyosha Efros)

·        Netlab (matlab toolbox for data analysis techniques, written by Ian Nabney and Christopher Bishop)

·        Oxford Visual Geometry Group (contains links to data sets and feature extraction software)

·        Computer vision conferences

·        Annotated computer vision bibliography

·        Face recognition homepage

·        Computer vision research groups

·        Vision related links on page

·        CS 395T Spring 2007 project ideas

·        Draft chapters from Forsyth and Ponce book

·        Linear algebra review / primer by Martial Hebert

·        Computer Vision: Algorithms and Applications, book draft by Richard Szeliski



·        Matlab tutorials and quick references:

Tutorial code (from Stefan Roth)

Matlab image processing toolbox, getting started

Matlab: Getting Started (guide from Mathworks)