Computational Photography (CS 445) – Fall 2022

  

Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: <i>The Key to the Fields</i> (Magritte 1936)

  Instructor:  Derek Hoiem

 

  Lectures: Tues/Thurs 11-12:15 DCL 1320

 

  Syllabus

  Take-home questions

  Lecture Recordings (previous recordings)

  CampusWire Discussion

  Canvas Submission

 

 

 

  Textbook: Computer Vision: Algorithms and Applications by Rick Szeliski

                                                                                                           

  

   Projects

Project 1: Hybrid Images

Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: leopard elephant

Project 2: Image Quilting

    Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: C:\Users\Hoiem\Documents\Classes\ComputationalPhotography - Fall 2012\projects\quilting\face_toast_cropped.png

   

Project 3: Gradient Domain Fusion

Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: cloning_teaser

 

Project 4: Image-based Lighting

https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQJ6tcY1JugjgyMMpZMj9BgU6OaGyIv8jL4T8J-Qsgnn0UOrHT2tw

 

 

Project 5: Video Stitching

 

 

Final Project

Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: Description: http://t2.gstatic.com/images?q=tbn:ANd9GcSEXEDpOJHSX2MOS0mvolJmNhoGKiQZ6t4ky5dyEio1mph1-L1x

 

 

 

  

  Class Schedule  

Week

Date

Topic

Link

Reading/Notes

1

Aug 23 (Tues)

Introduction

pdf ; ppt

Jupyter notebook tutorial vid ipynb cc

Numpy tutorial vid cc

Linear algebra tutorial vid  cc

 

 

Basics of Working with Images

 

 

1

Aug 25 (Thurs)

Pixels and image filters

pdf ; ppt

S3.2 (linear filtering)

S3.3 (non-linear filtering)

2

Aug 30 (Tues)

Thinking in frequency

pdf ; ppt

S3.4 (fourier transforms)

S2.3.3 (compression)

FFT Demo (original) ; Python demo by Jae

2

Sep 1 (Thurs)

Templates and image pyramids

pdf ; ppt

S3.5.2 (image pyramids)

S8.1.1 (pyramid alignment)

Other reading:

   Burt Adelson 1983 – The Laplacian Pyramid

3

Sep 6 (Tues)

Light and color

pdf ; ppt

S2.2 (light), S2.3.2 (color)

or Forsyth and Ponce Ch 3

3

Sep 8 (Thurs)

Histograms and color adjustment

pdf ; ppt

S3.1 (histograms and color adjustment)

Color balance demo

 

Sep 12 (Mon)

Project 1 (Hybrid images) due

 

 

 

The Digital Canvas: Coloring, Blending, Cutting, Synthesizing, and Warping Images

 

 

4

Sep 13 (Tues)

Growing: Texture synthesis and hole filling

pdf ; ppt

Texture Synthesis – Efros Leung (1999)

Image Quilting – Efros Freeman (2001)

Image Analogies – Hertzmann et al. (2001)

Patch Match – Barnes et al. (2009)

4

Sep 15 (Thurs)

Cutting: Intelligent Scissors and Graph Cuts

pdf ; ppt

Intelligent Scissors – Mortenson Barret (1995)

GrabCut – Rother et al. (2004)

5

Sep 20 (Tues)

Pasting: Compositing and blending

pdf ; ppt

Poisson Image Editing – Perez et al. (2003)

Burt and Adelson, A multiresolution spline with application to image mosaics, ACM ToG (1983) 

5

Sep 22 (Thurs)

Image warping (translation, rotation, scale, etc.)

pdf ; ppt

S3.6 (warping)

Alignment demo

 

Sep 26 (Mon)

Project 2 (Image quilting) due

 

 

6

Sep 27 (Tues)

Image morphing

pdf ; ppt

 

 

Modeling the Physical World

 

 

6

Sep 29 (Thurs)

The Pinhole Camera

pdf ; ppt

S2.1.5 (3D to 2D projection)

7

Oct 4 (Tues)

Single-view Metrology + Camera Model continued

pdf ; ppt

HoiemSavarese-SVG Chapter

7

Oct 6 (Thurs)

Single-view 3D Reconstruction

pdf ; ppt

Tour into the picture (Horry et al. 1997)

8

Oct 11 (Tues)

Midterm Review

Derek away Oct 10 (office hour Oct 11 3-4)

pdf ; ppt

Practice exam, solutions

8

Oct 13 (Thurs)

Midterm Exam (on PrairieLearn)

Start exam between 9:30am and 10pm

exam link

 

9

Oct 18 (Tues)

Image-based Lighting: ray tracing, environment maps, light probes

pdf ; ppt

Reading (do read this):

Debevec, Image-based Lighting Tutorial (2005)

9

Oct 20 (Thurs)

Image-based Lighting cont.: HDR light probes, relighting

pdf ; ppt

Optional Reading:

Debevec & Malik, “Recovering High Dynamic Range Radiance Maps from Photographs”, SIGGRAPH 1997

Debevec, Rendering Synthetic Objects in Real Scenes, 1998

Blender demo recording

10

Oct 24 (Mon)

Project 3 (Gradient domain fusion) due

Derek away Oct 23-26 (no office hour)

 

 

 

 

Correspondence and Recognition

 

 

10

Oct 25 (Tues)

Matching and alignment with interest points

Derek away, watch Interest Points recording

pdf ; ppt

Grauman/Leibe Draft Chapter on Local Features Optional: Lowe - SIFT paper

10

Oct 27 (Thurs)

Automatic Photo Stitching and RANSAC

pdf ; ppt

Brown Lowe 2007 ; S9 (stitching);  slides

11

Oct 31 (Mon)

Final Project Proposal due

 

 

11

Nov 1 (Tues)

Retrieval, reconstruction, and AR

pdf ; ppt

Grauman/Leibe Draft Visual Vocabularies; S14.3

Nister Stewenius 2006, Recognition w/ Vocab Tree

11

Nov 3 (Thurs)

Opportunities of scale, encoders-decoders

pdf ; ppt

Reading: Hays & Efros, Scene Completion Using Millions of Photographs

12

Nov 7 (Mon)

Project 4 (Image-based lighting) due

 

 

12

Nov 8 (Tues)

Election Day (no classes)

 

 

 

 

More Topics of Interest

 

 

12

Nov 10 (Thurs)

Generating and detecting fakes  

pdf ; ppt

Pix2pix, Cycle GAN, StyleGAN

Deep fakes in news

13

Nov 15 (Tues)

How the Kinect works

pdf ; ppt

 

13

Nov 17 (Thurs)

Neural Radiance Fields (NeRF)

pdf ; ppt

Mildenhall et al. 2020 - NeRF

14

Nov 19-27

Fall Break

 

 

 

Nov 28 (Mon)

Project 5 (Video stitching) due

 

 

15

Nov 29 (Tues)

Computational approaches to cameras

pdf ; ppt

Adelson & Bergen, The Plenoptic Function and the Elements of Early Vision (1991)

Ng et al., Light Field Photography with a Hand-held Plenoptic Camera (2005)

Levin et al., Image and Depth with a Coded Aperture (2007)

15

Nov 31 (Thurs)

Video Magnification

pdf ; ppt

 

16

Dec 6 (Tues)

Last day – cutting edge and wrap up

pdf ; ppt

 

Dec 9

Final Exam (on PrairieLearn)

exam link

Practice exam, solutions

 

Dec 11 (Sun)

Final Project due (cannot be late)

 

 

 





 


 

 

 

Credits and Course Notes

I am grateful for the many preceding efforts to design excellent courses and course notes for this topic.  I am particularly indebted to Alyosha Efros for borrowing much of his course and project design, to Rick Szeliski for making his book available, to James Hays for course suggestions and materials, and to Steve Seitz, Lana Lazebnik, Silvio Savarese, among others for their slides (as credited within).  Anyone who would like to use my slides is more than welcome; please do credit the original sources where appropriate.