Skip to content

abhinavtripathi95/fancy-keypoints

Repository files navigation

fancy-keypoints

Project for keypoint detector and feature extractor evaluator (Abhinav).

In this work, we compare the performance of interest point detectors and descriptors. We evaluate the detectors based on their repeatability and coverage. We also introduce matching ratios as a metric for measuring the performance of detectors, providing a comprehensive study. Descriptors are compared based on their ability to correctly estimate homography. The distintiveness and accuracy of descriptors is qualitatively assessed using the reprojection error of the nearest neighbor matches.

For more details, please see

What does this script do?

This script evaluates interest features on the full sequences of HPatches Dataset. The following features are supported as of now:

  1. SIFT (sift)
  2. ORB (orb)
  3. SFOP (sfop) - It has no descriptor
  4. SuperPoint (superpoint)
  5. D2Net (d2net)
  6. LIFT (lift)

Dependencies

  • Python 3.6+
  • OpenCV
  • PyTorch
  • h5py imageio imagesize matplotlib numpy scipy tqdm
  • For using LIFT: Goto this link and pip3 install -r requirements.txt (You may skip Theano.)
  • For using SIFT: You must have OpenCV with SIFT support
  • CMake

How to Run

  1. Run setup.sh. It will download the HPatches Dataset, setup SFOP and LIFT. It will also get the pre-trained models for LIFT, SuperPointNet and D2-Net.
  2. To evaluate the keypoint detectors, you have to extract them first:
python extract_features.py --features orb
  1. Now you can run the evaluation scripts for detectors and descriptors
python evaluate_kp_detector.py --features orb
python evaluate_descr.py --features orb
  1. The results will be stored in the results directory by the name of the features used.
  2. To see the result table, go to the results directory and run
python view_kp_results.py --features orb
python view_descr_results.py --features orb

About

Pipeline for Evaluating Keypoint Detectors and Descriptors on HPatches

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published