Giter Site home page Giter Site logo

the-obsrvr / dl_for_rsis Goto Github PK

View Code? Open in Web Editor NEW

This project forked from coderimoe/dl_for_rsis

0.0 2.0 0.0 1.93 MB

Deep Leaning (DL) for remote sensing image (RSI) classification.

License: Apache License 2.0

Python 68.08% Jupyter Notebook 31.92%

dl_for_rsis's Introduction

DL_for_RSIs

Deep Leaning (DL) for remote sensing image (RSI) classification.
If it helps, please STAR the project and CITE our papers.

Sample-set Maker(SSM) V5.0

  • SSM.py

This is a class definition scipts for Sample-set Maker. SSM is a sample maker for RSI (Remote Sencing Image) classification, specifically for deep learning classification algorithm. With SSM, you can easily load a RSI and get samples for training. Every Sample made by SSM is a N*N sub-image, which can be a sample of its center pixel for CNN/ResNet classifier. Also, AL (Active Learning) is supported in SSM.

The script is compliant with PEP-8 specifications.


Networks

1. Wide Contextual Residual Network (WCRN)

This is a wide contextual residual network (WCRN) with active learning (AL) for remote sensing image (RSI) classification.

Though ResNets have achieved great success in various applications, its performance is limited by the requirement of abundant labeled samples. As it is very difficult and expensive to obtain class labels in real world, we integrate the proposed WCRN with AL to improve its generalization by using the most informative training samples.

Specifically, we first design a WCRN for RSI classification, and then integrate it with AL to achieve good machine generalization with limited number of training sampling. Experimental results on Pavia University and Flevoland datasets demonstrate that the proposed WCRN with AL can significantly reduce the needs of samples.

Environment:

We run the scripts in Windows OS.
Spyder with Python 3.6
Keras 2.0.8 using Tensorflow 1.2.1 backend
SSM.py

Script:

WCRN.py: the definition of the network.
SSM.py: a sample manager.
PU_train.py: an example script for Pavia University, used for training.
PU_predict.py: an example script for Pavia University, used for predicting.

The scripts are compliant with PEP-8 specifications.

Reference:

S. Liu, H. Luo, Y. Tu, Z. He and J. Li, "Wide Contextual Residual Network with Active Learning for Remote Sensing Image Classification," IGARSS 2018 - 2018 IEEE International Geoscience and Remote Sensing Symposium, Valencia, 2018, pp. 7145-7148. doi: 10.1109/IGARSS.2018.8517855

2. Shorten Spatial-spectral RNN with Parallel-GRU (St-SS-pGRU)

Convolutional neural networks (CNNs) attained a good performance in hyperspectral sensing image (HSI) classification, but CNNs consider spectra as orderless vectors. Therefore, considering the spectra as sequences, recurrent neural networks (RNNs) have been applied in HSI classification, for RNNs is skilled at dealing with sequential data. However, for a long-sequence task, RNNs is difficult for training and not as effective as we expected. Besides, spatial contextual features are not considered in RNNs. In this study, we propose a Shorten Spatial-spectral RNN with Parallel-GRU (St-SS-pGRU) for HSI classification. A shorten RNN is more efficient and easier for training than band-by-band RNN. By combining converlusion layer, the St-SSpGRU model considers not only spectral but also spatial feature, which results in a better performance. An architecture named parallel-GRU is also proposed and applied in St-SS-pGRU. With this architecture, the model gets a better performance and is more robust.

Environment:

We run the scripts in Windows OS.
Jupyter with Python 3.6
Tensorflow 1.8.0
SSM.py

Script:

Experiment.ipynb

Reference:

Haowen Luo. Shorten Spatial-spectral RNN with Parallel-GRU for Hyperspectral Image Classification. arXiv preprint arXiv:1810.12563, 2018.

dl_for_rsis's People

Watchers

James Cloos avatar Siddharth Bhargava avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.