💬Comments welcome. To leave a note, select any text and click the note / highlight button that pops up — or open the panel with the tab at the top-right (‹). Notes are visible only inside our private review group.
Computational Photography, an AI-powered Slopendium
master table of contents — parts and chapters · full collapsible outline →
24 parts · 195 chapters · 105 drafted · blue = drafted, links open the chapter; grey = outline only
1 INTRO
  1. 1.1 From Digital to Computational Photography
  2. 1.2 How to read this book
  3. 1.3 Basic intro to digital images
  4. 1.4 Problem sets
2 FUNDAMENTALS OF PHOTOGRAPHY
  1. 2.1 Light and physics
  2. 2.2 Pinhole image formation and linear perspective
  3. 2.3 Lens image formation
  4. 2.4 Image measurements as integrals
  5. 2.5 Sensors: photosites, CCD vs CMOS
  6. 2.6 Noise, signal-to-noise ratio and dynamic range
  7. 2.7 Multiple view geometry
  8. 2.8 Human (and animal) vision and color
  9. 2.9 Color technology
  10. 2.10 Photography and camera 101
3 BASIC IMAGE PROCESSING AND ISP
  1. 3.1 Image representation
  2. 3.2 Developing, Testing and Debugging
  3. 3.3 Point operations
  4. 3.4 Histograms
  5. 3.5 Tone mapping
  6. 3.6 Neighborhood operations and convolution
  7. 3.7 Fourier
  8. 3.8 Resampling
  9. 3.9 Linear pyramids and wavelets
  10. 3.10 Image metrics
  11. 3.11 Denoising
  12. 3.12 Demosaicking
  13. 3.13 Auto-exposure and auto white balance
  14. 3.14 File formats and compression
  15. 3.15 Recap ISP, non-destructive editing:
4 COMPUTATIONAL TOOLS
  1. 4.1 Linear Inverse Problems and Regression
  2. 4.2 Efficient solvers
  3. 4.3 Machine learning
  4. 4.4 Deep learning
  5. 4.5 Generative AI and diffusion
5 EDGES MATTER
  1. 5.1 Poisson image editing
  2. 5.2 Bilateral filtering
  3. 5.3 Locally adaptive regression kernel (LARK)
  4. 5.4 NL-means (non-local means)
  5. 5.5 Local Laplacian filters
  6. 5.6 Edge-preserving optimization — colorization
  7. 5.7 Guided image filtering
  8. 5.8 Seam optimization
  9. 5.9 Recap: which edge-aware technique when?
6 WARPING AND MORPHING
  1. 6.1 Warping and resampling
  2. 6.2 Resampling for complex spatial transformsoutline
  3. 6.3 Morphing
  4. 6.4 Morphable modelsoutline
  5. 6.5 Shape-preserving warpingoutline
  6. 6.6 Video in-betweeningoutline
  7. 6.7 Perspective distortion and its correction
7 MATCHING PIXELS ACROSS SPACE AND TIME
  1. 7.1 Sparse matchingoutline
  2. 7.2 Feature tracking
  3. 7.3 Robustness: the ratio test and RANSACoutline
  4. 7.4 Deep learning approaches to sparse matchingoutline
  5. 7.5 Misc: fast matchingoutline
  6. 7.6 Image alignmentoutline
  7. 7.7 Optical flow
  8. 7.8 Deep learning approaches to optical flowoutline
8 SINGLE IMAGE COMPUTATIONAL PHOTOGRAPHY
  1. 8.1 Recap: tone mapping
  2. 8.2 Super-resolution and image priors
  3. 8.3 Blind deblurring
  4. 8.4 Dehazing
  5. 8.5 Style transfer
  6. 8.6 Inpainting, texture synthesis
  7. 8.7 Patch match
  8. 8.8 Compositing, segmentation and matting
  9. 8.9 Illumination related effects in a single image
  10. 8.10 Non-photorealistic rendering
9 OPTICS, LENSES, AND ABERRATION CORRECTION
  1. 9.1 Aberrations and optical challenges
  2. 9.2 Aberrations correction
  3. 9.3 Lens optimization
  4. 9.4 A short bestiary of classic designs
  5. 9.5 Special optics
  6. 9.6 Focus, autofocus
  7. 9.7 Depth of field
  8. 9.8 Fake (synthetic) depth of fieldoutline
  9. 9.9 Glare suppression
  10. 9.10 Optical stabilization
  11. 9.11 The eye as an optical instrument: vision and its correction
10 MULTIPLE EXPOSURE IMAGING
  1. 10.1 Denoising by averaging
  2. 10.2 HDR merging
  3. 10.3 Application to cell phones: HDR+ and burst imaging
  4. 10.4 Manual panorama stitching from multiple views
  5. 10.5 Automatic panorama stitching from multiple views and feature matching
  6. 10.6 Blending
  7. 10.7 Bells and whistles
  8. 10.8 Continuous panoramas (e.g. on cell phones)
  9. 10.9 Focal stacks and depth of field extension
  10. 10.10 Hyperspectral imaging, color wheels
  11. 10.11 Intrinsic images with time lapse
11 MANY IMAGES AND PHOTO COLLECTIONS
  1. 11.1 Database, Lightroom-styleoutline
  2. 11.2 Retrievaloutline
  3. 11.3 Auto curationoutline
  4. 11.4 Life logging camerasoutline
  5. 11.5 Lucky imaging (planetary / lunar astro)outline
  6. 11.6 Inpainting Hays and Efrosoutline
  7. 11.7 Photo tourismoutline
  8. 11.8 Photobiosoutline
  9. 11.9 Blind cameraoutline
  10. 11.10 Anticliche cameraoutline
  11. 11.11 Pix 2 GPSoutline
  12. 11.12 Personalized priorsoutline
  13. 11.13 Photomosaics, Salavonoutline
12 VIDEO
  1. 12.1 Motion blur and temporal sampling
  2. 12.2 Time-lapse photographyoutline
  3. 12.3 Video compression and motion compensation
  4. 12.4 Video magnification
  5. 12.5 Video stabilization and rolling-shutter correction
  6. 12.6 Frame interpolation and slow-motion synthesis
  7. 12.7 Video editing
13 ADVANCED COMPUTATIONAL PHOTOGRAPHY ON THE BLEEDING EDGE
  1. 13.1 Exotic / advanced opticsoutline
  2. 13.2 Coded imaging,outline
  3. 13.3 Light field and multi-aperture imagingoutline
  4. 13.4 Extra sensors and non-visual dataoutline
  5. 13.5 Computational illuminationoutline
  6. 13.6 Computational sensorsoutline
  7. 13.7 More temporal and Video stuffoutline
  8. 13.8 De-weathering (fog, rain)outline
14 3D AND DEPTH
  1. 14.1 What "depth" means, and where it comes fromoutline
  2. 14.2 Monocular depth estimation (one image → depth)outline
  3. 14.3 Single-image 3-D: tour into the picture, photo pop-up, 3-D Ken Burnsoutline
  4. 14.4 Multi-view 3-D reconstruction: the classic pipelineoutline
  5. 14.5 Photos → radiance fields and Gaussian splatting (NeRF, 3DGS)outline
  6. 14.6 Feed-forward (amortized) 3-D: skip the per-scene optimizationoutline
  7. 14.7 Re-photographyoutline
  8. 14.8 The landscape, and is 3-D a "fake task"?outline
  9. 14.9 3-D displaysoutline
15 REVEALING THE INVISIBLE
  1. 15.1 Near-infrared (NIR) photographyoutline
  2. 15.2 Accidental camerasoutline
  3. 15.3 Motion and video magnificationoutline
  4. 15.4 Visual microphoneoutline
  5. 15.5 Corner cameraoutline
  6. 15.6 Active non-line-of-sightoutline
  7. 15.7 Passive non-line-of-sightoutline
  8. 15.8 Mm-wave, wifioutline
16 ADJACENT FIELDS AND APPLICATIONS
  1. 16.1 Modern sensorsoutline
  2. 16.2 Astrooutline
  3. 16.3 X-rayoutline
  4. 16.4 Medicaloutline
  5. 16.5 Microscopyoutline
  6. 16.6 Mm-waveoutline
  7. 16.7 Music, soundoutline
  8. 16.8 Fluorescenceoutline
  9. 16.9 Opto-acousticoutline
  10. 16.10 Ultrasoundoutline
  11. 16.11 Aerial imagingoutline
  12. 16.12 Computer visionoutline
  13. 16.13 Robotics, drivingoutline
17 HUMAN FACTORS
  1. 17.1 Human factors and the art of photography
  2. 17.2 Ethics of computational photography
  3. 17.3 Computational models of perceptionoutline
  4. 17.4 Spatial (and spatio-temporal) visionoutline
  5. 17.5 User studiesoutline
  6. 17.6 Accessibility: photography by and for blind usersoutline
  7. 17.7 The social and personal practice of photographyoutline
18 IMAGE FORENSICS AND AUTHENTICATION
  1. 18.1 Image Forensicsoutline
  2. 18.2 Authentication and Provenance (C2PA)outline
19 SYSTEMS
  1. 19.1 Programmable camerasoutline
  2. 19.2 Image processing librariesoutline
  3. 19.3 Lightroom-style raw developersoutline
  4. 19.4 Photoshop-style editorsoutline
  5. 19.5 Networking and image transportoutline
  6. 19.6 Photography programming on phonesoutline
20 PERFORMANCE ENGINEERING AND HALIDE
  1. 20.1 8-bit and fixed-point arithmeticoutline
  2. 20.2 Algorithmic speedupsoutline
  3. 20.3 Performance engineering and scheduling (Halide)outline
  4. 20.4 Hardware backends: GPU, NPU, DSPoutline
21 CONCLUSIONS, DISCUSSION
  1. 21.1 Recap in contextoutline
22 APPENDICES
  1. 22.1 Refreshers
  2. 22.2 Problem Set 0 — Environment and C++ basics
  3. 22.3 Problem Set 1 — Image class, point operations, and color
  4. 22.4 Problem Set 2 — Convolution and the bilateral filter
  5. 22.5 Problem Set 3 — Denoising and demosaicking
  6. 22.6 Problem Set 4 — High dynamic range
  7. 22.7 Problem Set 5 — Resampling, warping, and morphing
  8. 22.8 Problem Set 6 — Homographies and manual panoramas
  9. 22.9 Problem Set 7 — Automatic panoramas
  10. 22.10 Problem Set 8 — Non-photorealistic rendering
  11. 22.11 Problem Set 9 — Make-your-own, video, and ethics
  12. 22.12 EXIF and image metadata
  13. 22.13 DNG: the Digital Negative
  14. 22.14 Datasets
  15. 22.15 A camera-feature wish list
  16. 22.16 How this book was created
  17. 22.17 The course tutor: a local, book-grounded AI teaching assistant
  18. 22.18 The semi-automatic grading system
23 BIBLIOGRAPHY
24 MISSING STUFF, BUGS
  1. 24.1 Tone mapping doesn't have its own chapter. Just an application of edge aware stuff.outline
  2. 24.2 Denoising by averaging is after basic denoisingoutline
  3. 24.3 Photomosaics, my self organizing mapsoutline
  4. 24.4 Rephotographyoutline
  5. 24.5 Extreme low lightoutline
  6. 24.6 Perspective disortionoutline
  7. 24.7 Tilt shift,outline
  8. 24.8 Connectivityoutline
  9. 24.9 Misc.outline
Back matter
📖 Glossary🔤 Index📚 Bibliography