Skip to content

Installation

Install Locally

Install InSARHub in a fresh environment
conda create -n insarhub python=3.12
conda activate insarhub
Limit Windows support

Currently InSARHub only test running under Python version 3.11 in Windows environment

conda install insarhub -c conda-forge

Or from pip (GDAL must be installed via conda first):

conda install gdal
pip install insarhub

Adds local interferogram processing via ISCE2 stackSentinel.

No Windows Support

ISCE2 is only available on Linux and macOS (x86_64). Not available for Windows or Apple Silicon natively — use WSL2 or a Linux virtual machine.

Restricted numpy version

ISCE2 currently pins numpy<2

Install InSARHub first, then add ISCE2 into the same environment:

conda install insarhub -c conda-forge
conda install isce2 -c conda-forge

Via pip:

conda install gdal isce2
pip install insarhub

Verify ISCE2 installed correctly:

python -c "import isce; print(isce.__version__)"

Adds local burst processing via ISCE3 / COMPASS (geocoded CSLCs) and dolphin (phase linking + time series)

No Windows Support

The ISCE3 / COMPASS / dolphin stack is Linux and macOS (x86_64) only — use WSL2 or a Linux virtual machine on other platforms.

Restricted numpy version

COMPASS currently pins numpy<2

conda create -n isce3_dolphin python=3.12
conda activate isce3_dolphin
conda install -c conda-forge insarhub isce3 compass sardem dolphin snaphu burst2safe gdal

Verify the stack imports:

python -c "import isce3, compass, dolphin; print('ok')"

Adds local interferogram processing via GMTSAR plus MintPy time-series.

No Windows Support

--system conda-linux-full is Linux x86_64 only, use WSL2 or a Linux virtual environment on other platforms.

# 1. Clone the full GMTSAR repo and build it (creates a conda env named "gmtsar")
git clone https://github.com/gmtsar/gmtsar.git
cd gmtsar
python3 gmtsar/python/install.py --system conda-linux-full

# 2. Add InSARHub + MintPy into that same env
conda activate gmtsar
conda install -c conda-forge insarhub mintpy

# 3. Put GMTSAR's binaries on PATH (add to your shell profile to persist)
export GMTSAR=$(pwd)
export PATH=$GMTSAR/bin:$PATH

Verify:

which p2p_processing && gmt --version
python -c "import insarhub, mintpy; print('ok')"

Use Container

InSARHub support container via Docker, check the official guide to install Docker on you machine.

User may choose to run inside container or install base InSARHub locally and run each processor/analyzer via --container

Currently InSARHub support:

Default InSARHub container that support sentinel-1 processing via Hyp3 and time-series analysis via Mintpy

ghcr.io/jldz9/insarhub-base:0.4.0

Covers the ISCE2_S1 processor and ISCE2_Mintpy_SBAS analyzer

ghcr.io/jldz9/insarhub-isce2-mintpy:0.4.0

Covers ISCE3_Burst (Sentinel-1 bursts) and ISCE3_NISAR (NISAR GSLC), plus the ISCE3_Dolphin_S1_PL and ISCE3_Dolphin_NISAR_PL analyzers

ghcr.io/jldz9/insarhub-isce3-dolphin:0.4.0

Covers the GMTSAR_S1 processor and GMTSAR analyzers

ghcr.io/jldz9/insarhub-gmtsar-mintpy:0.4.0

Development Setup

git clone https://github.com/jldz9/InSARHub.git
cd InSARHub
conda env create -f environment.yml -n insar_dev
conda activate insar_dev
pip install -e .

Windows: use Python 3.11

environment.yml allows Python 3.11 or 3.12, but only 3.11 is currently supported on Windows. If the solve picks 3.12, edit the python line in environment.yml to python=3.11 before running conda env create.

git clone https://github.com/jldz9/InSARHub.git
cd InSARHub
conda env create -f environment.yml -n insar_dev
conda activate insar_dev
conda install -c conda-forge "numpy<2.0" isce2
pip install -e .
git clone https://github.com/jldz9/InSARHub.git
cd InSARHub
conda create -n isce3_dolphin python=3.12
conda activate isce3_dolphin
conda install -c conda-forge isce3 compass sardem dolphin snaphu burst2safe gdal
pip install -e .
# Build GMTSAR from source into a conda env named "gmtsar"
git clone https://github.com/gmtsar/gmtsar.git
cd gmtsar
python3 gmtsar/python/install.py --system conda-linux-full
export GMTSAR=$(pwd) && export PATH=$GMTSAR/bin:$PATH

# Add MintPy + InSARHub (editable) into that env
conda activate gmtsar
conda install -c conda-forge mintpy
git clone https://github.com/jldz9/InSARHub.git
cd InSARHub
pip install -e .
Using mamba for faster solves

Replace conda with mamba in any of the above commands if you have mamba installed.