https://github.com/GeoscienceAustralia/PyRate
Raw File
Tip revision: 29ce59c68bc134810a3df70cdcce0284e8d35980 authored by Matt Garthwaite on 26 June 2020, 00:13:01 UTC
Merge pull request #274 from GeoscienceAustralia/develop
Tip revision: 29ce59c
README.rst
.. image:: docs/PyRate_logo_50.png

Python tool for InSAR Rate and Time-series Estimation
=====================================================

.. image:: https://travis-ci.org/GeoscienceAustralia/PyRate.svg?branch=master
   :target: https://travis-ci.org/GeoscienceAustralia/PyRate
.. image:: https://coveralls.io/repos/github/GeoscienceAustralia/PyRate/badge.svg?branch=master
   :target: https://coveralls.io/github/GeoscienceAustralia/PyRate?branch=master
.. image:: https://codecov.io/gh/GeoscienceAustralia/PyRate/branch/master/graph/badge.svg
   :target: https://codecov.io/gh/GeoscienceAustralia/PyRate
.. image:: https://img.shields.io/badge/License-Apache%202.0-blue.svg
   :target: https://opensource.org/licenses/Apache-2.0
.. image:: https://img.shields.io/pypi/pyversions/Py-Rate 
   :target: https://pypi.org/project/Py-Rate/ 

PyRate is a Python tool for estimating the average displacement rate (velocity) and cumulative displacement time-series of surface movements for every pixel in a stack of geocoded unwrapped interferograms generated by Interferometric Synthetic Aperture Radar (InSAR) processing. PyRate uses a "Small Baseline Subset" (SBAS) processing strategy and currently supports input data in the GAMMA or ROI_PAC software formats.

The PyRate project started in 2012 as a partial Python translation of "Pirate", a Matlab tool developed by the University of Leeds and the Guangdong University of Technology.

The full PyRate documentation is available at http://geoscienceaustralia.github.io/PyRate

Dependencies
------------

The following dependencies need to be on your system prior to PyRate installation:

- `Python <https://www.python.org/downloads/>`_, versions 3.6, 3.7 or 3.8.
- `GDAL <https://gdal.org/download.html>`_, versions 3.0.2 or 3.0.4
- `Open MPI <https://www.open-mpi.org/software/ompi/v4.0/>`_, versions 2.1.6, 3.0.4, 3.1.4 or 4.0.2

The versions of each package stated above have been tested to work.

Python dependencies are:

::

    Cython==0.29.16
    Pillow==7.1.1
    glob2==0.7
    joblib==0.14.1
    mpi4py==3.0.3
    networkx==2.4
    numpy==1.18.3
    pyproj==2.6.0
    scipy==1.4.1
    numexpr==2.7.1

Install
-------

Details of all install options are given in the `PyRate documentation <http://geoscienceaustralia.github.io/PyRate>`_.

`PyRate` and its Python dependencies can be installed directly from the `Python Package Index (PyPI) <https://pypi.org/project/Py-Rate/>`_:

::

    pip install Py-Rate

To install from source in Linux, enter these commands in a terminal:

::

    cd ~
    git clone https://github.com/GeoscienceAustralia/PyRate.git
    python3 -m venv ~/PyRateVenv
    source ~/PyRateVenv/bin/activate
    cd ~/PyRate
    python3 setup.py install

This will install the above-listed Python dependencies and compile the executable program ``pyrate``:

::

    >> pyrate --help
    usage: pyrate [-h] [-v {DEBUG,INFO,WARNING,ERROR}]
                  {conv2tif,prepifg,process,merge,workflow} ...

    PyRate workflow:

        Step 1: conv2tif
        Step 2: prepifg
        Step 3: process
        Step 4: merge

    Refer to https://geoscienceaustralia.github.io/PyRate/usage.html for
    more details.

    positional arguments:
      {conv2tif,prepifg,process,merge,workflow}
        conv2tif            Convert interferograms to geotiff.
        prepifg             Perform multilooking and cropping on geotiffs.
        process             Main processing workflow including corrections, time series and stacking computation.
        merge               Reassemble computed tiles and save as geotiffs.
        workflow            Run all the PyRate processes

    optional arguments:
      -h, --help            show this help message and exit
      -v {DEBUG,INFO,WARNING,ERROR}, --verbosity {DEBUG,INFO,WARNING,ERROR}
                            Increase output verbosity

back to top