Visual Tracking
(Ho, Lee, Yang, Kriegman)

CSE 152: Introduction to Computer Vision

Spring 2007

Course Information / Course Outline / Assignments / Notes and Links

CSE 152 Discussion Board / GradeSource


Recent Announcements


Course Information

Class Description: The goal of computer vision is to compute properties of the three-dimensional world from images and video. Problems in this field include identifying the 3D shape of a scene, determining how things are moving, and recognizing familiar people and objects. This course provides an introduction to computer vision, including such topics as feature detection, image segmentation, motion estimation, object recognition, and 3D shape reconstruction through stereo, photometric stereo, and structure from motion.

Required Text: Introductory Techniques for 3-D Computer Vision, E. Trucco and A. Verri, Prentice Hall, 1998.

Prerequisites: Linear algebra and Multivariable calculus (e.g. Math 20A & 20F), data structure/algorithms (e.g. CSE100), a good working knowledge of C, C++ or Matlab programming.

Grading: There will be homework assignments, a midterm, and a final weighted with the following percentages:
           Assignments:      45%
           Midterm:            20%
           Final Exam:        35%

Late Policy: Written homework will be due in class and accepted thereafter with a penalty of 10% per day starting from the due date. Programming assignments will have a hand-in procedure described with the assignment and also has a 10% per day late penalty. No assignments will be accepted after the graded assignments have been returned or the solutions have been released.

Resources:

Assignments

Assignment 4: Here is a PDF file with Assignment 4. Face images for the assignment are in this zip file: yaleBfaces.zip.

Here is some Matlab code to read in the input images: getAmatrix.m. The function getAmatrix accepts exactly two arguments:

Turn-in: A hard-copy of the solutions, which contains the write-up and all your tables, code and figures. Due Monday, June 11, 6:00 PM.
               E-mail a zip file (named your_name.zip/tar/tgz/....) of your code and figures to the TA, with the subject line "CSE 152 Assignment 4". Due Friday, June 8, 11:59 PM.

If you are writing the hardcopy electronically (PDF or Word), you can e-mail it to the TA if you don't want to make the trip to the CSE building and turn it in. Ensure that all the code and figures are included at appropriate places if you choose this option to turn in your "hard-copy".


Assignment 3: Here is a PDF file with Assignment 3. Data set & Source code

Tip: To have a faster implementation, you can use the fact that the Gaussian filter (even its derivatives) is separable to divide the computation into two 1D convolutions.

Turn-in: A hard-copy of the solutions, with answers to any questions asked, and MATLAB code and figures. Due Tuesday, May 29, in class.
Email a zip file of your MATLAB code and figures to the TA, with the subject line "CSE 152 Assignment 3". Due Tuesday, May 29, 11:59pm.


Assignment 2: Here is a PDF file with Assignment 2. Data set

Link to Chapter 4 of "Robot Vision" by Horn (e-reserves)

Email a zip file of your MATLAB code and results to the TA, with the subject line "CSE 152 Assignment 2". Due Tuesday, May 8th, 5:00 PM.


Assignment 1: Here is a PDF file with Assignment 1. Solution

Correction: In problem 3, the formula should read
f( r(x,y) ) = sqrt{ (d/2)^2 - (r-a)^2 }.

Turn-in: A hard-copy of the solutions, with answers to any questions asked, and MATLAB code and figures. Due Thursday, April 26, in class.
Email a zip file of your MATLAB code and figures to the TA, with the subject line "CSE 152 Assignment 1". Due Thursday, April 26, 5:00 PM.


Assignment 0: Here is a PDF file with Assignment 0, a description of what to turn in and a tutorial introduction to Matlab.
                         Test image for the assignment is here.


Course Outline

** Tentative syllabus - subject to change.

  • April 03 - Introduction to Computer Vision      [T&V   Chapter 1]
  • April 05 - Human Visual System, Cues and Illusions
  • April 10 - Image Formation, Cameras, Projections and Rigid-body Transformations      [T&V   Chapter 2, pages 26-40]
  • April 12 - Rigid-body Transformations, Camera Calibration and Lenses
  • April 17 - Radiometry (Lighting and Shading)      [T&V   Chapter 2, pages 16-26]
  • April 19 - Color      [Gonzalez and Woods: Chapter 6, Basics of Color, An FAQ on Color]
  • April 24 - Binary Image Processing      [ Link to Chapter 4 of "Robot Vision" by Horn (e-reserves) ]
  • April 26 - Filtering      [T&V, Chapter 3, pages 55-63]
  • May 01 - Edge Detection      [T&V, pages 67-81]
  • May 03 - Hough Transform      [T&V, pages 97-100]
  • May 08 - Generalized Hough Transform + Line Fitting
  • May 10 - Midterm     (Sample midterm questions)
  • May 15 - Stereo (Introduction)      [T&V, pages 140-171]
  • May 17 - Stereo (Epipolar Geometry)
  • May 22 - Stereo (Window-based methods + Dynamic Programming + Helmholtz)
  • May 24 - Photometric Stereo      [Forsyth and Ponce, Chapter 5, pages 80-86 ]
  • May 29 - Photometric Stereo / Introduction to Structure-From-Motion (SFM)      [T&V, pages 191-198]
  • May 31 - Recognition (PCA, Eigenfaces and Fisherfaces)      [Forsyth and Ponce, Chapter 22 (posted on the webboard), Fisherfaces paper]
  • June 05 - Recognition, Bayesian Classifiers      [T&V, pages 262-270]
  • June 07 - Appearance-Based Recognition, Motion Field & Optical Flow      [T&V, pages 191-198]
  • June 13 - Final Exam

  • Notes and Links

  • Programming languages: For this course, all programming will be in Matlab. A short tutorial assignment will provide the introduction. Click here for Serge Belongie's Matlab resource links.
  • Some other textbooks and resources
    1. Computer Vision - A Modern Approach, Forsyth and Ponce. A rather good, comprehensive, upper level textboook.
    2. An Invitation to 3D Vision: From Images to Geometric Models, Ma, Soatto, Kosecka, Sastry, Springer Verlag, 2003, ISBN 0-387-00893-4 (textbook for CSE 252B).
    3. CV-Online: A useful online compendium of Computer Vision sources.
  • Some useful links
    1. Camera Calibration Toolbox for Matlab (Bouguet)
    2. Microsoft Camera Calibration Toolbox (Zhang)
    3. Intel OpenCV
    4. The Computer Vision Homepage
    5. Handy Math Reference: MathWorld
    6. Related classes at UCSD: CSE 166, CSE 252A, CSE 252B

  • Last updated April 10, 2007.