CS331: Introduction to Computational Photography @ Northwestern

Fall 2020

Top Calendar Homework Links Slides Readings Credits
The Lytro Camera captures a 4D light field of a scene, enabling photographs to be digitally refocused after images are captured. Computational illumination is used within the movie industry to render the performances of live actors into digital environments. The Nvidia Tegra Shield is an Android-based tablet that features a 5-megapixel camera with an easy to use camera API.

Course Goals

To teach the fundamentals of modern camera architectures and give students hand-on experience acquiring, characterizing, and manipulating data captured using a modern camera platform. For example, students will learn how to estimate scene depth from a sequence of captured images.

Course Description

This course is the first in a two-part series that explores the emerging new field of Computational Photography. Computational photography combines ideas in computer vision, computer graphics, and image processing to overcome limitations in image quality such as resolution, dynamic range, and defocus/motion blur. This course will first cover the fundamentals of image sensing and modern cameras. We will then continue to explore more advanced topics in computer vision. We will then use this as a basis to explore recent topics in computational photography such as motion/defocus deblurring cameras, light field cameras, and computational illumination.

This course will consist of six homework assignments and no midterm or final exam. We will provide a Nvidia Tegra tablet for each student in the course. Students will write programs that run on the phone to capture photos. Enrollment is limited to 30 students.


EECS 211 and/or 230 or permission from instructor. Students should have experience with Python programming. If you are interested, please contact the instructor to discuss!

Time & Place

Tuesdays and Thursdays 1:00pm-2:20pm CT CS331 lecture: All lectures will held live on zoom and linked through canvas. Lectures will also be recorded for those who cannot attend during scheduled class times.

Instructors & Office Hours

Oliver Cossairt Office Hours: Thursday 3-5PM - write an email to oliver.cossairt (a) to book a 10min slot.

Florian Willomitzer Office Hours: Thursday 3-5PM - write an email to to book a 10min slot.

Teaching assistants & Office Hours

Florian Schiffers Mail: florian.schiffers (a) Office hours are replaced with increased Campuswire activity on myside. For coding questions that involve your own code, please make a private thread that is only visibile to TA/Instructor.

If serious problem regarding an assignment arise, I am available for zoom session on an individual basis. However, a requirement for a zoom session is to have an active Campuswire thread.


Lecture Calendar

This is a prediction of what will be covered in each week but the schedule is subject to change as the course progresses.

Week of Lecture of week Topic
09/17 Thu Introduction
09/22 Tue Image Formation
09/24 Thu Image Processing I
09/29 Tue Image Processing II
10/01 Thu Image Sensing
10/06 Tue Image Segmentation
10/08 Thu Flash and Lighting
10/13 Tue Radiometry
10/15 Thu HDR Imaging
10/20 Tue Photometric Stereo
10/22 Thu Shape from Shading
10/27 Tue Depth from Focus
10/29 Thu Structured Light 3D Imaging
11/03 Tue SIFT
11/05 Thu Camera Calibration
11/10 Tue Stereo
11/12 Thu Light Fields
11/17 Tue Optical Flow
11/19 Thu Light Transport
11/24 Tue Selected Topics


See CANVAS for the link to invite your to create your Github repository for the assignments.

Homework is due and assigned on the dates below. It is a fairly tight schedule to ensure we cover many different topics.

Date Assigned Due
09/17 HW 0: Install Environment  
09/22 HW 1: Image Processing HW 0: Install Environment
09/29 HW 2: Sensor Noise HW 1: Image Processing
10/11 HW 3: Flash/No Flash Photography HW 2: Sensor Noise
10/22 HW 4: HDR Imaging Flash/No Flash Photography
11/03 HW 5: Depth from Defocus HW 4: HDR Imaging
11/14 HW 6: Lightfields HW 5: Depth from Defocus
11/24   HW 6: Lightfields

Similar Courses in Other Universities

More Links

Conferences: ICCP 2011, ICCP 2010, ICCP 2009, SIGGRAPH, SIGGRAPH Asia, CVPR, ICCV, ECCV, ..

Top Calendar Links Slides Readings

Materials provided by us


Many of the course materials are modified from the excellent class notes of similar courses offered in other schools by Shree Nayar, Marc Levoy, Jinwei Gu, Fredo Durand, and others. The instructors are extremely thankful to the researchers for making their notes available online.