Dsfer-Net: A Deep Supervision and Feature Retrieval Network for Bitemporal Change Detection Using Modern Hopfield Network
Shizhen Chang, Michael Kopp, Pedram Ghamisi, and Bo Du
This project concludes the official Pytorch implementation for applying Hopfield layer for deep feature retrieval and aggregration in our paper Dsfer-Net: A Deep Supervision and Feature Retrieval Network for Bitemporal Change Detection Using Modern Hopfield Network which has been conducted at the Institute of Advanced Research in Artificial Intelligence (IARAI).
- Environments:
s1.11.0+cu113
numpy==1.23.0
einops==0.4.1
scikit-image==0.18.0
scikit-learn==0.24.1
- Datasets and Settings:
Three datasets are used in this repo: LEVIR-CD dataset, WHU-CD dataset, and CDD dataset.
Detailed settings of the datasets can be found in our paper, and the cropped image can also be downloaded from:
** LEVIR-CD: Google Drive
** WHU-CD: Google Drive
** CDD-CD: Google Drive
The path of the images is orgarnied as follow:
├─ <Root-path-of-the LEVIR-CD and CDD dataset>/
│ ├──train/
│ │ ├──A
│ │ ├──B
│ │ ├──label
│ ├──val/
│ │ ├──A
│ │ ├──B
│ │ ├──label
│ ├──test/
│ │ ├──A
│ │ ├──B
│ │ ├──label
├─ <Root-path-of-the WHU dataset>/
│───A
│───B
│───label
- Main arguments of this repo:
--dataID dataset id in the training/testing.
--data_dir root directory of the datasets.
--batch_size number of images in each batch.
--lam the pernatly scalar on loss.
--learning_rate learning rate.
--weight_decay regularisation parameter for L2-loss.
--num_steps number of training steps.
--num_steps_stop number of training steps for early stopping.
- Pretrain the network on training and validation sets:
python Train.py
Alternatively, you can download our pretrained models for a quick look.
- Evaluating the performance on the test set:
python Test.py
- Examples of the visualized results of different methods on three datasets:
- Quantitative analysis of different networks:
For researchers who are interested in using this project, please cite the following paper:
@article{chang2023dsfer,
title={Dsfer-Net: A Deep Supervision and Feature Retrieval Network for Bitemporal Change Detection Using Modern Hopfield Networks},
author={Chang, Shizhen and Kopp, Michael and Ghamisi, Pedram},
journal={arXiv preprint arXiv:2304.01101},
year={2023}
}
The authors would like to thank the authors of all comparative methods for sharing their codes, the contributors of the LEVIR-CD, WHU-CD, and CDD datasets, Dr. Yonghao Xu for his valuable comments and discussions, and the Institute of Advanced Research in Artificial Intelligence (IARAI) for its support.
This repo is distributed under MIT License. The code can be used for academic purposes only.