CrossEarth
[TPAMI 2025] CrossEarth: Geospatial Vision Foundation Model for Cross-Domain Generalization in Remote Sensing Semantic Segmentation
Install / Use
/learn @VisionXLab/CrossEarthREADME
Ziyang Gong <sup>1∗</sup>, Zhixiang Wei <sup>2∗</sup>, Di Wang <sup>3∗</sup>, Xiaoxing Hu<sup>8∗</sup>, Xianzheng Ma<sup>3</sup>, Hongruixuan Chen <sup>4,5</sup>, Yuru Jia <sup>6,7</sup>, Yupeng Deng <sup>9</sup>, Zhenming Ji<sup>10†</sup>, Xiangwei Zhu<sup>8†</sup>, Xue Yang<sup>1†</sup>, Naoto Yokoya<sup>4,5</sup>, Jing Zhang<sup>3</sup>, Bo Du<sup>3</sup>, Junchi Yan<sup>1</sup>, Liangpei Zhang<sup>3</sup>
<sup>1</sup> SJTU <sup>2</sup> USTC <sup>3</sup> WHU <sup>4</sup> U Tokyo <sup>5</sup> RIKEN <sup>6</sup> KU Leuven <sup>7</sup> KTH <sup>8</sup> BIT <sup>9</sup> SYSU <sup>10</sup> UCAS
<sup>*</sup> Equal contribution. <sup>†</sup> Corresponding author.
<img src="https://visitor-badge.laobi.icu/badge?page_id=Cuzyoung.CrossEarth&left_color=%2363C7E6&right_color=%23CEE75F"> <img src="https://img.shields.io/badge/Maintained%3F-yes-green.svg"> <img src="https://img.shields.io/github/stars/Cuzyoung/CrossEarth.svg?logo=github&label=Stars&color=white">
<a href="https://cuzyoung.github.io/CrossEarth-Homepage/"><img src="https://img.shields.io/badge/🌍_Project_Page-E4F578?style=for-the-badge" style="width: 113px;"></a> <a href="https://github.com/Cuzyoung/CrossEarth/"><img src="https://img.shields.io/badge/WeChat-07C160?style=for-the-badge&logo=wechat&logoColor=white" style="width: 80px;"></a> <a href="https://www.linkedin.com/in/ziyang-gong-382a182b1/"><img src="https://img.shields.io/badge/linkedin-%230077B5.svg?style=for-the-badge&logo=linkedin&logoColor=white" style="width: 75px;"></a> <a href="https://pan.baidu.com/s/1nOQlZUTeySn6-jiqjheWhQ?pwd=eq40"><img src="https://img.shields.io/badge/Baidu Netdisk-63C7E6.svg?style=for-the-badge&logo=Baidu&logoColor=white" style="width: 123px;"></a> <a href="https://huggingface.co/Cusyoung/CrossEarth/tree/main"> <img src="https://img.shields.io/badge/🤗_Hugging_Face-FFD21E?style=for-the-badge" style="width: 115px;"></a>
<img src="images/teaser_new.png" width="100%"> </div> <br> <br>🔥🔥🔥 News
-
[2024/11/14] We are releasing the benchmark collection. Click here to get illustrations of benchmarks!
-
[2024/11/06] The most checkpoints have been uploaded and you can access them in the huggingface badges.
-
The environment and inference steps please refer to the following installation. The inference codes and weights will be coming soon.
-
The benchmark collection in the paper is releasing and you can access it at here.
-
🎉🎉🎉 CrossEarth is the first VFM for Remote Sensing Domain Generalization (RSDG) semantic segmentation. We just release the arxiv paper of CrossEarth. You can access CrossEarth at here.
📑 Table of Content
<!-- - [Citation](#citation) -->Visualization
In Radar figure:
- CrossEarth achieves SOTA performances on 23 evaluation benchmarks across various segmentation scenes, demonstrating strong generalizability.
In UMAP figures:
-
CrossEarth extracts features that cluster closely for the same class across different domains, forming well-defined groups in feature space, demonstrating its ability to learn robust, domain-invariant features.
-
Moreover, CrossEarth features exhibit high inter-class separability, forming unique clusters for each class and underscoring its strong representational ability to distingguish different categories.
Environment Requirements:
conda create -n CrossEarth -y
conda activate CrossEarth
conda install pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 pytorch-cuda=11.7 -c pytorch -c nvidia -y
pip install -U openmim
mim install mmengine
mim install "mmcv>=2.0.0"
pip install "mmsegmentation>=1.0.0"
pip install "mmdet>=3.0.0"
pip install xformers=='0.0.20'
pip install -r requirements.txt
pip install future tensorboard
Inference steps:
First, download the model weights from the huggingface or Baidu Netdisk in the above badges. Notably, the checkpoints of dinov2_converted.pth and dinov2_converted_1024x1024.pth are needed for inference. Please download them and put them in the CrossEarth/checkpoints folder.
Second, change the file path in experiment config files (configs/base/datasets/xxx.py and configs/CrossEarth_dinov2/xxx.py), and run the following command to inference. (Take 512x512 inference as an example)
python tools/test.py configs/CrossEarth_dinov2/CrossEarth_dinov2_mask2former_512x512_bs1x4.py ./checkpoints/xxx.pth
Notably, save path of pseudo labels is in the experiment config file. When testing CrossEarth on different benchmarks, you also need to change the class number in CrossEarth_dinov2_mask2former.py file.
Training steps:
Coming soon.
Model Weights with Configs
| Dataset | Benchmark | Model | Config | Log | |----------|----------|-------| -------| ----| |ISPRS Potsdam and Vaihingen|P(i)2V| Potsdam(i)-source.pth | dg_potIRRG2RGB_512x512.py |-| |- |P(i)2P(r)| Potsdam(i)-source.pth | dg_potIRRG2RGB_512x512.py |-| |- |P(r)2P(i)| Potsdam(r)-source.pth | dg_potRGB2IRRG_512x512.py |-| |- |P(r)2V| Potsdam(r)-source.pth | dg_potRGB2IRRG_512x512.py |- | |- |V2P(i)| Vaihingen-source.pth | dg_vai2potIRRG_512x512.py|- | |- |V2P(r)| Vaihingen-source.pth| dg_vai2potIRRG_512x512.py |- | |LoveDA|Rural2Urban| R2U.pth | dg_loveda_rural2urban_1024x1024.py |Coming Soon | |- |Urban2Rural| U2R.pth | dg_loveda_urban2rural_1024x1024.py |(Coming Soon) | |WHU Building|A2S| WHU-Building-A2S.pth | dg_building_aerial2satellite.py|Coming Soon | |- |S2A| WHU-Building-S2A.pth| dg_building_satellite2aerial.py |Coming Soon | |DeepGlobe and Massachusetts |D2M| D2M-Rein/D2M-MTP | dg_deepglobe2massachusetts_1024x1024.py |Coming Soon | |ISPRS Potsdam and RescueNet|P(r)2Res| Potsdam(r)2RescueNet.pth |dg_potsdamIRRG2rescue_512x512.py |Coming Soon | |- |P(i)2Res| Potsdam(i)2RescueNet.pth | dg_potsdamRGB2rescue_512x512.py |Coming Soon | |CASID|Sub2Sub| casid-sub-source.pth | dg_casid_subms_1024x1024|Coming Soon | |- |Sub2Tem|casid-sub-source.pth | dg_casid_subms_1024x1024 |- | |- |Sub2Tms| casid-sub-source.pth | dg_casid_subms_1024x1024 |-| |- |Susb2Trf| casid-sub-source.pth| [dg_casid_subms_1024x1024](https://
Related Skills
node-connect
352.5kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
111.3kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
352.5kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
352.5kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
