open-cd
open-cd copied to clipboard
A Change Detection Repo Standing on the Shoulders of Giants

Introduction
Open-CD is an open source change detection toolbox based on a series of open source general vision task tools.
News
- 2/10/2024 - Open-CD is upgraded to v1.1.0. BAN, TTP and LightCDNet is supported. The inference API is added.
- 4/21/2023 - Open-CD v1.0.0 is released in 1.x branch, based on OpenMMLab 2.0 ! PyTorch 2.0 is also supported ! Enjoy it !
- 3/14/2023 - Open-CD is upgraded to v0.0.3. Semantic Change Detection (SCD) is supported !
- 11/17/2022 - Open-CD is upgraded to v0.0.2, requiring a higher version of the MMSegmentation dependency.
- 9/28/2022 - The code, pre-trained models and logs of ChangerEx are available. :yum:
- 9/20/2022 - Our paper Changer: Feature Interaction is What You Need for Change Detection is available!
- 7/30/2022 - Open-CD is publicly available!
Benchmark and model zoo
Supported toolboxes:
- [x] OpenMMLab Toolkits
- [x] pytorch-image-models
- [ ] ...
Supported change detection model: (The code of some models are borrowed directly from their official repositories.)
- [x] FC-EF (ICIP'2018)
- [x] FC-Siam-diff (ICIP'2018)
- [x] FC-Siam-conc (ICIP'2018)
- [x] STANet (RS'2020)
- [x] IFN (ISPRS'2020)
- [x] SNUNet (GRSL'2021)
- [x] BiT (TGRS'2021)
- [x] ChangeFormer (IGARSS'22)
- [x] TinyCD (NCA'2023)
- [x] Changer (TGRS'2023)
- [x] HANet (JSTARS'2023)
- [x] TinyCDv2 (Under Review)
- [x] LightCDNet (GRSL'2023)
- [x] BAN (TGRS'2024)
- [x] TTP (arXiv'2023)
- [ ] ...
Supported datasets: | Descriptions
- [x] LEVIR-CD
- [x] WHU-CD
- [x] S2Looking
- [x] SVCD
- [x] DSIFN
- [x] CLCD
- [x] RSIPAC
- [x] SECOND
- [x] Landsat
- [x] BANDON
- [ ] ...
Usage
Please refer to get_started.md in mmseg.
A Colab tutorial is also provided. You may directly run on Colab. (thanks to @Agustin for this demo)
simple usage
# Install OpenMMLab Toolkits as Python packages
pip install -U openmim
mim install mmengine
mim install "mmcv>=2.0.0"
mim install "mmpretrain>=1.0.0rc7"
pip install "mmsegmentation>=1.2.2"
pip install "mmdet>=3.0.0"
git clone https://github.com/likyoo/open-cd.git
cd open-cd
pip install -v -e .
train
python tools/train.py configs/changer/changer_ex_r18_512x512_40k_levircd.py --work-dir ./changer_r18_levir_workdir
infer
# get .png results
python tools/test.py configs/changer/changer_ex_r18_512x512_40k_levircd.py changer_r18_levir_workdir/latest.pth --show-dir tmp_infer
# get metrics
python tools/test.py configs/changer/changer_ex_r18_512x512_40k_levircd.py changer_r18_levir_workdir/latest.pth
Citation
If you find this project useful in your research, please consider cite:
@ARTICLE{10438490,
author={Li, Kaiyu and Cao, Xiangyong and Meng, Deyu},
journal={IEEE Transactions on Geoscience and Remote Sensing},
title={A New Learning Paradigm for Foundation Model-based Remote Sensing Change Detection},
year={2024},
volume={},
number={},
pages={1-1},
keywords={Adaptation models;Task analysis;Data models;Computational modeling;Feature extraction;Transformers;Tuning;Change detection;foundation model;visual tuning;remote sensing image processing;deep learning},
doi={10.1109/TGRS.2024.3365825}}
@ARTICLE{10129139,
author={Fang, Sheng and Li, Kaiyu and Li, Zhe},
journal={IEEE Transactions on Geoscience and Remote Sensing},
title={Changer: Feature Interaction is What You Need for Change Detection},
year={2023},
volume={61},
number={},
pages={1-11},
doi={10.1109/TGRS.2023.3277496}}
License
Open-CD is released under the Apache 2.0 license.