All Projects → MinZHANG-WHU → FDCNN

MinZHANG-WHU / FDCNN

Licence: other
The implementation of FDCNN in paper - A Feature Difference Convolutional Neural Network-Based Change Detection Method

Programming Languages

python
139335 projects - #7 most used programming language
matlab
3953 projects
M
324 projects

Projects that are alternatives of or similar to FDCNN

ChangeFormer
Official PyTorch implementation of our IGARSS'22 paper: A Transformer-Based Siamese Network for Change Detection
Stars: ✭ 220 (+307.41%)
Mutual labels:  remote-sensing, siamese-network, change-detection
Change Detection Review
A review of change detection methods, including codes and open data sets for deep learning. From paper: change detection based on artificial intelligence: state-of-the-art and challenges.
Stars: ✭ 248 (+359.26%)
Mutual labels:  caffe, remote-sensing
Deepnetsforeo
Deep networks for Earth Observation
Stars: ✭ 393 (+627.78%)
Mutual labels:  caffe, remote-sensing
ScasNet
Semantic Labeling in VHR Images via A Self-Cascaded CNN (ISPRS JPRS, IF=6.942)
Stars: ✭ 24 (-55.56%)
Mutual labels:  remote-sensing, multi-scale
CDLab
Yet another repository for developing and benchmarking deep learning-based change detection methods.
Stars: ✭ 59 (+9.26%)
Mutual labels:  remote-sensing, change-detection
ChangeDetectionRepository
This repository contains some python code of some traditional change detection methods or provides their original websites, such as SFA, MAD, and some deep learning-based change detection methods, such as SiamCRNN, DSFA, and some FCN-based methods.
Stars: ✭ 311 (+475.93%)
Mutual labels:  remote-sensing, change-detection
ChangeOS
ChangeOS: Building damage assessment via Deep Object-based Semantic Change Detection - (RSE 2021)
Stars: ✭ 33 (-38.89%)
Mutual labels:  remote-sensing, change-detection
DSMSCN
[MultiTemp 2019] Official Tensorflow implementation for Change Detection in Multi-temporal VHR Images Based on Deep Siamese Multi-scale Convolutional Neural Networks.
Stars: ✭ 63 (+16.67%)
Mutual labels:  remote-sensing, change-detection
deep-parking
Code to reproduce 'Deep Learning for Decentralized Parking Lot Occupancy Detection' paper.
Stars: ✭ 81 (+50%)
Mutual labels:  caffe, pycaffe
CRC4Docker
Python scripts for the textbook "Image Analysis, Classification and Change Detection in Remote Sensing, Fourth Revised Edition"
Stars: ✭ 84 (+55.56%)
Mutual labels:  remote-sensing, change-detection
massive-change-detection
QGIS 2 plugin for applying change detection algorithms on high resolution satellite imagery
Stars: ✭ 18 (-66.67%)
Mutual labels:  remote-sensing, change-detection
caffe-yolo-9000
caffe-yolo-9000
Stars: ✭ 49 (-9.26%)
Mutual labels:  caffe
GGHL
This is the implementation of GGHL (A General Gaussian Heatmap Label Assignment for Arbitrary-Oriented Object Detection)
Stars: ✭ 309 (+472.22%)
Mutual labels:  remote-sensing
land-cover-to-land-use-classification
Satellite image processing pipeline to classify land-cover and land-use
Stars: ✭ 64 (+18.52%)
Mutual labels:  remote-sensing
AOT-GAN-for-Inpainting
[TVCG] AOT-GAN for High-Resolution Image Inpainting (codebase for image inpainting)
Stars: ✭ 147 (+172.22%)
Mutual labels:  multi-scale
Offline-Signature-Verification-using-Siamese-Network
Identifying forged signatures using convolutional siamese networks implemented in Keras
Stars: ✭ 31 (-42.59%)
Mutual labels:  siamese-network
biodivMapR
biodivMapR: an R package for α- and β-diversity mapping using remotely-sensed images
Stars: ✭ 18 (-66.67%)
Mutual labels:  remote-sensing
rsMove
Remote Sensing for Movement Ecology
Stars: ✭ 25 (-53.7%)
Mutual labels:  remote-sensing
nettutorial
Deep learning tutorial
Stars: ✭ 27 (-50%)
Mutual labels:  caffe
caffe-mobilenet-v3
Caffe Implementation of MobileNets V3
Stars: ✭ 127 (+135.19%)
Mutual labels:  caffe

FDCNN

This repository contains code, network definitions and pre-trained models for change detection on remote sensing images using deep learning.

The implementation uses the Caffe framework.

Motivation

In this work, we use scene-level samples (from the AID data set) of remote sensing scene classification, which are easier to obtain than pixel-level samples, for learning deep features from different remote sensing scenes at different scales. These features learned from specific scenes (cultivated land, lakes, vegetation, etc.) are more affected. The changes in these scenes are usually more important. Based on this idea, A new CNN structure and training strategies are proposed for remote sensing image change detection, which is supervised but requires very few pixel-level training samples. Advantageously, it has good generalization ability and multi-scale change detection capabilities.

Content

Networks

We provide a deep neural network based on the VGG16 architecture. It was trained on the AID dataset to learn the multi-scale deep features from remote sensing images. The pre-trained weights can be download from the link.

We proposed a novel FDCNN to produce change detection maps from high-resolution RS images. It is suitable for multi-scale remote sensing image change detection tasks.

Datasets

The available datasets can be downloaded from the table below:

Tabel 1. Experiment datasets.
Datasets Description Download
AID 10,000 RS images (R, G and B), including 30 different scene types (i.e. labeled 30 types at scene-level), each containing more than 220 images with a size of 600×600 pixels and a spatial resolution of 8 meters to 0.5 meters, collected in different countries (China, USA, UK, France, etc.), at different times and in different imaging conditions [official]
Worldview 2 including 2 pilot sites, and each site consists of a ground truth map (labeled changed and unchanged at pixel-level) and two-period Worldview 2 satellite images (Worldview 3 and WV3 were incorrectly written in our paper), located in Shenzhen, China, with a size of 1431×1431 pixels and a spatial resolution of 2 meters, acquired in 2010 and 2015 respectively. Site 1 (RGB) [drive]
Site 1 (4 bands) [drive]
Site 2 (RGB) [drive]
Site 2 (4 bands) [drive]
Zi-Yuan 3 including a ground truth map (labeled changed and unchanged at pixel-level) and two-period Zi-Yuan 3 satellite images, located in Wuhan, Hubei, China, with a size of 458×559 pixels, three bands (R, G and B), and a spatial resolution of 5.8 meters, acquired in 2014 and 2016 respectively. [drive]
Quickbird including a ground truth map (labeled changed and unchanged at pixel-level) and two-period Quickbird satellite images, located in Wuhan, Hubei, China, with a size of 1154×740 pixels, three bands (R, G and B), and a spatial resolution of 2.4 meters, acquired in 2009 and 2014 respectively. [drive]
OSCD 10 test pairs RS images with a spatial resolution of 10 meters, taken from the Sentinel-2 satellites between 2015 and 2018 with pixel-level change ground truth. Their ground truth remains undisclosed and the results need be uploaded to the IEEE GRSS DASE website for evaluation [drive] [official]
SZADA/1 a pair of optical aerial images, labeled changed and unchanged at pixel-level, taken with several years of time differences, with a spatial resolution 1.5 meters. [drive] [official]

How to start

  1. Install Caffe with Python 2.7

    1. Follow the instructions in Installation, note the version of Python. Or using our pre-build runtime (with CUDA 8.0 and for Windows only).
    2. Please add the absolute path of folder "caffe_layers" to the PYTHONPATH so that PyCaffe can search for the layer implementation file.
  2. Training VGG16 & FDCNN

    1. Training VGG16 using the AID dataset.

    2. Training FDCNN using the WV2 site 1 dataset.

  3. Testing FDCNN

    1. Download the test data sets and unzip them to the "datasets" subfolder.

    2. Use your own trained FDCNN model, or download our pre-trained FDCNN model.

    3. Evaluation

      • To test the accuracy of FDCNN on the test datasets, run the following commands:

        python exp_test_custom.py \
            --sensor=ZY3 \
            --alpha=2.0
        
      • To test the accuracy of FDCNN on the SZTAKI datasets, run the following commands:

        python exp_test_SZTAKI.py \
            --alpha=2.66
        
      • To test the accuracy of FDCNN on the OSCD datasets, run the following commands:

        python exp_test_OSCD.py \
            --threshold=0.98
        

        The ground truth of OSCD remains undisclosed and the results need be uploaded to the IEEE GRSS DASE website for evaluation, see figure 1.

        Figure 1. FDCNN accuracy evaluation on the OSCD dataset.

    Change magnitude map (CMM.tif) and binary image (BM.tif) will be generated under the "output" subfolder.

References

If you use this work for your projects, please take the time to cite our paper.

@Article{9052762,
AUTHOR = {Zhang, Min and Shi, Wenzhong},
TITLE = {A Feature Difference Convolutional Neural Network-Based Change Detection Method},
JOURNAL = {IEEE Transactions on Geoscience and Remote Sensing},
VOLUME = {},
YEAR = {2020},
NUMBER = {},
URL = {https://ieeexplore.ieee.org/document/9052762},
DOI = {10.1109/TGRS.2020.2981051}
}

License

Code and datasets are released under the GPLv3 license for non-commercial and research purposes only. For commercial purposes, please contact the authors.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].