Image feature matching
Classical feature detection and learned matching with a Siamese network.

Two approaches to matching
This COSC 83 project compares a classical pipeline with a learned matcher. The classical path uses Harris corners, SIFT descriptors, Lowe's ratio test, and RANSAC homography estimation. For the learned path, a two-tower ResNet18 shares weights between landmark images and predicts whether the pair depicts the same Oxford5k landmark.
Geometric verification
On the panorama pair, RANSAC retained 411 inliers from 420 tentative matches, for a 0.98 inlier ratio. The opening visualization shows the correspondences that survived the homography check.
Learned landmark pairs
The Siamese model was trained for 50 epochs with binary cross-entropy. On 1,335 held-out Oxford5k pairs, the recorded accuracy was 98.73%, with precision 0.9921, recall 0.9640, and F1 0.9778. The saved prediction sheet includes pairs the model labeled as same or different landmarks.

Training trace
The saved loss plot records the 50-epoch training run used for the held-out evaluation. OpenCV was used for SIFT descriptor computation and image I/O in the classical portion; the matching and homography stages remain part of the assignment implementation.
