Advanced Computer Graphics - Computational Photography (Winter 2011)

Instructor: Herb Yang

Office hours: by appointment

Lecture times: TR:9:30-10:50

Place: CSC-B43

The goal of this course is to discuss a recently introduced topic in computer graphics, namely, computational photography, which is an area at the intersection of computer graphics and computer vision. Computational photography refers to techniques that enhance traditional photography using computational methods. Several classes of techniques are included, namely, 1) synthesis using multiple cameras, 2) matting and environment matting, 3) high dynamic range imaging, 4) gradient imaging, 5) multiple shot imaging with adjustable parameters and 6) image debluring techniques.

Course Outline

Topics that are closely related to my research are discussed. Tentative topics may include the following - both the order and the selection may change:

  1. Synthesis using multiple cameras - geometry of multiview system, lightfield, lumigraph, stereo, novel view synthesis

  2. Matting and environment matting - techniques for matting include blue screen, Bayesian, Poisson, optimized based, closed form solution, and robust method. Techniques for environment matting include environment matting and compositing, image-based method, wavelet based method and frequency-based method

  3. High dynamic range imaging and tone mapping -Techniques include methods to create high dynamic range images and videos and different tone mapping techniques

  4. Gradient imaging - What is gradient imaging? Methods to manipulate gradient images.

  5. Multiple shot imaging with adjustable parameters - Techniques include multiple flash photography, multiple exposure/aperture photography

  6. Image deblurring techniques - Techiques include deblurring from a single image and from multiple images or video


Each student must complete 5 assignments (10% per assignment). For each assignment, the student must pick a paper from a provided list that is relevant to the current topic of discussion in the course, read, thoroughly understand, summarize,  present and discuss the paper in class at the scheduled time.  The summary (about 2-4 pages long) must be submitted to me at least one day in advance of the presentation. Depending on the number of students in the class, each presentation is expected to be approximately 20-30 mins. long. The evaluation of an assignment is based on the understanding conveyed in the submitted report.

There is a penalty of 10% per day for all late submissions.


There is no exam for the course.


Each graduate student must complete a term project individually.   The term project must be on implementing a recently published algorithm. While new algorithms are not expected to be created in the projects, students are strongly encouraged to exercise their creativity to do so. Details on the projects will be given in class in due time. The student is required to present the results of the project near the end of term at the scheduled time. In addition, a demo must be given to me at a scheduled time. Completion of the project is a requirement for the completion of the course. Failure to submit your project before the last day of classes will result in a failing grade, i.e. F.

Late submission will not be accepted.


The proportions of the final mark associated with the different components of the course are given as follows:







Academic Integrity

Students are expected to following the guidelines as specified by the University regarding academic integrity (see 30.3.2). Violations will be handled according to the procedures required by the University.