CS784 - Image Synthesis
Semester 2 (Spring), 2023-2024
Overview
This course deals with the process of image formation or synthesis on a computer. We will begin with detailed discussions of the classical methods from Computer Graphics for rendering and cover this exciting and fast changing field through its modern inception in the era of neural rendering and generative models.
This is NOT a course in deep learning or machine learning. This is a course in visual computing. Students are expected to have done a first course in either of computer graphics, image processing or computer vision.
The course is meant to be a very hands-on course and will include a healthy mix of theory, programming assignments and assignments that require working in open source digital content creation (DCC) platforms like Blender, among others.
Teaser Video
Logistics
- Class Timings: Slot 14
- Office Timings: Right after class
- Classroom: SIC 301, Kanwal Rekhi Building
- Teaching Assistant: Anant Kumar
- Important: Academic Integrity of Assignment Submissions
Registration Instructions
- This is open to students from all departments who have a prior background in either of computer graphics, image processing, or computer vision. Prior background in introductory machine learning is also assumed. Note that none of these are stirctly enforced, but are strongly desired. If you take the course without requisite background, you do so at your own risk.
- You are not allowed to register for this courses if you have done another course that overlaps significantly in content with it. If you have a doubt about this, ask me.
- Any B.Tech., DD or IDDDP student who is in the 3rd year or above can take the course. Please do not take the course if you are an undergraduate student in the second year or earlier. Please make sure you have the requisite background as given above.
- Any M.Tech., M.S. or Ph.D. student can take the course. Please make sure you have the requisite background as given above.
- You can tag the course as whatever you want.
- Audits are not allowed.
Eligibility/Prerequisites
If you are curious about image synthesis at all - attend the first lecture.
-
Prior knowledge of the following is strongly recommended
- C/C++ and Python Programming.
- Basic Linear Algebra is desirable.
- Data structures and algorithms.
- Computer Graphics, Image Processing or Computer Vision.
- Introductory Machine Learning.
-
Learn how to use git.
-
Make sure you have a GitHub id. You will need it for the course.
Course Content
Here is a preliminary list of topics for the course. The contents may change as the course progresses.
-
Global Illumination and Rendering - Radiometry, Photometry, Ray-tracing, Surface reflectance and BRDFs, Monte Carlo Path Tracing - Importance Sampling, Metropolis Light Transport, Photon Mapping, Ambient Illumination, Shaders, Volume Rendering
-
Image-based Rendering - Planar panoramas, View Morphing, Novel View Synthesis, Plenoptic function, Lightfields,
-
Neural and differentiable Rendering - Neural scene representation and rendering, Neural Radiance fields, Differentiable rendering, Inverse rendering, Image synthesis from text, audio and other images, generative models for images
-
Image Synthesis for Virtual and Augmented Reality - Spherical (360) Panoramas, Neural Antialiasing, Latency, Vergence-Accommodation Conflict and other causes of discomfort in VR, Foveated rendering
-
Real or synthetic - Statistics of real images, Methods for spotting fake images, Responsible use of synthesized images
Lecture Schedule
Lecures slides for the course can be found on IIT Bombay Moodle.
Additional reading material for all topics can be found here.
Date | Topics | Tasks and Resources |
---|---|---|
Jan 5 | Introduction to the Course | |
Jan 9 Jan 12 |
Digital Light - Pixels, Light and Colour | For additional readings, see here. |
Jan 15 Jan 19 Jan 23 |
Ray Tracing | Assignment 1 announced on Jan 23. |
Jan 30 | Radiometry | Assignment 1, Part 1 due today. |
Feb 2 | BRDF | For additional readings, see here. |
Feb 6 Feb 9 |
Monte Carlo Path Tracing | For additional readings, see here. Read sections from the PBR book on estimator efficiency increasing methods and sampling of multidimensinal distributions. |
Feb 13 | Ambient Occlusion, Photon Mapping and Point-based GI | Assignment 1, Part 2 deadline is over. Assignment 2 has been announced. |
Feb 16 | Volume Graphics | |
Feb 20 | Doubts Clearing Class | |
Feb 28 | Mid Semester Exam | CC 105, 2:30pm to 4:30pm |
Mar 5 | Image Based Rendering | |
Mar 12 | Lightfields | Read Understanding other cameras using Lightfields. See here. |
Mar 15 | Neural Radiance Fields | Read the original paper by Mildenhall et al. and Volume Rendering for NeRFS. See here. |
Mar 19 | Instant NGP | Read the original paper by Muller et al. See here. |
Mar 23 Mar 26 |
Augmented and Virtual Reality | |
Mar 29 Apr 2 |
Image Synthesis for MR | For additional readings, see here. |
Apr 5 | 3D Gaussians for Rendering Radiance Fields | Read the original paper by Kerbl et al. See here. |
Assignments and Homeworks
-
Important: Academic integrity is paramount. Any dishonesty will be severely dealt with.
-
Please read my views on academic integrity of assignment submissions before submitting anything to me.
Assignments for the course can be found on IIT Bombay Moodle
Resources
-
Recorded Videos on YouTube for Computer Graphics (CS475/CS675)
- Recorded videos for the basic course on Computer Graphics can be found on YouTube here.
-
Books
- Physically Based Rendering (4ed, 2023) 302226 from theory toi Implementation, Matt Pharr, Wenzel Jacom and GregHumphreys, MIT Press.
- Principles of Digital Image Synthesis (1995), Vol 1 & 2,Andrew Glassner, Morgan Kaufmann.
- Computer Vision: Algorithms and Applications (2ed, 2023), Richard Szeliski, Springer.
- Understanding Deep Learning (2023), Simon J. D. Prince, MIT Press.
-
Online Readings
- Neural Rendering
a. Course on Neural Rendering from CVPR 2020
- Neural Rendering
-
Resources
-
Pixels, Light and Colour
- A Biography of the PIXEL, Alvy Ray Smith
- Introduction to Light, Color and Color Space
- CIE XYZ and xyY Color Spaces Douglas A. Kerr
- Perceptually Uniform Color Models, interactive visualization, Max Bo
- Causes of Color
-
Ray Tracing
-
Radiometry and BRDF
-
Radiosity
- SIGGRAPH Education Radiosity Slide Set
- Modeling the interaction of light between diffuse surfaces, Goral, Torrance, Greenberg and Battaile, SIGGRAPH 84.
- The hemi-cube: a radiosity solution for complex environments, Cohen and Greenberg, SIGGRAPH 85.
- RADIOSITY: An Illuminating Perspective, Drucker, Written Doctoral Exam
-
Monte-Carlo Raytracing
-
Ambient Occlusion, Photon Mapping, Point-based GI
-
LightFields, Neural Rendering
- Light field rendering, Marc Levoy and Pat Hanrahan, SIGGRAPH 1996.
- The Lumigraph, Gortler et al. SIGGRAPH 1996.
- Dynamic Reparameterized Lightfields, Isaksen et al., SIGGRAPH 2000.
- Understanding other cameras using Lightfields (discussed in class), Levin et al., ECCV 2008
- Refocusing and Lightfields, Fredo Durand and Bill Freeman, Slides from course on computational photography
- Light Field Imaging: The Future of VR-AR-MR-Part 1, Paul Debevec
- Why is Neural Rendering so Cool?, Talk by Matthias Neißner, TUM.
- Neural Radiance Fields Mildenhall et al., ECCV 2020
- Volume Rendering for NeRFS, Tagliasacchi and Mildenhall, 2022
- Understanding and Extending Neural Radiance Fields, Talk by Jonathan T. Barron, Google Research.
- Neural Fields in Computer Vision, CVPR 2022 Tutorial.
- Instant NGP, Muller et al., SIGGRAPH 2022.
-
Augmented Reality
-
3D Gaussians for Radiance Field Reconstruction
- Surface Splatting, Zwicker et al., SIGGRAPH 2001
- EWA Volume Splatting, Zwicker et al., IEEE VIS 2001
- 3D Gaussians for Real-Time Radiance Field Rendering, Kerbl at al., SIGGRAPH 2023
-