OSMDA: OpenStreetMap-based Domain Adaptation for Remote Sensing VLMs
Organizations: INSAIT, Sofia University "St. Kliment Ohridski" · INSAIT, Sofia University “St. Kliment Ohridski”
Abstract
Vision-Language Models (VLMs) adapted to remote sensing rely heavily on domain-specific image-text supervision, yet high-quality annotations for satellite and aerial imagery remain scarce and expensive to produce. Prevailing pseudo-labeling pipelines address this gap by distilling knowledge from large frontier models, but this dependence on large teachers is costly, limits scalability, and caps achievable performance at the ceiling of the teacher. We propose OSMDA: a self-contained domain adaptation framework that eliminates this dependency. Our key insight is that a capable base VLM can serve as its own annotation engine: by pairing aerial images with rendered OpenStreetMap (OSM) tiles, we leverage optical character recognition and chart comprehension capabilities of the model to generate captions enriched by OSM's vast auxiliary metadata. The model is then fine-tuned on the resulting corpus with satellite imagery alone, yielding OSMDA-VLM, a domain-adapted VLM that requires no manual labeling and no stronger external VLM teacher. We conduct exhaustive evaluations spanning six zero-shot and five in-distribution benchmarks across vision-language tasks, where OSMDA leads to substantial improvement. We further compare against nine competitive baselines, demonstrating that our method achieves superior overall performance, while being substantially cheaper to train than teacher-dependent alternatives. These results suggest that, given a strong foundation model, alignment with crowd-sourced geographic data is a practical and scalable path towards remote sensing domain adaptation. Dataset and model weights will be made publicly available upon acceptance.
Figures & tables
| Method | Student model | Teacher model | ||
|---|---|---|---|---|
| LRS-VQA | LLaVA-Next-7B | rule-based | - | - |
| SkyEyeGPT | MiniGPT-v2-7B | rule-based | - | - |
| GeoChat | LLaVA-1.5-7B | Vicuna-v1.5 | 320k | $200 |
| GeoPix | LLaVA-1.5-7B | GPT-4o | 140k | $600 |
| SkySenseGPT | LLaVA-1.5-7B | GPT-3.5 & GPT-4 | 180k | $600 |
| VHM | LLaVA-1.5-7B | Gemini-Vision | 1.4M | $2500 |
| Model | EuroSAT | mAID | SkyS | XLRS cap | XLRS vqa | GEO cap | GEO vqa | GEO chdet | DM3 | Avg |
|---|---|---|---|---|---|---|---|---|---|---|
| f1 | f1 | f1 | g_eval | l2 acc | g_eval | acc | acc | l2 acc | ||
| SkyEyeGPT | 2.9 | 0.0 | 0.2 | 14.1 | 0.0 | 2.7 | 10.1 | 1.8 | 10.7 | 4.7 |
| GeoPix | 5.8 | 0.0 | 0.6 | 0.0 | 19.1 | 0.1 | 18.2 | - | - | 6.2 |
| GeoChat | 36.9 | 7.9 | 31.6 | 3.4 | 23.3 | 18.6 | 29.0 | - | - | 21.5 |
| EarthDial | 35.7 | 1.4 | 42.2 | 11.0 | 40.0 | 16.2 | 32.1 | 35.4 | 15.3 | 25.5 |
| SkySenseGPT | 44.5 | 14.5 | 39.4 | 12.9 | 25.4 | 23.7 | 30.1 | - | - | 27.2 |
| VLM | OSM | Ann. | XLRS | GEO | DM3 | |||
|---|---|---|---|---|---|---|---|---|
| repr. | engine | cap | vqa | cap | vqa | chdet | chdet | |
| Base | - | - | 44.9 | 50.9 | 38.7 | 50.1 | 47.8 | 28.4 |
| SkyScript | Short | Base | 27.0 | 49.7 | 40.1 | 52.8 | 50.9 | 28.4 |
| OSM-Text | Dense | Base | 39.5 | 50.0 | 40.9 | 52.5 | 50.2 | 29.1 |
| Teacher | - | Teacher | 29.7 | 48.5 | 40.0 | 54.6 | 50.5 | 30.1 |
| OSMDA | Carto. | Base | 44.5 | 51.4 | 41.4 | 52.9 | 49.5 | 29.1 |
Appendix figures & tables9 assets
Supplementary material from the paper’s appendix.
Appendix
| RSVQA | RSVQA | RSVQA | METER | Avg | ||
| Model | Input | LR | HR | BEN | ML | |
| InternVL | RGB + OSMDA map | 78.1 | 53.0 | 36.0 | 21.6 | 47.2 |
| RGB + raw OSM map | 80.7 | 46.3 | 35.9 | 17.4 | 45.1 | |
| RGB + OSM-Overlay | 59.0 | 49.8 | 39.7 | 29.5 | 44.5 | |
| RGB + OSM-Text | 74.6 | 43.8 | 35.9 | 20.6 | 43.7 | |
| RGB only | 82.0 | 45.8 | 34.6 | 16.4 | 44.7 |
| Model | EuroSAT | mAID | SkyS | XLRS cap | XLRS vqa | GEO cap | GEO vqa | GEO chdet | DM3 | Avg |
|---|---|---|---|---|---|---|---|---|---|---|
| f1 | f1 | f1 | g_eval | l2 acc | g_eval | acc | acc | l2 acc | ||
| Base | 41.6 | 42.7 | 37.5 | 44.9 | 50.9 | 38.7 | 47.8 | 50.1 | 28.4 | 42.5 |
| Base-FT | 40.6 | 40.2 | 37.5 | 38.3 | 50.2 | 40.7 | 47.3 | 50.3 | 27.9 | 41.4 |
| Base-Teacher | 38.3 | 56.4 | 49.8 | 32.7 | 48.9 | 35.2 | 46.9 | 44.9 | 24.3 | 41.9 |
| Teacher-VLM | 37.3 | 52.4 | 49.7 | 29.7 | 48.5 | 40.0 | 50.5 | 54.6 | 30.1 | 43.6 |
| Base-OSMDA | 44.4 | 47.7 | 47.2 | 43.9 | 51.6 | 36.9 | 48.9 | 50.9 | 26.1 | 44.1 |
| Benchmark | Task | Image sizes | Res, m/pixel | Note |
|---|---|---|---|---|
| EuroSAT ( Helber et al. 2019 ) | cls | 64x64 | 10-60 | 10 classes |
| SkyScript ( Wang et al. 2024 ) | cls | 77x77 - 1015x1084 | 0.1 - 30 | 70 classes, constructed from OSM tags |
| Million-AID ( Long et al. 2021 ) | cls | 256x256, 512x512 | 0.5 - 153 | hierarchical structure of 8/28/51 classes |
| UCM-Captions ( Qu et al. 2016 ) | cap | 256x256 | 0.3 | short rigid-form captions |
| NWPU-Captions ( Cheng et al. 2022 ) | cap | 256x256 | 0.2 - 30 | short rigid-form captions |
| RSVQA LR ( Lobry et al. 2020 ) | vqa | 256x256 | 10 | rigid-form vqa, counting, area measurement |
| Paper | Euro | Million | SkyScript | RSVQA | RSVQA | UCM | NWPU | VRS | XLRS | GEO | Disaster |
|---|---|---|---|---|---|---|---|---|---|---|---|
| SAT | AID | bench | LR | HR | Captions | Captions | Bench | Bench | Bench | M3 | |
| GeoPix | x | x | x | x | x | x | x | FT | x | x | x |
| SkyEyeGPT | x | x | x | FT | FT | FT | FT | x | x | x | x |
| GeoChat | x | x | x | FT | x | x | x | x | x | x | x |
| SkySenseGPT | x | x | x | FT | ZS | x | x | x | x | x | x |
| LRS-VQA | x | x | x | x | FT | x | x | x | x | x | x |
| Parameter | Range |
|---|---|
| none, short text (SkyScript), dense text (OSM-Text), | |
| OSM representation | overlay, overlay + counts, |
| raw OSM map, OSMDA maps | |
| Resolution info | none, image size, GSD , image area |
| map size / rgb image size | x0.5, x1, x2.3 |
| annotation engine | LlaVA1.5-7B, InternVL3.5-8B , Gemma3-27B, |
| Model | EuroSAT | mAID | SkyS | XLRS cap | XLRS vqa | GEO cap | GEO vqa | GEO chdet | DM3 | Avg |
|---|---|---|---|---|---|---|---|---|---|---|
| f1 | f1 | f1 | g_eval | l2 acc | g_eval | acc | acc | l2 acc | ||
| Base | 41.56 | 42.72 | 37.53 | 44.92 | 50.90 | 38.68 | 47.77 | 50.09 | 28.42 | 42.51 |
| Teacher-VLM | 37.25 | 52.36 | 49.67 | 29.71 | 48.46 | 40.01 | 50.51 | 54.62 | 30.07 | 43.63 |
| OSMDA-VLM | 44.92 | 50.36 | 50.72 | 44.54 | 51.35 | 41.40 | 49.55 | 52.90 | 29.10 | 46.10 |