Prof. Sinisa Todorovic
sinisa at eecs oregonstate edu
2107 Kelley Engineering Center
MW 5-6:20pm, MLM 234
T 1-2pm, or by appointment
The goal of computer vision is to develop algorithms for interpreting a 3D scene captured in images. This course is an introduction to fundamental vision concepts, including: image formation; color; keypoint and edge detection; segmentation; perceptual grouping; texture; object/activity recognition; and 3D scene reconstruction.
- "Computer Vision: Algorithms and Applications," by Richard Szeliski (a textbook in preparation)
- "Computer Vision: A Modern Approach," by D.A. Forsyth and J. Ponce, Prentice Hall, 2003
- "Multiple View Geometry in Computer Vision," by R. Hartley and A. Zisserman, Academic Press, 2nd ed, 2004
Additional readings, including lecture notes, slides and selected papers from the literature will be posted periodically on the class website.
There are no course prerequisites. Students will be expected to be familiar with basic statistics, probability, and linear algebra. Prior experience with AI and machine learning will be helpful, but not required.
This course is designed for graduate and senior undergraduate students interested in vision, graphics, artificial intelligence, and machine learning. It offers a broad introduction to common vision problems, theories, and algorithms. The course is also aimed at developing critical thinking and understanding when and how these algorithms can be applied to particular applications. The students will be able to acquire hands-on experience through implementing some popular approaches as homework assignments. Even students who do not intend to pursue studying computer vision in the future will benefit from learning the algorithms and tools covered during this course, since these techniques are useful in many other areas.
The homework assignments will be mini projects aimed at implementing some of the vision algorithms presented in class. Code implementation and working with real images will improve understanding the class material. The homework assignments can be implemented in any programming language on any machine of your choosing. I recommend using Matlab with its very convenient Image Processing Toolbox, and OpenCV with a rich library of programming functions aimed at real time computer vision. The homework submission should be a report that consists of a brief description of the implemented algorithm, and experimental results.
(20%) HW 1 -- HW 5
(20%) Exam 1
(20%) Exam 2
(30%) Final Exam
(10%) HW 6
Class participation based on the readings and lectures will be expected of all students.
Late homework will not be accepted without prior approval.
Collaboration on homework is permitted. However, copying of code and reports is not allowed. Each student is expected to be honest in all work submitted in this class. Details about academic dishonesty and subsequent disciplinary actions can be found at the official website of Student Conduct & Community Standards at the Oregon State University.