Code Monkey home page Code Monkey logo

ngveo's Introduction

NGVEO - New Generation Value chain for Earth Observation

Python code for applying convolutional neural networks (CNN) to Earth Observation (EO) data from Sentinel 1 and 2 using python and PyTorch.

The code provides a simple framework for (1) converting EO data to an efficient format for deep learning, (2) training CNNs, and (3) applying trained networks to new data. We provide two simple examples, one regression problem (atmospheric correction) and one classification problem (cloud detection). The code can easily be modified for other solving other problems by adding your own training data in the prepare_data.py-code. In addition we pre-trained models for tree-height estimation and forest-cover estimation can be dowloaded at https://www.dropbox.com/sh/fejcyzb859ek2z8/AABVx8Ic4OnnAF6EtDx4VDwIa?dl=0

Setup:

  • Make sure GDAL is installed.
  • Download code and setup python:
git clone https://github.com/ESA-PhiLab/NGVEO.git
cd NGVEO
virtualenv -p python3 env
source env/bin/activate
pip3 install -r REQUIREMENTS.txt
  • If you do not have access to ESAs eodata-drive from your computer you need to manually download the SAFE-files/folders listed in example_eodata_l*.txt (http://finder.eocloud.eu). Also, rename the paths in these files to point to the location where the SAFE-files are downloaded.

Main files:

  • prepare_data.py - Move data from ESAs eodata-storage to a local storage with an efficient np.memmap-format suitable for training CNNs. Both training-data and test-data should be prepared.
  • train.py - Train the CNN.
  • predict.py - Apply the trained network to new data and store as results as GEOtiff.

Credit:

Authors:

Anders U. Waldeland* ([email protected]), Arnt-Børre Salberg*, Allessandro Marin** and Øyvind Due Trier*

* Norwegian Computing Center (https://www.nr.no/)

** Phi Lab, European Space Agency (http://blogs.esa.int/philab/)

ngveo's People

Contributors

dependabot[bot] avatar waldeland 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.