CVSBench is a benchmark for evaluating multimodal foundation models on:
- π§ Cross-view spatial reasoning
- π― Cross-view grounding
- π°οΈ Satellite β Street-view understanding
- πΌοΈ Visual imagination from partial observations
This repository contains the official evaluation toolkit for CVSBench experiments.
The project is organized across three entry points:
- GitHub: code, evaluation scripts, documentation
- Hugging Face: full dataset release
- Project Page: paper overview, visualizations, and examples
- GitHub: https://github.com/earth-insights/CVSBench
- Dataset: zlyzlyzly/CVSBench
- Project Page: https://earth-insights.github.io/CVSBench/
- Paper: Arxiv
The full dataset is hosted on Hugging Face:
π https://huggingface.co/datasets/zlyzlyzly/CVSBench
Download and extract the dataset. After extraction, place:
fov/
cvusa/
directly inside:
evaluate/
Required structure:
evaluate/
βββ eval.py
βββ eval_double_category.py
βββ summarize_results.py
βββ eval_config.example.json
βββ requirements.txt
βββ fov/
βββ cvusa/
Important
Evaluation scripts assume that both fov/ and cvusa/ are located directly under evaluate/.
CVSBench/
βββ README.md
βββ evaluate/
β βββ eval.py
β βββ eval_double_category.py
β βββ summarize_results.py
β βββ eval_config.example.json
β βββ requirements.txt
βββ docs/
β βββ index.html
β βββ pic/
βββ assets/
Core evaluation files:
| File | Description |
|---|---|
evaluate/eval.py |
Main evaluation entry point |
evaluate/eval_double_category.py |
Two-image evaluation with auxiliary inputs |
evaluate/summarize_results.py |
Result aggregation and summarization |
evaluate/eval_config.example.json |
Example configuration |
evaluate/requirements.txt |
Evaluation dependencies |
conda create -n cvsbench python=3.10 -y
conda activate cvsbench
pip install -r evaluate/requirements.txtexport OPENAI_API_KEY=your_key
export OPENAI_BASE_URL=http://localhost:8000/v1
export EVAL_MODEL=your_model
python evaluate/eval.py --config evaluate/eval_config.jsonSupported backends include:
- OpenAI API
- vLLM
- SGLang
- LMDeploy
- other OpenAI-compatible servers
Currently supported local model families:
qwen3vl
gemma3
Example:
export LOCAL_TRANSFORMERS=1
export LOCAL_MODEL_FAMILY=qwen3vl
export LOCAL_MODEL_PATH=/path/to/model
python evaluate/eval.py --config evaluate/eval_config.jsonEvaluation outputs are written to:
outputs/
βββ model_name/
βββ dataset_name/
β βββ predictions.jsonl
β βββ metrics.json
βββ summary.json
CVSBench contains two main subsets:
cvusafov
Main task families include:
g2s: Ground-to-Satellite reasonings2g: Satellite-to-Ground reasoninggs_grounding: cross-view groundinggs_view: cross-view matching
In addition, nanobanana is not a question category. It refers to generated 3D miniature building-model images used as auxiliary visual inputs for visual imagination experiments.
You can evaluate your own model in two ways:
- Serve it through an OpenAI-compatible API and use
evaluate/eval.py - Add a local model adapter and run in local transformers mode
- Download the dataset from Hugging Face
- Place
fov/andcvusa/under the evaluation directory - Prepare
evaluate/eval_config.json - Run
evaluate/eval.py - Summarize outputs with
evaluate/summarize_results.py
| Task | Description |
|---|---|
g2s |
Ground-to-Satellite reasoning |
s2g / s2s |
Satellite-to-Ground reasoning |
ge_view |
Cross-view matching |
gs_grounding |
Cross-view grounding |
mcq_vqa |
Generic MCQ VQA |
bbox_5level |
Legacy grounding |
arrow_5level |
Legacy localization |
arrow_mcq |
Legacy arrow tasks |
Supported auxiliary inputs:
depthzimagenanobanana
Example:
python evaluate/eval_double_category.py \
--base-dir . \
--extra-kind nanobanana \
--local-model-path /path/to/Qwen3-VLpython evaluate/summarize_results.py --root outputs@misc{liu2026cvsbenchcomprehensivebenchmarkcrossview,
title={CVSBench: A Comprehensive Benchmark for Cross-view Spatial Reasoning and Dreaming},
author={Ruixun Liu and Lingyu Zhang and Lanxuan Xue and Kaiyu Li and Bowen Fu and Xiangyong Cao},
year={2026},
eprint={2606.22476},
archivePrefix={arXiv},
primaryClass={cs.CV},
url={https://arxiv.org/abs/2606.22476},
}CC-BY-4.0
CVSBench builds upon valuable data resources including:
If CVSBench is useful for your research, please consider giving the repository a star.
If you have questions or would like to collaborate, please contact us at:
π§ liuruixun6343@gmail.com

