This repository is the official PyTorch implementation for FHD:
Feature Hierarchical Differentiation for Remote Sensing Image Change Detection
Figure 1: Comparison of different CD methods. (a) Previous methods. The deep features of each temporal RS image are extracted by backbone networks, followed by feature differentiation learning, such as subtraction, concatenation, fusion, and attention. (b). Proposed FHD. We propose a novel Feature Hierarchical Differentiation method with TSF and HD modules to select and fuse critical features. Compared to the previous techniques, the proposed FHD exhibits higher change detection performance.
Figure 2: The framework of our proposed FHD.
To simplify the reproduction steps, we only need to install
pip install torch==1.7.1 torchvision==0.8.2
pip install mmcv-full==1.3.8 -f https://download.openmmlab.com/mmcv/dist/cu101/torch1.7.0/index.html
pip install opencv-python
- Download from LEVIR, DSIFN, LEVIR+, and S2Looking.
- Crop RS images size of 256 × 256, DSIFN did not crop with 512 × 512.
- Format as follows:
|CD_Dataset
|----train
|---------|A
|---------|B
|---------|label
|----val
...
|----test
...
Download MiT-b2 weights pretrained on ImageNet-1K, and put them in a folder
model_ckpt/
.
# single GPU (V100 16G)
bash train_eval.sh
Download LEVIR, DSIFN, LEVIR+, S2Looking, and put it in a folder model_ckpt/
.
# single gpu (V100 16G)
bash infer_levir.sh
bash infer_dsifn.sh
bash infer_levir+.sh
bash infer_s2looking.sh
If you find this useful in your research, please consider citing:
@article{pei2022feature,
title={Feature Hierarchical Differentiation for Remote Sensing Image Change Detection},
author={Pei, Gensheng and Zhang, Lulu},
journal={IEEE Geoscience and Remote Sensing Letters},
year={2022},
publisher={IEEE}
}