table of contents
other versions
MINTPY-IFGRAM_INVERSION(1) | User Commands | MINTPY-IFGRAM_INVERSION(1) |
NAME¶
mintpy-ifgram_inversion - Invert network of interferograms into time-series.
DESCRIPTION¶
usage: ifgram_inversion.py [-h] [-t TEMPLATEFILE] [-i OBSDATASETNAME]
- [-m WATERMASKFILE]
- [-o TS_FILE TCOH_FILE NUM_INV_FILE] [--ref-date REF_DATE] [--skip-reference] [-w {fim,coh,var,no}] [--min-norm-phase] [--norm {L1,L2}] [--calc-cov] [--mask-dset MASKDATASET] [--mask-thres NUM] [--min-redun NUM] [--ram MAXMEMORY] [-c {lsf,pbs,slurm,local}] [--num-worker NUMWORKER] [--config CONFIG] [--update] ifgramStackFile
Invert network of interferograms into time-series.
positional arguments:¶
- ifgramStackFile
- interferograms stack file to be inverted
options:¶
- -h, --help
- show this help message and exit
- -t TEMPLATEFILE, --template TEMPLATEFILE
- template text file with options
- -i OBSDATASETNAME, -d OBSDATASETNAME, --dset OBSDATASETNAME
- dataset name of unwrap phase / offset to be used for inversion e.g.: unwrapPhase, unwrapPhase_bridging, ...
- -m WATERMASKFILE, --water-mask WATERMASKFILE
- Skip inversion on the masked out region, i.e. water.
- -o TS_FILE TCOH_FILE NUM_INV_FILE, --output TS_FILE TCOH_FILE NUM_INV_FILE
- Output file name. (default: None).
- --ref-date REF_DATE
- Reference date, first date by default.
- --skip-reference, --skip-ref
- [for offset and testing] do not apply spatial referencing.
- --calc-cov
- Calculate time-series STD via linear propagation from the network of interferograms or offset pairs.
- --ram MAXMEMORY, --memory MAXMEMORY
- Max amount of memory in GB to use (default: 4.0). Adjust according to your computer memory.
- --update
- Enable update mode, and skip inversion if output timeseries file already exists, readable and newer than input interferograms file
solver:¶
- solver for the network inversion problem
- -w {fim,coh,var,no}, --weight-func {fim,coh,var,no}
- function used to convert coherence to weight for inversion: var - inverse of phase variance due to temporal decorrelation (default) fim - Fisher Information Matrix as weightcoh - spatial coherence no - no/uniform weight
- --min-norm-phase
- Enable inversion with minimum-norm deformation phase, instead of the default minimum-norm deformation velocity.
- --norm {L1,L2}
- Optimization mehtod, L1 or L2 norm. (default: L2).
mask:¶
- mask observation data before inversion
- --mask-dset MASKDATASET, --mask-dataset MASKDATASET, --md MASKDATASET
- dataset used to mask unwrapPhase, e.g. coherence, connectComponent
- --mask-thres NUM, --mask-threshold NUM, --mt NUM
- threshold to generate mask when mask is coherence (default: 0.4).
- --min-redun NUM, --min-redundancy NUM, --mr NUM
- minimum redundancy of interferograms for every SAR acquisition. (default: 1.0).
parallel:¶
- parallel processing using dask
- -c {lsf,pbs,slurm,local}, --cluster {lsf,pbs,slurm,local}, --cluster-type {lsf,pbs,slurm,local}
- Cluster to use for parallel computing (default: None to turn OFF).
- --num-worker NUMWORKER
- Number of workers to use (default: 4).
- --config CONFIG, --config-name CONFIG
- Configuration name to use in dask.yaml (default: None).
references:¶
- Berardino, P., Fornaro, G., Lanari, R., & Sansosti, E. (2002). A new algorithm for surface
- deformation monitoring based on small baseline differential SAR interferograms. IEEE TGRS, 40(11), 2375-2383. doi:10.1109/TGRS.2002.803792
- Pepe, A., and Lanari, R. (2006), On the extension of the minimum cost flow algorithm for phase unwrapping
- of multitemporal differential SAR interferograms, IEEE-TGRS, 44(9), 2374-2383.
- Perissin, D., and Wang, T. (2012), Repeat-pass SAR interferometry with partially coherent targets, IEEE TGRS,
- 50(1), 271-280, doi:10.1109/tgrs.2011.2160644.
- Samiei-Esfahany, S., Martins, J. E., Van Leijen, F., and Hanssen, R. F. (2016), Phase Estimation for Distributed
- Scatterers in InSAR Stacks Using Integer Least Squares Estimation, IEEE TGRS, 54(10), 5671-5687.
- Seymour, M. S., and Cumming, I. G. (1994), Maximum likelihood estimation for SAR interferometry, 1994.
- IGARSS '94., 8-12 Aug 1994.
- Yunjun, Z., Fattahi, H., and Amelung, F. (2019), Small baseline InSAR time series analysis: Unwrapping error
- correction and noise reduction, Computers & Geosciences, 133, 104331, doi:10.1016/j.cageo.2019.104331.
- Yunjun, Z., Fattahi, H., Brancato, V., Rosen, P., Simons, M. (2021), Oral: Tectonic displacement mapping from SAR
- offset time series: noise reduction and uncertainty quantification, ID 590, FRINGE 2021, 31 May ??? 4 Jun, 2021, Virtual.
template options:¶
- ## Invert network of interferograms into time-series using weighted least sqaure (WLS) estimator. ## weighting options for least square inversion [fast option available but not best]: ## a. var - use inverse of covariance as weight (Tough et al., 1995; Guarnieri & Tebaldini, 2008) [recommended] ## b. fim - use Fisher Information Matrix as weight (Seymour & Cumming, 1994; Samiei-Esfahany et al., 2016). ## c. coh - use coherence as weight (Perissin & Wang, 2012) ## d. no - uniform weight (Berardino et al., 2002) [fast] ## SBAS (Berardino et al., 2002) = minNormVelocity (yes) + weightFunc (no) mintpy.networkInversion.weightFunc = auto #[var / fim / coh / no], auto for var mintpy.networkInversion.waterMaskFile = auto #[filename / no], auto for waterMask.h5 or no [if not found] mintpy.networkInversion.minNormVelocity = auto #[yes / no], auto for yes, min-norm deformation velocity / phase mintpy.networkInversion.residualNorm = auto #[L2 ], auto for L2, norm minimization solution
- ## mask options for unwrapPhase of each interferogram before inversion (recommend if weightFunct=no): ## a. coherence - mask out pixels with spatial coherence < maskThreshold ## b. connectComponent - mask out pixels with False/0 value ## c. no - no masking [recommended]. ## d. range/azimuthOffsetStd - mask out pixels with offset std. dev. > maskThreshold [for offset] mintpy.networkInversion.maskDataset = auto #[coherence / connectComponent / rangeOffsetStd / azimuthOffsetStd / no], auto for no mintpy.networkInversion.maskThreshold = auto #[0-inf], auto for 0.4 mintpy.networkInversion.minRedundancy = auto #[1-inf], auto for 1.0, min num_ifgram for every SAR acquisition
- ## Temporal coherence is calculated and used to generate the mask as the reliability measure ## reference: Pepe & Lanari (2006, IEEE-TGRS) mintpy.networkInversion.minTempCoh = auto #[0.0-1.0], auto for 0.7, min temporal coherence for mask mintpy.networkInversion.minNumPixel = auto #[int > 1], auto for 100, min number of pixels in mask above mintpy.networkInversion.shadowMask = auto #[yes / no], auto for yes [if shadowMask is in geometry file] or no.
example:¶
- ifgram_inversion.py inputs/ifgramStack.h5 -t smallbaselineApp.cfg --update ifgram_inversion.py inputs/ifgramStack.h5 -w no # turn off weight for fast processing ifgram_inversion.py inputs/ifgramStack.h5 -c no # turn off parallel processing # offset ifgram_inversion.py inputs/ifgramStack.h5 -i rangeOffset -w no -m waterMask.h5 --md offsetSNR --mt 5 ifgram_inversion.py inputs/ifgramStack.h5 -i azimuthOffset -w no -m waterMask.h5 --md offsetSNR --mt 5
May 2022 | mintpy-ifgram_inversion v1.3.3 |