Coder Social home page Coder Social logo

zoeyingz / classification-of-hyperspectral-image Goto Github PK

View Code? Open in Web Editor NEW

This project forked from konstantinosf/classification-of-hyperspectral-image

1.0 1.0 0.0 7.96 MB

Classification of the Hyperspectral Image Indian Pines with Convolutional Neural Network

License: MIT License

Jupyter Notebook 100.00%

classification-of-hyperspectral-image's Introduction

Classification-of-Hyperspectral-Image

Classification of the Hyperspectral Image Indian Pines with Convolutional Neural Network

Hyperspectral images are images captured in hundrends of bands of the electromagnetic spectrum. This project is focused at the development of Deep Neural Network for landcover classification in hyperspectral images. Land-cover classification is the task of assigning to every pixel, a class label that represents the type of land-cover.

Most of the existing studies and research efforts are following the conventional pattern recognition paradigm, which is based on the construction of complex handcrafted features. However, it is rarely known which features are important for the problem at hand. In contrast to these approaches, a deep learning based classification method that hierarchically constructs high-level features in an automated way, is proposed. In this project, exploitation of a Convolutional Neural Network, is taking part, to encode pixels’ spectral and spatial information and a Multi-Layer Perceptron to conduct the classification task.

This project is based on the paper "DEEP SUPERVISED LEARNING FOR HYPERSPECTRAL DATA CLASSIFICATION THROUGH CONVOLUTIONAL NEURAL NETWORKS" by Makantasis et al.

Just to clarify, my code has nothing to do with the previously mentioned paper. I refer to it, because I followed the same resoning to build my code.

Description of the repository

  1. Open the global_variables.txt file and write the wanted windowsize, the number of the PCA components and the test train split.

  2. Run the notebook "CreatetheDatasets", in order to create the Xtrain, Xtest, ytrain, ytest matrices. Matrices are saved in a numpy format.

  3. Run the notebook "TrainTheModel", in order to train the model. The model is being saved including the weights.

  4. Run the "Validation+ClassificationMaps", for validating the model and creating the clasification map.

Figures

Patch Size Overall Accuracy
5x5 83%
7x7 88%
9x9 94%
11x11 95%

CNN_Architecture

classification-of-hyperspectral-image's People

Contributors

konstantinosf avatar

Stargazers

 avatar

Watchers

 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.