This repository constains scripts and examples for reconstructing a displacement signal from a network of pairwise displacement measurements through time-series inversion. Inversion is part of the processing chain for deriving a continuos time series from satellite-based measurements of displacements over landslides, glaciers, dunes or other Earth-surface processes. Here, we explore the impact of measurement errors and network connectivity using an artificial displacement signal.
All relevant python functions can be found in timeseries_inversion.py. We also created four Jupyter Notebooks that show their application with regards to the following topics:
- Notebook 1: basic reconstruction and the effect of different types of measurement errors.
- Notebook 2: different weighting strategies that can help to improve the reconstruction accuracy.
- Notebook 3: inversion of sparsely connected (one group but limited number of connections) and disconnected (seperate groups) networks.
- Notebook 4: seasonal error mitigation through regular sampling or same-season pairing
To install all necessary Python packages, create a new environment using conda and the provided environment.yml file:
conda env create -f environment.yml
conda activate ts_inversion
jupyter notebook
In addition to the Python code, this repository contains examples for visualizing networks and inverted time series in R:
All R scripts are contained in the Rplotting folder.
This repository is associated with:
Mueting, A., Charrier, L., and Bookhagen, B.: Assessing the accuracy of time-series inversion for reconstructing surface-displacement signals using Sentinel-2 and PlanetScope imagery (in prep.)