← All posts
Tag

geometry

4 posts · browse all tags

Fundamentals

RANSAC: How Vision Algorithms Vote Away Outliers

RANSAC separates data into inliers and outliers by fitting models to random minimal samples and keeping the one with the largest consensus. Walked end to end on two vision problems: a walking-speed estimate that three false detections drag from 2.00 m/s to 0.78, and a basketball shot called from a 3-point parabola fit. Plus the one-line formula for how many samples you need, a hands-on lab, and real inlier ratios measured on the temple dataset.

computer-visiongeometryransacfundamentals
Read more →
Fundamentals

What Makes a Point Matchable? SIFT, From Pixels to 128 Numbers

How SIFT turns a patch of pixels into 128 numbers that survive a moving camera. Measured on a real photo: a 45-level difference-of-Gaussians pyramid finds 791 keypoints spanning 1.8 to 112 px, each becomes a 128-dimensional descriptor, and Lowe's ratio test turns 791 candidates into 237 trustworthy matches. The invariances are real but bounded: 98.8% precision through a 45° rotation, and the scene is lost by 38° of viewpoint change. Every number has an artifact.

computer-visiongeometrysiftfeatures
Read more →
Fundamentals

Structure from Motion, from Scratch: 47 Photos to a 3-D Temple in ~800 Lines of Python

How overlapping 2-D photos become 3-D points and camera poses: SIFT matching, the essential matrix, triangulation, PnP growth, and sparse bundle adjustment, built from scratch with OpenCV + SciPy. The pipeline registers all 47 Middlebury temple views at 0.25 px mean reprojection error, next to COLMAP's 0.30 px on the same images. Worked examples, three interactive labs, and the reconstruction growing image by image.

computer-visiongeometrysfmopencv
Read more →
Fundamentals

Camera Models, End to End: K, the Extrinsics, Calibration & PnP, with OpenCV

How a 3-D point becomes a pixel and back again: the intrinsic matrix K, the extrinsics R|t that place the camera in the world, Zhang calibration to 0.35 px reprojection error, and solvePnP recovering a 68-px-off pose to ~0. The math, two interactive labs, and runnable OpenCV in Python and C++.

computer-visioncamera-calibrationopencvgeometry
Read more →