Giter Club home page Giter Club logo

pansharpening-by-convolutional-neural-network's Introduction

Pansharpening-by-Convolutional-Neural-Network

Python implementation of Convolutional Neural Network (CNN) proposed in academic paper

This repository contains functions to preprocess the separate training multispectral and panchromatic images so that they can be used to train the CNN model. In addition, this repository also contains functions to generate a pansharpened image which is produced by the CNN using input multispectral and panchromatic images (of any size, and with the same extents) as inputs.

The CNN used here is the Pansharpening Convolutional Neural Network (PCNN) implemented in the paper 'Pansharpening by Convolutional Neural Networks' by Masi G., Cozzolino D., Verdoliva L., Scarpa G. (2016)

The main difference in the implementation in this repository and the one proposed in the paper is the use of the Adam optimizer.

Requirements:

  • cv2
  • gc
  • glob
  • numpy
  • rasterio
  • keras (TensorFlow backend)

The following images illustrates the PCNN model in action on a sample GeoEye - 1 image (courtesy of European Space Agency), which is not one of the sensors included in the training dataset for the PCNN model. It serves to test the generalizability of the PCNN model on sensors on which the model has not been trained on before. Do note that the default parameters are used to train this particular PCNN model, and that some improvements might be expected if fine - tuning of the parameters are conducted.

Sample GeoEye - 1 Multispectral Image (Courtesy of European Space Agency): Alt Text

Sample GeoEye - 1 Panchromatic Image (Courtesy of European Space Agency): Alt Text

Sample GeoEye - 1 Pansharpened Image: Alt Text

pansharpening-by-convolutional-neural-network's People

Contributors

thomaswangweihong 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.