Computer Vision, understood — then shipped.
Condados teaches computer vision the practical way — interactive demos, the real math, and runnable Python & C++ for every core idea, plus honest benchmarks that prove it runs, not just works.
Read the latest blog posts, or follow along by email.
Latest
Explainers, interactive demos, and benchmarked projects — newest first.
Camera Models, End to End: Pinhole, Lens Distortion, Calibration & PnP — with OpenCV
How a 3-D point becomes a pixel and back again: the pinhole model and intrinsic matrix K, the extrinsics R|t, Brown–Conrady lens distortion (a corner can move 62 px), Zhang calibration to sub-pixel reprojection error, and solvePnP recovering a 68-px-off pose to ~0. The math, three interactive labs, and runnable OpenCV in Python and C++.
Image processing, computer vision, and computer graphics: one picture, three directions of the arrow
Three fields, one shared object — the digital image. Graphics turns a model into an image (forward), vision turns an image into a model (inverse), and image processing turns an image into a better image. Worked on a single red-ball scene, with a 1957→2026 timeline of how they split apart and re-merged.
How 2D Convolution Works on Images: Kernels, Filters, and the Math, Interactively
2D convolution is the operation behind blur, sharpening, edge detection — and every CNN. Slide a kernel, multiply, sum: see it happen step by step in an interactive demo, apply real kernels to a live image, and get the math plus runnable OpenCV in Python and C++.
Classification 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 — built on one running toy example (a backyard cat-cam), with the equations, the intuition, and scikit-learn.
From Photons to Pixels: Image Formation and Color Spaces, with OpenCV in Python and C++
How a camera turns light into an array of numbers — projection, sampling, quantization, the Bayer sensor — and the color spaces (RGB/BGR, grayscale, HSV, YCrCb, Lab) you convert between every day. The equations, plus runnable OpenCV in both Python and C++.
Image 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.
Get new posts by email
New explainers, interactive demos, and benchmarked projects as they publish — plus short, opinionated notes on computer vision and the AI world.