PATS: Patch Area Transportation with Subdivision for Local Feature Matching
About
Local feature matching aims at establishing sparse correspondences between a pair of images. Recently, detector-free methods present generally better performance but are not satisfactory in image pairs with large scale differences. In this paper, we propose Patch Area Transportation with Subdivision (PATS) to tackle this issue. Instead of building an expensive image pyramid, we start by splitting the original image pair into equal-sized patches and gradually resizing and subdividing them into smaller patches with the same scale. However, estimating scale differences between these patches is non-trivial since the scale differences are determined by both relative camera poses and scene structures, and thus spatially varying over image pairs. Moreover, it is hard to obtain the ground truth for real scenes. To this end, we propose patch area transportation, which enables learning scale differences in a self-supervised manner. In contrast to bipartite graph matching, which only handles one-to-one matching, our patch area transportation can deal with many-to-many relationships. PATS improves both matching accuracy and coverage, and shows superior performance in downstream tasks, such as relative pose estimation, visual localization, and optical flow estimation. The source code is available at \url{https://zju3dv.github.io/pats/}.
Related benchmarks
| Task | Dataset | Result | Rank | |
|---|---|---|---|---|
| Optical Flow Estimation | KITTI 2015 (test) | Fl-all9.68 | 91 | |
| Relative Pose Estimation | ScanNet 1500 pairs (test) | AUC@5°26 | 48 | |
| Visual Localization | Aachen Day-Night 1.1 (Day) | Success Rate (0.25m, 2°)89.6 | 28 | |
| Pose Estimation | ScanNet 1500 (test) | AUC@5°26 | 26 | |
| Visual Localization | Aachen Day-Night 1.1 (Night) | SR @ 0.25m, 2°73.8 | 22 | |
| Feature Matching | MegaDepth extreme-scale (test) | Matching Coverage90.8 | 20 | |
| Relative Pose Estimation | MegaDepth extreme-scale (test) | AUC @5°61.1 | 20 | |
| Visual Localization | Aachen Day-Night 1.0 (Night) | AUC @ (0.25m, 2°)85.7 | 18 | |
| Pose Estimation | ScanNet indoor 11 | AUC @5 deg26 | 9 | |
| Outdoor Pose Estimation | YFCC100M outdoor | Pose AUC @5°47 | 7 |