Skip to main content

PyGMTSAR (Python GMTSAR) - Easy and Fast Satellite Interferometry For Everyone

Project description

MacOS tests Ubuntu tests PyPI tests Available on pypi Docker

PyGMTSAR (Python GMTSAR) is an open source project and Python package that provides easy and fast Sentinel-1 Satellite Interferometry for everyone!

The goal of the project is easy and fast satellite interferometry (InSAR) processing for Sentinel-1 radar scenes everywhere as on localhost as on cloud environments like to Google Cloud VM and AI Notebooks and Amazon EC2 and on free of charge cloud environment Google Colab. GMTSAR binary command line tools are used under the hood but all GMTSAR scripts and GMT command replaced by Python code using modern and robust algorithms.

Why PyGMTSAR?

PyGMTSAR itself combines powerful Python instrumentary for sophisticated multidementional processing (xarray library) and lazy calculations (dask library) plus parallel computing (joblib library) to perform fast and interactive processing on huge datasets. And the best algorithms and numerical computation approaches applied for all the processing steps. There are progressbars and preview plots for the every long operation and that's easy to save intermediate results and continue work later on the same or other host. For an example, using the dump/restore features some work like to initial raw Sentinel-1 scenes downloading and preprocessing can be performed on a cloud instance and continued on a much smaller subset locally. And (thanks to joblib library) that's safe to interrupt the execution at any time without memory leaks (common for dask and dask-based libraries).

PyGMTSAR is really fast and that's possible to complete SBAS analysis for 5 years on 800 interferograms in just one day even on Apple Air or Apple iMac (8 cores and 16 GB RAM) using 2 TB raw Sentinel-1 scenes. And see the live Google Colab notebooks to find how dramatically PyGMTSAR enhaces the results in comparision to GMTSAR.

PyGMTSAR uses modified GMTSAR command line tools and all the required patches and enhancements pulled into the original GMTSAR project. In case when you have the recent GMTSAR installation PyGMTSAR will work with it. Otherwise, install by the same way PyGMTSAR or GMTSAR binaries from the GitHub repositories. PyGMTSAR live example Google Colab Notebooks install it automatically and you would just copy the instructions for Ubuntu 18.04 LTS. Also, see Debian 10 installation script in the repository.

Live Examples in Docker image

Configure your Docker runtime (Preferences -> Resources tab for Docker Desktop) to use 2 CPU cores and 8 GB RAM or 4 CPU cores and 16 GB RAM and so on. Download the Docker image (or build it yourself using the Dockerfile in the repository) and run the container forwarding port 8888 to JupyterLab using this commands inside your command line terminal window:

docker pull mobigroup/pygmtsar

docker run -dp 8888:8888 --name pygmtsar docker.io/mobigroup/pygmtsar

docker logs pygmtsar

See the output for the JupyterLab link and copy and past it into your web browser address line. Also, the donwloaded Docker image can be started in Docker Desktop app - press "RUN" button and define the container name and the port in the opened dialog window (see "Optional settings" for the port number input field) and click on the newly created container to launch it and see the output log with the clickable link.

Live Examples on Google Colab

Click on the examples below to run the processing in your own browser without any software installation. That's like to magic and it works.

Open In Colab ASF Downloading 2017 Iran–Iraq Earthquake vs GMTSAR GAMMA SNAP Co-Seismic Interferogram The notebook downloads Sentinel-1 Scenes from Alaska Satellite Facility (ASF) and compares the results to GMTSAR, SNAP and GAMMA Software. Note: replace the scene names to produce an interferogram and LOS displacement for your area of interest.

Open In Colab Live Example S1A_2016_Kumamoto Earthquake_Co-Seismic Interferogram vs ESA Sentinel 1 Toolbox on Alaska Satellite Facility. This is a single subswath processing with landmask applied to interferogram, unwapped phase, and LOS, east-west, vertical displacement results.

Open In Colab Live Example S1AB 2021 Crete Earthquake Co-Seismic Interferogram vs Centre of EO Research & Satellite Remote Sensing, Greece Report This is a single cropped subswath processing with landmask applied to interferogram, unwapped phase, and LOS, east-west, vertical displacement results.

Open In Colab GMTSAR example dataset S1A_Stack_CPGF_T173 This example illustrates SBAS and PSI analyses and detrending approach to remove atmospheric noise to produce much better results.

Open In Colab ASF Downloading 2020 Ardabil, Iran Earthquake Co-Seismic Interferogram and LOS Displacement The notebook downloads Sentinel-1 Scenes from Alaska Satellite Facility (ASF) to crop the area and merge subswaths and detrend results. Note: replace the scene names to produce an interferogram for your area of interest.

Learn more

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pygmtsar-2022.10.10.tar.gz (62.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pygmtsar-2022.10.10-py3-none-any.whl (59.8 kB view details)

Uploaded Python 3

File details

Details for the file pygmtsar-2022.10.10.tar.gz.

File metadata

  • Download URL: pygmtsar-2022.10.10.tar.gz
  • Upload date:
  • Size: 62.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.7

File hashes

Hashes for pygmtsar-2022.10.10.tar.gz
Algorithm Hash digest
SHA256 929b2d10b7b14d60752cd96b9816854ce40f91c8737d519761cad5555232bade
MD5 f17c33c4c53b1f835eeab6674693f8a3
BLAKE2b-256 1544ce48dd650148bfe1537cf7e53aed515378b765e755432aae58b634c8b469

See more details on using hashes here.

File details

Details for the file pygmtsar-2022.10.10-py3-none-any.whl.

File metadata

  • Download URL: pygmtsar-2022.10.10-py3-none-any.whl
  • Upload date:
  • Size: 59.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.7

File hashes

Hashes for pygmtsar-2022.10.10-py3-none-any.whl
Algorithm Hash digest
SHA256 3925465e1a3964d75a51c3c99760009417b2140d80690dddc5f6305e3f48d7c1
MD5 677bc7507b504c14267e282be215b611
BLAKE2b-256 8b85d0405a0726d532308bb2280cc90b4d475b307e9c56153fc9f24f1958afa0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page