Computational Photography
Spring 2019
Instructor: Nima Kalantari

This page has been archived and the materials are not accessible.

Course information

Time and location: MWF 1:50 - 2:40 pm in 126 HRBB
Office hours: T 2:00 - 3:00 pm
Office location: 527B HRBB


Computational photography is a collection of computational algorithms and system designs (e.g., sensors, optics) to avoid the limitations of standard cameras and enable novel applications. In recent years, there has been increasing interest in computational photography because of the widespread use of the cameras by the general public through smartphones and other cheap imaging devices. In this course, we first discuss the cameras and the image formation process. We then study basic image and video processing tools like sampling, filtering, and pyramids. Finally, we discuss several image-based algorithms, such as image retargeting, high dynamic range imaging, and texture synthesis.


Programming experience (MATLAB or Python), as well as knowledge of linear algebra and calculus is necessary. Basic knowledge of computer graphics and vision, as well as image processing is helpful but not necessary.


The primary reference of the course is the following book, which covers most of the topics related to computational photography:

Computer Vision: Algorithms and Applications, by Richard Szeliski, 2010



Date Topic Slides Reading Assignments
Jan 14 Introduction and Overview pdf, pptx Szeliski Ch. 1
Jan 16 Camera and Image Formation pdf, pptx Szeliski Ch. 2
Jan 18 Camera and Image Formation See above Szeliski Ch. 2
Jan 21 MLK day - no class
Jan 23 Camera and Image Formation See above Szeliski Ch. 2
Jan 25 Color pdf, pptx Szeliski Ch. 2
Jan 28 Color See above Szeliski Ch. 2 Hw 1 out
Jan 30 Sampling and Filtering pdf, pptx Szeliski Ch. 2.3.1 & 3.2
Feb 1 Sampling and Filtering See above Szeliski Ch. 2.3.1 & 3.2
Feb 4 Frequency Domain pdf, pptx Szeliski Ch. 3.4
Feb 6 Frequency Domain See above Szeliski Ch. 3.4
Feb 8 Pyramids pdf, pptx Szeliski Ch. 3.5 Hw 1 due
Feb 11 Blending and Compositing pdf, pptx Szeliski Ch. 9.3 Hw 2 out
Feb 13 Morphology pdf, pptx Szeliski Ch. 3.3.2
Feb 15 Point Processing and Image Warping pdf, pptx Szeliski Ch. 3.1 & 3.6.1
Feb 18 Point processing and Image Warping See above Szeliski Ch. 3.1 & 3.6.1
Feb 20 Image morphing pdf, pptx Szeliski Ch. 3.6.2 & 3.6.3
Feb 22 Homographies and Mosaics pdf, pptx Szeliski Ch. 9.1 Hw 2 due
Feb 25 Automatic Image Alignment and RANSAC pdf, pptx Szeliski Ch. 4.1 & 6.1.4
Feb 27 Automatic Image Alignment and RANSAC See above Szeliski Ch. 4.1 & 6.1.4
Mar 1 Image Retargeting pdf, pptx Avidan, Rubinstein Hw 3 out
Mar 4 Image Retargeting See above Avidan, Rubinstein
Mar 6 Video Textures pdf, pptx Szeliski Ch. 13.5.2 & Schodl
Mar 8 Texture synthesis and filling pdf, pptx Szeliski Ch. 10.5
Mar 11 - 15 Spring break - no class
Mar 18 Image Analogies and Scene Completion pdf, pptx Hertzmann, Hays and Efros Hw 3 due
Mar 20 Image Analogies and Scene Completion See above Hertzmann, Hays and Efros
Mar 22 Matting pdf, pptx Szeliski Ch. 10.4
Mar 25 Project Proposal Presentations
Mar 27 Project Proposal Presentations
Mar 29 Project Proposal Presentations
Apr 1 Recovering High Dynamic Range pdf, pptx Szeliski Ch. 10.2 Hw 4 out
Apr 3 Tone mapping pdf, pptx Szeliski Ch. 10.2
Apr 5 Stereo pdf, pptx Szeliski Ch. 11
Apr 8 Stereo See above Szeliski Ch. 11
Apr 10 Camera Parameters pdf, pptx Szeliski Ch. 2.1.5
Apr 12 Modeling light and Lightfields pdf, pptx Szeliski Ch. 13.3 Hw 4 due
Apr 15 Modeling light and Lightfields See above Szeliski Ch. 13.3
Apr 17 Coded Exposures and Apertures pdf, pptx Raskar, Levin
Apr 19 Reading day - no class
Apr 22 Coded Exposures and Apertures See above
Apr 24 Final Project Presentations
Apr 26 Final Project Presentations
Apr 29 Final Project Presentations

*Schedule might change during the semester.


The slides in this class are heavily based on the slides from other instructors. Specifically, many slides are the exact or modified version of the slides by Alexei A. Efros, James Hays, and Rob Fergus, who in turn have used materials from Steve Seitz, Rick Szeliski, Paul Debevec, Stephen Palmer, Paul Heckbert, David Forsyth, Steve Marschner, Fredo Durand, Bill Freeman, and others, as noted in the slides. The instructor gives full permission to use these slides for academic and research purposes, but please maintain all the acknowlegements.