Home

Awesome

Simple-Remote-Sensing-Change-Detection-Framework

Introduction

This project is a simplified implementation of remote sensing change detection based on pytorch, I hope it can help those who are beginners in change detection domain implementing their ideas quickly, without concerning other things. It has the following features:

Install dependencies

  1. Install CUDA
  2. Install Pytorch 1.12 or later
  3. Install dependencies

​ Return the following code in command line.

pip install -r requirements.txt

Data

Using any change detection dataset you want, but organize dataset path as follows. dataset_name is name of change detection dataset, you can set whatever you want.

dataset_name
├─train
│  ├─label
│  ├─t1
│  └─t2
├─val
│  ├─label
│  ├─t1
│  └─t2
└─test
    ├─label
    ├─t1
    └─t2

Below are some binary change detection dataset you may want.

WHU Building

Paper: Fully convolutional networks for multisource building extraction from an open aerial and satellite imagery data set

DSIFN

Paper: A deeply supervised image fusion network for change detection in high resolution bi-temporal remote sensing images

LEVIR-CD

Paper: A Spatial-Temporal Attention-Based Method and a New Dataset for Remote Sensing Image Change Detection

LEVIR-CD+

GoogleMap

Paper: SemiCDNet: A Semisupervised Convolutional Neural Network for Change Detection in High Resolution Remote-Sensing Images

SYSU-CD

Paper: SYSU-CD: A new change detection dataset in "A Deeply-supervised Attention Metric-based Network and an Open Aerial Image Dataset for Remote Sensing Change Detection"

CDD

Paper: CHANGE DETECTION IN REMOTE SENSING IMAGES USING CONDITIONAL ADVERSARIAL NETWORKS

NJDS

Paper: Semantic feature-constrained multitask siamese network for building change detection in high-spatial-resolution remote sensing imagery

S2Looking

Paper: S2Looking: A Satellite Side-Looking Dataset for Building Change Detection

Start

For training, run the following code in command line.

python train.py

If you want to debug while training, run the following code in command line.

python -m ipdb train.py

For test and inference, run the following code in command line.

python inference.py


简介

此项目是一个遥感变化检测的极简代码框架,希望能够帮助到刚进入变化检测领域的人快速实现自己的想法,代码主要包含以下特点:

下载需要的库

  1. 下载CUDA
  2. 下载1.12或者更新的pytorch
  3. 下载其他需要的包

​ 在命令行中运行下面的命令下载其他需要的包

pip install -r requirements.txt

数据

你可以使用任何你想使用的变化检测数据集,但是文件组织方式需要按照下面的来。dataset_name是你设置的变化检测数据集的名字。

dataset_name
├─train
│  ├─label
│  ├─t1
│  └─t2
├─val
│  ├─label
│  ├─t1
│  └─t2
└─test
    ├─label
    ├─t1
    └─t2

下面是一些你可能需要的二分类变化检测数据集。

WHU Building

Paper: Fully convolutional networks for multisource building extraction from an open aerial and satellite imagery data set

DSIFN

Paper: A deeply supervised image fusion network for change detection in high resolution bi-temporal remote sensing images

LEVIR-CD

Paper: A Spatial-Temporal Attention-Based Method and a New Dataset for Remote Sensing Image Change Detection

LEVIR-CD+

GoogleMap

Paper: SemiCDNet: A Semisupervised Convolutional Neural Network for Change Detection in High Resolution Remote-Sensing Images

SYSU-CD

Paper: SYSU-CD: A new change detection dataset in "A Deeply-supervised Attention Metric-based Network and an Open Aerial Image Dataset for Remote Sensing Change Detection"

CDD

Paper: CHANGE DETECTION IN REMOTE SENSING IMAGES USING CONDITIONAL ADVERSARIAL NETWORKS

NJDS

Paper: Semantic feature-constrained multitask siamese network for building change detection in high-spatial-resolution remote sensing imagery

S2Looking

Paper: S2Looking: A Satellite Side-Looking Dataset for Building Change Detection

开始

在命令行中运行下面的代码来开始训练

python train.py

如果你想在训练的时候进行调试,在命令行中运行下面的命令

python -m ipdb train.py

在命令行中运行下面的代码来开始测试或者推理

python inference.py