Skip to content

Add qFSP boundary mask to RSLC#246

Draft
bhawkins wants to merge 12 commits intoisce-framework:developfrom
bhawkins:rslc_add_qfsp_mask
Draft

Add qFSP boundary mask to RSLC#246
bhawkins wants to merge 12 commits intoisce-framework:developfrom
bhawkins:rslc_add_qfsp_mask

Conversation

@bhawkins
Copy link
Copy Markdown
Contributor

This PR implements the inputDataExceptionMask in RSLC products for the LSAR qFSP-related exception codes. It handles all six possible qFSP exception codes. For now, the strategy to is locate the peaks of the AC table weights in the EL angle domain and use the EL-angle LUT to generate the mask. This mask is in the raw data domain, so it's resampled to the RSLC grid using reskew LUTs. (These could be used to reskew other tables in some future PR, too). I added a vectorized LUT2d::eval overload to make this faster.

Eyeballing the plots for the case I tested on, I'm not sure the mask covers everything where there's obvious residual phase. So maybe instead of defining the overlap region as peak-to-peak, we should be more conservative and use a -6 dB threshold or something. I hope folks can do some InSAR tests to help figure out the best approach.

Note that the mask is populated based on the contents of the input L0B hasInputDataException flag, so that must be populated to see any effect.

Another question is what to do about mixed-mode frames where one L0B has a qFSP slip and its neighbor doesn't. For now, the qFSP overlap region is marked invalid for the entirety of the output product.

@bhawkins bhawkins requested review from hfattahi and rad-eng-59 March 30, 2026 19:51
Copy link
Copy Markdown
Contributor Author

@bhawkins bhawkins left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Only got part of the way through this PR in our meeting today. Comments so far:

Dictionary specifying convergence parameters for geo2rdr solver.
Keys among {"tol_height", "time_start", "time_start"}
See isce3.geometry.geo2rdr_bracket
method: str
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
method: str
method: str, optional

See isce3.geometry.geo2rdr_bracket
method: str
LUT2d interpolation method
b_error: bool
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
b_error: bool
b_error: bool, optional

Comment on lines +1871 to +1872
log.warning("Internal calibration (INT_CAL) file was not provided "
"so unable to populate inputDataExceptionMask")
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Need to think about the interaction with EAP on/off.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants