This repository implements classic computer vision algorithms for feature detection and matching, including Harris and SUSAN corner detectors, Hu invariant moments, and matching logic. Developed as part of an Image Analysis course project.
-
Harris Corner Detector
Gradient-based corner detection using the Harris response formula.
Adjustable sensitivity withk
and window size. -
SUSAN Corner Detector
Region-based detection with circular masks.
Uses geometric and brightness thresholds for robust detection. -
Hu Invariant Moments
Calculates 7 invariant descriptors for scale, rotation, and translation.
Used as local descriptors for feature patches. -
Feature Matching
Uses Hu moment descriptors to match features across images.
Matches are filtered using the nearest neighbor ratio test.
Visualizes matches by drawing correspondence lines between images.
- Noise Robustness: Tests detector performance under image noise.
- Rotation Invariance: Assesses feature matching after rotation.
- Stability Analysis: Computes percentage overlap between detections.
Console outputs include:
- Stability and noise scores (% overlap)
- Descriptor distances and ratio scores
- Image overlays showing matched points
pip install numpy opencv-python matplotlib pillow pandas
python main.py
📌 Sample Output
-
Overlaid images showing matched keypoints with colored lines
-
Printed Hu moment values
-
Stability and noise tolerance metrics for each method