Open shitong01 opened 4 years ago
FYI, a temporary resolve we made for this is in extract_stack_valid_region
through editing extractCommonValidRegion.py
, where it identifies the common bursts between master-slave date pairs for run_6_merge to include after coregistration. However, the current implementation decides the bounds for extraction based on overlaps of each local master-slave pair and does not do it globally (slave-slave) for all dates across the whole stack.
EditedextractCommonValidRegion.py
:
https://github.com/earthobservatory/isce2/blob/d3ae179f05d9f3f625dd60e45870ccdd63acb087/contrib/stack/topsStack/extractCommonValidRegion.py
^ This change checks for and only includes valid common overlap bursts amongst all dates (Globally) and creates metadata that is used for merging the valid selection in run_6_merge.
The solution you present to handle it during merging is a good one. I would make that an option as described later.
From the plots, the bounding box does exactly what it is supposed to do - cover the area that was requested completely; so things are working as expected. The issue you bring up is more of a convenience.
There are 2 options:
This should probably be done all the time- the same case can occur with a single burst showing up in another swath in some scenes - say at the east/west edge like the one you pointed out earlier - http://earthdef.caltech.edu/boards/4/topics/3283?r=3289#message-3289? There are tools like plotBursts.py which have all the components needed to put together such a preprocessing tool. We often just do this manually for a date, and draw the bbox such that the edges are not too close to the burst boundaries and also pick desired swaths. However, this can be easily automated as well. You only need the annotation files for doing this. It would be even better, if you contribute back such capability.
Hi - I am having this exact issue but the modification of [extractCommonValidRegion.py] doesn't render a fix. Do you have any other suggestions, as my bounding box is at a really weird angle to form a good bbox.
Hi ISCE developers,
Recently, we processed a coregistered SLC stack over cities in Europe and found that at times, the bursts processed across dates in a stack may be inconsistent. This seems to be an edge case occurs specifcially when we have a mix of S1A and S1B acquisitions in the stack.
This is an example of a stack we created over Bucharest > Start Date: 20200503 End Date: 20200527 Master Date: 20200527
stackSentinel.py
command:SLCs used in
./data
folder:In the
./slaves
folder:In the
./master
folder:As you can see, the bursts extracted over IW2 alternates between 3 and 4 bursts, depending if its S1A (4 bursts) or S1B (3 bursts). Due to this inconsistency, This causes an issue when we start pairing our dates for calculations (e.g. coherence etc):
A deeper look into this burst inconsistency occurs because ISCE does an approximate computation of the burst boundary (Sentinel1.py and BurstSLC.py) to decide if a burst should be processed or not. This approximated boundary is not precise (has a huge buffer) and inconsistent between S1A and S1B:
(click on image and zoom in for clearer view)
BurstSLC.py
for 20200527's burst 4 (B4) captured by S1A during unpacking.BurstSLC.py
for 20200509's burst 4 (B4) captured by S1B during unpacking.stackSentinel.py
.We see this effect on our fully geocoded paired products if there is:
Despite this, the ISCE stack proc. algorithm to filter bursts ensures that the bursts extracted cover 100% of the bbox defined in stackSentinel.py. So, if we just limit our geocoding region to only cover the area defined by the bbox of
stackSentinel.py
, the area with this issue will be cropped out.Some users, however, would like to make use of all data that was processed by the stack processor, hence I am reflecting this issue here for reference. Hopefully, this issue could be addressed when unpacking the data at run_1 and run_2.
Attached is the KMZ for the above example of burst boundaries (from plotBursts.py), approximated burst boundaries, and bbox defined.
bucharest.kmz.zip