Two overlapping photos, one wide scene. Calibrate the geometry yourself, watch RANSAC hunt for consensus one step at a time, break the pipeline on purpose three different ways, then blend the seam like a professional stitcher would.
Photo A keypointPhoto B keypointInlier / consensusOutlier / failureRANSAC hypothesisManual calibration point
Ready.
Live Explanation
Loading…
Click a landmark on the left half, then click the same landmark on the right half — repeat for at least 4 pairs. Points are draggable afterward.
Live 3×3 Homography (hover any cell)
Iteration
0
Best consensus
0%
4 gold hypothesis points get sampled, a warped boundary is drawn from them, then every other match is tested — green line if it agrees, red dotted cross if it does not.
Feather width
50px
Misalignment
0px
Blend-weight curve across the seam
True continuous live-stream stitching needs frame-perfect tracking this browser preview can't guarantee reliably — instead, capture two real shots and this lab runs the exact same pipeline on them.
Where homography-based stitching actually breaks▾
4 points, 8 unknowns
A homography has 8 degrees of freedom (h33 is fixed to 1). Each point pair gives 2 equations, so 4 pairs give exactly 8 — the minimum needed to solve it, and exactly what both manual calibration and each RANSAC hypothesis use.
Repetition breaks descriptors, distortion breaks the model
Repetitive texture makes many patches look identical, so the ratio test can't tell which match is real. Lens distortion is a genuinely non-linear warp — a projective homography, being linear in this sense, can only ever approximate it, worse toward the edges.
Why blend by frequency
Low frequencies (overall brightness/colour) can blend across a wide band with no visible harm. High frequencies (sharp edges) blended too widely just smear detail — narrowing the high-frequency blend keeps edges crisp while still hiding the seam.
Predict, then verify
In Click-to-Calibrate, you place your 4th point pair almost exactly on top of your 3rd pair (barely any distance apart) instead of spreading points across the image. What happens to the computed homography?