Skip to main content

Workflows for generating surface displacement maps using InSAR

Project description

dolphin

Pytest and build docker image pre-commit.ci status Conda-Forge PyPI platforms GitHub Discussion

High resolution wrapped phase estimation for Interferometric Synthetic Aperture Radar (InSAR) using combined persistent scatterer (PS) and distributed scatterer (DS) processing.

Install

dolphin is available on conda:

# if mamba is not already installed, see here: https://mamba.readthedocs.io/en/latest/
mamba install -c conda-forge dolphin

dolphin has the ability to unwrap interferograms using several options:

  1. snaphu-py, a lightweight Python bindings to SNAPHU. Available on both pip and conda.
  2. isce3's python bindings to SNAPHU, PHASS, or ICU
  3. tophu, a multi-scale unwrapper designed to unwrap large interferograms in parallel tiles at multiple resolution.

These may be installed via conda or (in the case of snaphu-py) pip.

To install locally:

  1. Download source code:
git clone https://github.com/isce-framework/dolphin.git && cd dolphin
  1. Install dependencies:
mamba env create --file conda-env.yml

or if you have an existing environment:

mamba env update --name my-existing-env --file conda-env.yml
  1. Install dolphin via pip:
conda activate dolphin-env
python -m pip install .

Dolphin can also take advantage of CUDA-compatible GPUs for faster processing. See the docs for installation instructions and configuration.

Usage

The main entry point for configuring and running workflows the dolphin command line tool:

  1. dolphin config: create a workflow configuration file.
  2. dolphin run : run the workflow using this file.

Example usage:

dolphin config --slc-files /path/to/slcs/*tif
dolphin run dolphin_config.yaml

The config command creates a YAML file (by default dolphin_config.yaml in the current directory). If you'd like to see an empty YAML with all defaults filled in, you can run dolphin config --print-empty

The only required inputs for the workflow are the paths to the coregistered SLC files (in either geographic or radar coordinates). If the SLC files are spread over multiple files, you can either

  1. use the --slc-files option with a bash glob pattern, (e.g. dolphin config --slc-files merged/SLC/*/*.slc would match the ISCE2 stack processor output )

  2. Store all input SLC files in a text file delimited by newlines (e.g. my_slc_list.txt), and give the name of this text file prefixed by the @ character (e.g. dolphin config --slc-files @my_slc_list.txt)

The full set of options is written to the configuration file; you can edit this file, or you can see which commonly tuned options by are changeable running dolphin config --help.

See the documentation for more details.

Building and running via Docker

dolphin can also be run using Docker. You can use the one built on Github, or build it locally using the script

./docker/build-docker-image.sh

See ./docker/build-docker-image.sh --help for more building options.

License

This software is licensed under your choice of BSD-3-Clause or Apache-2.0 licenses. See the accompanying LICENSE file for further details.

SPDX-License-Identifier: BSD-3-Clause OR Apache-2.0

Project details


Download files

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

Source Distribution

dolphin-0.28.1.tar.gz (1.8 MB view details)

Uploaded Source

Built Distribution

dolphin-0.28.1-py3-none-any.whl (251.4 kB view details)

Uploaded Python 3

File details

Details for the file dolphin-0.28.1.tar.gz.

File metadata

  • Download URL: dolphin-0.28.1.tar.gz
  • Upload date:
  • Size: 1.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for dolphin-0.28.1.tar.gz
Algorithm Hash digest
SHA256 42dbf2ce0075340befe2a12ba9e1c948ce0fd01f6e3a34802f240c81a93f3fb5
MD5 01d12ef9e71c640feb68d06f42aa0fa5
BLAKE2b-256 a018113a57a956e54f391c91e55f889217499e614edf9bb67e21a6bbc7a2bafe

See more details on using hashes here.

File details

Details for the file dolphin-0.28.1-py3-none-any.whl.

File metadata

  • Download URL: dolphin-0.28.1-py3-none-any.whl
  • Upload date:
  • Size: 251.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for dolphin-0.28.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5ae656d337967c319478a03fd9f6459c076869dfbb72b0c1740a50b76d270f3f
MD5 21b55f35bea1dbf0e2b5d2664d48ec80
BLAKE2b-256 5be027a687beb4afcd24385d4d5720f3b78aefbb81e22e8ea1f60d56701f6646

See more details on using hashes here.

Supported by

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