Learn computer vision
Reading orders: the Fundamentals track, where each unit builds on the ones before it, and the Metrics Handbook, which explains how models are scored. Pick the line that sounds like you.
Start here
Rather start with the ideas? These six
One post from each part of the track, in the order they depend on each other. Every one has an interactive lab, so you can move the numbers and watch what changes. After the six, pick the unit that interested you most on the map below.
- 1 Image processing, computer vision, and computer graphics: one picture, three directions of the arrow What computer vision is, and how it differs from image processing and graphics. Beginner 14 min read
- 2 An Image Is an Array: Shape, dtype, and Why OpenCV Hands You BGR What a computer holds when it holds a picture: a grid of numbers with a shape and a type. Beginner 7 min read
- 3 How 2D Convolution Works on Images: Kernels, Filters, and the Math, Interactively The one operation behind blur, sharpening, edges and every CNN. Beginner 8 min read
- 4 What Is an Edge? Step, Ramp and Roof, and the Two Derivatives That Find Them The first thing worth finding in an image, and why it is harder than it looks. Beginner 9 min read
- 5 What Is a Homography? Mapping one view of a plane onto another: document scanners, sports graphics, panoramas. Beginner 14 min read
- 6 Classification Metrics, From the Ground Up: Precision, Recall, F1, ROC and AUC How to tell whether a model is any good, starting from one table of counts. Beginner 9 min read
Computer Vision Fundamentals
48 articles so far, ordered by dependency: nothing appears before the thing it depends on. Greyed units are planned and not written yet.
Imaging
How light becomes an array of numbers.
How a scene is flattened onto a sensor, and what the glass does on the way.
4 lessons · unit overview
What the number in a pixel counts, and how far it can be trusted.
5 lessons · unit overview
What the array holds, where its samples sit, how finely they are written, and what the file did to them.
6 lessons · unit overview
Before this: Image sensing
Image processing
What you do to that array once you have it.
The one operation behind blur, sharpening, edges and every CNN.
1 lesson
Before this: An image is an array
Features
What in an image is worth pointing at, and how to describe it.
Finding where one thing stops and another begins.
5 lessons · unit overview
Before this: 2D convolution
Finding lines and circles by voting: the Hough transform, and fitting one line to what it finds.
4 lessons · unit overview
Before this: Edge detection
Finding the same point in two photos: scale space, keypoints, 128 numbers per point, and matches you can trust.
5 lessons · unit overview
Before this: Edge detection
Mapping one view of a plane onto another: the 3×3, how to fit it, and how to warp through it.
5 lessons · unit overview
Before this: Homogeneous coordinates
Geometry
From one camera to many, and back out to three dimensions.
One matrix from a 3-D point to a pixel, and running it backwards: calibration and pose.
4 lessons · unit overview
Before this: Image formation
3-D data and point clouds
What a depth sensor gives you, and how to work with it.
Recognition
From pixels to labels.
OpenCV in Practice
Build one real project per module with Python and OpenCV, running every line in your browser, and see where it works and where it fails. Each module links the Fundamentals units that explain why it works. The code runs in the page; the first run downloads about 20 MB.
Open an image, read its pixels and histogram, and fix its exposure, measured against a longer exposure of the same scene.
6 lessons · project overview
Why it works: Unit 1.2: Image sensing, Unit 1.3: The image as data
- 1 Open an image and read its pixels 3 min
- 2 Image histograms 3 min
- 3 Brightness and contrast 3 min
- 4 Gamma correction 3 min
- 5 Histogram equalization and CLAHE 3 min
- 6 Crop, resize and save 3 min
Colour spaces, masks, morphology and contours: pick out objects by colour, then count what the pipeline gets right and wrong.
5 lessons · project overview
Why it works: Unit 1.3: The image as data
- 1 Find the HSV range of an object 4 min
- 2 Colour masks with inRange 3 min
- 3 Erode, dilate, open and close 4 min
- 4 Find and filter contours 4 min
- 5 Where colour detection fails 6 min
The Computer Vision Metrics Handbook
Every score in computer vision, from the ground up. A self-contained book on evaluation with its own reading order: one confusion matrix grows into precision and recall, and those stretch over boxes, masks, identities through time, and images with no ground truth at all.
The handbook has its own page ›
- 01ClassificationClassification Metrics, From the Ground Up: Precision, Recall, F1, ROC and AUC
The confusion matrix and everything that falls out of it: precision, recall, F1, specificity, the precision/recall trade-off, PR and ROC curves, and AUC, all built on one running toy example (a backyard cat-cam), with the equations, the intuition, and scikit-learn.
Confusion matrixPrecisionRecallF1SpecificityPR & ROC curvesAUC - 02Multiclass & multilabelMulticlass and Multilabel Metrics: Micro, Macro, Weighted, and the Difference That Matters
How precision/recall/F1 scale past two classes: one-vs-rest, and the micro/macro/weighted averaging that decides whether rare classes count. Plus multilabel-specific metrics: subset accuracy, Hamming loss, and top-k, all on one running shelter-camera example, with scikit-learn.
One-vs-restMicroMacroWeightedSubset accuracyHamming lossTop-k - 03Object detectionObject Detection Metrics: IoU, AP, and the mAP Everyone Quotes
How detection is scored: IoU to decide a hit, greedy matching into TP/FP/FN, per-class Average Precision as the area under the precision–recall curve, and the COCO mAP@[.5:.95] you see in every paper, all on one running parking-lot example, with torchmetrics.
IoUAPPR curvemAP - 04SegmentationSegmentation Metrics: IoU, Dice, mIoU, and Panoptic Quality
Scoring masks instead of boxes: pixel IoU/Jaccard and the Dice coefficient (and why they're related), mIoU for semantic segmentation, mask-AP for instance segmentation, and Panoptic Quality for the unified task, on one running cat-mask example, with the equations and code.
IoU / JaccardDicemIoUMask APPanoptic Quality - 05Object trackingObject Tracking Metrics: MOTA, MOTP, IDF1, and HOTA
Tracking adds identity over time, so its metrics score two things at once: detecting objects and keeping their IDs consistent. MOTA, MOTP, ID switches, IDF1, and the modern HOTA that balances detection against association, on one running door-cam example, with the equations and motmetrics.
MOTAMOTPID switchesIDF1HOTA - 06Image generationImage Generation Metrics: FID, IS, KID, LPIPS, and CLIPScore
How do you score images with no ground truth? You compare distributions and use learned perceptual models: Inception Score, Fréchet Inception Distance, KID, LPIPS, and CLIPScore for prompt fidelity, on one running cat-generator example, with the equations, the catches, and torchmetrics.
Inception ScoreFIDKIDLPIPSCLIPScore
Model and edge-deployment articles have no reading order in the same way, since each one is a benchmark that stands alone, so they live under Projects.