Computer Science CS 482 / 001

Computer Vision


Wednesday, 4:30 pm - 7:10 pm, in Robinson Hall B104


Zoran Duric.

About the Class

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


Data structures
Linear algebra and calculus
A good working knowledge of C/C++ or Java or Python programming


  1. Computer Vision: Algorithms and Applications. R. Szeliski, Springer, 2010, required, Online version of the book
  2. Computer and Machine Vision: Theory, Algorithms, Practicalities, E.R. Davies, Academic Press, 2012, recommended , A lot of well-explained algorithms with implementation details
  3. Computer Vision, G. Stockman and L. Shapiro, Prentice-Hall, 2001, recommended
  4. Computer Vision: A Modern Approach: D. Forsythe and J. Ponce, Prentice-Hall, 2003, recommended
  5. Image Processing, Analysis, and Machine Vision. Sonka, Hlavac, and Boyle. Thomson, recommended


  1. Matlab: we will use Matlab in class for demos. You can use Matlab on school computers or you can purchase a student version.
  2. OpenCV: projects will require OpenCV. OpennCV is a C/C++ open source library with wrappers in Java and Python and Matlab.

Course Web Page

CS 482: Computer Vision We will communicate through piazza. Slides, handouts, and assignments will be posted on the web page.


Grading will be based on a combination of the following factors:
  1. Class attendance and participation 10%.
  2. Homeworks and projects 50% (about every 2 weeks).
  3. A midterm 20%.
  4. A final 20%.

Honor Code

The class enforces the GMU Honor Code, and to the more specific honor code policy special to the Department of Computer Science. You will be expected to adhere to this code and policy.


If you heve a documented learning disability or other condition which may affect academic performance, make sure this documentation is on file with the Office of Disability Services and come talk to me about accommodations.

Course Outcomes

  1. Basic knowledge of image formation process
  2. Basic knowledge of image processing techniques for color and gray level images: edge detection, corner detection, segmentation
  3. Basics of video processing, motion computation and 3D vision and geometry
  4. Ability to implement basic vision algorithms in Matlab and use OpenCV (open source computer vision library)
  5. Ability to apply the appropriate technique to a problem, write a project report and present the results in class.