Introduction

This course serves as an introduction to Computational Photography, a study of the perceptual and technical aspects of the capture and depiction of reality by computational means.

Topics include basic image operations, filters, transformations and feature point detection. Applications such as creating panoramas, high-dynamic range images, image morphing, inpainting and retargeting will be used to illustrate applicability of the basic operations. There are programming assignments in this class, and a familiarity with Python is required. A working knowledge of linear algebra is helpful, and we will brush up against topics from calculus and probability as well.


Summer 2024 - Jay Summet

Weekly Schedule & Resources

Week 1: Welcome, OpenCV, Digital Images

Week 2: Pinhole Cameras, Rays


Week 3: Linear Filters: Correlation & Convolution


Week 4: Gradients & Edges


Week 5: Optics / Lenses / Sensors


Week 6: Frequency & Laplacian Pyramids


Week 7: Image Seams & Feature Point Matching


Week 8: Transforms, Panoramas, Warping & Morphing


Week 9: High Dynamic Range (HDR), Exposure Fusion & Stereo Vision


Week 10: Video, Video Stabalization, Projector-Camera Systems


Week 11: Video Textures, Final Exam, Project Presentations



Assignments



Student Portfolio

Project 1:

Project 2:

Project 3:

Group Image Stitches