Giter Site home page Giter Site logo

niteshjindalxb / opensartoolkit Goto Github PK

View Code? Open in Web Editor NEW

This project forked from esa-philab/opensartoolkit

0.0 0.0 0.0 570 KB

High-level functionality for the inventory, download and pre-processing of Sentinel-1 data in the python language.

License: MIT License

Dockerfile 0.36% Shell 1.76% Python 97.88%

opensartoolkit's Introduction

Open SAR Toolkit (OST)

A note on its origin

Open SAR Toolkit was initially developed at the Food and Agriculture Organization of the United Nations under the SEPAL project (https://github.com/openforis/sepal) between 2016-2018. It is still available there (https://github.com/openforis/opensarkit), but has been completely re-factored and transferred into a simpler and less-dependency rich python3 version, which can be found on this page here. Instead of using R-Shiny as a GUI, the main interface are now Jupyter notebooks that are developed in parallel to this core package and should help to get started. (https://github.com/ESA-PhiLab/OST_Notebooks)

Objective

Compared to its optical counterpart, the community of Synthetic Aperture Radar (SAR) data users for land applications is still small. One major reason for that originates from the differences in the acquisition principle and the underlying physics of the imaging process. For non-experts, this results in difficulties of applying the correct processing steps as well as interpreting the non-intuitive backscatter image composites. On the other hand, the free and open access to Sentinel-1 data widened the community of interested users and paves the way for the integration of SAR data into operational monitoring systems.

This python package lowers the entry barrier for pre-processing Sentinel-1 data and allows users with little knowledge on SAR and python to produce analysis-ready small to large-scale SAR datasets. OST includes fully automated routines that are mainly build on top of the Sentinel Application Platform (SNAP) and other freely available open-source software such as GDAL, Orfeo Toolbox and Python.

Functionality

The Open SAR Toolkit follows an object-oriented approach, providing classes for single scene processing, GRD and SLC batch processing routines. The latter includes options to include processing of interferometric coherence and polarimetric decompositions.

You can find examplarotary Jupyter notebooks at https://github.com/ESA-PhiLab/OST_Notebooks for getting started.

Installation

OST is rather a meta-package of the Sentinel-1 toolbox than a full-flavoured software. In order to make

Dependencies (OS independent)

Sentinel Application Toolbox (SNAP)

OST bases mainly on the freely available SNAP toolbox for the SAR-specific processing routines. You can download SNAP from:

http://step.esa.int/main/download/

If you install SNAP into the standard directory, OST should have no problems to find the SNAP command line executable. Otherwise you need to define the path to the gpt file on your own during processing.

Orfeo Toolbox

If you want to create mosaics between different swaths, OST will rely on the otbcli_Mosaic command from The Orfeo Toolbox. You download Orfeo from:

https://www.orfeo-toolbox.org/download/

Make sure that the Orfeo bin folder is within your PATH variable to allow execution from command line.

OST is developed under Ubuntu 18.04 OS in python 3.6. It has not been tested much on other OS and python versions, but should in principle work on any OS and any python version >= 3.5.

Before it can work, some dependencies need to be installed:

Ubuntu/Debian Linux (using pip)

Before installation of OST, run the following line on the terminal:

sudo apt install python3-pip git libgdal-dev python3-gdal libspatialindex-dev

then isntall OST as a global package (for all users, admin rights needed):

sudo pip3 install git+https://github.com/ESA-PhiLab/OpenSarToolkit.git

or as local package within your home folder (no admin rights needed):

pip3 install --user git+https://github.com/ESA-PhiLab/OpenSarToolkit.git

Mac OS (using homebrew/pip)

If not already installed, install homebrew as explained on https://brew.sh

After installation of homebrew, open the terminal and execute this:

brew install python3 gdal2 gdal2-python git

and this:

pip3 install git+https://github.com/ESA-PhiLab/OpenSarToolkit.git

Conda Installation (Windows, Mac, Linux)

Download miniconda3 (python version 3) from https://conda.io/miniconda.html and install it:

# get the installer
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
# install
bash Miniconda3-latest-Linux-x86_64.sh
# source the new installation
source .bashrc
# remove installer
rm  Miniconda3-latest-Linux-x86_64.sh

Then install OST's dependencies:

conda install pip gdal jupyter jupyterlab git matplotlib numpy rasterio imageio rtree geopandas fiona shapely matplotlib descartes tqdm scipy

and then

pip install git+https://github.com/ESA-PhiLab/OpenSarToolkit.git

Examples

Ecuador VV-polarised Timescan Composite

Year: 2016

Sensor: Sentinel-1 C-Band SAR.

Acquisitions: 6 acquisitions per swath (4 swaths)

Output resolution: 30m

RGB composite:

  • Red: VV-maximum
  • Green: VV-minimum
  • Blue: VV-Standard deviation

alt text

Ethiopia VV-VH polarised Timescan Composite

Year: 2016-2017

Sensor: Sentinel-1 C-Band SAR.

Acquisitions: 7 acquisitions per swath (about 400 scenes over 8 swaths)

Output resolution: 30m

RGB composite:

  • Red: VV-minimum
  • Green: VH-minimum
  • Blue: VV-Standard deviation

alt text

Author

  • Andreas Vollrath, ESA

opensartoolkit's People

Contributors

buddyvolly avatar niteshjindalxb 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.