https://github.com/insarlab/MintPy

sort by:
Revision Author Date Message Commit Date
457ac4e `tests/smallbaselineApp` refactoring (#1230) + use the new DSET_INFO for all datasets' url and processor info + support `--dset all` with translation in `cmd_line_parse()` + more informative print out msg in the main() 19 July 2024, 06:04:26 UTC
1a1f3e1 demo/test: add SanFranBaySenD42 for `GMTSAR` (#1229) + docs: add SanFranBaySenD42 for GMTSAR - add docs/templates/SanFranBaySenD42.txt for GMTSAR - demo_dataset.md: add SanFranBaySenD42 for GMTSAR with figure (with DOI from zenodo) - use demo fig from github/insarlab/design-doc repo, instead of Yunjun's obsolete personal website, for better independency. + tests: add GMTSAR into the regular circle ci testing using example dataset from zenodo - add tests/configs/SanFranBaySenD42.txt - tests/smallbaselineApp.py: add SanFranBaySenD42 dataset with a false URL for place holder - add SanFranBaySenD42 to the regular Circle CI integration testing + load water mask for gmtsar, by adding: - objects.stackDict.geometryDict.write2hdf5(): convert NaN value to zero. - prep_gmtsar.prepare_geometry(): add all supported geometry data files, including water mask file - prep_gmtsar: add comments on input/output parameters for all functions. + utils.readfile._attribute_gmtsar2roipac: bugfix for ORBIT_DIRECTION + optional dependency: pin gdal<3.9 for GMTSAR, as gdal-3.9 could not read the geo-coordinate info properly from GMT *.grd files, which is generated by GMTSAR. 19 July 2024, 05:13:28 UTC
a8471b3 `readfile`: grab `ORBIT_DIRECTION` for `gmtsar` (#1227) + utils.readfile._attribute_gmtsar2roipac(): grab ORBIT_DIRECTION for gmtsar 17 July 2024, 05:29:42 UTC
6495001 update `gmtsar` support for the new ifg stack structure (#1226) This PR updates support for GMTSAR interferogram stack as prepared for the EarthScope short course 2024 by Xiaohua Xu. + utils.readfile: add GMTSAR_SENSOR_ID2NAME, and call it in _attribute_gmtsar2roipac() to get PLATFORM + utils.ptime: add yyyyddd2yyyymmdd() to convert from GMTSAR date format into YYYYMMDD format + prep_gmtsar: update to the new structure as prepared by Xiaohua Xu for the 2024 EarthScope short course. Major changes include: - use supermaster.PRM for common metadata extraction; - use baseline_table.dat to read the bperp TS directly; - support inc/az angles files + docs/dir_structure: update to the latest structure. 16 July 2024, 16:41:37 UTC
9844947 bugfix for numpy 2.0 (#1225) + remove all occurrences of `np.string_` with `np.bytes_`, as the former has been removed in numpy 2.0 + `utils.time_func.get_design_matrix4polynomial_func()`: swtich from `np.math.factorial()` to `math.factorial()`, as the former is removed from numpy 2.0 --------- Co-authored-by: Zhang Yunjun <yunjunz@outlook.com> 16 July 2024, 14:54:16 UTC
e00aa48 `prep_gamma`: support geocoded Gamma products (#1222) + prep_gamma: add --dem option to specify the corresponding DEM file, to 1) determine the dataset coordinate type and 2) extract the corresponding geo-coord specific metadata + prep_gamma: update example usage 25 June 2024, 15:37:01 UTC
fa52232 `ionex`: migrate from `interp2d` to `RegularGridInterpolator` (#1223) + objects.ionex.get_ionex_value(): migrate from scipy.interpolate.interp2d() to scipy.interpolate.RegularGridInterpolator(), as the former has been removed since scipy-1.14 + tests.objects.ionex.py: more print out msg 25 June 2024, 15:33:17 UTC
d35ef09 `isce_utils`: add `crop_slc()` and `form_ifgram()` (#1221) + utils.isce_utils: add crop_slc() and form_ifgram() for more flexible interferogram manipulations. + tsview: add exclude date in the saved text file header, to be more informative. + circleci: use cimg/base docker image, to replace the ubuntu:bionic image 23 June 2024, 12:32:03 UTC
7638d71 build(deps): bump docker/build-push-action from 5 to 6 (#1218) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 5 to 6. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](https://github.com/docker/build-push-action/compare/v5...v6) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 18 June 2024, 06:30:41 UTC
2012127 [pre-commit.ci] pyupgrade: v3.15.2 → v3.16.0 (#1215) updates: - [github.com/asottile/pyupgrade: v3.15.2 → v3.16.0](https://github.com/asottile/pyupgrade/compare/v3.15.2...v3.16.0) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 12 June 2024, 09:04:21 UTC
00d6f10 `readfile`: support `Gamma` SLC in complex32 format (#1216) * readfile: support Gamma SLC in complex32 format + utils.readfile: support Gamma slc in complex32 format - add scomplex to complex32 data type conversion - read_binary_file(): support .rslc/rmli file extension - read_complex_int16(): refactor to use cpx_band in str for a more flexible output data; revise the output from 2 matrices into 1 matrix - read_binary(): support complex32 while calling read_complex_int16(), since it's not supported in numpy. + utils.readfile.auto_no_data_value(): add geometrical offset files from alos2App with num of band = 1 + view.viewer.plot(): set pixels with no data value to np.nan, instead of call np.ma.masked_where(), which seems over-complicated (compared with setting to nan) and I could not recall the reason anymore. + cli/prep_isce.py: set -f default from str to list, to be consistent with the non-default var type. * circleci: remove ${HOME}/data dir after testing attempt to free up the disk space, and to fix the circle CI testing failure. * Revert "circleci: remove ${HOME}/data dir after testing" This reverts commit 912298ec31e1861a6e082a855432159d86bd5724. * load_data: run prep_aria w/o try/except to show the full error msg, by reverting part of #472. 12 June 2024, 09:03:50 UTC
44d5afd `save_kmz`: support data in UTM (#1210) * convert UTM coords to WGS84 in write_kmz_overlay * check for UTM_ZONE in metadata before converting bbox coords to wgs84 * undo extensive formatting * empty line at end of file * fix end of file 06 June 2024, 02:02:07 UTC
4218fbf prep_hyp3: skip relative_orbit, start/stopUTC for isce2_burst products (#1200) update prep_hyp3.py to calculate relative_obit, start/stopUTC for gamma_scene hyp3 products ONLY, as they are not available for for isce2_burst hyp3 products yet. + more comments + light refactoring + skip the relative_orbit, start/stopUTC calculation for isce2_burst 28 May 2024, 07:37:05 UTC
9c17ed6 pyproject.toml: fix path of the readme file (#1201) + pyproject.toml: fix path of the readme file, as the 2nd attempt to fix the "Not finding README.md specified in pyprojet.toml" error on PyPI website. 23 May 2024, 05:03:46 UTC
6e78327 pyproject.toml: add readme to the dynamic metadata list (#1197) + pyproject.toml: add readme to the dynamic metadata list, attempting to fix the "Not finding README.md specified in pyprojet.toml" error on PyPI website. + simulation.iono.py: fix typo 15 May 2024, 01:49:41 UTC
9fb0c4c optional `pyfftw` import for `simulation.fractal.py` (#1191) * Fallback to `scipy.fft` if `pyfftw` is not available * Multi-threading fft2 with scipy 11 May 2024, 13:32:47 UTC
feae339 add version tag for 1.6.0 (#1190) + version: add version tag for 1.6.0 + utils.transect_yx/lalo(): update comment for example usage 09 May 2024, 11:45:16 UTC
4d34412 bugfix for `view.py numInvIfgram.py` for `hyp3` products (#1187) + ifgram_inversion: ignore the NO_DATA_VALUE metadata from the hyp3 ifgram stack file, while creating the # of inverted ifgram file, because 1) the zero value is valid (not no-data-value), and 2) to avoid the strange plotting error from matplotlib. The detailed reason seems to be within matplotlib, not within mintpy code itself. + tests/configs/RidgecrestSenDT71: turn back ON the plotting during testing. 25 April 2024, 13:13:24 UTC
f195818 `dem_error`: bugfix on the step func (#1186) Fix the bug that the input step function date in cmd and template file was NOT corrected passed into the design matrix, due to the inconsistent usage of the variable naming. + rename stepFuncDate to stepDate in all `dem_error` related code and docs + prep_hyp3: add hdf-eos5 metadata extraction + docs/demo: use list to break lines 25 April 2024, 11:10:56 UTC
4e3ad9f Add HDF-EOS5 metadata for HyP3 products (#1180) + prep_hyp3: add the following new metadata for HDF-EOS5 - beam_swath - relative_orbit - startUTC - stopUTC + tests/configs/RidgecrestSenDT71: remove the manual setup of relative_orbit, since it's now automatically extracted. --------- Co-authored-by: Zhang Yunjun <yunjunz@outlook.com> 25 April 2024, 10:23:22 UTC
3ebf6c6 update HyP3 example dataset `RidgecrestSenDT71` (#1182) + update the HyP3 example dataset, with the latest metadata generated by ASF HyP3 system at April 24, 2024. + docs/dir_structure: update hyp3 section + docs/demo_dataset: update hyp3 DOI info + tests/configs/RidgecrestSenDT71: - use * for more generic file path support - turn OFF plotting temporarily to pass the circle CI testing. --------- Co-authored-by: Zhang Yunjun <yunjunz@outlook.com> 23 April 2024, 16:51:40 UTC
4396cb6 multiple GNSS/GPS sources support (#1173) + rename all GPS to GNSS, in all related code/comments/docs + support the following new GNSS solution sources, including data downloading and reading - `ESESES` from JPL/SOPAC - `JPL-SIDESHOW` from JPL - `GENERIC` for other undefined source format + `utils.arg_utils.add_gnss_argument()`: add `--gnss-source` to specify other sources of GNSS solutions + split the GNSS class into a parent `GNSS` class and a child `GNSS_{SOURCE}` class for each of the solution sources + change the default local file dir from `GNSS` to `GNSS-{SOURCE}` + change the default CSV file from `gnss_{COMPONENT}.csv` to `gnss_{COMPONENT}_{SOURCE}.csv` + utils.plot.plot_gnss(): print the nearest GNSS site to the current reference point, to faciltate the --ref-gnss option setup --------- Co-authored-by: rzinke <rzinke@jpl.caltech.edu> Co-authored-by: Zhang Yunjun <yunjunz@outlook.com> 23 April 2024, 02:10:50 UTC
f3324b8 sensor: add orbit_inclination & repeat_cycle (#1181) + objects.sensor: add Radarsat-1, Radarsat Constellation Mission, and ALOS-4 + objects.sensor: add the following parameters for all sensors: - orbit_inclination - repeat_cycle - antenna_width + utils.plot.auto_adjust_cmap_lut_and_disp_limit(): skip multilooking for small dset + fix typos in references in the help msg of several scripts + version: remove the unused website & description variables 17 April 2024, 03:19:33 UTC
8d70801 integrate ionospheric correction into `smallbaselineApp` (#1172) * ifgram_inversion: cmd options overwrite template options + utils.arg_utils: add `get_dest_option_str_dict()` to grab the projection relationship between option dest and option strings. + cli.ifgram_inversion.read_template2inps(): ensure the manually specified options in command line have higher priorities than the options in the template file * smallbaselineApp: add `correct_ionosphere` step + smallbaselineApp: add a new `correct_ionosphere` step with the following new template options, to support ionospheric correction using isce2 split spectrum results - mintpy.ionosphericDelay.method - mintpy.ionosphericDelay.excludeDate - mintpy.ionosphericDelay.excludeDate12 + add `cli/iono_split_spectrum.py` for the cmd interface interaction + add `iono_split_spectrum.py` for the actual workflow of estimating/correcting iono time-series by calling the following individual scripts: - modify_network - reference_point - ifgram_inversion - diff + add the new script to the entrypoint and sub parsers via changes in the following scripts: - pyproject.toml - src/mintpy/__main__.py + `defaults/template.py`: add `correct_ionosphere` to the STEP_LIST 17 April 2024, 02:21:58 UTC
32645dd `utils0.latlon2utm()`: ensure a single output UTM zone (#1177) + utils.utils0.latlon2utm(): add `meta` in as required argument to invoke `force_zone_number` while calling `utm.from_latlon()`, to ensure all coordiantes are converted into the same single UTM zone, as designated in the UTM_ZONE metadata, even if they cross a UTM boundary. + adjust the `latlon2utm()` usage in all scripts: - objects.coord.py - utils.plot.py 16 April 2024, 15:53:41 UTC
40c0d90 pre-commit-hooks: v4.5.0 → v4.6.0 (#1174) updates: - [github.com/pre-commit/pre-commit-hooks: v4.5.0 → v4.6.0](https://github.com/pre-commit/pre-commit-hooks/compare/v4.5.0...v4.6.0) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 09 April 2024, 11:14:30 UTC
e823b4d [pre-commit.ci] pyupgrade: v3.15.1 → v3.15.2 (#1168) updates: - [github.com/asottile/pyupgrade: v3.15.1 → v3.15.2](https://github.com/asottile/pyupgrade/compare/v3.15.1...v3.15.2) 26 March 2024, 01:00:30 UTC
ccc946c `prep_nisar`: update for changes in NISAR GUNW products (#1158) * add mask to inputs * remove output dir from prep_nisar * update for mask and correct lat/lon subset * add condition for other grib file pattern * correct order of bounds * use gdalwarp to transform projection * change to new GUNW structure --------- Co-authored-by: mirzaees <smirzaee@aurora.jpl.nasa.gov> 25 March 2024, 16:58:26 UTC
e7480d6 `conncomp.plot_bridge(): improve memory usage (#1155) Improve the memory usage while calling `connectComponent.plot_bridge()` in a loop by avoiding creating separate mask arrays. 20 March 2024, 02:33:24 UTC
39762c8 `tropo_pyaps3`: use larger SNWE local files if available (#1164) This PR searches existing local grib files with larger SNWE extent than the input required SWNE, uses that if more local files exist, thus, could avoid re-downloading from ECMWF as much as possible. + add `get_larger_snwe_in_local_files()` to find and locate the local files with larger SNWE extent than the input original ones, and use that if more local files exist. + move many tiny functions as sub-functions inside the main ones, to improve the code readability (simpler code logic flow) 19 March 2024, 08:01:19 UTC
5dd9658 build(deps): bump akhilerm/tag-push-action from 2.1.0 to 2.2.0 (#1163) Bumps [akhilerm/tag-push-action](https://github.com/akhilerm/tag-push-action) from 2.1.0 to 2.2.0. - [Release notes](https://github.com/akhilerm/tag-push-action/releases) - [Commits](https://github.com/akhilerm/tag-push-action/compare/v2.1.0...v2.2.0) --- updated-dependencies: - dependency-name: akhilerm/tag-push-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 18 March 2024, 11:28:15 UTC
b0336c1 support `LAT/LON_REF1/2/3/4` in UTM coordinates (#1161) This commit adds the support of UTM coordinates for the `LAT/LON_REF1/2/3/4` metadata in all related docs/code, in addition to the existing support for the Y/X_FIRST/STEP/UNIT and REF_LAT/LON, UTM_ZONE and EPSG. Thus, all mintpy metadata now supports UTM coordinates. + docs/api/attributes.md: ensure all LAT/LON attributes represent both latitude/northing and longitude/easting in degrees/meters + utils.utils0.utm2latlon/latlon2utm(): support list/tuple input types + prep_hyp3: - do not convert UTM to lat/lon for LAT/LON_REF1/2/3/4 - add HDF-EOS5 metadata (`beam_mode` and `unwrap_method`) from the HyP3 metadata file + save_hdfeos5.metadata_mintpy2unavco(): convert UTM to lat/lon while calculating the scene_footprint and subset filename suffix + tests/configs/RidgecrestSenDT71: turn ON mintpy.save.hdfEos5 and mintpy.save.hdfEos5.subset options + .circleci/config.yml: add RidgecrestSenDT71 (HyP3) to the routine integration test + tropo_pyaps3.get_bounding_box(): convert UTM to lat/lon 18 March 2024, 11:27:31 UTC
0c45019 bugfix for `coord.lalo2yx()` when lat/lon have diff sizes (#1160) + `objects.coord.coordinate`: - `_clean_coord()`: 1) take two arg instead of one, and ensure the two coords have the same size; 2) support `None` as input - `lalo2yx/yx2lalo()`: support `None` as inputs + `subset.subset_input_dict2box()`: use `None` as input to convert one type of coord only. + `utils.arg_utils.add_subset_argument()`: remove the unused option name alias (`--suby/x/lat/lon`), as they are not very readable and not frequently used. 18 March 2024, 06:06:37 UTC
97c7004 utils0: add `epsg_code2utm_zone()` (#1159) + utils.utils0.py: add `epsg_code2utm_zone()` to convert the EPSG code to the UTM zone string. --------- Co-authored-by: Scott Staniewicz <scott.stanie@gmail.com> 14 March 2024, 03:00:15 UTC
5683092 UTM support for `view --show-gps` + dual-coord input for `lalo2yx/yx2lalo()` (#1153) + utils.plot.py: - set `plt.rcParams["axes.formatter.limits"]` to disable scientific notation for UTM coordinates. - `plot_gps()`: convert between lat/lon and UTM coordinates to support files in UTM coordinates for `view.py --show-gps` option + objects.coord.py: - `yx2lalo()` and `lalo2yx()`: use dual-coord inputs, instead of single-coord inputs, for more convenient usage, and update all the instances throughout the repo - `lalo2yx()` and `geo2radar()`: attempt to convert lat/lon into UTM coordinates, if file/metadata is in UTM while the inputs are in WGS 84 - add `_clean_coord()` for type checking / cleaning and easy re-use --------- Co-authored-by: Zhang Yunjun <yunjunz@outlook.com> 12 March 2024, 17:14:14 UTC
7ac3455 extend `--style scatter` to `tsview` (#1157) 10 March 2024, 02:00:56 UTC
05f803a `view`: support scatter plot via `--style scatter` option (#1146) + `cli.view`: - add `--style` option to be able to switch between image and scatter style, leveraging the `matplotlib.pyplot.imshow/scatter()` functions. This is useful for high-resolution data with lots of holes from unsuccessful unwrapping. Plotting larger than pixel size fills holes like a low-pass filter. - add `--scatter-size` option to be able to change the scatter plot marker size. + `view.plot_slice()`: - add a new sub-function `extent2meshgrid` to calculate the xx/yy coordinates from a given extent and data shape. - call `matplotlib.pyplot.scatter()` for the scatter plot in both geo/yx coordinates. Note that this functionality is for the single plot scenario ONLY. --------- Co-authored-by: Zhang Yunjun <yunjunz@outlook.com> 09 March 2024, 15:32:25 UTC
590a067 `image_stitch`: update `REF_Y/X` after mosaicking in the output file (#1156) + image_stitch: update REF_Y/X after stitching, and/or remove SUBSET_Y/XMIN/MAX + save_kmz: use a different data png file name to avoid conflict with / overwrite view.py's default output file name 09 March 2024, 15:22:40 UTC
0363d89 `utils0.incidence_angle`: read from metadata directly if available for `dimension==0` (#1152) * `utils0.incidence_angle()`: read the center incidence angle from metadata if available and use it as the preferred option, when the dimension is 0. * docs/attr: add `CENTER_INCIDENCE_ANGLE` description --------- Co-authored-by: Zhang Yunjun <yunjunz@outlook.com> 05 March 2024, 16:01:39 UTC
502bfa1 `modify_network`: add `--ex-date12` option (#1151) This PR adds the capability to exclude interferometric pairs given the list of date12, besides given the ifgram index. The benefit is that it won't change after updating interferogram stack. + (cli.)modify_network.py: add --exclude-date12 option to exclude pairs given date1_date2 + defaults.smallbaselineApp(_auto).cfg: add mintpy.network.excludeDate12 option with auto value of no 04 March 2024, 02:15:16 UTC
8c33b9a `autoPath` for `alosStack`: supp custom multilook # + ion phase/coherence (#1150) This PR further support the auto path setting for alosStack products, after https://github.com/insarlab/MintPy/pull/1119. + defaults.auto_path: add get_multilook_suffix() to grab the custom multilook suffix in the interferogram file name + defaults.auto_path: get_reference_date(): minor bug fix in the print out msg + defaults.auto_path.AUTO_PATH_ISCE_ALOS: add `mintpy.load.ion*File` default file patterns + utils.plot.plot_coherence_history(): plot ticks on all four boundaries, and set tick `in` 04 March 2024, 02:14:33 UTC
0c74de9 ignore contributions by bots in release notes ref: https://github.com/isce-framework/snaphu-py/pull/29 20 February 2024, 08:08:42 UTC
e251a8e ts2vel: more comments and references on the --uncertainty option 20 February 2024, 08:08:42 UTC
fdc2f99 circleci: replace mambaforge with miniforge3 20 February 2024, 08:08:42 UTC
fd28f9b [pre-commit.ci] pyupgrade: v3.15.0 → v3.15.1 (#1147) updates: - [github.com/asottile/pyupgrade: v3.15.0 → v3.15.1](https://github.com/asottile/pyupgrade/compare/v3.15.0...v3.15.1) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 20 February 2024, 03:02:14 UTC
0aa5def fix typo in `generate_mask.py` example usage (#1144) Fix typo , I just added -o 13 February 2024, 09:37:05 UTC
a2ffa04 read/load support for `isce2/alos2App` dense offset (#1143) + utils.readfile.auto_no_data_value(): support alos2App dense offset + utils.readfile.get_slice_list(): alos2App uses rg/az order, instead of az/rg order in other isce2 applications. + utils.isce_utils.extract_alosStack_metadata/extract_image_size_alosStack(): support geometry files from alos2App/dense_offset, which have different naming conventions than those from InSAR. + load_data: use absolute path for better robustness 29 January 2024, 12:33:46 UTC
ab9334e installation: replace miniconda with miniforge + use miniforge3 as the recommended conda/mamba installer, instead of miniconda3. This brings two benefits: 1) mamba is installed by default; 2) the conda-forge channel is set as the default and only channel. + use mamba as the package installer, instead of conda, for a faster speed and a slightly simpler note as well. 14 January 2024, 03:01:20 UTC
18b336f tsview: print ref_yx/lalo info + tsview: print out ref_yx/lalo info if available + simulatiton/iono: fix typo + utils.map.auto_lalo_seq*(): check input args for a more meaningful diagnose 14 January 2024, 03:01:20 UTC
1d25397 isort: 5.13.1 → 5.13.2 (#1135) updates: - [github.com/PyCQA/isort: 5.13.1 → 5.13.2](https://github.com/PyCQA/isort/compare/5.13.1...5.13.2) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 19 December 2023, 06:26:02 UTC
ca78bee build(deps): bump actions/download-artifact from 3 to 4 (#1134) Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 3 to 4. - [Release notes](https://github.com/actions/download-artifact/releases) - [Commits](https://github.com/actions/download-artifact/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/download-artifact dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 18 December 2023, 11:31:17 UTC
2d51868 build(deps): bump actions/upload-artifact from 3 to 4 (#1133) Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 3 to 4. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 18 December 2023, 11:31:03 UTC
1a344d3 isort: 5.12.0 → 5.13.1 (#1131) updates: - [github.com/PyCQA/isort: 5.12.0 → 5.13.1](https://github.com/PyCQA/isort/compare/5.12.0...5.13.1) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 12 December 2023, 01:43:13 UTC
95ee98c build(deps): bump actions/setup-python from 4 to 5 (#1130) Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4 to 5. - [Release notes](https://github.com/actions/setup-python/releases) - [Commits](https://github.com/actions/setup-python/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/setup-python dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 11 December 2023, 12:08:08 UTC
d1b793b replace `setup.py` with `pyproject.toml` (#1129) + add `tests/requirements.txt` file for test requirements + `requirements.txt`: move pre-commit into the `tests/requirements.txt` file + replace `setup.py` with `pyproject.toml` + bump the min python version to 3.8 --------- Co-authored-by: Scott Staniewicz <scott.j.staniewicz@jpl.nasa.gov> 05 December 2023, 02:03:17 UTC
c7c9ca4 wrap up for version 1.5.3 (#1120) + src/mintpy/version.py: add tag for version 1.5.3 + simulation/fractal: fix np.abs(dtype) bug due to numpy behavior change + plot_network: fine-tune coh mat fig size for long time series + scripts/fix_typos.sh: use github.com instead of raw.githubusercontent.com for spelling.dat URL - use the github.com url for the spelling.dat file, as downloading raw.githubusercontent.com files in China does not work well - check gdal_dict.txt file instead of the ./fix_typos dir, so that one could run the script without deleting the ./fix_typos directory - add more words to the AUTHORIZED_LIST + fix some typos by running scripts/fix_typos.sh + docs/installation.md: add deprecation note for macports 23 November 2023, 09:31:39 UTC
3ccba02 support auto_path for `isce2/alosStack` (#1119) support auto_path for isce2/alosStack + defaults.auto_path.py: - add AUTO_PATH_ISCE_ALOS global var - add get_reference_date() to grab ref_date from the alosStack.xml file - update get_auto_path() for isce2/alosStack + rename the following offensive var abbreviations - m_shelve --> ref_shelve - m_date12 --> ref_date12 - m_ifg_file --> ref_ifg_file 23 November 2023, 03:11:40 UTC
427e4ec doc: update URL for HyP3 sample notebook (#1113) * update url to sample notebook * correct typo 03 November 2023, 03:26:09 UTC
07b4628 `view`: add `--scalebar-linewidth` option (#1111) + view: add --scalebar-linewidth option + prep_gamma: fix the `inps.sensor.lower()` issue when sensor is not specified, i.e. inps.sensor is None, by shifting the lower() operation inside `extract_metadata4interferogram()` + asc_desc2horz_vert.get_design_matrix4east_north_up(): add type checking for the `obs_direction` arg. 27 October 2023, 07:32:50 UTC
2adeb67 `plot_network`: check nan values of coh/bperp in kept ifgrams (#1108) + `plot_network`: raise error for pairs with invalid coh/Bperp value, probably due to upstream insar processing issues. This is rarely seen, as reported in the [google group](https://groups.google.com/g/mintpy/c/l1oOaHhqa-o). + `utils.plot.auto_adjust_yaxis`: ignore nan value in input data - use `np.nanmin/nanmax()` to replace `min/max()` to ignore nan values in the input data list - light refactoring to improve the readability + `utils.plot.py`: use consistent parameters/returns comment styles for all functions 13 October 2023, 02:37:47 UTC
caac2df `utils0.utm2latlon()`: allow coordinates outside of the normal range of a UTM zone (#1107) + utils.utils0.utm2latlon(): set 'strict=False' while calling utm.to_latlon() to allow coordinates outside the range of a typical single UTM zone, which can be common for large area analysis Co-authored-by: @swdmike <swdmike@qq.com> 13 October 2023, 01:46:57 UTC
2f7797d pre-commit-hooks: v4.4 → v4.5 + pyupgrade: v3.14 → v3.15 (#1104) updates: - [github.com/pre-commit/pre-commit-hooks: v4.4.0 → v4.5.0](https://github.com/pre-commit/pre-commit-hooks/compare/v4.4.0...v4.5.0) - [github.com/asottile/pyupgrade: v3.14.0 → v3.15.0](https://github.com/asottile/pyupgrade/compare/v3.14.0...v3.15.0) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 10 October 2023, 01:57:54 UTC
4ac8ad6 bugfix for `mintpy.network.aoiYX/LALO` options (#1103) + Fix the bug of `mintpy.network.aoiYX` and `mintpy.network.aoiLALO` getting ignored, which was introduced in https://github.com/insarlab/MintPy/pull/554. + Fix the ·--aoi-lalo· option checking for radar-coded files without lookup file. 09 October 2023, 09:40:55 UTC
cd1cae9 `view --dem-blend`: support data/DEM in diff resolutions (#1102) `view --dem-blend`: support data/DEM in diff reso by resampling on the fly + utils.plot.prep_blend_image(): add resampling on the fly using skimage.transform.resize() to support different resolutions between data and DEM while using the view.py --dem-blend option + utils.plot.prep_blend_image(): change the default base_color from 0.9 to 0.7, for a slightly darker DEM background + cli.view.cmd_line_parse(): ignore --cbar-ext option if --dem-blend is specified as well. + .github/ISSUE_TEMPLATE/bug_report.md: add insar processor/product info 06 October 2023, 15:06:49 UTC
5939a68 pyupgrade: v3.13.0 → v3.14.0 (#1099) [pre-commit.ci] pre-commit autoupdate updates: - [github.com/asottile/pyupgrade: v3.13.0 → v3.14.0](https://github.com/asottile/pyupgrade/compare/v3.13.0...v3.14.0) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 03 October 2023, 11:03:15 UTC
9ae918f `sensor`: add LuTan-1 info (#1097) + objects/sensor: add LuTan-1 parameters in stripmap mode 30 September 2023, 04:36:11 UTC
db83a40 pre-commit/pyupgrade: v3.11.0 → v3.13.0 (#1094) updates: - [github.com/asottile/pyupgrade: v3.11.0 → v3.13.0](https://github.com/asottile/pyupgrade/compare/v3.11.0...v3.13.0) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 26 September 2023, 10:23:34 UTC
20a395e GMT-like shaded relief illumination via `view.py --dem-blend` (#1089) Rather than plotting DEM in the background and overlaying the data with transparency, I attempt to view data with color adjusted by the shaded relief DEM when provided. Just like `gmt grdimage -I` option. Hereafter, I call this DEM-blended data. This can be done via `matplotlib.colors.LightSource.shade_rgb()` module (as opposed to what has been used in MintPy, i.e., the `shade()` module, that only produces the shaded relief of the DEM itself). This PR adds this support for the single-subplot scenario via changes in `view.plot_slice()`, the multi-subplot scenarios are not supported. Detailed changes in MintPy code are as follows: + `utils.arg_utils.add_dem_argument()`: add the following new options to allow users to activate and tune the DEM-blended data plotting: `--dem-blend`, `--blend-mode`, `--shade-frac` and `--base-color` + `utils.plot.py`: - add `prep_blend_image()` to prepare the illuminated RGB array from a given data and DEM - add `plot_blend_image()` to call `prep_blend_image()` and `imshow` for plotting - add `blend_colorbar()` to create a DEM-blended colorbar, to be called within `plot_colorbar()` - `plot_colorbar()`: add generic customization support for the DEM-blended colorbar from `blend_colorbar()` - rename: `prepare_dem_background()` --> `prep_dem_background()` + `cli.view.cmd_line_parse()`: add checkings for `--dem-blend` option - turn off the disp_dem_shade option - check the existence of `--dem` option + `view.plot_slice()`: call `plot.plot_blend_image()` for the DEM-blended style. TODO: we could add the resampling capability in plot_blend_image(), to handle the different resolution between data and DEM. --------- Co-authored-by: Zhang Yunjun <yunjunz@outlook.com> 24 September 2023, 10:57:13 UTC
a39090a pyupgrade: v3.10.1 → v3.11.0 (#1093) updates: - [github.com/asottile/pyupgrade: v3.10.1 → v3.11.0](https://github.com/asottile/pyupgrade/compare/v3.10.1...v3.11.0) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 19 September 2023, 07:48:01 UTC
2866434 build(deps): bump docker/build-push-action from 4 to 5 (#1092) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 4 to 5. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](https://github.com/docker/build-push-action/compare/v4...v5) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 18 September 2023, 15:27:08 UTC
9053a48 build(deps): bump docker/login-action from 2 to 3 (#1091) Bumps [docker/login-action](https://github.com/docker/login-action) from 2 to 3. - [Release notes](https://github.com/docker/login-action/releases) - [Commits](https://github.com/docker/login-action/compare/v2...v3) --- updated-dependencies: - dependency-name: docker/login-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 18 September 2023, 14:21:15 UTC
892e839 del `docs/requirements.txt` + bump docker/setup-buildx-action from 2 to 3 (#1090) * del `docs/requirements.txt` file as it's not really needed by readthedocs website * `.readthedocs.yaml`: add the required `build.os` option * build(deps): bump docker/setup-buildx-action from 2 to 3 + Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 2 to 3. - [Release notes](https://github.com/docker/setup-buildx-action/releases) - [Commits](https://github.com/docker/setup-buildx-action/compare/v2...v3) --------- Co-authored-by: Zhang Yunjun <yunjunz@outlook.com> 18 September 2023, 13:17:29 UTC
cc23ae9 build(deps): bump actions/checkout from 3 to 4 (#1088) Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 11 September 2023, 11:27:35 UTC
e8f6af6 docs: update comments on `pre-commit` & `view.prep/plot_slice()` (#1087) + docs/CONTRIBUTING.md: add `pre-commit run --all-files` comment + src/mintpy/prep_nisar: chmod -x prep_nisar.py + src/mintpy/view.prep/plot_slice(): update comments for usage 09 September 2023, 08:44:07 UTC
1fa42b8 view: allow unit change when viewing seasonal time functions (#1084) * view. read_data4figure(): allow unit change when viewing seasonal / periodic time function estimates from velocity.h5 file, by acknowledging them sharing the same data unit. --------- Co-authored-by: Zhang Yunjun <yunjunz@outlook.com> 08 September 2023, 03:14:56 UTC
b19ff4b `readfile`: support GDAL `int8` dtype (#1083) + add the correction int8 conversion between GDAL and NumPy in DATA_TYPE_GDAL2NUMPY/NUMPY2GDAL + add numpy_to_gdal_dtype() from dolphin + add gdal_to_numpy_dtype() from dolphin I did not replace the usage of dict conversion with the two functions above yet, because cint16/32 is supported by GDAL but not in numpy yet, thus, the dict conversion may be more generic at the moment for translation purposes. --------- Co-authored-by: Scott Staniewicz <scott.stanie@gmail.com> 08 September 2023, 02:35:14 UTC
ce93e2e add `prep_nisar` to load NISAR GUNW products (#1035) * add `prep_nisar.py` and `cli/prep_nisar.py` to prepare and load NISAR GUNW products into HDF5/MintPy format. * add `prep_nisar` to `setup` and `__main__` --------- Co-authored-by: Scott Staniewicz <scott.stanie@gmail.com> Co-authored-by: Zhang Yunjun <yunjunz@outlook.com> 08 September 2023, 01:30:44 UTC
7ff149b Run `fix_typos.sh` on repo to catch spelling errors (#1082) * add modified `scripts/fix_typos.sh` from GDAL repo * run `fix_typos.sh` --------- Co-authored-by: Zhang Yunjun <yunjunz@outlook.com> 30 August 2023, 06:24:16 UTC
1493c9a `prep_hyp3`: support burst-wide interferograms from hyp3-isce2 (#1074) * prep_hyp3: support burst-wide interferogram from ASF hyp3-isce2 processor/instance * docs/dir_structure: add example directory structure from ASF hyp3_isce2 --------- Co-authored-by: Zhang Yunjun <yunjunz@outlook.com> 25 August 2023, 01:45:40 UTC
b800d64 `subset`: support hdf5 <--> binary (#1076) + support hdf5 input --> binary output + support binary input --> hdf5 output 23 August 2023, 11:32:20 UTC
136e67e `mintpy.geocode.laloStep`: support single value input (#1075) + `geocode`: support single input for the `mintpy.geocode.laloStep` option, as it is commonly used; and convert it into a list of two internally in the code. + `smallbaselineApp.run_load_data()`: tune the auto-skipping, by not adding the metadata from the custom template to the geometry HDF5 file, to avoid updating its file modification time. + `timeseries_rms`: auto adjust figure width for long TS + `utils.utils1.spatial_average()`: - always read the output from the text file, which is in 1e-4 precision, to ensure consistency. - use the dataset MODIFICATION_TIME for ifgramStack file, for a more representative run/skip checking. 23 August 2023, 11:29:44 UTC
f068ec5 `view.prep_slice()`: support quoted lists of characters as inputs (#1077) + view.prep_slice(): support quoted lists of characters as inputs so that its parsing behavior is the same as the one in command line 23 August 2023, 11:27:47 UTC
11a9020 `read_gdal`: switch back to gdal kwargs to leverage its subsetting capability (#1072) * utils0: fix typos * utils0: simplify look of `update_attribute_or_not` The bare `next` was acting as a `pass` or `continue` * fix more typos caught by vscode * use `ReadAsArray` after casting box to int This is fixed in gdal versions >3.7.0 https://github.com/OSGeo/gdal/issues/8026 The issue came from passing `np.int64` objects to GDAL, which it wasnt handling properly. Regular python `int`s work find * remove unused import * gps: print the filename, instead of (possibly blank) dirname * convert `Path`s to str for readfile also fix grammar for file not found * remove 2nd version of wkt function 19 August 2023, 03:05:19 UTC
4f09c58 tsview: improved auto figsize for geocoded TS file (#1071) + tsview: - timeseriesViewer.plot(): consider the SNWE for geocoded file when plotting in geo coordinate, for a more suited figure size - get_model_param_str(): do not show the intercept in the model fitting result, as it's not useful + view - update_inps_with_file_metadata(): add "_nws" suffix if showing a single subplot without whitespace - display pi symbol if min/max is very close 1e-3 via the following changes: - utils.plot.auto_adjust_colormap_lut_and_disp_limit(): convert near-pi value to pi if they are very close <1e-3 - utils.plot.plot_colorbar(): display pi symbol on the colorbar if displaying limits are very close to -pi/pi (<1e-3) 15 August 2023, 05:00:34 UTC
62b369d dep: add shapely (#1069) + `dependency`: add `shapely` to `requirements.txt` and `setup.py` file, as it's used in `objects.euler_pole.py` to plot plate motion since #935. Note that 1) shapely is already a dependency for cartopy, so this won't really affect the mintpy installation; 2) shapely has been added explicitly to the dependency on conda-forge for mintpy (https://github.com/conda-forge/mintpy-feedstock/pull/10) + `docs/installation/argcomplete`: replace `conda` with `brew` for bash installation, so that the bash is independent of the conda directory, which can be removed more easily/frequently than `/usr/local directory` from brew. 10 August 2023, 14:14:50 UTC
29d901d `isce_utils.extract_multilook_number()`: search XML and VRT files (#1068) + `utils.isce_utils.extract_multilook_number()`: improve robustness against the occasionally missing *.full.xml files for hgt/lat/lon/los during the isce2/topsStack processing by: - add shadowMask to the potential data file list - search both *.full.xml and *.full.vrt file + version: add version 1.5.2 tag 09 August 2023, 14:12:28 UTC
559b8d7 fix zero step size bug in unwrap_error_phase_closure (#1067) + replace the np.rint() call with np.ceil() to ensure non-zero step size, which could happen for long time-series with highly redundant networks. 09 August 2023, 05:04:03 UTC
23b87d9 dep/doc: add tab completion via `argcomplete` (#1065) + add `argcomplete` to the dependency for tab completion capability. This package is light (only depends on pure Python), and available on pip and conda-forge (as noarch package). - requirements.txt: add argcomplete - setup.py: move argcomplete from optional to required + docs/installation.md: add "tab complete sub-commands" as another sub-section in Post-Installation Setup. 09 August 2023, 02:24:23 UTC
6605a95 seq. closure phase: bring back spatial referencing for ARIA products (#1063) + objects.stack.ifgramStack.get_sequential_closure_phase(): bring back the spatial referencing to ARIA products, to avoid the abnormal closure phase calculation result, which is likely due to the phase stitching applied during ARIA products preparation in ARIA-tools. 09 August 2023, 01:31:50 UTC
0cd227b tropo_pyaps3: bugfix for hyp3 product (#1061) + tropo_pyaps3: bugfix for hyp3 products in UTM coordinates: - calc_delay_timeseries(): remove the call of `ut.to_latlon()` while preparing the pixel-wised 2D lat/lon matrices, as `ut.get_lat_lon()` handled the UTM/latlon conversion already in #1052 + replace `ut.to_latlon()` with `ut.utm2latlon()` as the later supported more file types, in the following occurrences: - tropo_pyaps3.get_bounding_box() - utils.utils.prepare_geo_los_geometry() + utils.utils0.get_lat_lon(): print out UTM/latlon conversion message, to help future tracking/diagnose + prep_hyp3: convert UTM to lat/lon for LAT/LON_REF1/2/3/4 08 August 2023, 10:11:25 UTC
2af3905 read_attribute: translate DATA_TYPE ci2 to float32 for roipac (#1064) + utils.readfile.read_attribute(): translate DATA_TYPE value "ci2" to "float32" for roipac products + tests/smallbaselineApp: more comments on example usage 08 August 2023, 10:09:29 UTC
b74fffc `load2hdf5 --compression` & `view --faultline-min-dist` (#1062) + legacy/load2hdf5: add --compression option + view: add --faultline-min-dist option to trim the plotted fault lines + view: set the x-axis label to the top for horizontal colorbar at the bottom + utils.plot.auto_adjust_xaxis_date: consider axes width while determining every_year 07 August 2023, 14:26:16 UTC
1c8e7a1 tsview --figsize-img & relaxed subset tmpl reading (#1059) + tsview: add --figsize-img option to be able to customize the map figure size. Make this arg optional so that other existing functionalities won't be affected. + subset.read_subset_template2box: - support mix separator/delimiter of : and , so that values from isce-proc also work - replace try/except with if judgment 06 August 2023, 12:44:54 UTC
5d330ad isce_utils: add filter_goldstein() (#1058) + utils.isce_utils: add/wrap filter_goldstein() from isce2 for easy reuse. + utils.isce_utils.unwrap_snaphu(): rename defo_max to max_defo to be more intuitive + cli/view.py: print out warning msg if --faultline is specified for radar-coded file + docs/api/data_structure.md: update syntax 06 August 2023, 11:46:30 UTC
6cd22a7 fix the UTM_ZONE confusion (#1053) Fix the previous confusion that UTM_ZONE should end with the hemisphere, not the latitude band, which is not part of UTM but part of MGRS. + utils.utils0.utm_zone2epsg_code(): revert back the south arg feeding from UTM_ZONE + utils.utils0.utm2latlon(): use the `northern` arg instead of the latitude band, to match the meaning of UTM_ZONE metadata + utils.utils0.latlon2utm(): return east/north only, for simplicity and style consistency with utm2latlon. + docs/api/attributes.UTM_ZONE: add more description and examples 03 August 2023, 10:29:57 UTC
308024a convert coord btw. UTM and lat/lon (#1052) + utils.utils0.py: add the following functions to convert coordinates between UTM and lat/lon: - utm2latlon() - latlon2utm() - utm_zone2epsg_code(): bugfix if the latitude letter is not N or S - get_lat_lon(): convert UTM to lat/lon to ensure lat/lon output for hyp3 products + add utm to the dependency files, since 1) it depends on numpy only; and 2) it's available on PyPI and conda-forge - requirements.txt - setup.py 01 August 2023, 12:34:52 UTC
fec802b hdfeos5: calc/write latitude/longitude if missing in geometry file (#1050) + save_hdfeos5: always write latitude/longitude dataset, and calculate based on metadata if missing in the geometry file, such as ARIA + cli/save_hdfeos5: check the coordinate of input file + improved UNIT and fig title handling for HDF-EOS5 product: - utils.readfile.read_attribute(): while grab the UNIT, use the last segment of dataset name if "/" is used - view.plot_subplot4figure(): use the last segment as the auto figure title, instead of the 2nd one, to be more generic + view: improved auto figsize for subplots when there is only one row of subplots 01 August 2023, 10:54:05 UTC
3a646ae pyupgrade: v3.9.0 → v3.10.1 (#1051) updates: - [github.com/asottile/pyupgrade: v3.9.0 → v3.10.1](https://github.com/asottile/pyupgrade/compare/v3.9.0...v3.10.1) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> 01 August 2023, 07:47:02 UTC
97fcad7 bugfix in geocode.py --bbox option for gamma products + objects/resample.py: fix a bug for `geocode.py --bbox` option while geocoding gamma products with customized SNWE from --bbox option, the output dest_box does not start from 0, thus, should use box[3/4] directly, instead of box[3]-box[1] and box[2]-box[0] + cli/subset: check input file exsitence + view.py --coord: update help msg to avoid potential confusions by updating utils.arg_utils.add_figure_argument() + view.py --coord: set the other choices as yx, instead of radar, and keep radar still in the loop for backward compatiability 13 July 2023, 07:04:07 UTC
f1fc2e9 readfile: generalize gamma LUT file ext + ~pi value handling + generalize gamma LUT file extension checking, by replacing the "full file ext checking" with "file ext ending chars checking", to handle both "utm*" and "eqa*" prefix, such as .UTM_TO_RDC, .eqa_2_rdc, as provided by the various gamma users (GAMMA is annoying), in the following scripts: - utils.readfile - utils.writefile - prep_gamma + utils.readfile.read_binary(): convert ~pi value to zero while read phase from cpx file - convert ~pi value to zero while read phase from cpx file, as it sometimes happens to gamma products, probably due to the limited numerical precision of the complex data file, such as .int file. - light refactoring while calling np.fromfile(), to improve the readability + utils.readfile.read_binary_file(): for roipac processor, which is the default one if not specified, honor the metadata file for the following attributes if they exist, instead of using the hardwired value, which is the same as the default ones: - INTERLEAVE - BANDS - BYTE_ORDER - DATA_TYPE + docs/api/attribute.md: add BYTE_ORDER for gamma + dosc/api/data_structure: add file name convention 13 July 2023, 07:04:07 UTC
back to top