Skip to main content
This project builds a set of supplemental tutorial sections for Foundations of Computer Vision by Antonio Torralba, Phillip Isola, and William T. Freeman. The book explains almost every idea with a figure or a plot. Your job is to reproduce those figures as runnable code, so each concept becomes something you can execute, change, and inspect for yourself.

The task

Pick a chapter from the list below and write a tutorial section that reproduces its key figures. Treat the book as the specification: for every plot the chapter uses to make a point, write the code that regenerates it from scratch and explain the concept the figure illustrates. The result is a companion page that sits next to the book and moves a reader from “read the figure” to “run the figure”.

What a finished section looks like

  • It reproduces the chapter’s main figures with runnable code.
  • It states the concept each figure demonstrates and the math behind it.
  • It runs end to end, so you can change a parameter and watch the plot update.
Follow the conventions already used across this site:
  • One chapter per section, each in its own directory with its own images/ output folder.
  • Markdown cells and inline comments never discuss the plotting library or the toolchain (matplotlib, headless rendering, install steps, and the like). See the coding guidelines below for what they should emphasize.
  • Pure-plotting cells are tagged so the page shows the figure but hides the drawing code.
  • The prose addresses you directly and stays evergreen.

Coding guidelines

  • Write all computational code in PyTorch and libraries built on the PyTorch foundation, such as Kornia for differentiable computer vision. Express the math each figure illustrates with tensors and these libraries rather than NumPy or framework-specific equivalents, so every section runs the same way on CPU or GPU.
  • Markdown cells and inline comments explain the code first and the concept second: describe what each block does, then connect it back to the idea the figure illustrates.

Where your work goes

Submit your work to the pantelis/eng-ai-agents repository through a fork and pull request.
  1. Fork pantelis/eng-ai-agents to your own account and clone your fork.
  2. Branch. Create one branch per section, named mit-book-chapter-<chapter>-<section>. For chapter 12, section 5, the branch is mit-book-chapter-12-5.
  3. Location. Place every notebook under the notebooks/ folder.
  4. Pull request. Push the branch to your fork and open a pull request against main of pantelis/eng-ai-agents.

Chapters to treat

The chapters below are grouped by the parts of the book. There are 28 chapters in scope. The Assignee column records who has claimed each chapter; all 28 are currently claimed. Any chapter shown as Open is still available, so add your name in the course channel to take it.

Image formation

ChapterTitleAssigneeStatus
5ImagingIshan TandonClaimed
6LensesKimberly MilnerClaimed
7Cameras as linear systemsIshan TandonClaimed
8ColorIshan TandonClaimed

Foundations of learning

ChapterTitleAssigneeStatus
13Neural networks as distribution transformersKimberly MilnerClaimed

Image processing

ChapterTitleAssigneeStatus
15Linear image filteringKimberly MilnerClaimed
16Fourier analysisKimberly MilnerClaimed

Sampling and multiscale image representations

ChapterTitleAssigneeStatus
20Image sampling and aliasingNazib KhanClaimed
21Downsampling and upsampling imagesNazib KhanClaimed
22Filter banksNazib KhanClaimed
23Image pyramidsNazib KhanClaimed

Neural architectures for vision

ChapterTitleAssigneeStatus
24Convolutional neural netsKimberly MilnerClaimed
26TransformersKimberly MilnerClaimed

Generative image models and representation learning

ChapterTitleAssigneeStatus
30Representation learningShaury Pratap Singh (Nazib Khan contributing)Claimed
34Conditional generative modelsShaury Pratap SinghClaimed

Understanding geometry

ChapterTitleAssigneeStatus
38Representing images and geometryKaushik KachireddyClaimed
39Camera modeling and calibrationRuimeng YangClaimed
40Stereo visionRuimeng YangClaimed
41HomographiesRuimeng YangClaimed
42Single view metrologyKaushik KachireddyClaimed
43Learning to estimate depth from a single imageRuimeng YangClaimed
44Multiview geometry and structure from motionShaury Pratap SinghClaimed
45Radiance fieldsRuimeng YangClaimed

Understanding motion

ChapterTitleAssigneeStatus
46Motion estimationRuimeng YangClaimed
473D motion and its 2D projectionKaushik KachireddyClaimed
48Optical flow estimationShaury Pratap SinghClaimed
49Learning to estimate motionShaury Pratap SinghClaimed

Understanding vision with language

ChapterTitleAssigneeStatus
51Vision and languageShaury Pratap Singh (Nazib Khan contributing)Claimed

Reference

Foundations of Computer Vision, Antonio Torralba, Phillip Isola, and William T. Freeman, MIT Press. Read it online at visionbook.mit.edu.