ISCE, StaMPS, and Sentinel 1

Added by Kimberly Slinski over 2 years ago

Hi all - I am looking for information on how to use stacks generated by topsApp.py in StaMPS time series analysis. It seems there needs to be a wrapper to converted the ISCE output to a StaMPS-readable format. I've seen some posts about an ISCE2StaMPS script file. However, it's unclear whether this script can use the the topsApp.py outputs... or if there is another approach for getting the topsApp.py output into StaMPS. I was wondering if anyone had experience with this and could provide some guidance. Thank you very much for your help.

Best,
Kim


Replies (19)

RE: ISCE, StaMPS, and Sentinel 1 - Added by David Bekaert over 2 years ago

Hi,

Full resolution PS methods such as those in StaMPS require a co-registered stack of SLC's.
TopsApp.py is a pair by pair processor and therefore should not be used for PS-like analysis.
In its basic form one could ensure all pairs to be on the same geo-coded grid and perform a stacking in geocoded space using tools such as GIAnT.
In a next release of ISCE there will be a version of an slc stack generator.
Few basic tools are being developed to read this output into StaMPS of PS related work.

Cheers,
D.

RE: ISCE, StaMPS, and Sentinel 1 - Added by Bodo Bookhagen about 2 years ago

Hi all,

I am wondering if there are any updates on the SLC stack generator for Sentinel-1? Or do there exists rudimentary python scripts that could be modified to perform this task? All 'ingredients' are available in ISCE, but have not been included in a topsApp-like package.

Basically, I am wondering if it will make sense to use other pre-processing tools/software for Sentinel-1 file preparation for StaMPS or if there is something in the pipeline (or simple python scripts that can be modified).

Thank you,
Bodo

RE: ISCE, StaMPS, and Sentinel 1 - Added by Piyush Agram about 2 years ago

Wait for the next release - Heresh Fattahi and David Bekaert have contributed a stack processor, which should be part of next release. This will be contributed software with limited-to-no long term support. David has also contributed to StaMPS to allow for ingest of these stack products. There should be updates in the next month.

RE: ISCE, StaMPS, and Sentinel 1 - Added by Teguh Purnama Sidiq about 2 years ago

Hi all,

I am trying stackSentinel.py at this moment. After configuring some folder needed, and run the command, I get this error,

Traceback (most recent call last):
File "/home/teguh/Software/isce-2.2.0/contrib/stack/topsStack/stackSentinel.py", line 736, in <module>
main()
File "/home/teguh/Software/isce-2.2.0/contrib/stack/topsStack/stackSentinel.py", line 700, in main
acquisitionDates, stackMasterDate, slaveDates, safe_dict, updateStack = checkCurrentStatus(inps)
File "/home/teguh/Software/isce-2.2.0/contrib/stack/topsStack/stackSentinel.py", line 577, in checkCurrentStatus
acquisitionDates, stackMasterDate, slaveDates, safe_dict = get_dates(inps)
File "/home/teguh/Software/isce-2.2.0/contrib/stack/topsStack/stackSentinel.py", line 250, in get_dates
pnts = safeObj.getkmlQUAD(safe)
File "/home/teguh/Software/isce-2.2.0/contrib/stack/topsStack/Stack.py", line 752, in getkmlQUAD
import cv2
ModuleNotFoundError: No module named 'cv2'

Is the anything wrong during the installation, and caused this error? I used the same compiled version to process some data, and it worked.

Regards,

teguh

RE: ISCE, StaMPS, and Sentinel 1 - Added by Scott Henderson about 2 years ago

You are missing the "opencv" python package. You should be able to just install it with "conda install opencv" or install with apt or pip (depending on how you installed ISCE).

RE: ISCE, StaMPS, and Sentinel 1 - Added by Heresh Fattahi about 2 years ago

In the following file:

/home/teguh/Software/isce-2.2.0/contrib/stack/topsStack/Stack.py

At line 752, comment out "import cv2" as it doesn't get used for sentinel stack.

However we use opencv elsewhere (e.g. in stripmapApp or striomap stack processor for filtering). As Scott suggested, you can easily install opencv with conda.

Heresh

RE: ISCE, StaMPS, and Sentinel 1 - Added by Teguh Purnama Sidiq about 2 years ago

Apparently the error is caused by different version of python installed on my computer. Both python version 2.7 and 3.x are installed, and all this time I ran pip for python version 2.7. After I installed pip for python3 (sudo apt-get install python3-pip) and install all library needed (pip3 install install opencv-contrib-python and etc), the stackSentinel.py script is now works. Now I am going to run each created scripts, hopefully it will go well.

One more thing, about the aux files that should be stored on aux folder, is that the IPF file that should be downloaded at https://qc.sentinel1.eo.esa.int ? if so, which aux files should be stored on the folder? or it can also be automatically downloaded just like the orbit files?

Regards,

- teguh -

RE: ISCE, StaMPS, and Sentinel 1 - Added by Heresh Fattahi about 2 years ago

You need to download the Aux file and store it somewhere that you can always use. We use the following aux file for elevation antenna pattern correction:

https://qc.sentinel1.eo.esa.int/product/S1A/AUX_CAL/20140915T100000/S1A_AUX_CAL_V20140915T100000_G20150908T074836.SAFE.TGZ

Heresh

RE: ISCE, StaMPS, and Sentinel 1 - Added by David Bekaert about 2 years ago

A new version of StaMPS has been released which is now compatible with ISCE.
In case you would like to use the isce stack processors and stamps, you can use the following workflow.

1) Generate a coregistered stack with ISCE. Use either the topsStack (sentinel-1) or stripmapStack (stripmap sensors) tools in "isce/src/contrib/stack".
Notes: The stack processors do not get build in the ISCE install dir, so you will need to include it from the src directory on your path and pythonpath.
You cannot have both stack procesors at the same time on your path, as they can conflict.
You will need to use the slc workflow.

2) Generate the stamps directory set-up using the output from the isce stack processors. Use the prepStackToStaMPS tools in "isce/src/contrib/timeseries".
Note: The prepStackToStaMPS tools do not get build in the ISCE install dir, so you will need to include it from the src directory on your path and pythonpath.

3) Run stamps for either PS or SB, by following instructions in the manual.
Notes: Use StaMPS (>= v4.1-beta), available from github: https://github.com/dbekaert/stamps
Follow the specific instructions for ISCE.

RE: ISCE, StaMPS, and Sentinel 1 - Added by Kimberly Slinski about 2 years ago

Many thanks for the update to this thread! I will be trying the new version very soon. It will be super interesting to see how the PS results compare to NSBAS.

Kim Slinski

RE: ISCE, StaMPS, and Sentinel 1 - Added by Mohammad Mohseni Aref about 2 years ago

Hi David,

I was wondering if It is possible to process Envisat/ERS/ALOS1 PALSAR data using the new version of ISCE and import it into StaMPS V4.1 ?

Mohammad

RE: ISCE, StaMPS, and Sentinel 1 - Added by Heresh Fattahi about 2 years ago

Hi Mohammad,

The stripmap stack processor can be used to create a coregistered stack of SLCs from stripmap data acquired by modern sensors with precise orbits. We have tested successfully on large stacks of CSK and ALOS-1 data. Our colleagues have tested on Radarsat-2 and recently on Envisat. I haven't heard of any users if they have tested on ERS data yet. But in principle it should work for ERS as well (I hope!).

Anyways, it should be possible to take the outputs of the stripmap or TOPS stack processors and import them to Stamps. David has worked on that and has included his ISCE2Stamps scripts in the recent ISCE release.

I'm not familiar with specific StaMPS versions though. David can comment on that.

Heresh

RE: ISCE, StaMPS, and Sentinel 1 - Added by David Bekaert almost 2 years ago

Hi,

Heresh is correct.
The new version of stamps V4.1beta is compatible with any of the stack processor outputs (merged folder).
Best is to use directly the git version of the stamps repo as it is up to date with bug fixes.

Cheers,
D.

RE: ISCE, StaMPS, and Sentinel 1 - Added by Vitaliy 4erg over 1 year ago

Hi, David

I have prepared a pre-processed (in stripmapStack) SLC stack of CSK data for processing in StaMPS/MTI. But I can't run the script successfully. What could be the issue?
The script issues the following warning:
insar@Insar-thinkstation:~/1/ISCE/proc/CSK/INSAR_20180703$ make_single_master_stack_isce
make_single_master_stack_isce David Bekaert, April 2017

This script is only for pre-processed coregisted stack options
source_data needs to be either: slc_stack or slc_stack_burst

My input_file:

source_data slc_stack
slc_stack_path /home/insar/1/ISCE/proc/CSK/in/merged/SLC
slc_stack_master 20180703
slc_stack_geom_path /home/insar/1/ISCE/proc/CSK/in/merged/geom_master
slc_stack_baseline_path /home/insar/1/ISCE/proc/CSK/in/merged/baselines
range_looks
azimuth_looks
aspect_ratio
lambda 0.031
slc_suffix
geom_suffix

Thanks,

Vit

RE: ISCE, StaMPS, and Sentinel 1 - Added by Joaquin Escayo over 1 year ago

Hi All:

I were able to process some Sentinel-1 stacks of tops SLCs using stackSentinel.py and ran the isce2stamps routines to create a stamps workdir for a SBAS processing. The problem that I encountered is that all the interferograms are full resolution. No multilooking is applied in the isce2stamps workflow, even after specifying in the input_file. I checked the program make_single_master_stack_isce and noticed that azimuth and range looks and the aspect ratio is not used anywhere. There is a "step_multilook_isce" file but seems that is only used by the quickview routine "get_quickview_isce". I followed the steps describen in the "ISCE to StaMPS Manual"

My question is: How can I apply multilooking to the interferograms generated by make_small_baselines_isce?

Thank you!

Vitaliy 4erg wrote:

My input_file:

source_data slc_stack
slc_stack_path /home/insar/1/ISCE/proc/CSK/in/merged/SLC
slc_stack_master 20180703
slc_stack_geom_path /home/insar/1/ISCE/proc/CSK/in/merged/geom_master
slc_stack_baseline_path /home/insar/1/ISCE/proc/CSK/in/merged/baselines
range_looks
azimuth_looks
aspect_ratio
lambda 0.031
slc_suffix
geom_suffix

range_looks and aspect_ratio must be configured (you can use 1 1) or make_single_master_stack_isce will fail. Check make_single_master_stack line 83, but in your case seems that source_data is not well formateed to slc_stack.

RE: ISCE, StaMPS, and Sentinel 1 - Added by Shunying Hong over 1 year ago

I have a patch for multi-looks SLCs by ISCE.
You can try:
bash ISCE-Stacking-patchSLC.script,
and then ,rerun the run_9_merge,

RE: ISCE, StaMPS, and Sentinel 1 - Added by David Bekaert over 1 year ago

As you suspected the multi-look script is only used for the quickview generation.
Stamps is a full resolution processing method for both PS and SB.

There is a work around to using multi-looked interferograms, similar to the gamma variant and coherence approach in stamps.
I will see if I can upload those scripts to the repo for isce workflow.

Cheers,
D.

RE: ISCE, StaMPS, and Sentinel 1 - Added by Joaquin Escayo over 1 year ago

Thank you very much, David and Shunying!

In my case I would like to process a large area so multilooking would be very useful to reduce computation time. I will keep an eye to the Github repo for those programs.

Joaquín

RE: ISCE, StaMPS, and Sentinel 1 - Added by Anonymous 6 months ago

Dear All I run the stack with StackSentinel and use STAMPS to create the velocity map and I had some results.
Now I need to use the atmosferic correction. Someone have an idea for example with TRAIN

Thanks
Pedro Alejandro

(1-19/19)