CS498Q/698Q -- Computational Vision
MARKS COMPUTED
Marks are listed outside my door (DC2510).
Assignments and Projects are there for pickup.
Time: Winter 2000; Lectures TR 1:00-2:30 EL204 (Eng. lecture hall);
Tutorial F 2:30-3:30 MC4058; Office hour F 1:00-2:00 DC2510. Note:
Tutorials will be given only when necessary (eg., help with assignments).
Dates will be announced in class.
Instructor: Richard Mann, DC2510, x3006,
mannr@uwaterloo.ca,
http://www.cs.uwatleroo.ca/~mannr
Objectives: The objective of this course is to provide a self-contained
treatment of some fundamental problems and solutions in computational vision.
It will also provide exposure to current research issues to prepare students
for further studies (advanced level courses and/or graduate studies) in
vision.
Prerequisites: There are no formal prerequisites for this course,
however, it
is advisable to have some exposure to numerical computation, especially linear
algebra (eg., CS370), and some basic programming experience. Programming will
be done in C and Matlab.
References: All required material will be provided in lectures.
The following recommended books will be on reserve in the library:
- E. Trucco and A. Verri,
Introductory Techniques for 3D Computer Vision,
Prentice-Hall, 1998 (ISBN 0-13-261108-2).
- B. K. P. Horn, Robot vision, MIT Press, 1986.
- Selected journal articles
Grading (tentative): The lecture material will be same for undergrad and
grad students. The grading will be: 4 assignments (60%), Project (40%).
The project could include a literature
review, an experimental analysis of some algorithm,
an implementation of a new algorithm, or any other topic of
mutual interest to the student and instructor.
Graduate students will be given
additional questions on the assignments and/or will be required to undertake a
larger project.
General Information:
Lectures:
- Tues Jan 4. Vision overiew
(half of first lecture); Image formation, optics.
(Horn Ch2, Trucco and Verri Ch2)
- Thur Jan 6. Image formation, shading. (Horn Ch10)
- Tues Jan 11. Linear systems and filtering. (Horn Ch6)
- Thur Jan 13. Fourier theory. (Castleman Ch10)
- Tues Jan 18. Feature detection, edges and corners. (Trucco and Verri, Ch4)
- Thur Jan 20. Parameterized features and model fitting
(fitting lines to edge data)
- Tues Jan 25. Robust models (for line fitting)
- Thur Jan 27. Mixture models (for line fitting)
- Tues Feb 1. Motion field. (Trucco and Verri Ch8)
- Thur Feb 3. Optical Flow (Horn Ch12, Trucco and Verri Ch8,
Allan Jepson's notes on mixture models for
optical flow.)
- Tues Feb 8. Image Compositing. (Notes from Steve Mann)
- Thur Feb 10. Iterative technique for image registration.
- Tues Feb 15. SFM (structure from motion):
Factorization method (Trucco and Verri Ch8)
- Thur Feb 17. SFM: Instantaneous flow field (Trucco and Verri Ch8)
- Tues Feb 22. SFM cont'd; Stereo Vision (Trucco and Verri Ch7)
- Thur Feb 24. Holiday
- Tues Feb 29. Stereopsis (Trucco and Verri Ch7; Faugeras Sect 6.6)
- Thur Mar 2. Maximum-flow formulation of the N-camera
stereo problem (Slides courtesy of Sebastien Roy,
University of Montreal)
- Tues Mar 7. Epipolar geometry (Trucco and Verri Ch7; Faugeras Ch7)
- Thur Mar 9. Epipolar geometry (cont'd); Deformable models ("Snakes")
- Tues Mar 14. Object Recognition by principle components analysis
- Thur Mar 16. Object recognition by linear combinations of views
- Tues Mar 21. Combining recognition and tracking: Eigentracking
- Thur Mar 23. Model-based object recognition
- Tues Mar 28. Qualitative probabilities for image interpretation.
Slides
- Thur Mar 30. Computational perception of scene dynamics.
Slides
Reference material:
Course software:
- Matlab software and tutorials
This contains matlab software and tutorials for the course.
This is a compressed tarfile that expands into directory "cs498/".
You can expand on your system
with the Unix command "tar zxvf file.tgz",
where file is the filename.
NOTE: Please make sure you don't already have a directory with the
same name!
Assignments:
- Assignment 1.
Includes text, sample images, and Matlab code.
You must load Software above first.
This file will add to the files in the directory "cs498/".
- Assignment 2.
Note: new due date is Tues 29 Feb.
Constraint clustering using robust estimation.
You must also load the following software:
RandomConstraints.
Generates random constraint lines for clustering.
- Assignment 3.
Images for assignment.
Real images:
Left image,
Right image.
Synthetic images (courtesy Sebastien Roy, University of Montreal):
Left image,
Right image.
You may also wish to use the following image processing code:
image.c if you program in C.
Project ideas (a brief proposal is due on Tues, 29 Feb):
- Implementation and/or further study of algorithms described in class
- Mixture models,
- Optical flow,
- Image alignment for composites,
- Structure from motion, etc.
- Literature review (a brief review of a current research area)
- vision applications (eg., medical image processing, robot control, etc.)
- current subfield (eg., object recognition, stereo, etc)
- related areas (eg., psychophysics)
- Any other vision-related topic:
- Note: I recommend specifying a small, well-defined, problem, even
if you plan an ambitious project. You can always add to it later.
Additional References (not required for course):
The following resources are from
Allan Jepson's
computer vision course at University of Toronto.
These are not required for this course, but you might find
them useful.
CMU course on
Image-based representation and rendering. This page has a very
good set of resources about warping, image compositing, structure
from motion, etc.
Review of projective geometry
(Appendix from a book by Zisserman and Mundy.) Please let me
know if you get through this. I got stuck near the beginning.
Wearcam Steve Mann's webpage
on wearable computers and cameras.
Matlab snakes code (from Chris Bregler and Malcolm Slaney,
Interval Research) This code uses the dynamic programming
method from:
"Using Dynamic programming for solving variational problems in vision",
Amini, Weymouth, and Jain, IEEE Trans PAMI, 12(9):855-867, 1990.