ALIKE: Accurate and Lightweight Keypoint Detection and Descriptor Extraction
About
Existing methods detect the keypoints in a non-differentiable way, therefore they can not directly optimize the position of keypoints through back-propagation. To address this issue, we present a partially differentiable keypoint detection module, which outputs accurate sub-pixel keypoints. The reprojection loss is then proposed to directly optimize these sub-pixel keypoints, and the dispersity peak loss is presented for accurate keypoints regularization. We also extract the descriptors in a sub-pixel way, and they are trained with the stable neural reprojection error loss. Moreover, a lightweight network is designed for keypoint detection and descriptor extraction, which can run at 95 frames per second for 640x480 images on a commercial GPU. On homography estimation, camera pose estimation, and visual (re-)localization tasks, the proposed method achieves equivalent performance with the state-of-the-art approaches, while greatly reduces the inference time.
Related benchmarks
| Task | Dataset | Result | Rank | |
|---|---|---|---|---|
| Visual Localization | Aachen Day-Night v1.1 (Night) | Success Rate (0.25m, 2°)67.5 | 58 | |
| Visual Localization | Aachen Day-Night v1.1 (Day) | SR (0.25m, 2°)87.3 | 50 | |
| Visual Localization | Aachen Day-Night (day) | Recall @ (0.25m, 2°)85.7 | 26 | |
| Pose Estimation | ScanNet 1500 (test) | AUC@5°8 | 26 | |
| Visual Localization | Aachen Day (Night) | Success Rate (0.25m, 2°)81.6 | 19 | |
| Visual Localization | Aachen Day-Night 1.0 (Night) | AUC @ (0.25m, 2°)81.6 | 18 | |
| Visual Localization | Aachen Day-Night 1.0 (Day) | AUC (0.25m, 2°)85.7 | 14 | |
| Visual Localization | InLoc DUC2 | Recall (0.25m, 10°)25.2 | 14 | |
| Visual Localization | InLoc DUC1 | Success Rate (0.25m, 10°)29.3 | 14 | |
| Relative Camera Pose Estimation | Megadepth-1500 1.0 (test) | AUC@5°49.4 | 10 |