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