CMSC 491/691: Computational Photography:        Interactive Graphics and Imaging


Computational photography is an emerging research area at the intersection of computer graphics, image processing, and computer vision.  As digital cameras become more popular and collections of images continue to grow, interest in effective ways to enhance photography and produce more realistic images through the use of computational techniques has surged.  Computational photography overcomes the limitations of conventional photography by analyzing, manipulating, combining, searching, and synthesizing images to produce more compelling, rich, and vivid visual representations of the world.  This course will cover the core concepts needed to analyze and manipulate images to automatically create video effects, animations, 3D models, panoramas, and walkthroughs from traditional digital imagery. 



This course will provide students with (1) the fundamental mathematical and computational techniques that can be used to enhance digital images, (2) a broad overview of the core concepts of graphics, image processing, and vision that can be used to analyze images, and (3) a hands-on experience of implementing techniques to analyze and enhance their own digital images.  This course is suitable for advanced undergraduates, masters and PhD students. 


  1. Image Formation

  2. Camera Model and Parameters

  3. Image and Video Processing

  4. Non-photorealistic Rendering

  5. Medical Image Processing

  6. Image completion

  7. Panoramas, mosaics, collages

  8. Stereo images

  9. 2D/3D Tracking Techniques

  10. Single-view and multiple-view reconstruction


Students should be able to develop software applications in modern programming languages (e.g. C/C++, Java, Python) and should be familiar with basic concepts of linear algebra and calculus. Some background in computer graphics, computer vision, or image processing is helpful.

Undergraduate students that have taken or plan to take CMSC 435 next semester are welcome to register for the class.  Since only the very basic concepts from graphics will be used in class, special permission can be given to undergraduate students that have not taken CMSC 435 yet.


There is no required text. Various chapters, presentations, course notes, and papers will be made available throughout the semester. Optional textbooks relevant to this course:

  1. Computational Photography: Mastering New Techniques for Lenses, Lighting, and Sensors”, Raskar and Tumblin, June 2010

  1. Computer Vision: Algorithms and Applications”, Richard Szeliski, Microsoft Research, Dec 2010

  1. Multiple View Geometry in Computer Vision”, Hartley & Zisserman, 2004

  1. Digital Image Processing”, 2nd edition, Gonzalez and Woods, 2002

Instructor: Jesus J. Caban, PhD

Email(s): caban1 at  or jesus dot caban at nih. gov

When: Mon / Wed  5:30 - 6:45pm

Where: Math & Psychology Bldg, Room 101

Office Hours: Mon / Wed 5:00 - 5:30pm (ITE 365) or by appointment