SCC-Loc: A Unified Semantic Cascade Consensus Framework for UAV Thermal Geo-Localization
Organizations: College of Systems Engineering, National University of Defense Technology, Changsha 410073, China
Abstract
Cross-modal Thermal Geo-localization (TG) provides a robust, all-weather solution for Unmanned Aerial Vehicles (UAVs) in Global Navigation Satellite System (GNSS)-denied environments. However, profound thermal-visible modality gaps introduce severe feature ambiguity, systematically corrupting conventional coarse-to-fine registration. To dismantle this bottleneck, we propose SCC-Loc, a unified Semantic-Cascade-Consensus localization framework. By sharing a single DINOv2 backbone across global retrieval and MINIMA matching, it minimizes memory footprint and achieves zero-shot, highly accurate absolute position estimation. Specifically, we tackle modality ambiguity by introducing three cohesive components. First, we design the Semantic-Guided Viewport Alignment (SGVA) module to adaptively optimize satellite crop regions, effectively correcting initial spatial deviations. Second, we develop the Cascaded Spatial-Adaptive Texture-Structure Filtering (C-SATSF) mechanism to explicitly enforce geometric consistency, thereby eradicating dense cross-modal outliers. Finally, we propose the Consensus-Driven Reliability-Aware Position Selection (CD-RAPS) strategy to derive the optimal solution through a synergy of physically constrained pose optimization. To address data scarcity, we construct Thermal-UAV, a comprehensive dataset providing 11,890 diverse thermal queries referenced against a large-scale satellite ortho-photo and corresponding spatially aligned Digital Surface Model (DSM). Extensive experiments demonstrate that SCC-Loc establishes a new state-of-the-art, suppressing the mean localization error to 9.37 m and providing a 7.6-fold accuracy improvement within a strict 5-m threshold over the strongest baseline. Code and dataset are available at https://github.com/FloralHercules/SCC-Loc.
Figures & tables
| Hyperparameter Description | Symbol | Value |
|---|---|---|
| Coarse Retrieval Phase | ||
| Geographic search area | ||
| Sliding window overlap | ||
| GSD scaling factor | ||
| Minimum error tolerance | ||
| Pooling exponent | ||
| Method | Top-3 Candidates | Top-5 Candidates | Top-10 Candidates | |||||||||
| Recall@3 | Acc@5/10/20 | ME SD | Time | Recall@5 | Acc@5/10/20 | ME SD | Time | Recall@10 | Acc@5/10/20 | ME SD | Time | |
| CAMP + XoFTR | 75.15 | 1.53 / 5.96 / 16.51 | 1.03 | 85.70 | 1.66 / 6.94 / 20.04 | 1.24 | 96.13 | 1.66 / 8.13 / 23.79 | 1.79 | |||
| CAMP + RoMa | 75.15 | 3.06 / 12.04 / 31.49 | 4.01 | 85.70 | 4.26 / 14.00 / 36.98 | 6.30 | 96.13 | 4.38 / 15.83 / 39.70 | 11.97 | |||
| CAMP + MINIMA | 75.15 | 4.72 / 15.57 / 40.43 | 4.22 | 85.70 | 4.77 / 17.62 / 46.17 | 6.60 | 96.13 | 6.77 / 21.11 / 49.83 | 12.53 | |||
| DINOv2 + XoFTR | 91.23 | 1.66 / 7.57 / 21.45 | 0.92 | 96.77 | 2.17 / 8.64 / 24.51 | 1.30 | 99.45 | 2.30 / 9.57 / 25.87 | 1.96 | |||
| DINOv2 + RoMa | 91.23 | 3.57 / 14.98 / 39.28 | 4.28 | 96.77 | 4.09 / 16.81 / 43.45 | 6.36 | 99.45 | 4.89 / 16.85 / 42.21 | 12.02 | |||
| Method | Search Area: | Search Area: | Search Area: | Memory | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Acc@5/10/20 | ME SD | Time | Acc@5/10/20 | ME SD | Time | Acc@5/10/20 | ME SD | Time | ||
| NIVnet | 0.10 / 0.80 / 2.60 | 0.02 | 0.10 / 0.60 / 2.10 | 0.03 | 0.20 / 0.70 / 1.90 | 0.04 | 15 | |||
| STHN | 0.50 / 3.10 / 11.50 | 0.03 | 0.70 / 3.10 / 12.10 | 0.03 | 1.00 / 3.40 / 12.00 | 0.04 | 5.5 | |||
| DINOv2 + MINIMA | 6.85 / 22.85 / 54.09 | 12.28 | 6.26 / 20.89 / 52.51 | 12.50 | 5.11 / 19.06 / 48.13 | 13.62 | 2335.5 | |||
| SCC-Loc (Ours) | 52.09 / 86.38 / 93.53 | 14.21 | 51.40 / 81.70 / 89.87 | 14.30 | 46.30 / 76.00 / 83.45 | 16.12 | 1174.7 | |||
| Components | Performance Metrics | |||||
| SGVA | C-SATSF | CD-RAPS | Recall@5 | Acc@5/10/20 | ME SD | Time |
| ✓ | 96.98 | 5.91 / 23.49 / 56.38 | 33.74 61.53 | 6.81 | ||
| ✓ | 96.72 | 7.15 / 21.87 / 53.40 | 37.40 68.48 | 6.82 | ||
| ✓ | 96.72 | 17.40 / 46.47 / 74.72 | 26.08 55.59 | 8.60 | ||
| ✓ | ✓ | 96.98 | 8.00 / 24.47 / 57.70 | 32.73 60.38 | 7.00 | |
| ✓ | ✓ | 96.98 | 20.89 / 51.91 / 78.00 | 21.71 46.61 | 8.58 | |
| Stage | Description | Time (s) |
|---|---|---|
| Retrieval | Top-10 candidate search | 0.769 |
| SGVA | Semantic viewport alignment | 0.001 |
| Dense Matching | MINIMA matching | 11.917 |
| C-SATSF | Cascaded correspondence filtering | 0.087 |
| CD-RAPS | Pose optimization and selection | 1.355 |
| Other | Data conversion and I/O overhead | 0.081 |
| SGVA Parameters | Performance Metrics | |||
| Recall@5 | Acc@5/10/20 | ME SD | ||
| 0 | 1.0 | 96.89 | 50.47 / 79.32 / 87.62 | 16.99 48.01 |
| 1.2 | 96.94 | 49.66 / 77.79 / 87.83 | 17.80 50.78 | |
| 1.5 | 96.98 | 51.49 / 79.23 / 87.36 | 16.54 46.29 | |
| 0.2 | 1.0 | 96.98 | 51.66 / 81.32 / 89.87 | 15.30 44.54 |
| 1.2 | 97.11 | 52.00 / 82.60 / 89.91 | 14.75 43.66 | |
| Acc@5 | Acc@10 | Acc@20 | ME SD | |
|---|---|---|---|---|
| (0.25, 0.25, 0.25, 0.25) | 50.17 | 80.60 | 89.23 | 15.27 42.93 |
| (0.1, 0.3, 0.3, 0.3) | 50.68 | 81.40 | 89.74 | 14.90 43.07 |
| (0.1, 0.2, 0.35, 0.35) | 51.66 | 81.32 | 89.87 | 15.30 44.54 |
| (0.2, 0.2, 0.3, 0.3) | 51.15 | 81.62 | 89.45 | 14.97 42.52 |
| (0.1, 0.1, 0.4, 0.4) | 53.40 | 82.81 | 90.00 | 15.12 44.55 |
| Noise Config | Performance Metrics | |||
|---|---|---|---|---|
| Recall@5 | Acc@5/10/20 | ME SD | ||
| 0 | 0 | 96.98 | 51.66 / 81.32 / 89.87 | 15.30 44.54 |
| 10 | 97.36 | 51.02 / 82.00 / 89.70 | 15.42 44.24 | |
| 20 | 97.36 | 52.34 / 81.91 / 89.06 | 15.48 43.87 | |
| 10 | 0 | 96.72 | 28.98 / 51.74 / 71.45 | 21.83 44.71 |
| 10 | 97.19 | 28.17 / 51.66 / 70.51 | 22.31 44.87 | |
Cross-View Geo-Localization
Cross-view geo-localization matches ground, drone, or aerial images to maps or satellite views to estimate where they were captured.
See all 94 papers