`
Miguel Á. Carreira-Perpiñán
Assistant professor
Dept. of Computer Science & Electrical Engineering
OGI School of Science & Engineering / OHSU
miguel-[at]-csee.ogi.edu; 503-7481455
Office: Bronson Creek Building 150J
`

Office hours: by appointment (call or e-mail, including [EE589] in the subject).

Classes: ~~Mondays and Wednesdays 7-8:30pm in classroom 401, Paul Clayton Building (number 2 in the map)~~

**New location and time:**Mondays and Wednesdays 12:30-2pm in classroom 403, Wilson Clark Center (number 3 in the map).

Course web page: `http://www.csee.ogi.edu/~miguel/ee589`

This course is partially supported by Intel.

This course provides an overview of computer vision. Computer vision deals with the problem of recovering information about the world from one or more images. This course covers the basic problems and techniques of computer vision, including the process of image formation (lighting and camera models), multiview geometry (stereo, affine and projective reconstruction), robust estimation, probabilistic models, segmentation, tracking and object recognition. Although the course will be a general survey, sufficient detail will be given for students to be able to build useful applications. Particular mention will be made of health-related applications such as medical image segmentation, image retrieval in digital libraries, or unobstrusive patient monitoring.

The course does not cover image processing aspects (such as image filtering, Fourier transforms, image pyramids, edge detection, image enhancement, restoration and compression), which are covered in course EE 584 / EE 684 Introduction to image processing.

The course will also be useful for students interested in machine learning, (biomedical) image processing, computer graphics, robotics and human-computer interaction.

Prerequisites: undergraduate engineering maths, specifically calculus and linear algebra. Some knowledge of probability will be necessary for part of the course; a background chapter in the textbook's web site covers this.

The following courses are useful complements (but not necessary for the course):

- EE 584 / EE 684 Introduction to image processing
- CS 559 / CS 659 Machine learning
- CS 547 / CS 647 Statistical pattern recognition
- EE 586 / EE 686 Adaptive and statistical signal processing
- MATH 519 / MATH 619 Optimization

Required textbook (see the supporting material):

- David Forsyth and Jean Ponce:
*Computer Vision. A Modern Approach*. Prentice-Hall, 2003.

Other recommended books:

- E. Trucco and A. Verri:
*Introductory Techniques for 3-D Computer Vision*. Prentice-Hall, 1998. - R. Hartley and A. Zisserman:
*Multiple View Geometry in Computer Vision*, 2nd ed. Cambridge University Press, 2004. - A. Blake and M. Isard:
*Active Contours*. Springer, 1998. Available online. - R. Jain, R. Kasturi and B. G. Schunck:
*Machine Vision*. McGraw-Hill, 1995. - O. Faugeras, Q.-T. Luong and T. Papadopoulo:
*The Geometry of Multiple Images*. MIT Press, 2001. - David Marr:
*Vision*. Freeman, 1982.

If you want to refresh your knowledge of linear algebra and multivariate calculus, the following are helpful (any edition or similar book is fine):

- Seymour Lipschutz:
*Schaum's Outline of Linear Algebra*. McGraw-Hill. - Murray Spiegel:
*Schaum's Outline of Vector Analysis*. McGraw-Hill. - Frank Ayres:
*Schaum's Outline of Matrices*. McGraw-Hill. - Richard Bronson:
*Schaum's Outline of Matrix Operations*. McGraw-Hill. - Erwin Kreyszig:
*Advanced Engineering Mathematics*. Wiley. - Gilbert Strang:
*Introduction To Linear Algebra*. Wellesley-Cambridge Press. - Gilbert Strang:
*Linear Algebra and Its Applications*. Brooks Cole.

Before each class, you should have read the corresponding part of the textbook and the notes. I will teach the material in the order below.

- Introduction
- Geometry:
- Cameras (ch. 1: pp. 3-7; ch. 2: all except 2.2.3, 2.3.3)
- Camera calibration (ch. 3: 38-39; skim pp. 39-44 to refresh math background)
- Multiview geometry (ch. 10: pp. 215-221)
- Stereopsis (ch. 11: all)
- Affine and projective reconstruction (ch. 12: all except 12.1)

- Image segmentation by clustering (chap. 14: all)
- Robust model fitting (chap. 15: all except 15.6)
- Probabilistic model fitting (chap. 16: all)
- Tracking (chap. 17: all)
- Model-based vision (chap. 18: all)
- Finding templates using classifiers (chap. 22: all except 22.5)

- The notes and math review to accompany the textbook. Bring the corresponding part to each class.
- Homework by chapter (to do on your own, not graded): 1.3; 2.1, 2.3, 2.7, 2.8, 2.9, 2.12, 2.13; 3.1, 3.2; 10.1, 10.2, 10.4; 11.5, 11.6; 12.8, 12.10; 13.11; 15.1, 15.2, 15.5, 15.6; 16.1, 16.2; 22.1, 22.2, 22.3, 22.4, 22.5.
- Projects (to be submitted and graded):
- Project #1 (epipolar geometry and affine structure from motion)
**due November 20**, in groups of 1 or 2 students - Project #2 (several choices)
**due December 11**, in groups of 1 or 2 students - Project #3 (reviewing a research paper)
**due December 11**, individual (no groups)

- Project #1 (epipolar geometry and affine structure from motion)

The course grading will be based on three projects, as follows:

- Project 1 (40%)
- Project 2 (40%)
- Project 3 (20%)

While I encourage you to discuss your work with other students, the projects must be the result of your own work without collaboration. There is no final exam.

- Demos:
- Computer Vision Test images
- On-Line Compendium of Computer Vision
- The Computer Vision Homepage
- Intel Open Source Computer Vision Library (OpenCV). Other descriptions at Intel Technology Journal and Dr. Dobb's.
- Matlab Image Processing Toolbox. Useful to preprocess images before e.g. segmenting them.
- Matrix identities (handy formulas for matrix derivatives, inverses, etc.):

If you have never used Matlab, there are many online tutorials, for example:

Miguel A. Carreira-Perpinan Last modified: Thu Nov 23 20:56:52 PST 2006

OHSU | OGI | Dept. of CSEE | Adaptive Systems Group | MACP's Home Page