isce-framework / isce-framework/dolphin
Masked reference point
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 153
- Forks
- 33
- PR merge metrics
- No merged PRs in 30d
Description
Discussed in https://github.com/isce-framework/dolphin/discussions/670
Originally posted by giorgoskouroupis January 8, 2026
Hello @scottstanie and the whole team :)
I have been running the dolphin and so far it seems quite robust.
thank you for your work. :)
However i came to a small bug(?), i guess from using a (water) mask file.
After an unsuccessful inversion run (all good up until the inversion step) the log reads:
[INFO|timeseries|L153] 2026-01-07T09:38:41+0100: Selecting a reference point for unwrapped interferograms
INFO🐬Selecting a reference point for unwrapped interferograms
[INFO|timeseries|L1313] 2026-01-07T09:38:41+0100: Selecting reference point
INFO🐬Selecting reference point
[INFO|timeseries|L1395] 2026-01-07T09:38:41+0100: Creating intersection of connected components
INFO🐬Creating intersection of connected components100%|██████████| 156/156 [00:29<00:00, 5.37it/s]
[INFO|timeseries|L1415] 2026-01-07T09:39:11+0100: Found 36530 connected components in intersection
INFO🐬Found 36530 connected components in intersection
[INFO|timeseries|L1363] 2026-01-07T09:39:11+0100: Saving ReferencePoint(row=1456, col=122) to ./reference_point.txt
INFO🐬Saving ReferencePoint(row=1456, col=122) to ./reference_point.txt
[INFO|stitching|L694] 2026-01-07T09:39:11+0100: Using ./water_mask_tile_0.tif, already matches size of ./unwrapped/20200105_20200117.unw.tif
INFO🐬Using ./water_mask_tile_0.tif, already matches size of ./unwrapped/20200105_20200117.unw.tif
[INFO|timeseries|L207] 2026-01-07T09:39:11+0100: Inverting network of 600 unwrapped ifgs
INFO🐬Inverting network of 600 unwrapped ifgs
[INFO|timeseries|L1060] 2026-01-07T09:39:11+0100: Inverting network using L1-norm minimization
INFO🐬Inverting network using L1-norm minimization
[INFO|timeseries|L1095] 2026-01-07T09:39:11+0100: Using unweighted unw inversion
INFO🐬Using unweighted unw inversion
[WARNING|timeseries|L1101] 2026-01-07T09:39:12+0100: Masked data found at 1456, 122.
WARNING🐬Masked data found at 1456, 122.
[WARNING|timeseries|L1102] 2026-01-07T09:39:12+0100: Zeroing out reference pixel. Results may be wrong.
WARNING🐬Zeroing out reference pixel. Results may be wrong.
From the look of the code, the reference point is calculated before any consideration of the the mask in https://github.com/isce-framework/dolphin/blob/4daa48199c812ac3bad634077c4eaa90ab48032d/src/dolphin/timeseries.py#L152-L176
If this is indeed a small bug, a naive solution would be to call the mask into the "def select_reference_point(...)"
and multiply the quality_file_values with the mask to remove masked areas, but i am not sure if there would be a more appropriate solution.
Any ideas, or thoughts?
Many thanks for your time :)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in src/dolphin/timeseries.py at select_reference_point(...) around lines 1313-1314 and review the reference-point selection flow around lines 152-176. Trace how the water mask is handled before inversion, then verify that a selected reference point is not masked and that the inversion no longer reports zeroing it out.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- data
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100