University of Arizona, Department of Computer Science

CS 477/477H/577: Introduction to Computer Vision


Time and Place 3:30-4:45, Tuesday and Thursday, Gould-Simpson Room 701
Description Computer vision is about building systems that see. Such a system would be able to take images and output a representation of what is in the world in front of the camera. We are all familiar with this process as it happens whenever we look around. However, putting this capability into a machine has proven to be very difficult and is the topic of much current research. In this course we we will study the basic approaches that have been developed to analyze image data in an attempt to solve this problem, and their applications to other related areas such as computer graphics and image databases.

This course should be considered by students interested in computer vision, image processing, image databases, computer graphics, artificial intelligence, and cognitive science.

The subject involves substantial math. While much of the required math will be reviewed/developed as part of the course, students who are not strong in math should expect to spend extra time struggling with it.

The course will also have substantial programming. Assignments/projects will be in some combination of Matlab (a C like interpreted language) and C/C++, and must either be developed on Linux, or ported to Linux for grading. Since some library support will be provided on Linux for certain assignments, doing them on an alternative platform may prove to be a disadvantage.

Participation in class discussion will be expected.

Prerequisites MATH 215 (implies calculus as well), C SC 352, C SC 345 or C SC 346; graphics (C SC 433) is helpful, knowledge of probability is also helpful.

Alternatively, permission from the instructor based on strong alternative math and CS preparation.

Instructor Kobus Barnard
Email: kobus @ cs.arizona.edu    (remove blanks around the @)
Office Hours: By electronic signup. (Follow preceeding link to get times and instructions.)
Text Computer Vision: A Modern Approach, by Forsyth and Ponce. (Recomended but not required).
Topics Image formation, physics based vision, color, linear filtering, edge detection, texture , multiple view geometry (includes stereo and structure from motion), segmentation, tracking, recognition using templates and classifiers, recognition using structural models (relations between parts), and applications to graphics and image databases.
Seminar Students are encouraged to participate in the weekly vision group meeting if the time is good for them. The room and time are under consideration but 12:30-2:00 on Thursday is likely. This is optional, but can be used to satisfy part of the requirements for honor's credit.
Honors Credit Honors credit is available through some combination of a subset of the graduate assignment and computer vision seminar participation.
Grading

There will be roughly ten assignments. Some assignments may be optional.

Graduate students will be have to do extra parts on some/all assignments, and perhaps will have to do a few extra or different assignments. Graduate students will also be expected to perform better on tests (undergraduate tests will be graded out of less, or undergraduates will have fewer questions).

Grading breakdown.

    Assignments:   60%
    Midterms:      20%   
    Final Exam:    20%    
A cumulative percentage of 90% guarantees an A, 80% guarantees a B, 70% a C, and 60% a D. Depending on the instructors perception of the difficulty of this edition of the class, some of these cutoffs may be lowered a bit (possibly differently for 477 and 577).

Policies

Exams must be attended at their appointed time unless you have permission in advance to do otherwise.

Assignment late policy: Because there is no TA for this course, the following policy will apply. I will grade assignments some time after they are due (often immediately). Once I have graded a particular assignment, all missing submissions will recieve zero. Some assignments may be graded during "demo" sessions.

Students are expected to check their E-mail reasonbly often.

Some attempt will be made to detect violations of the University of Arizona's academic integrity policy. Specifically, exams and written assignment must be the sole work of the student. Students may help each other with the problem analysis and general strategies relevant to the programing assignments, but detailed help or code sharing is not permitted. All code in programming assignments will be assumed to have been written by the student (or student team) unless attribution is given. An obvious exception to this rule is sample code which has been provided by the instructor for this course through the course web page tree. Such code does not require attribution (we know where it came from). It is also permissible to include with attribution code from external sources provided that the code is published, has not been solicited, and was not written for course requirement for this or a similar course given elsewhere.