CMSC 426 - Computer Vision

Section 0201:

This course provides an introduction to computer vision and computational photography. The course will cover basic principles of image processing, image recognition using both classical methods and deep learning, and multiple view geometry for visual navigation. It will explore the topics of image formation, image features, image stitching, image and video segmentation, motion estimation, tracking, and object and scene recognition.

The course is organized around several projects. Through these projects you will learn the theory and practical skills required to obtain a computer vision engineering job.

Links to the lecture slides can be found on ELMS .

Course Information

All concepts will be covered during in class lecture. However, we also recommend the following books as good references:

  • Computer Vision: Algorithms and Applications, Richard Szeliski, Springer, 2020 Online version
  • Computer Vision: A Modern Approach: D. Forsythe and J. Ponce, Prentice-Hall, 2003 (available online)
  • Digital Image Processing, Prentice Hall, Rafael Gonzalez, and Richard Woods, 2008.
  • Multiple View Geometry in Computer Vision, Cambridge University Press, Richard Hartley, and Andrew Zisserman, 2003.

Schedule and Readings

Important Dates:

  • Final Project Due: Monday, May 16 at 1:30 PM (ET)

Lectures (Tentative Schedule)


Instructor: Jia-Bin Huang (jbhuang at

Office: IRB 4236
Office Hours: By appointment using this link

Teaching Assistants

Name Email Office hours
Hadi AlZayer hadi at Wednesdays 3:30-4:30 pm

Office hour location is AVW 4160.

Class Resources

Online Course Tools
  • ELMS - This is where you can find links to Zoom lectures, find recorded lectures, and see final grades.
  • Piazza - This is the place for class discussions. Please do not post homework/project solutions here.

Background Material
The following web pages provide some background and other helpful information.

  • Computer Vision Compendium CVonline
  • Fundamentals on image processing pdf
  • Recognizing and avoiding plagiarism pdf

Homeworks and Programming Assigments

Posted homeworks and programming assignments can be found on ELMS.


Thanks to Ioannis Gkioulekas, Mohammad Teli, Richard Baraniuk, Ashok Veeraraghavan, David Jacobs, Kaushik Mitra, and Chris Metzler who provided most of the slides, assignments, and material that serve as the basis for this course.