Recent Releases of Dolphin
Dolphin - v0.42.0
What's Changed
- Update workflow defaults for larger half-window and nearest-3 by @scottstanie in https://github.com/isce-framework/dolphin/pull/634
- Fix defaults in
dolphin configCLI forinterferogram_networksettings by @scottstanie in https://github.com/isce-framework/dolphin/pull/636 - Refactor to check for nans in JAX crlb calculation by @scottstanie in https://github.com/isce-framework/dolphin/pull/637
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.41.0...v0.42.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie 5 months ago
Dolphin - v0.41.0
What's Changed
stitching.py: Add support for specifying output projection by @scottstanie in https://github.com/isce-framework/dolphin/pull/607- Add Cramér–Rao lower bound (CRLB) estimation output to phase linking results by @scottstanie in https://github.com/isce-framework/dolphin/pull/577
- Fix hardcoded port 5000 for moto tests by @scottstanie in https://github.com/isce-framework/dolphin/pull/617
masking.py: raiseMaskingErrorafter creating an empty mask by @scottstanie in https://github.com/isce-framework/dolphin/pull/619- Add
UAVSAR_WAVELENGTHtoconstantsby @scottstanie in https://github.com/isce-framework/dolphin/pull/620 - Add sequential closure phase rasters to phase linking output by @scottstanie in https://github.com/isce-framework/dolphin/pull/618
- Fix numerical issues with CRLB calculation by @scottstanie in https://github.com/isce-framework/dolphin/pull/626
- Add
apply_mask_to_timeseriesto set masked pixels to nodata in outputs by @scottstanie in https://github.com/isce-framework/dolphin/pull/627 - Stitch and output all per-ministack
temporal_coherence_andsimilarity_files by @scottstanie in https://github.com/isce-framework/dolphin/pull/615
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.40.0...v0.41.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie 5 months ago
Dolphin - v0.40.0
What's Changed
- Throw better error for
dolphinempty cli by @scottstanie in https://github.com/isce-framework/dolphin/pull/604 - Remove
avg_cohfrom optional phase linking outputs by @scottstanie in https://github.com/isce-framework/dolphin/pull/611 unwrap.py: Combine sliding window mask with similarity mask for interpolation by @scottstanie in https://github.com/isce-framework/dolphin/pull/612
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.39.0...v0.40.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie 7 months ago
Dolphin - v0.39.0
Largest visible change: Switch CLI to use tyro by @scottstanie in https://github.com/isce-framework/dolphin/pull/578
This involves multiple fixes and some breaking changes:
- Fixed
- Missing arguments that were not configurable via the command line
dolphin unwrapanddolphin timesrieshas several issues resulting from the function API being out of sync with the argparse API
configChanges:- Strides must be specified as
--sx 6 --sy 3, not--strides 6 3 - Several worker settings options like
--threads-per-workerare not longer top-level command line options; you can specify them with--worker-settings.threads-per-worker
- Strides must be specified as
What's Changed
- Add script to read GAMMA
.rslcbinary SLCs by @scottstanie in https://github.com/isce-framework/dolphin/pull/569 - Make
referenceoptional for velocity fitting by @scottstanie in https://github.com/isce-framework/dolphin/pull/571 - Run
fix_typos.shon repo by @scottstanie in https://github.com/isce-framework/dolphin/pull/572 - Add
keep_bitstoBackgroundBlockWriterAPI so writers canround_mantissaby @scottstanie in https://github.com/isce-framework/dolphin/pull/536 - Add Github link to docs by @scottstanie in https://github.com/isce-framework/dolphin/pull/575
- Remove old
glrt_cutoffs.csvfromMANIFEST.inby @scottstanie in https://github.com/isce-framework/dolphin/pull/573 - Allow
Iterator[Filename]to all readers with.from_file_listby @scottstanie in https://github.com/isce-framework/dolphin/pull/579 - Revert API change for
_readersfrom #579 by @scottstanie in https://github.com/isce-framework/dolphin/pull/582 - Simplify reference index logic for
ALWAYS_FIRSTinstack.py, cutFIRST_PER_MINISTACKby @scottstanie in https://github.com/isce-framework/dolphin/pull/588 - Remove unused
_utilshelper functions by @scottstanie in https://github.com/isce-framework/dolphin/pull/581 OutputOptions: Only requirebounds_epsgif specifyingbounds, cutresolutionby @scottstanie in https://github.com/isce-framework/dolphin/pull/591- Remove single-burst special case, keep phase linking results to
phas… e487ce2 …e_linking/by @scottstanie in https://github.com/isce-framework/dolphin/pull/574 - Add
fmt=file_date_fmtto allget_datescall to avoid file format assumptions by @scottstanie in https://github.com/isce-framework/dolphin/pull/585 - Parallelize phase linking for single-swath case in
single.pyby @scottstanie in https://github.com/isce-framework/dolphin/pull/576 - Fix: Remove per-burst phase linking dirs that are empty by @scottstanie in https://github.com/isce-framework/dolphin/pull/595
stitching.py: fix strides check for either x or y by @scottstanie in https://github.com/isce-framework/dolphin/pull/596- DOC: Add phase linking theory notebook to docs by @scottstanie in https://github.com/isce-framework/dolphin/pull/597
- Pass through
timeseries_options.reference_pointduringdisplacement.pyworkflow by @scottstanie in https://github.com/isce-framework/dolphin/pull/602 unwrapping.py: fix comparison to avoid mask warping by @scottstanie in https://github.com/isce-framework/dolphin/pull/600- Switch CLI to use
tyroby @scottstanie in https://github.com/isce-framework/dolphin/pull/578
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.38.0...v0.39.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie 7 months ago
Dolphin - v0.38.0
What's Changed
- Add
demo-filtering-sizes.ipynbfor high-pass filtering cutoff demo by @scottstanie in https://github.com/isce-framework/dolphin/pull/561 - Split corrections, remove raider pulled modules by @scottstanie in https://github.com/isce-framework/dolphin/pull/531
- Use
is_symlinkwhen checking for existing scratch files in spurt by @scottstanie in https://github.com/isce-framework/dolphin/pull/568
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.37.0...v0.38.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie 9 months ago
Dolphin - v0.37.0
What's Changed
filtering.py: Change defaultsigmacalculation, add docstring explanation by @scottstanie in https://github.com/isce-framework/dolphin/pull/560
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.36.2...v0.37.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie 10 months ago
Dolphin - v0.36.2
What's Changed
- Update notebook walkthrough for new output structure by @scottstanie in https://github.com/isce-framework/dolphin/pull/558
- Add datasets to masking for NISAR by @mirzaees in https://github.com/isce-framework/dolphin/pull/559
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.36.1...v0.36.2
Scientific Software - Peer-reviewed
- Python
Published by mirzaees 10 months ago
Dolphin - v0.36.1
What's Changed
- add nisar wavelengths by @mirzaees in https://github.com/isce-framework/dolphin/pull/551
- Fix ionosphere reading and delay computation by @scottstanie in https://github.com/isce-framework/dolphin/pull/554
- Let
amp_dispersion_thresholdbe 0 to select no PS points by @scottstanie in https://github.com/isce-framework/dolphin/pull/553 - Move
WriteArraycalls afterSetNoDataValuecalls by @scottstanie in https://github.com/isce-framework/dolphin/pull/555
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.36.0...v0.36.1
Scientific Software - Peer-reviewed
- Python
Published by scottstanie 10 months ago
Dolphin - v0.36.0
What's Changed
- Remove import for
goldsteinandfilteringfrom top level__init_.pyby @scottstanie in https://github.com/isce-framework/dolphin/pull/530 - docs: Fix mathjax render, fix broken
DateOrDatetimeerror by @scottstanie in https://github.com/isce-framework/dolphin/pull/538 - Refactor
select_reference_pointto pick the centroid of high-coherence candidate pixels by @scottstanie in https://github.com/isce-framework/dolphin/pull/535 - Replace
__name__with "dolphin" ingetLoggercalls by @scottstanie in https://github.com/isce-framework/dolphin/pull/543 - Convert
glrtSHP method to use JAX by @scottstanie in https://github.com/isce-framework/dolphin/pull/444 - Add
utils.grow_nodata_regionto remove bad borders fromshp_counts.tifby @scottstanie in https://github.com/isce-framework/dolphin/pull/548
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.35.1...v0.36.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie 11 months ago
Dolphin - v0.35.1
What's Changed
filtering.py: Fixin_bounds_pixelsmasking, set default to 25 km by @seyeonjeon in https://github.com/isce-framework/dolphin/pull/527- Set
output_reference_idxseparately fromcompressed_reference_idxby @scottstanie in https://github.com/isce-framework/dolphin/pull/528
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.35.0...v0.35.1
Scientific Software - Peer-reviewed
- Python
Published by scottstanie 12 months ago
Dolphin - v0.35.0
What's Changed
- Fix grammar on VRT size check by @scottstanie in https://github.com/isce-framework/dolphin/pull/516
- Use L1 inversion by default for timeseries by @scottstanie in https://github.com/isce-framework/dolphin/pull/518
- Add
keepdimsoptions to reader classes to avoid squeezing singleton dims by @scottstanie in https://github.com/isce-framework/dolphin/pull/521 - Use the most recent compressed SLC as output for
LAST_PER_MINISTACKby @scottstanie in https://github.com/isce-framework/dolphin/pull/513 simulate.py: Adduse_seasonal_coherence, remove numba by @scottstanie in https://github.com/isce-framework/dolphin/pull/524- Adapt short wavelength filter to use
gdal_fillnodatato mitigate edge effects by @scottstanie in https://github.com/isce-framework/dolphin/pull/520 - Compute residuals to the timeseries inversion, save to raster outputs by @scottstanie in https://github.com/isce-framework/dolphin/pull/523
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.34.2...v0.35.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie about 1 year ago
Dolphin - v0.34.2
What's Changed
- 'Use
nearestresampling for merging temporal coherence by @scottstanie in https://github.com/isce-framework/dolphin/pull/508
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.34.1...v0.34.2
Scientific Software - Peer-reviewed
- Python
Published by scottstanie about 1 year ago
Dolphin - v0.34.1
What's Changed
- Use
fspathwhen opening withgdalto support older versions by @scottstanie in https://github.com/isce-framework/dolphin/pull/502
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.34.0...v0.34.1
Scientific Software - Peer-reviewed
- Python
Published by scottstanie about 1 year ago
Dolphin - v0.34.0
What's Changed
- Pin
mkdocs-jupyterto 0.25.0, smalltimeseriesfix for cli by @scottstanie in https://github.com/isce-framework/dolphin/pull/486 - Add missing annotations to make Python 3.9 compatible by @scottstanie in https://github.com/isce-framework/dolphin/pull/487
- Delete
.flake8by @scottstanie in https://github.com/isce-framework/dolphin/pull/489 - Fix unit string written to
velocity.tifby @scottstanie in https://github.com/isce-framework/dolphin/pull/491 - Add
--use-evdto config cli by @scottstanie in https://github.com/isce-framework/dolphin/pull/492 - Change default
ministack_sizeto 15 inPhaseLinkingOptionsby @scottstanie in https://github.com/isce-framework/dolphin/pull/493 - Add logging redirect, request spurt log file, multiprocess interpolation by @scottstanie in https://github.com/isce-framework/dolphin/pull/495
- Use
nearestsampling to stitch static layers by @scottstanie in https://github.com/isce-framework/dolphin/pull/496 - Fix
extra_reference_datelogic for single reference unwrapping by @scottstanie in https://github.com/isce-framework/dolphin/pull/497 - Speed up the post-
spurt2-pi ambiguity interpolation by @scottstanie in https://github.com/isce-framework/dolphin/pull/499 - Add
CITATION.cfffor better zenodo parsing by @scottstanie in https://github.com/isce-framework/dolphin/pull/488
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.33.0...v0.34.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie about 1 year ago
Dolphin - v0.33.0
What's Changed
- Add
fill_valuetofilter_long_wavelength, apply to masked pixels if provided by @scottstanie in https://github.com/isce-framework/dolphin/pull/483 - Avoid capturing all logging from spurt by @scottstanie in https://github.com/isce-framework/dolphin/pull/484
- Add
create_nonzero_conncomp_countsto create counts of valid unwrapped outputs by @scottstanie in https://github.com/isce-framework/dolphin/pull/485
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.32.0...v0.33.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie about 1 year ago
Dolphin - v0.32.0
What's Changed
- Merge documentation improvements from
jossbranch by @scottstanie in https://github.com/isce-framework/dolphin/pull/481 - Add a retry to spurt for
BrokenProcessPools by @scottstanie in https://github.com/isce-framework/dolphin/pull/480
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.31...v0.32.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie about 1 year ago
Dolphin - v0.31
What's Changed
- Skip nodata values of interferograms when interpolating by @scottstanie in https://github.com/isce-framework/dolphin/pull/476
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.30...v0.31
Scientific Software - Peer-reviewed
- Python
Published by scottstanie about 1 year ago
Dolphin - v0.30
What's Changed
- Pass through
unitsduringtimeseries._redo_referenceby @scottstanie in https://github.com/isce-framework/dolphin/pull/451 - Fix the relative index used to make compressed SLCs by @scottstanie in https://github.com/isce-framework/dolphin/pull/452
- Fix
in_trim_slicesize for non overlapping blocks by @scottstanie in https://github.com/isce-framework/dolphin/pull/454 - Add ability to specify output bounds as WKT by @scottstanie in https://github.com/isce-framework/dolphin/pull/427
- Refactor
compressed_reference_idx, fix relative index bug by @scottstanie in https://github.com/isce-framework/dolphin/pull/453 - Call spurt from
subprocessto avoid fork issues by @scottstanie in https://github.com/isce-framework/dolphin/pull/455 - Replace CSVs with
chi2.ppffor GLRT test by @scottstanie in https://github.com/isce-framework/dolphin/pull/456 - Add ability to calculate
similarityusing nearest-3 interferograms by @scottstanie in https://github.com/isce-framework/dolphin/pull/457 - Pass through
compressed_slc_planconfig to sequential by @scottstanie in https://github.com/isce-framework/dolphin/pull/459 - Add
single_tile_reoptimizefor snaphu-py by @scottstanie in https://github.com/isce-framework/dolphin/pull/460 - Update
dolphin timeseriescli for new options, useL1by default by @scottstanie in https://github.com/isce-framework/dolphin/pull/461 - Add a layovershadowmaskfiles to mask pixels in layover/shadow during `wrappedphase` by @scottstanie in https://github.com/isce-framework/dolphin/pull/462
- Add
min_conncomp_frac, lower default to 0.001 by @scottstanie in https://github.com/isce-framework/dolphin/pull/463 - Increase
spurtmax_tilesdefault to 49 to have smaller MCF problems by @scottstanie in https://github.com/isce-framework/dolphin/pull/464 - Use
output_reference_idxas the default for creating compressed slcs withALWAYS_FIRSTby @scottstanie in https://github.com/isce-framework/dolphin/pull/465 - Allow interpolation using pseudo-correlation, lower
spurttile sizes by @scottstanie in https://github.com/isce-framework/dolphin/pull/466 - Add
zero_correlation_thresholdphase linking parameter to zero out low correlation by @scottstanie in https://github.com/isce-framework/dolphin/pull/467 - Pass through
block_shapetocreate_similaritiesafter phase linking by @scottstanie in https://github.com/isce-framework/dolphin/pull/469 - Increase the
buffer_pixelswhen making OPERA CSLC mask by @scottstanie in https://github.com/isce-framework/dolphin/pull/470 - Pass through
--max-tilesto spurt by @scottstanie in https://github.com/isce-framework/dolphin/pull/471 - Refactor
repack_rasterto work in block for lower memory by @scottstanie in https://github.com/isce-framework/dolphin/pull/473 - Setup conversion to
/vsis3when reading from S3 usingosgeo.gdalby @scottstanie in https://github.com/isce-framework/dolphin/pull/474 - Add
censored_lstsqto solve least squares with missing data by @scottstanie in https://github.com/isce-framework/dolphin/pull/475
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.29.0...v0.30
Scientific Software - Peer-reviewed
- Python
Published by scottstanie about 1 year ago
Dolphin - v0.29.0
What's Changed
- Add references/url fix from JOSS branch by @scottstanie in https://github.com/isce-framework/dolphin/pull/439
- Add a sample
dolphin_config.yamlto the docs, GHA to auto-update by @scottstanie in https://github.com/isce-framework/dolphin/pull/438 - Pass through
phase_linking.output_reference_idxto avoid reference resets by @scottstanie in https://github.com/isce-framework/dolphin/pull/445 - Set the input to EVD to be weighted by correlation by @scottstanie in https://github.com/isce-framework/dolphin/pull/428
- Add stitched phase cosine similarity raster to outputs by @scottstanie in https://github.com/isce-framework/dolphin/pull/446
- Add logic to reset the
extra_reference_dateafter a network unwrapping by @scottstanie in https://github.com/isce-framework/dolphin/pull/442 - Add a post processing step to fill
nans after runningspurtby @scottstanie in https://github.com/isce-framework/dolphin/pull/448 - Apply nan/0 mask to output of
goldsteinfilter by @scottstanie in https://github.com/isce-framework/dolphin/pull/447 - Use
dataclassesinstead ofNamedTuplefor displacement, stitched outputs by @scottstanie in https://github.com/isce-framework/dolphin/pull/449 - Add
outside_input_rangeoptions toget_nearest_date_idxby @scottstanie in https://github.com/isce-framework/dolphin/pull/450
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.28.1...v0.29.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie about 1 year ago
Dolphin - v0.28.1
What's Changed
- Dont short-circuit
extra_reference_datechange over by @scottstanie in https://github.com/isce-framework/dolphin/pull/435 - Change
is_single_referenceto only look for number of interferograms by @scottstanie in https://github.com/isce-framework/dolphin/pull/436
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.28.0...v0.28.1
Scientific Software - Peer-reviewed
- Python
Published by scottstanie over 1 year ago
Dolphin - v0.28.0
What's Changed
- Update walkthrough notebook for docs by @scottstanie in https://github.com/isce-framework/dolphin/pull/390
- Remove transposed versions of functions in
covarianceby @scottstanie in https://github.com/isce-framework/dolphin/pull/391 - Fix plotting/imports for walkthrough by @scottstanie in https://github.com/isce-framework/dolphin/pull/393
- Add
num_parallel_tilesandnum_parallel_ifgstoSpurtOptionsby @scottstanie in https://github.com/isce-framework/dolphin/pull/394 - DOCS: Add clarificaitons and suggested changes to documentation by @scottstanie in https://github.com/isce-framework/dolphin/pull/395
- Set
use_slc_ampdefault to False by @scottstanie in https://github.com/isce-framework/dolphin/pull/396 - Add missing changelog entries by @scottstanie in https://github.com/isce-framework/dolphin/pull/397
- Fix
displacement.runto avoid troposphere computation with empty list by @scottstanie in https://github.com/isce-framework/dolphin/pull/399 - Pass through EPSG code to
_get_maskby @scottstanie in https://github.com/isce-framework/dolphin/pull/400 - Fix
n_parallel_tilesto be an integer, not float by @scottstanie in https://github.com/isce-framework/dolphin/pull/403 - Add L1-norm-based inversion to
timeseriesby @scottstanie in https://github.com/isce-framework/dolphin/pull/402 - Skip
combine_mask_filesif the output already exists by @scottstanie in https://github.com/isce-framework/dolphin/pull/404 - Fix typos in walkthrough configuration by @scottstanie in https://github.com/isce-framework/dolphin/pull/407
- DOC: Add instructions for building Docker image by @scottstanie in https://github.com/isce-framework/dolphin/pull/409
- Include layover shadow mask when stitching in
prepare_geometryby @scottstanie in https://github.com/isce-framework/dolphin/pull/410 - Add config option to avoid PS pixels during phase linking by @scottstanie in https://github.com/isce-framework/dolphin/pull/411
- Fix
simulate-demofunction usage, add link to notebook by @scottstanie in https://github.com/isce-framework/dolphin/pull/412 - Use the same mask for unwrapping and conncomp regrowing steps by @gmgunter in https://github.com/isce-framework/dolphin/pull/413
- Add
block_shapeto timeseries parameters, use less memory for L1 inversion by @scottstanie in https://github.com/isce-framework/dolphin/pull/414 - Fix mismatching docs and missing log statements by @scottstanie in https://github.com/isce-framework/dolphin/pull/415
- Add
wavelengthattribute to workflow to convert rasters to meters by @scottstanie in https://github.com/isce-framework/dolphin/pull/367 - Pass through
add_overviews, run even if single-reference network by @scottstanie in https://github.com/isce-framework/dolphin/pull/418 - Add
ignore_errors=Truetormtreefor scratch removal by @scottstanie in https://github.com/isce-framework/dolphin/pull/419 - Create
.conncompfiles forspurtfrom temporal coherence by @scottstanie in https://github.com/isce-framework/dolphin/pull/417 - Setup
gaussian_filter_nanin utils, use inestimate_correlation_from_phaseby @scottstanie in https://github.com/isce-framework/dolphin/pull/420 - Turn off correlation weighting for velocity by default by @scottstanie in https://github.com/isce-framework/dolphin/pull/423
- Add larger
Nrows to computed GLRT cutoffs by @scottstanie in https://github.com/isce-framework/dolphin/pull/422 - Add
like_filenameforspurtconnected components by @scottstanie in https://github.com/isce-framework/dolphin/pull/424 - Fix Apache end template by @scottstanie in https://github.com/isce-framework/dolphin/pull/426
- Add logic for manually specifying reference dates mid-stack by @scottstanie in https://github.com/isce-framework/dolphin/pull/334
- Print unwrapping options in
show_versionsby @scottstanie in https://github.com/isce-framework/dolphin/pull/430 - Fix ionosphereic date parsing and grouping by @scottstanie in https://github.com/isce-framework/dolphin/pull/432
- Use ADMM to minimize L1-norm of
Ax - bby @scottstanie in https://github.com/isce-framework/dolphin/pull/431 - Fix handling of
nodataduring timeseries conversion to meters by @scottstanie in https://github.com/isce-framework/dolphin/pull/433
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.27.1...v0.28.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie over 1 year ago
Dolphin - v0.27.1
What's Changed
- Set the default
input_conventionsto be same asoutput_conventionsby @scottstanie in https://github.com/isce-framework/dolphin/pull/389
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.27.0...v0.27.1
Scientific Software - Peer-reviewed
- Python
Published by scottstanie over 1 year ago
Dolphin - v0.27.0
What's Changed
- Temporarily remove resampling during stitching final crop by @scottstanie in https://github.com/isce-framework/dolphin/pull/385
- Add ability to mask a subset of input SLCs by @scottstanie in https://github.com/isce-framework/dolphin/pull/386
- Fix typo by @rtburns-jpl in https://github.com/isce-framework/dolphin/pull/387
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.26.0...v0.27.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie over 1 year ago
Dolphin - v0.26.0
What's Changed
- Change datetime format for reading tropospheric corrections by @mirzaees in https://github.com/isce-framework/dolphin/pull/378
- Copy over unwrapped to
timeseries/even with 1 file by @scottstanie in https://github.com/isce-framework/dolphin/pull/379 - Add
mapoption forDummyProcessPoolExecutorby @scottstanie in https://github.com/isce-framework/dolphin/pull/380 - Remove
atmosphereimports from the main path by @scottstanie in https://github.com/isce-framework/dolphin/pull/381 - Add PR template by @scottstanie in https://github.com/isce-framework/dolphin/pull/383
- Add
dolphin filtercli to run a long wavelgnth filter on a set of rasters by @scottstanie in https://github.com/isce-framework/dolphin/pull/382
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.25.0...v0.26.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie over 1 year ago
Dolphin - v0.25.0
What's Changed
- Move reference point selection back to always run if not specified by @scottstanie in https://github.com/isce-framework/dolphin/pull/376
- Fix
timeseriesto mkdir right away in https://github.com/isce-framework/dolphin/commit/d6ff5d71e5860752aad7c05d4f1ea34e167bfc0a - Reference corrections to point, convert to meters by @scottstanie in https://github.com/isce-framework/dolphin/pull/377
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.24.0...v0.25.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie over 1 year ago
Dolphin - v0.24.0
What's Changed
- Skip correlation estimate for files that exist by @scottstanie in https://github.com/isce-framework/dolphin/pull/368
- Clip
nlooksto a max of 20 forwhirlwindby @scottstanie in https://github.com/isce-framework/dolphin/pull/369 - Simplify
filter_long_wavelengthto usenp.pad(..., mode="reflect")by @scottstanie in https://github.com/isce-framework/dolphin/pull/372 - Skip zero raster output by timeseries inversions by @scottstanie in https://github.com/isce-framework/dolphin/pull/373
- Save
ReferencePointinto file intimeseries/folder by @scottstanie in https://github.com/isce-framework/dolphin/pull/374 - Fix reference point selection labels by @scottstanie in https://github.com/isce-framework/dolphin/pull/375
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.23.0...v0.24.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie over 1 year ago
Dolphin - v0.23.0
What's Changed
- Let
show_versionsreadimportlib.metadata, usekeep_bits, notlercby @scottstanie in https://github.com/isce-framework/dolphin/pull/344 - Add whirlwind unwrapper by @gmgunter in https://github.com/isce-framework/dolphin/pull/345
- Remove whirlwind from the CI environment by @gmgunter in https://github.com/isce-framework/dolphin/pull/348
- Add whirlwind to Docker image and CI environments by @gmgunter in https://github.com/isce-framework/dolphin/pull/349
- Fix spurt tests by @scottstanie in https://github.com/isce-framework/dolphin/pull/346
- Update
spurtimports for exported interface by @scottstanie in https://github.com/isce-framework/dolphin/pull/351 - Make network formation
staticmethods public by @scottstanie in https://github.com/isce-framework/dolphin/pull/355 snaphu: usecontextlib.ExitStackinstead iftry/finallyby @scottstanie in https://github.com/isce-framework/dolphin/pull/354_log: add option to redirect other loggers to same json file by @scottstanie in https://github.com/isce-framework/dolphin/pull/358- Set the
final_arrnodata to be same as original ifg mask by @scottstanie in https://github.com/isce-framework/dolphin/pull/356 - Fix filtering ambiguity transfer for interp/goldstein by @scottstanie in https://github.com/isce-framework/dolphin/pull/360
- Shrink
nlooksfor whirlwind, fix confusing name for scratchdirs by @scottstanie in https://github.com/isce-framework/dolphin/pull/362 - Interleave GTiffs by band by @scottstanie in https://github.com/isce-framework/dolphin/pull/363
- Improve code for transferring unwrapped phase ambiguities by @gmgunter in https://github.com/isce-framework/dolphin/pull/364
- Move mask loading function into
masking.pyby @scottstanie in https://github.com/isce-framework/dolphin/pull/365
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.22.1...v0.23.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie over 1 year ago
Dolphin - v0.22.0
What's Changed
- Minor changes in
spurtconfig to match its naming onventions by @scottstanie in https://github.com/isce-framework/dolphin/pull/342 - chore: vendor
mdx_bibto avoid direct url indocs/requirements.txtby @scottstanie in https://github.com/isce-framework/dolphin/pull/340 timeseries: output velocities in units per year by @scottstanie in https://github.com/isce-framework/dolphin/pull/341
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.21.0...v0.22.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie over 1 year ago
Dolphin - v0.21.0
What's Changed
- Use
numcodecsimplementation of rounding, exportround_mantissaby @scottstanie in https://github.com/isce-framework/dolphin/pull/335 - CD: add workflow to publish to pypi by @scottstanie in https://github.com/isce-framework/dolphin/pull/338
- Netcdf support by @mirzaees in https://github.com/isce-framework/dolphin/pull/337
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.20.0...v0.21.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie over 1 year ago
Dolphin - v0.20.0
Added
- Functions in
psto combine amplitude dispersions from older rasters truncate_mantissaoption torepackfunctions for simple compressionbandoption towrite_blockand background writers- Option to run
merge_datesandestimate_interferometric_correlationswiththread_mapfor parallel processing - Baseline lag option for "STBAS" phase linking inversion
Changed
- Logging now uses
dictConfigand always logs JSON to a file for the Displacement workflow - Set modulus of compressed SLCs to be real SLC magnitude means
- Updated Docker requirements and specfile
- Delete intermediate unwrapping
scratchdirs by default
Fixed
use_max_pswould occasionally fail with certain stride/window configurations- Unwrapped phase files did not always contain the right geographic metadata
- Filenames in the
timeseries/folder were wrong - Set upsampled boundary to
nanincompress - Unwrapped file output path
Merged PRs
- Fix filtering docstring by @scottstanie in https://github.com/isce-framework/dolphin/pull/318
- Fix unwrap metadata, delete unwrap scratch by default by @scottstanie in https://github.com/isce-framework/dolphin/pull/319
- Copy over rasters to
timeseries/, dont symlink by @scottstanie in https://github.com/isce-framework/dolphin/pull/320 - Update Docker requirements and specfile by @scottstanie in https://github.com/isce-framework/dolphin/pull/321
- Stbas by @mirzaees in https://github.com/isce-framework/dolphin/pull/311
- Fix size error from
use_max_psby @scottstanie in https://github.com/isce-framework/dolphin/pull/323 - Let
stitching_bursts.pyrun in parallel by @scottstanie in https://github.com/isce-framework/dolphin/pull/325 - correct the unwrapped file output path by @mirzaees in https://github.com/isce-framework/dolphin/pull/327
- Fix timeseries suffixes, log only during workflows, fix tqdm stitching bar by @scottstanie in https://github.com/isce-framework/dolphin/pull/328
- Set modulus of compressed SLCs to be real SLC magnitude means by @scottstanie in https://github.com/isce-framework/dolphin/pull/329
- Redo logging to use
dictConfig, always log to a.jsonlfile by @scottstanie in https://github.com/isce-framework/dolphin/pull/330 - Save each ministack's amplitude dispersion for incremental PS/DS changes by @scottstanie in https://github.com/isce-framework/dolphin/pull/331
ps: functions for combining dispersions/means by @scottstanie in https://github.com/isce-framework/dolphin/pull/332
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.19.0...v0.20.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie over 1 year ago
Dolphin - v0.19.0
Added
- filtering module for filtering out long wavelength signals from the unwrapped phase
- baseline module for computing the perpendicular baseline. Initial version has logic for OPERA CSLCs, uses isce3
- Interface only for 3D unwrapping
- Faster correlated noise simulation, along with 3d stack simulation with synthetic deformation
- Added ability to read rasters on S3 using VRTStack object
- Eigenvalue solver speedups of 3-9x
- Initial version of 3D unwrapping using spurt
Removed - the KL-divergence SHP estimator has been removed. GLRT is recommended instead.
Fixed
- reproject_bounds uses the rasterio version, which densifies points along edges for a more accurate bounding box
- The output SHP rasters now output 0 if there was no valid input data
- Logic for filling PS pixels, with and without setting the amplitudes to be the original SLC amplitudes
- ReferencePointError during the displacement workflow now will fall back look only at the condition_file (i.e. choose the point with highest temporal coherence by default)
Changed
- The configuration options for unwrapping have been refactored. Options unique to each unwrapper are grouped into subclasses.
- Note that older dolphin_config.yaml files will error after this refactor.
- Unweighted time series inversion will make one batch call, providing a large speedup over the vmap version for weighted least squares
- Default for strided PS-picking is to use lowest amplitude dispersion, instead of averaging PS pixels in the multilook window
What's Changed
- temporary fix for compressed SLC metadata by @mirzaees in https://github.com/isce-framework/dolphin/pull/287
- Enforce convention for conncomp files to be consistent with unw files by @sssangha in https://github.com/isce-framework/dolphin/pull/288
timeseries.py: speed up non-weightedinvert_stackby @scottstanie in https://github.com/isce-framework/dolphin/pull/291- Change
reproject_boundsto use rasterio version by @scottstanie in https://github.com/isce-framework/dolphin/pull/292 - Start adding S3 support for
VRTStackby @scottstanie in https://github.com/isce-framework/dolphin/pull/245 - Fix s3 mocking by @scottstanie in https://github.com/isce-framework/dolphin/pull/296
- Use a batch
jnp.polyfitfor unweighted velocity fitting by @scottstanie in https://github.com/isce-framework/dolphin/pull/298 - Fix shp blocks with 1's in nodata regions by @scottstanie in https://github.com/isce-framework/dolphin/pull/299
- Add functions for compression options and repacking by @scottstanie in https://github.com/isce-framework/dolphin/pull/301
- Add perpendicular baseline function by @rtburns-jpl in https://github.com/isce-framework/dolphin/pull/282
- Add filtering module for unwrapped interferogram by @seyeonjeon in https://github.com/isce-framework/dolphin/pull/305
- 3d unwrap interface by @scottstanie in https://github.com/isce-framework/dolphin/pull/303
- Fix PS filling/amplitude setting when filling PS pixels, simulate data faster by @scottstanie in https://github.com/isce-framework/dolphin/pull/307
- Fix bad assert in phase linking code by @scottstanie in https://github.com/isce-framework/dolphin/pull/308
- Add more PS filling tests by @scottstanie in https://github.com/isce-framework/dolphin/pull/309
- Convert lon/lat to radians for baseline computation by @scottstanie in https://github.com/isce-framework/dolphin/pull/310
- Improve simulation docs, make it easier for 3d simulation by @scottstanie in https://github.com/isce-framework/dolphin/pull/316
- Use temporal coherence for auto reference, ensure timeseries velocity avoids nans by @scottstanie in https://github.com/isce-framework/dolphin/pull/315
- Get initial 3d unwrap for one ministack by @scottstanie in https://github.com/isce-framework/dolphin/pull/314
- Speed up eigenvalue solving using power iteration/inverse iteration by @scottstanie in https://github.com/isce-framework/dolphin/pull/317
New Contributors
- @seyeonjeon made their first contribution in https://github.com/isce-framework/dolphin/pull/305
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.18.0...v0.19.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie over 1 year ago
Dolphin - v0.18.0
Added
Added cli timeseries
Fixed
Parsing the file names correctly to find compressed SLCs and read dates based on production file naming convention
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.17.3...v0.18.0
Scientific Software - Peer-reviewed
- Python
Published by mirzaees over 1 year ago
Dolphin - v0.18.0
Added - Added cli timeseries
Fixed - Parsing the file names correctly to find compressed SLCs and read dates based on production file naming convention
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.17.3...v0.18.0
Scientific Software - Peer-reviewed
- Python
Published by mirzaees over 1 year ago
Dolphin - v0.17.0
Added - Added Goldstein filtering for unwrapping - Added Interpolation for unwrapping - Added the regrow connected components for the modified phase - Added option to toggle off inversion - Added similarity module
Fixed
- 3D readers would squeeze out a dimension for length one inputs (i.e. they would give an array with .ndim=2)
- max_bandwidth config can now be 1 to specify only nearest neighbor interferograms.
- Use the 'compressed' key term to find compressed slcs and regular slcs instead of number of dates in ionosphere
- Consider the compressed SLCs have different naming convention with capital letters
- Enforce consistency between jax and jaxlib
- Disable corrections part of pytest, add one for timeseries
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.16.3...v0.17.0
Scientific Software - Peer-reviewed
- Python
Published by mirzaees almost 2 years ago
Dolphin - v0.16.0
Added
- Added dolphin.timeseries module with basic functionality:
- Invert a stack of unwrapped interferograms to a timeseries (using correlation weighting optionally)
- Estimate a (weighted) linear velocity from a timeseries
- Added inversion and velocity estimation as options to DisplacementWorkflow
- Create DatasetStackWriter protocol, with BackgroundStackWriter implementation
Changed
- Rename GdalWriter to BackgroundBlockWriter
- Displacement workflow now also creates/returns a stitched, multi-looked version of the amplitude dispersion
Fixed
- BackgroundRasterWriter was not creating the files necessary before writing
- Allow user to specify more than one type of interferogram in Network configuration
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.15.3...v0.16.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie almost 2 years ago
Dolphin - v0.15.3
What's Changed
- Return created paths from tropo/iono functions by @scottstanie in https://github.com/isce-framework/dolphin/pull/243
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.15.2...v0.15.3
Scientific Software - Peer-reviewed
- Python
Published by scottstanie almost 2 years ago
Dolphin - v0.15.2
What's Changed
- minor corrections for disp-s1 by @mirzaees in https://github.com/isce-framework/dolphin/pull/241
- Correct default nodata values for unw/ccl, pass through to
snaphuby @scottstanie in https://github.com/isce-framework/dolphin/pull/242
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.15.1...v0.15.2
Scientific Software - Peer-reviewed
- Python
Published by scottstanie almost 2 years ago
Dolphin - v0.15.0
What's Changed
- Better nodata/mask handling in
dolphin.unwrapby @scottstanie in https://github.com/isce-framework/dolphin/pull/235 - Use compression/tiling by default in snaphu outputs by @scottstanie in https://github.com/isce-framework/dolphin/pull/236
- Set the intersection of
nodatavalues in the SLC stack tonaninrun_phase_linkingby @scottstanie in https://github.com/isce-framework/dolphin/pull/237
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.14.1...v0.15.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie almost 2 years ago
Dolphin - v0.14.1
What's Changed
- Change snaphu-py tile defaults to avoid max secondary arcs error by @scottstanie in https://github.com/isce-framework/dolphin/pull/233
- fix
linalg.normto be pixelwise inprocess_coherence_matricesby @scottstanie in https://github.com/isce-framework/dolphin/pull/234
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.14.0...v0.14.1
Scientific Software - Peer-reviewed
- Python
Published by scottstanie almost 2 years ago
Dolphin - v0.14.0
What's Changed
Fixed
- Temporal coherence and eigenvalue rasters were switched in their naming
- Output a better estimator raster to see where we switched to EVD
- Cap the max number of threads to the CPU count to avoid numba config errors
- Fix RLock incompatibility when usingspawn
Changed
- refactor temporal coherence calculation to use vmap
- Allows us to start making a weighted temporal coherence metric
- Turn off default beta=0.01 regularization now that CPL is in place
- Removed InterferogramNetworkType from configuration.
- You can add multiple types of network parameters and it includes all of them. Adding the name only decreased flexibility.
- Allow None or int for ntiles/downsample_factor by @scottstanie in https://github.com/isce-framework/dolphin/pull/231
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.13.0...v0.14.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie almost 2 years ago
Dolphin - v0.13.0
Added
_overviewsmodule, and workflow configuration to create overviews of the output stitched rasters- Configuration to use the snaphu-py wrapper, and drop using
isce3.unwrap.snaphu
Fixed
- Apply bounds even if only one image is passed to
stitching(#210) - Allow
take_looksto work withMaskedArrayswithout converting tonp.ndarray
Changed
- Compressed SLCs are now named like
(ref, start, end)
Dependencies
- Move back to
tqdminstead of usingrichfor progress bars.
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.12.0...v0.13.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie almost 2 years ago
Dolphin - v0.12.0
Changelog
Added
- Added DatasetWriter protocol
- Added RasterWriter and BackgroundRasterWriter implementations of this protocol
- Refactored phase linking
- Covariance and EVD/MLE use jax
- This combines the implementation of CPU/GPU, and removes the need for usign pymp
- Added utils.disable_gpu to stop the use for a GPU even if it's available
Changed
- Internal module organization, including grouping IO modules into dolphin.io subpackage
- Renamed io.Writer to io.GdalWriter to distinguish from RasterWriter
- Removed the n_workers option from the configuration.
- There is no more need to have two levels of parallelism (threads_per_worker and n_workers)
- The name threads_per_worker is kept for consistency; it is still an accurate name for the multi-burst processing case.
PRs merged
- Add many ruff checkers, fix errors by @scottstanie in https://github.com/isce-framework/dolphin/pull/198
- Use
.int.tiffor default stitched interferograms by @scottstanie in https://github.com/isce-framework/dolphin/pull/200 - Add
DatasetWriterprotocol andRasterWriterby @scottstanie in https://github.com/isce-framework/dolphin/pull/201 - add
dolphin_config.yamlnote tobug_report.yml[skip-ci] by @scottstanie in https://github.com/isce-framework/dolphin/pull/205 - use
BIGTIFF=YESfor default tif creation by @scottstanie in https://github.com/isce-framework/dolphin/pull/206 - use
model_post_initinstead of overriding__init__by @scottstanie in https://github.com/isce-framework/dolphin/pull/207 - Convert phase linking to use
jaxby @scottstanie in https://github.com/isce-framework/dolphin/pull/203 - Deprecate
moving_window_meanin favor ofuniform_filterby @scottstanie in https://github.com/isce-framework/dolphin/pull/208 - Implement CPL, refactor of phase linking modules for clearer names, speed by @scottstanie in https://github.com/isce-framework/dolphin/pull/209
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.11.0...v0.12.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie almost 2 years ago
Dolphin - v0.10
What's Changed
- Add bibtex extension for mkdocs by @scottstanie in https://github.com/isce-framework/dolphin/pull/193
- Set up unwrap post process subpackage by @scottstanie in https://github.com/isce-framework/dolphin/pull/190
- Add changelog for new dep, fix imports/exports by @scottstanie in https://github.com/isce-framework/dolphin/pull/194
- Remove
_datesmodule by @scottstanie in https://github.com/isce-framework/dolphin/pull/195 - Fix
merge_imagesfor strided images by @scottstanie in https://github.com/isce-framework/dolphin/pull/196
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.9.0...v0.10.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie almost 2 years ago
Dolphin - v0.9.0
What's Changed
Added
- DatasetReader and StackReader protocols for reading in data from different sources
- DatasetReader is for reading in a single dataset, like one raster image.
- StackReader is for reading in a stack of datasets, like a stack of SLCs.
- Implementations of these have been done for flat binary files (BinaryReader), HDF5 files (HDF5Reader), and GDAL rasters (RasterReader).
Changed
- The VRTStack no longer has an .iter_blocks method
- This has been replaced with creating an EagerLoader directly and passing it to the reader argument
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.8.0...v0.9.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie about 2 years ago
Dolphin - v0.8.0
Added
- Ability to unwrap interferorgams with the snaphu-py (not a required dependency)
- Added ability to make annual ifgs in Network
- Start of tropospheric corection support in dolphin.atmosphere using PyAPS and Raider packages
- Expose the unwrap skipping with dolphin config --no-unwrap
Changed
- The output directory for interferograms is now just "interferograms/" instead of "interferograms/stiched"
- Even when stitching, the burst-wise interferograms would be in the named phase-linking subfolders.
- Split apart the dolphin.workflows.stitch_and_unwrap module into stitching_bursts and unwrapping
- Switched output filename from tcorr to temporal_coherence for the temporal coherence of phase linking.
- Also added the date span to the temporal_coherence output name
- The default extension for conncomps is now .tif. Use geotiffs instead of ENVI format for connected components.
- Using ruff instead of pydocstyle due to archived repo
New Contributors
- @mirzaees made their first contribution in https://github.com/isce-framework/dolphin/pull/177
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.7.0...v0.8.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie about 2 years ago
Dolphin - v0.7.0
What's Changed
Added
- MiniStackPlanner and MiniStackInfo class which does the planning for how a large stack of SLCs will be processed in batches.
- Previously this was done at run time in sequential.py. We want to separate that out to view the plan in advance/allow us to dispatch the work to multiple machines.
- CompressedSlcInfo class added to track the attributes of a compressed SLC file created during the workflow.
- Added better/more complete metadata to the compressed SLC Geotiff tags, including the phase reference date
- config: phase_linking.max_compressed_slcs to cap the number of compressed SLCs added during large-stack sequential workflows
- interferogram: Add ability to specify manual dates for a Network/VRTInterferogram, which lets us re-interfere the phase-linking results
Changed
- Date functions have been moved from dolphin.utils to dolphin._dates. They are accessible at dolphin.get_dates, etc
- get_dates now uses datetime.datetime instead of datetime.date, so missions like DeltaX won't be impossible to process
- VRTStack has been moved to _readers.py. The minstack planning functions have been removed to focus the class on just reading input GDAL rasters.
Fixed - When starting with Compressed SLCs in the list of input SLCs, the workflows will now recognize them, find the correct reference date, and form all the correct interferograms
Removed
- Extra subsetting functions from VRTStack have been removed, as they are not used in the workflow and the reimplmenent simple GDAL calls.
- CPURecorder and GPURecorder have been removed to simplify code. May be moved to separate repo.
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.6.1...v0.7.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie about 2 years ago
Dolphin - v0.6.1
What's Changed
- convert
dolphin.opera_utilsto use externalopera_utilsin https://github.com/isce-framework/dolphin/pull/158
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.6.0...v0.6.1
Scientific Software - Peer-reviewed
- Python
Published by scottstanie about 2 years ago
Dolphin - v0.6.0
What's Changed
Added
- opera_utils.get_missing_data_options to parse the full list of SLCs and return possible subsets which have the same dates used for all Burst IDs
- PsWorkflow class for running just the PS estimation workflow
- asv benchmark setup
- @atomic_output decorator for long running write processes, to avoid partially-written output files
Changed
- removed minimum_images as an argument from opera_utils.group_by_burst. Checking for too-few images now must be done by the caller
- opera_utils.group_by_burst now matches the official product name more robustly, but still returns the lowered version of the burst ID.
- Split up config models for easier partial workflow running (e.g. on AWS)
- The s1_disp workflow has been renamed to displacement, since it is not specific to Sentinel-1.
- The configuration was refactored to enable smaller workflow
- The Workflow config class has been renamed to DisplacementWorkflow.
- A PsWorkflow config class has been added for the PS estimation workflow.
- A WorkflowBase encompasses some of the common configuration options.
Maintenance
- ruff has replaced isort/black/flake8 in the pre-commit checks
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.5.1...v0.6.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie about 2 years ago
Dolphin - v0.5.1
What's Changed
- Return ps mask, use
scratchdirfor tophu unwrapping by @scottstanie in https://github.com/isce-framework/dolphin/pull/148
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.5.0...v0.5.1
Scientific Software - Peer-reviewed
- Python
Published by scottstanie over 2 years ago
Dolphin - v0.5.0
Bumping minor version due to the number of changes since 0.4.0
Changelog: https://github.com/isce-framework/dolphin/compare/v0.4.3...v0.5.0
Full Changelog since 0.4.0: https://github.com/isce-framework/dolphin/compare/v0.4.0...v0.5.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie over 2 years ago
Dolphin - v0.4.3
Added
- Ability to unwrap using isce3's PHASS
- CorrectionOptions model for specifying the correction options in the Workflow config
- Currently a placeholder for the files which will be used for tropospheric/ionospheric corrections
- Ability to keep relative files in the Workflow config
- This is useful for keeping the relative paths to the SLCs in the config, and then running the workflow from a different directory
Changed
- Instead of specifying the unwrapping algorithm in
dolphin unwrapas--use-icu, the option is not--unwrap-method- This let's us add
--unwrap-method "phass", but also future unwrap methods without a--use-<name>for every one
- This let's us add
- Use
spawninstead offorkfor parallel burst multiprocessing- This leads to the error
Terminating: fork() called from a process already using GNU OpenMP, this is unsafe.in certain situations, and does not happen withspawn. See https://pythonspeed.com/articles/python-multiprocessing/ for more details. Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.4.2...v0.4.3
- This leads to the error
Scientific Software - Peer-reviewed
- Python
Published by scottstanie over 2 years ago
Dolphin - v0.4.2
Added
- use_evd option to force the use of eigenvalue decomposition instead of the EMI phase linking algorithm
- Walkthrough tutorial notebook
Changed
- Moved all
OPERA_variables to a new moduledolphin.opera_utils.- Other OPERA-specific quirks have been moved to the separate
disp-s1repo, but the functions remaining are the ones that seem most broadly useful tosweetsand other users working with burst SLCs. - Changed the burst regex to be able to match COMPASS and the official product name
- Other OPERA-specific quirks have been moved to the separate
- Removed
WorkflowNamefor separatingstackvssingle- The name didn't really provide benefit, as the real differences came from other configuration options
- Internals for which functions are called in
sequential.py - Docker image now has
tophuinstalled
Full Changelog: https://github.com/isce-framework/dolphin/compare/v0.4.1...v0.4.2
Scientific Software - Peer-reviewed
- Python
Published by scottstanie over 2 years ago
Dolphin - v0.4.0
Split disp-s1 out from dolphin to limit SAS-specific code. This lets us move the core library in dolphin to the isce-framework org.
Requirements
- Added
tbbto prevent numba crashes. - Dropped
h5netcdf,pillow - Made
isce3an optional requirement for unwrapping
Full Changelog: https://github.com/opera-adt/dolphin/compare/v0.3.2...v0.4.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie over 2 years ago
Dolphin - v0.3.0
What's Changed
- Fix the multilooked PS mask output
- Blockwise input/output refactor to properly trim the edges of overlapping blocks (and account for possible striding/decimation)
- upgrade to Pydantic v2
Full Changelog: https://github.com/opera-adt/dolphin/compare/v0.2.0...v0.3.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie over 2 years ago
Dolphin - v0.2.0
New version for the large number of changes since the last release, including SHP-mapping, parallel burst processing, new CLI commands, and other changes to keep up to date with the incoming COMPASS geocoded SLC data.
Added
- For OPERA CSLC inputs, we now read the nodata polygon and skip loading regions of the SLC stack which are all nodata.
- This led to a reduction of 30-50% in wrapped phase estimation runtime for each burst stack.
- Sample test data for the
dolphinpackage loaded onto Zenodo. - Adds 3 methods of computing a variable statistically homogeneous pixel (SHP) window when estimating the covariance matrix:
- Kolmogorov-Smirnov test (KS-test)
- Generalized likelihood ratio test (GLRT)
- Kullback-Leibler divergence/distance test (KLD)
"rect"is also an option for skipping any statistical test and using the full rectangular multilook window
- Also included a script to view the window in an interactive matplotlib figure (matplotlib must be installed separately)
- Added a simple method to check for adjacent-pixel unwrapping errors in
unwrap.compute_phase_diffs - Adds a method
utils.get_cpu_countwhich returns eitheros.cpu_count, or (if running in a Docker container) the number of CPUs allocated by Docker - If processing stacks from separate bursts, added option
n_parallel_burststoWorkflowto run in parallel processes. - Created a script to test the incremental/near-real-time version of phase linking
- Added a new CLI command
dolphin unwrapto unwrap a single interferogram/a directory of interferograms in parallel. - Added ability to specify a glob pattern for input CSLC files in the YAML config
- Saves a multilooked PS mask for the default workflow output
- Allows the user to specify a desired bounds for the final stitched result
Changes
- Default OPERA dataset is now within
/data, reflecting the new COMPASS product spec since CalVal - Passing an existing file to
VRTStackwill no longer error unlessfail_on_overwrite=True. The default just prints out the overwrite is happening. This prevents multiple runs in the same folder from errorings just for creating a reference to the SLC files. - The environment variable
NUMBA_NUM_THREADSis set using the passed in config to prevent numba from using all CPUs duringprangecalls - The
sequential.pymodule uses a different implementation of the sequential estimator to avoid the need for a datum adjustment. - The scratch directory holding unwrapped interferograms is named
unwrappedinstead ofunwrap - Stitching files now can accept downsampled versions and product the correct geo metadata
Fixed
- Calculating the nodata mask using the correct input geotransform
- Trims the overlapped region of the phase linking step when iterating in blocks
Dependencies
- shapely >= 1.8
- Numba now supports Python 3.11, so we can drop the Python<3.11 version restriction.
Added testing requirements: - pooch - pillow>=7.0
Full Changelog: https://github.com/opera-adt/dolphin/compare/v0.1.1...v0.2.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie over 2 years ago
Dolphin - v0.1.0
This is the first official release of Dolphin for the interface delivery.
Note that the previous v0.0.1 - v0.0.4 were tags and not full releases. See the Changelog for the incremental functionality added.
Summary of new additions since v0.0.4
- First version of the
_product.pymodule to output the combined NetCDF product file. _pge_runconfig.pymodule to handle the separate PGE-compatible configuration, which translates to-from theWorkflowobject.docker/build-docker-image.shscript to build the docker image.- Release scripts for generating documentation, script for validating output data by @gmgunter .
- Use of a spatial correlation estimate for unwrapping purposes, rather than temporal coherence.
- This is much more useful when the stack size is small (high temporal coherence), and
snaphuis used for unwrapping.
- This is much more useful when the stack size is small (high temporal coherence), and
masking.pymodule for masking the interferogram/combined multiple external masks of varying 1/0 conventions.- Ability to use existing amplitude mean/dispersion files for the PS portion of the workflow, skipping the step where we compute it using the SLC stack. Useful for small stack sizes
- Added a
create_onlyoption towrite_arrto create an empty file without writing data (e.g. to check the boundary results of stitching)
New Contributors
- @gmgunter made their first contribution in https://github.com/opera-adt/dolphin/pull/70
Full Changelog: https://github.com/opera-adt/dolphin/compare/v0.0.4...v0.1.0
Scientific Software - Peer-reviewed
- Python
Published by scottstanie almost 3 years ago