Releases: isce-framework/dolphin
Releases · isce-framework/dolphin
v0.21.0
What's Changed
- Use
numcodecs
implementation of rounding, exportround_mantissa
by @scottstanie in #335 - CD: add workflow to publish to pypi by @scottstanie in #338
- Netcdf support by @mirzaees in #337
Full Changelog: v0.20.0...v0.21.0
v0.20.0
Added
- Functions in
ps
to combine amplitude dispersions from older rasters truncate_mantissa
option torepack
functions for simple compressionband
option towrite_block
and background writers- Option to run
merge_dates
andestimate_interferometric_correlations
withthread_map
for parallel processing - Baseline lag option for "STBAS" phase linking inversion
Changed
- Logging now uses
dictConfig
and 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
scratchdir
s by default
Fixed
use_max_ps
would 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
nan
incompress
- Unwrapped file output path
Merged PRs
- Fix filtering docstring by @scottstanie in #318
- Fix unwrap metadata, delete unwrap scratch by default by @scottstanie in #319
- Copy over rasters to
timeseries/
, dont symlink by @scottstanie in #320 - Update Docker requirements and specfile by @scottstanie in #321
- Stbas by @mirzaees in #311
- Fix size error from
use_max_ps
by @scottstanie in #323 - Let
stitching_bursts.py
run in parallel by @scottstanie in #325 - correct the unwrapped file output path by @mirzaees in #327
- Fix timeseries suffixes, log only during workflows, fix tqdm stitching bar by @scottstanie in #328
- Set modulus of compressed SLCs to be real SLC magnitude means by @scottstanie in #329
- Redo logging to use
dictConfig
, always log to a.jsonl
file by @scottstanie in #330 - Save each ministack's amplitude dispersion for incremental PS/DS changes by @scottstanie in #331
ps
: functions for combining dispersions/means by @scottstanie in #332
Full Changelog: v0.19.0...v0.20.0
v0.19.0
Added
filtering
module for filtering out long wavelength signals from the unwrapped phasebaseline
module for computing the perpendicular baseline. Initial version has logic for OPERA CSLCs, usesisce3
- 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 therasterio
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 thecondition_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.
- Note that older
- 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 #287
- Enforce convention for conncomp files to be consistent with unw files by @sssangha in #288
timeseries.py
: speed up non-weightedinvert_stack
by @scottstanie in #291- Change
reproject_bounds
to use rasterio version by @scottstanie in #292 - Start adding S3 support for
VRTStack
by @scottstanie in #245 - Fix s3 mocking by @scottstanie in #296
- Use a batch
jnp.polyfit
for unweighted velocity fitting by @scottstanie in #298 - Fix shp blocks with 1's in nodata regions by @scottstanie in #299
- Add functions for compression options and repacking by @scottstanie in #301
- Add perpendicular baseline function by @rtburns-jpl in #282
- Add filtering module for unwrapped interferogram by @seyeonjeon in #305
- 3d unwrap interface by @scottstanie in #303
- Fix PS filling/amplitude setting when filling PS pixels, simulate data faster by @scottstanie in #307
- Fix bad assert in phase linking code by @scottstanie in #308
- Add more PS filling tests by @scottstanie in #309
- Convert lon/lat to radians for baseline computation by @scottstanie in #310
- Improve simulation docs, make it easier for 3d simulation by @scottstanie in #316
- Use temporal coherence for auto reference, ensure timeseries velocity avoids nans by @scottstanie in #315
- Get initial 3d unwrap for one ministack by @scottstanie in #314
- Speed up eigenvalue solving using power iteration/inverse iteration by @scottstanie in #317
New Contributors
- @seyeonjeon made their first contribution in #305
Full Changelog: v0.18.0...v0.19.0
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: v0.17.3...v0.18.0
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: v0.16.3...v0.17.0
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, withBackgroundStackWriter
implementation
Changed
- Rename
GdalWriter
toBackgroundBlockWriter
- 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: v0.15.3...v0.16.0
v0.15.3
What's Changed
- Return created paths from tropo/iono functions by @scottstanie in #243
Full Changelog: v0.15.2...v0.15.3
v0.15.2
What's Changed
- minor corrections for disp-s1 by @mirzaees in #241
- Correct default nodata values for unw/ccl, pass through to
snaphu
by @scottstanie in #242
Full Changelog: v0.15.1...v0.15.2
v0.15.1
v0.15.0
What's Changed
- Better nodata/mask handling in
dolphin.unwrap
by @scottstanie in #235 - Use compression/tiling by default in snaphu outputs by @scottstanie in #236
- Set the intersection of
nodata
values in the SLC stack tonan
inrun_phase_linking
by @scottstanie in #237
Full Changelog: v0.14.1...v0.15.0