Miami InSAR time-series software in Python
prep_nisar
to load NISAR GUNW products by @mirzaees in https://github.com/insarlab/MintPy/pull/1035
prep_hyp3
: support burst-wide interferograms from hyp3-isce2 by @cirrusasf in https://github.com/insarlab/MintPy/pull/1074
view.py --dem-blend
by @yuankailiu, @yunjunz in https://github.com/insarlab/MintPy/pull/1089, https://github.com/insarlab/MintPy/pull/1102
fix_typos.sh
modified from GDAL
repo to catch spelling errors by @scottstanie, @yunjunz in https://github.com/insarlab/MintPy/pull/1082, https://github.com/insarlab/MintPy/pull/1120
mintpy.load.autoPath
for isce2/alosStack
products by @yunjunz in https://github.com/insarlab/MintPy/pull/1119
sensor
: add LuTan-1 info by @yunjunz in https://github.com/insarlab/MintPy/pull/1097
view.prep_slice()
: support quoted lists of characters as inputs by @yunjunz in https://github.com/insarlab/MintPy/pull/1077
view
: add --scalebar-linewidth
option by @yunjunz in https://github.com/insarlab/MintPy/pull/1111
view
: allow unit change when viewing seasonal time functions by @bbuzz31 in https://github.com/insarlab/MintPy/pull/1084
plot_network
: check nan values of coh/bperp in kept interferograms by @yunjunz in https://github.com/insarlab/MintPy/pull/1108
mintpy.geocode.laloStep
: support single value input by @yunjunz in https://github.com/insarlab/MintPy/pull/1075
readfile.read_gdal
: switch back to gdal
kwargs to leverage its subsetting capability by @scottstanie in https://github.com/insarlab/MintPy/pull/1072
readfile
: support GDAL int8
dtype by @yunjunz in https://github.com/insarlab/MintPy/pull/1083
subset
: support hdf5 <--> binary by @yunjunz in https://github.com/insarlab/MintPy/pull/1076
utils0.utm2latlon()
: allow coordinates outside of the normal range of a UTM zone by @swdmike in https://github.com/insarlab/MintPy/pull/1107
mintpy.network.aoiYX/LALO
options by @yunjunz in https://github.com/insarlab/MintPy/pull/1103
np.abs(dtype)
bug due to numpy
behavior change in simulation/fractal
by @yunjunz in https://github.com/insarlab/MintPy/pull/1120
Installation
: use brew
solution for the arg-complete setup on mac/bash by @yunjunz in https://github.com/insarlab/MintPy/pull/1069
CONTRIBUTING
: update comments on pre-commit
by @yunjunz in https://github.com/insarlab/MintPy/pull/1087
dir_structure
: ppdate URL for HyP3 sample notebook by @hjkristenson in https://github.com/insarlab/MintPy/pull/1113
shapely
by @yunjunz in https://github.com/insarlab/MintPy/pull/1069
docs/requirements4rtd.txt
file by @yunjunz in https://github.com/insarlab/MintPy/pull/1090
Cut a release for the 2023 EarthScope InSAR short course (ISCE+).
utm
package by @yunjunz in https://github.com/insarlab/MintPy/pull/1052, https://github.com/insarlab/MintPy/pull/1053
timeseries2velocity
: add --polyline
option to estimate linear velocity changes by @yunjunz in https://github.com/insarlab/MintPy/pull/999
diff
: support unw/offset - timeseries
and timeseries - velocity
by @yunjunz and @yuankailiu in https://github.com/insarlab/MintPy/pull/1011, https://github.com/insarlab/MintPy/pull/1018
euler_pole
: add PMM plotting functions by @yuankailiu in https://github.com/insarlab/MintPy/pull/935
readfile.auto_no_data_value()
by @yunjunz in https://github.com/insarlab/MintPy/pull/962
geocode
: support complex wrapped interferogram by @comma-never-coma in https://github.com/insarlab/MintPy/pull/957
image_stitch
: support non-hdf5 files by @yunjunz in https://github.com/insarlab/MintPy/pull/1021
isce_utils
: add unwrap_icu()
and filter_goldstein()
by @yunjunz in https://github.com/insarlab/MintPy/pull/993 and https://github.com/insarlab/MintPy/pull/1058
multilook
: support GDAL VRT file as input by @yunjunz in https://github.com/insarlab/MintPy/pull/959
multilook
: generate multilooked geometry files for CPU/GPU ampcor
products by @yunjunz in https://github.com/insarlab/MintPy/pull/963
prep_fringe
: load water mask into geometry file via --water-mask
by @bbuzz31 in https://github.com/insarlab/MintPy/pull/983
read/write/resample
: improved support for GDAL complex file by @yunjunz in https://github.com/insarlab/MintPy/pull/1000
save_qgis
: add --zero-first
option by @yunjunz in https://github.com/insarlab/MintPy/pull/1007
sensor
: add ICEYE parameters by @yunjunz in https://github.com/insarlab/MintPy/pull/974
spatial_filter
: use nan-ignoring filter for lowpass/highpass_gaussian
by @yuankailiu and @scottstanie in https://github.com/insarlab/MintPy/pull/935 and https://github.com/insarlab/MintPy/pull/1030
tsview
: add --figsize-img
by @yunjunz in https://github.com/insarlab/MintPy/pull/1059
view
: add --faultline
and --interpolation
options by @yunjunz and @scottstanie in https://github.com/insarlab/MintPy/pull/964, https://github.com/insarlab/MintPy/pull/1062, https://github.com/insarlab/MintPy/pull/1029
circleci
: replace miniconda3 with mambaforge with 2X speedup by @yunjunz in https://github.com/insarlab/MintPy/pull/996
mask
: replace --threshold
with --vmin/vmax
by @yunjunz in https://github.com/insarlab/MintPy/pull/1009
numpy
: replace expired numpy dtype deprecations (cont.) by @yjzhenglamarmota in https://github.com/insarlab/MintPy/pull/960
resample
: refactor default output step size calculation by @yunjunz in https://github.com/insarlab/MintPy/pull/997
tsview/plot_tran*/plot_coh*_mat*
: simplify object input args by @yunjunz in https://github.com/insarlab/MintPy/pull/982
utils0.median_abs_deviation()
: divide by scale
instead of multiply by @yi-chingchen in https://github.com/insarlab/MintPy/pull/946
closure_phase_bias
: bring back spatial referencing for ARIA while calc sequential closure phase by @yunjunz in https://github.com/insarlab/MintPy/pull/1063
cluster.split_box2sub_boxes
: bugfix for tiny last step by @yunjunz in https://github.com/insarlab/MintPy/pull/1024
gamma
: various bugfixes in readfile
and geocode
for gamma
products by @yunjunz in https://github.com/insarlab/MintPy/pull/1044
hdfeos5
: calc/write latitude/longitude if missing in geometry file by @yunjunz in https://github.com/insarlab/MintPy/pull/1050
utils.plot
: fix _tkinter.TclError
via plt.switch_backend('Agg')
by @falkamelung in https://github.com/insarlab/MintPy/pull/947
view
: fix referencing error while read unwrapPhase* in 2D w/ multilook by @yunjunz in https://github.com/insarlab/MintPy/pull/956
timeseries_rms
: bugfix for run_or_skip
and *RMS.deramp = no
by @yunjunz in https://github.com/insarlab/MintPy/pull/970
isce_utils.get_processor()
: use *.track.xml
file to identify alosStack/2App
by @yunjunz in https://github.com/insarlab/MintPy/pull/998
readfile.read_attribute
: translate DATA_TYPE ci2 to float32 for roipac by @yunjunz in https://github.com/insarlab/MintPy/pull/1064
save_gdal
: bugfix for boolean type by @yunjunz in https://github.com/insarlab/MintPy/pull/1024
spatial_filter
: fix the pad_width
integral type error for double_difference
option by @yunjunz in https://github.com/insarlab/MintPy/pull/1015
unwrap_error_phase_closure
: fix numpy.random.choice
error and zero step size bug by @yunjunz in https://github.com/insarlab/MintPy/pull/989, https://github.com/insarlab/MintPy/pull/1067
defaults/objects/simulation/utils
sub-modules by @yunjunz in https://github.com/insarlab/MintPy/pull/1005
argcomplete
utm
environment.yml
file by @yunjunz in https://github.com/insarlab/MintPy/pull/958
This is a maintenance release for bug fixes.
closure_phase_bias
: 1) remove spatial referencing for better physical presentation and robustness; 2) use wrapPhase
if available to remove the filtering effect (#922 by Yujie Zheng)temporal_filter
: add a median filter from scipy
via -f / —filter
option (#943)image_math
: support multiple input files and input file overwrite (#936)save_gbis
: support non-velocity dataset from the velocity file (#916 by Bryan Marfito)defusedxml
(#915)legacy/los2enu.py
(#943)numpy
-1.24 (#914, #934, #940, #942, #943)mintpy.cli
sub-module (#828, #854 by A. Valentino & Z. Yunjun). The new mintpy.cli
sub-module contains all the CLI-related functionality and provides a significant speedup for all command line interactions, e.g. the help message and arguments checking.src/mintpy
layout (#903, by Z. Yunjun & S. Staniewicz)plate_motion
refactoring (#851, #858, #868, #906 by Y. K. Liu & Z. Yunjun):
mintpy.objects.euler_pole
for plate motion calculation and conversion.astropy
and platemotion
.bulk_plate_motion
to plate_motion
timeseries2velocity
: save residue
and intercept
dataset (#835)dem_error
: bugfix on the phase velocity minimization (#875, #890, #902, #905, by Z. Yunjun & S. Mirzaee):
cond
from 1e-15 to 1e-8 in scipy.linalg.lstsq()
to avoid occasionally abnormal high residue.objects.timeseries.read
: auto-switch between array / single indexing to speedup (#851)load_data
: support azimuth angle file for ASF HyP3 product (#865)readfile.read_attribute
: allow ENVI files created with SUFFIX=ADD (#841 by S. Staniewicz)save_hdf5eos
: calculate data_footprint
for radar-coded dataset (#833 by A. Terrero)save_roipac
: support non-velocity dataset from the velocity file (#874 by B. Marfito)geocode
: copy dataset units, such as from velocity.h5 file (#910)constants
: move from mintpy.objects
to the root mintpy
level (#911)pre-commit
(#873)rich
(#851)pre-commit
hook (#852, #856, #866, #881, #907)dependabot
to auto-update GitHub Actions (#893, #894, #895, #896, #897, #898, #899)dem_error
, euler_pole
mintpy/legacy/gui
folder (#846)Cut a release to match with Stephenson et al. (2022).
PyPI
publishing with GitHub Actions (#827)openmp
from the dependency list (#825)Cut a release for the 2022 UNAVCO InSAR short course (ISCE+).
closure_phase_bias
: add the phase non-closure induced bias estimation for small baseline approaches (Zheng et al., 2022) (#765 by Y. Zheng, Z. Yunjun).bulk_plate_motion
to estimate the tectonic plate motion in ENU/LOS direction from plate motion models (Stephenson et al., 2022, under review) (#769, #808 by Y. K. Liu, Z. Yunjun).smallbaselineApp
: integrate complex time functions and uncertainty quantification into the routine workflow (#795) via:
load_data
: load ionosphere stack from isce2/topsStack
into ionStack.h5
file with auto-resize (#780, #796 by Y. K. Liu, Z. Yunjun) via:
load_data
: support mean
and median
interpolation while loading stacks of observations (#797 by Y. K. Liu) via:
mintpy.__main__
(#823 by A. Valentino)s1ab_range_bias.py
for the S1A/B range bias correction for range offset (Yunjun et al., 2022) (#787).latest
and develop
docker image and push to the GitHub container registry (#696 by J. Kennedy).mintpy
to the Debian ecosystem with apt install
support (#812 by A. Valentino).mintpy.objects.ionex
for IONEX file download/read, to replace part of mintpy.simulation.iono
(#794).tsview
: switch to a new narrower slider and to use fig.canvas.draw_idel/flush_events()
(#764)requirements.txt
file to the root level (#772)scripts
(#785 by A. Valentino)utils.map
module from utils.plot
for lat/lon labels and scalebar (#794)SanFranSenDT42
and WCapeSenAT29
(#799)Cut a new release for Zheng et al. (2022), Yunjun et al. (2022) and Gregg et al. (2022).
closure_phase_bias.py
to mask areas susceptible to the closure phase bias (Zheng et al., 2022), contributed by Yujie Zhengiono_tec.py
and simulation/iono.py
for GIM-based ionospheric correction for range offset (Yunjun et al., 2022)readfile/writefile/cluster.py
FILE_TYPE==timeseries and DATA_TYPE==complex
NO_DATA_VALUE
support as a new standard metadatauavsar
: support UAVSAR .ann/lkv/llh
files reading and solid Earth tides correctionprep_fringe
: add “connectComponent” to ifgramStack file if exists, contributed by Brett Buzzangaadd/diff/image_stitch
: generic multi-dataset file support, with contributions from Yuan-Kai Liu and Ollie Stephensonasc_desc2horz_vert.py
: support decomposition with pixel-wised geometry via --geom-file
optiongeocode
: change the default geocoding output lat/lon step from “same row/col number” to “same pixel area“, with contributions from Brett Buzzanga (#722, #737)mintpy.unwrapError.connCompMinArea
option, contributed by Sara Mirzaee--no-data-value
option--coastline
via carroty map projectionpykdtree
, xarray
and zarr
as they are now properly installed by condo install pyresample
.h5py>=3
by fixing the bool array indexing bug, contributed by Brett Buzzangapython 3.9
and python 3.10
via documentation change onlytests/test_asc_desc2horz_vert.py
legacy/load2hdf5.py
prep_snap.py
objects/gps.get_gps_los_obs()
mintpy
to the conda-forge
channel (https://anaconda.org/conda-forge/mintpy). Contributed by Joseph Kennedy.setup.py
: use entry_points/console_scripts
for a fully functioning pip
installed local version. Contributed by Joseph Kennedy.docker
image. Contributed by Forrest Williams.mintpy.plot.maxMemory
optionhyp3
: routine workflow works end-to-end in UTM coordinates.
RidgecrestSenDT71
example dataset. Contributed by Jiang Zhuoffset
functionalities:
cosicorr
offset products via prep_cosicorr.py
. Contributed by Forrest Williamsload_data
: add offset STD from ampcor
ifgram_inversion
: add masking based on offset STDifgram_inversion
: add initial phase / offset STD time series calculation via --calc-std
gnss
related:
--ex-gps
to manually exclude GNSS sites--mask-gps
option to mask out GNSS sites based on the displayed data matrix. Contributed by Simran Sangha--gps-comp horz / vert --hz-az
to plot horizontal and vertical components. Contributed Simran Sanghautils/s1_utils.py
for Sentinel-1 specific utility functionssave_gdal.py
: support UTM projection. Contributed by Panji Brotoisworoview.py
: add --mask-dem
option to mask out DEM pixels based on the displayed data matrix. Contributed by Simran Sanghareadfile / writefile
: generic I/O logic for complex binary files to better handle ISCE-2 files directlysklearn
by using numpy for bootstrap resampling. Contributed by Forrest Williamsstack
: Speedup triplet design matrix. Contributed by Scott Staniewiczadd.py
: handles time series with different dates and reference date/point, same as diff.py
timeseries2velocity.py
: add --save-res
to save the fitting residual filesBANDS
and INTERLEAVE
for binary filesutils/time_func.py
test
directory to tests
Cut a new release for the 2021 UNAVCO short course.
tsview.py
via downsampling.ifgram_inversion.py
and dem_error.py
by limiting *NUM_THREADS
env variable to 1.hyp3
product from ASF HyP3 service [preliminary]
prep_hyp3.py
contributed by Forrest Williams, Bryan Marfito and Jiang Zhu.tropo_pyaps3.py
and solid_earth_tides.py
contributed by Jiang Zhu and Bryan Marfito.gmtsar
geocoded product via prep_gmtsar.py
with contributions from Xiaohua Xu and Rebecca Bussardsave_kite.py
to save mintpy displacement for pyrocko
suite contributed by Marin Govorcintimeseries2velocity.py
:
--exp
and logarithmic via --log
contributed by Yuan-Kai Liumodify_network.py
:
spatial_filter.py
: add double_difference
algorithm from Bekaert et al. (2020)generate_mask.py
: add --minpixel
option to select pixels based on cluster sizegenerate_mask.py
: add --vstd
option to select pixels based on signal-to-noise ratio using velocity STDsave_kmz
: support radar-coded file with point stylestsview.py
: plot & save the time function fitting results with contributions from Yuan-Kai Liuview.py
:
--ref-point
out of the subset box--ref-lalo
for radar-coded file--math
option for simple operations, e.g. sqrt to display STD from VAR file--mask-vmin/vmax
options to adjust masking thresholds on the flyplot_smallbaselineApp.sh
from shell script to python, for better cross-platform compatibility with parallelization, contributed by Panji Brotoisworo and Joshua Zahnerisce-2/topsApp
geocoded products contributed by Yuan-Kai LiusmallbaselineApp.py
(and all scripts it relied on) via block-by-block IO or downsampling controlled via mintpy.compute.maxMemory
(4GB by default) with contributions from Yuan-Kai Liudem_error.py
controlled via mintpy.compute.cluster/numWorker/config
mintpy.load.x/ystep
to multilook while loading data to reduce the data sizeISCE/alosStack
products support (require isce2>=2.5) via mintpy.load.processor = isce
contributed by Cunren Liangsolid_earth_tides.py
for solid Earth tides correction using PySolid
and integrate into the routine workflowtropo_gacos.py
to bring back GACOS
tropospheric correction and integrate into the routine workflow contributed by Sara Mirzaee and Simran Sanghatimeseries2velocity.py
contributed by Yuan-Kai LiuSanFranSenDT42
for aria
contributed by Heresh FattahiWCapeSenAT129
for snap
contributed by Andre Theronmaster
to main
mintpy.load.autoPath = yes
for aria
mintpy.load.magFile
image_stitch.py --no-offset
contributed by Robert ZinkeNCORRLOOKS
for weighting if availablemintpy/objects/insarStack
mintpy/legacy
mintpy/dev
sh
to mintpy/sh
docs
into mintpy
so that the latter is independent from the former.setup.py
mintpy
to PyPI with contributions from Meissam Mehdizadehload_data.py
and save_hdfeos5.py
python 3.5
support.