Geo: Geometry-Guided Cross-view Geo-Localization and Image Synthesis
Organizations: Institute of Artificial Intelligence, University of Central Florida · University of Vermont
Abstract
Cross-view geo-spatial learning consists of two important tasks: Cross-View Geo-Localization (CVGL) and Cross-View Image Synthesis (CVIS), both of which rely on establishing geometric correspondences between ground and aerial views. Recent Geometric Foundation Models (GFMs) have demonstrated strong capabilities in extracting generalizable 3D geometric features from images, but their potential in cross-view geo-spatial tasks remains underexplored. In this work, we present Geo^2, a unified framework that leverages Geometric priors from GFMs (e.g., VGGT) to jointly perform geo-spatial tasks, CVGL and bidirectional CVIS. Despite the 3D reconstruction ability of GFMs, directly applying them to CVGL and CVIS remains challenging due to the large viewpoint gap between ground and aerial imagery. We propose GeoMap, which embeds ground and aerial features into a shared 3D-aware latent space, effectively reducing cross-view discrepancies for localization. This shared latent space naturally bridges cross-view image synthesis in both directions. To exploit this, we propose GeoFlow, a flow-matching model conditioned on geometry-aware latent embeddings. We further introduce a consistency loss to enforce latent alignment between the two synthesis directions, ensuring bidirectional coherence. Extensive experiments on standard benchmarks, including CVUSA, CVACT, and VIGOR, demonstrate that Geo^2 achieves state-of-the-art performance in both localization and synthesis, highlighting the effectiveness of 3D geometric priors for cross-view geo-spatial learning.
Figures & tables
| Method | CVGL | CVIS | Bi-dir | Joint | Geometric Prior |
|---|---|---|---|---|---|
| GeoDTR+ [ 53 ] | ✓ | ✗ | ✗ | ✗ | GLE [ 53 ] |
| Sample4Geo [ 8 ] | ✓ | ✗ | ✗ | ✗ | ✗ |
| RGCIS [ 44 ] | ✗ | ✓ | ✓ | ✗ | SAIG [ 60 ] |
| Sat2Density [ 26 ] | ✗ | ✓ | ✗ | ✗ | Volume Density |
| CDE [ 33 ] | ✓ | ✓ | ✗ | ✓ | SAFA [ 30 ] |
| Ours | ✓ | ✓ | ✓ | ✓ | VGGT [ 36 ] |
| Dataset | Approach | R@1 | R@5 | R@10 | R@1% | Hit Rate |
|---|---|---|---|---|---|---|
| SAFA † [ 30 ] | 33.93 | 58.42 | 68.12 | 98.24 | 36.87 | |
| TransGeo [ 58 ] | 61.48 | 87.54 | 91.88 | 99.56 | 73.09 | |
| VIGOR | SAIG-D [ 60 ] | 65.23 | 88.08 | - | 99.68 | 74.11 |
| Same- | GeoDTR [ 54 ] | 56.51 | 80.37 | 86.21 | 99.25 | 61.76 |
| area | GeoDTR+ [ 53 ] | 59.01 | 81.77 | 87.10 | 99.07 | 67.41 |
| Sample4Geo [ 8 ] | 77.86 | 95.66 | 97.21 | 99.61 | 89.82 |
| Approach | CVUSA | CVACT Val | CVACT Test | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| R@1 | R@5 | R@10 | R@1% | R@1 | R@5 | R@10 | R@1% | R@1 | R@5 | R@10 | R@1% | |
| LPN [ 40 ] | 85.79 | 95.38 | 96.98 | 99.41 | 79.99 | 90.63 | 92.56 | - | - | - | - | - |
| SAFA † [ 30 ] | 89.84 | 96.93 | 98.14 | 99.64 | 81.03 | 92.80 | 94.84 | - | - | - | - | - |
| TransGeo [ 58 ] | 94.08 | 98.36 | 99.04 | 99.77 | 84.95 | 94.14 | 95.78 | 98.37 | - | - | - | - |
| GeoDTR [ 54 ] | 93.76 | 98.47 | 99.22 | 99.85 | 85.43 | 94.81 | 96.11 | 98.26 | 62.96 | 87.35 | 90.70 | 98.61 |
| GeoDTR † [ 54 ] | 95.43 | 98.86 | 99.34 | 99.86 | 86.21 | 95.44 | 96.72 | 98.77 | 64.52 | 88.59 | 91.96 | 98.74 |
| Dataset | Approach | R@1 | R@5 | R@10 | R@1% |
|---|---|---|---|---|---|
| SAFA [ 30 ] | 30.40 | 52.93 | 62.29 | 85.82 | |
| TransGeo [ 58 ] | 37.81 | 61.57 | 69.86 | 89.14 | |
| CVUSA | SAIG-D [ 60 ] | 15.29 | 33.07 | 42.14 | 72.95 |
| GeoDTR [ 54 ] | 43.72 | 66.99 | 74.61 | 91.83 | |
| CVACT | GeoDTR+ [ 53 ] | 60.16 | 79.97 | 84.67 | 94.48 |
| Sample4Geo [ 8 ] | 56.62 | 77.79 | 87.02 | 94.69 |
| Approach | CVUSA | CVACT | VIGOR | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| FID ( ) | LPIPS ( ) | PSNR ( ) | SSIM ( ) | FID ( ) | LPIPS ( ) | PSNR ( ) | SSIM ( ) | FID ( ) | LPIPS ( ) | PSNR ( ) | SSIM ( ) | |
| X-Seq [ 28 ] | 161.16 | 0.706 | 11.97 | 0.084 | 190.12 | 0.661 | 12.41 | 0.042 | - | - | - | - |
| Aerial Diff [ 14 ] | 136.18 | 0.855 | 10.06 | 0.103 | 127.29 | 0.878 | 10.24 | 0.108 | 123.16 | 0.831 | 11.49 | 0.141 |
| GPG2A [ 2 ] | 58.80 | 0.691 | 12.13 | 0.135 | 63.50 | 0.690 | 11.98 | 0.116 | 70.19 | 0.695 | 11.81 | 0.159 |
| ControlNet [ 50 ] | 32.45 | 0.650 | 12.63 | 0.149 | 62.21 | 0.682 | 11.95 | 0.115 | 53.27 | 0.666 | 10.38 | 0.170 |
| Skydiffusion [ 46 ] | 29.18 | 0.635 | 14.58 | 0.168 | 36.48 | 0.645 | 12.85 | 0.118 | 45.29 | 0.661 | 11.69 | 0.186 |
| Approach | CVUSA | CVACT | VIGOR | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| FID ( ) | LPIPS ( ) | PSNR ( ) | SSIM ( ) | FID ( ) | LPIPS ( ) | PSNR ( ) | SSIM ( ) | FID ( ) | LPIPS ( ) | PSNR ( ) | SSIM ( ) | |
| Sat2Density [ 26 ] | 41.43 | 0.4163 | 14.66 | 0.358 | 47.09 | 0.3339 | 16.38 | 0.482 | 47.98 | 0.3488 | 11.21 | 0.229 |
| ControlNet [ 50 ] | 51.48 | 0.5158 | 10.91 | 0.148 | 49.41 | 0.4563 | 11.66 | 0.229 | 53.29 | 0.4051 | 10.59 | 0.191 |
| CrossViewDiff [ 5 ] | 23.67 | 0.4412 | 12.00 | 0.371 | 41.94 | 0.3661 | 12.41 | 0.412 | 26.57 | 0.3414 | 13.68 | 0.268 |
| Ours | 29.05 | 0.4871 | 12.94 | 0.317 | 27.77 | 0.4833 | 13.57 | 0.457 | 22.90 | 0.4690 | 12.64 | 0.380 |
| Dataset | #Ground Image | Ground Image Res. | #Satellite Image | Satellite Image Res. | Vertical FOV | Ground Crop Res. | |
|---|---|---|---|---|---|---|---|
| CVUSA | 44,416 | 1232 224 | 44,416 | 750 750 | 90 ∘ | 224 224 | |
| CVACT | 128,334 | 1664 832 | 128,334 | 1200 1200 | 180 ∘ | 416 416 | |
| VIGOR | 105,214 | 2048 1024 | 90,618 | 640 640 | 180 ∘ | 512 512 |
| Dataset | Approach | R@1 | R@5 | R@10 | R@1% |
|---|---|---|---|---|---|
| CVACT Val | Baseline | 90.53 | 96.61 | 97.53 | 98.78 |
| +Geometry | 93.81 | 97.02 | 97.77 | 98.92 | |
| + | 94.36 | 97.41 | 97.97 | 99.05 | |
| CVACT Test | Baseline | 71.51 | 92.42 | 94.45 | 98.70 |
| +Geometry | 74.37 | 93.24 | 95.02 | 98.86 | |
| + | 75.08 | 94.89 | 95.77 | 99.01 |
| Direction | Approach | FID ( ) | LPIPS ( ) | PSNR ( ) | SSIM ( ) |
|---|---|---|---|---|---|
| G2S | Baseline | 37.51 | 0.613 | 13.17 | 0.143 |
| +Geometry | 33.02 | 0.568 | 14.08 | 0.155 | |
| + | 31.72 | 0.552 | 14.62 | 0.162 | |
| S2G | Baseline | 33.41 | 0.573 | 11.08 | 0.377 |
| +Geometry | 30.86 | 0.511 | 11.93 | 0.408 | |
| + | 27.77 | 0.483 | 13.57 | 0.457 |
| Dataset | Approach | R@1 | R@5 | R@10 | R@1% | Hit Rate |
|---|---|---|---|---|---|---|
| Same-area | TransGeo | 61.48 | 87.54 | 91.88 | 99.56 | 73.09 |
| Sample4Geo | 77.86 | 95.66 | 97.21 | 99.61 | 89.82 | |
| Ours | 68.33 | 91.06 | 93.14 | 99.59 | 76.34 | |
| Ours | 81.59 | 96.53 | 98.62 | 99.68 | 90.35 | |
| Cross-area | TransGeo | 18.99 | 38.24 | 46.91 | 88.94 | 21.21 |
| Sample4Geo | 61.70 | 83.50 | 88.00 | 98.17 | 69.87 |
| CVACT Val | CVACT Test | |||||||
|---|---|---|---|---|---|---|---|---|
| Approach | R@1 | R@5 | R@10 | R@1% | R@1 | R@5 | R@10 | R@1% |
| Baseline | 90.35 | 96.61 | 97.53 | 98.78 | 71.51 | 92.42 | 94.45 | 98.70 |
| Baseline + Augmentation | 91.56 | 96.94 | 97.71 | 98.83 | 72.83 | 93.15 | 94.74 | 98.81 |
| R@1 | R@5 | R@1% | |
|---|---|---|---|
| / | 94.36 | 97.41 | 99.05 |
| / | 94.25 | 97.42 | 99.05 |
| 0 | 94.31 | 97.43 | 99.04 |
| Module | Sat. | Grd. | #Params |
|---|---|---|---|
| Conv Module | 45 | 31 | 88M |
| VGGT | 1387 | 5548 | 942M |
| GeoMap | 40 | 158 | 43M |
| Steps | FPS | GFLOPs | S2G FID/LPIP | G2S FID/LPIP | ||
|---|---|---|---|---|---|---|
| 2 | 3.21 | 1143 | 29.09 | 0.4896 | 39.69 | 0.5594 |
| 5 | 1.38 | 2857 | 27.82 | 0.4831 | 33.65 | 0.5530 |
| 10 | 0.71 | 5715 | 27.77 | 0.4833 | 31.72 | 0.5520 |
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