/ICASAR

An algorithm for robustly appling sICA to InSAR data

Primary LanguagePythonBSD 2-Clause "Simplified" LicenseBSD-2-Clause

ICASAR

An algorithm for robustly appling sICA to InSAR data in order to isolate deformation signals and atmospheric signals. Its use is detailed in the GitHub Wiki.

Gaddes et al., 2019 details its application to Sierra Negra (Galapagos Archipelago, Ecuador), where it was able to isolate the caldera floor uplift signal (source 1), and a topograhically correlated atmospheric phase screen (source 2):

figure_5



The algorithm also provides tools to visualise the recovered sources in order for a user to determine how robust they are. Note that the sources capturing the caldera floor uplift (blue points), form an isolated and compact cluster:

figure_4

September 2020 addition:

ICASAR now supports temporal data. Whilst this requires no changes to the heart of the algorithm, it required many changes to the plotting functionality, and the creation of a temporal example. The interactive plot (when hovering over a data point, more information is presented in an inset axes) is now a stand-alone function, for use with any data (link).

Presented with a set of mixtures created from an unknown number (but assumed to be less than the number of mixtures) of unknown sources: temporal_mixtures

The ICASAR algorithm returns an interactive figure which suggests that there are three latent sources (the compact and isolated clusters), and a noise term that is being interpreted as two clusters:

interative_clustering

The three latent sources and two noise sources can be visualised. For further analysis, the noise terms can be discarded.
temporal_ICASAR

This contrasts with the results of FastICA, which doesn't provide any information as to which recovered sources capture the latent sources, and which capture the noise terms.
temporal_FastICA

August 2020 addition:

If both bootsrapped and non-bootstrapped runs are done in the same step, these can be displayed in the same plot. Note that the non-boostrapped runs generally create very small/tight clusters (as the sources recovered are generally very similar), and it can be difficult to achieve reasonable clutering results due to two scales of clusters present. In the example below, many sources recovered during bootstrapped runs ('o's) are marked as noise as they lie outside the compact clusters formed by the bootstrapped data ('x's):

03_clustering_and_manifold_with_bootstrapping

June 2020 addition:

If longitude and latitude information for the interferograms is available, the independent components that are found can be geocoded and displayed in Google Earth: ge_print

April 2021 addition:

To deal with small signals (i.e. ones that are not visible in a single 12 day Sentinel-1 interferogram), we can aid the isolation of these signals through computing all the possible interferograms between the acquisitions (i.e. to include many longer temporal baseline interferograms). This allows for the correlations between the strength with which an IC is used for a given interferograms, and its temporal baseline. ICs that contain deformation are likely to be used strongly in long temporal baseline interferograms. This figure also computes the correlations between ICS and the DEM, which is useful for determining if a signal captures a topographically correlated atmospheric phase screen.

ICs_and_correlations