Snap2stamps package: a free tool to automate the SNAP-StaMPS Workflow

ps_plot(‘w’, 1, 0, 0, 1, ‘tc’) is that a correct command?
It doesn’t work. I am still unable to make matlab create a georeferenced map of the phases and unwrapped phases created as intermediate products during the 7 STAMPS steps. I also didn’t find how to use the TC operator in the manual.


The right plot I got by using white and lat/long coordinate background with terrain corrected geometry (I guess) ps_plot(‘w’, 1, 0, 0, 1)
The left plot I got by using mean amplitude background with slant-range geometry ps_plot(‘w’, 5, 0, 0, 1)
But they are still identified as raster images with no reference system that can automatically place them into their right location on Google Earth

Another question if you wouldn’t mind,
in ps_plot(‘w’, 5, 0, 0, 1) command, the two zeros in the middle are identified as
ps_plot(‘w’, 5, "phase_lims, "reference interferogram, 1), what does that mean?

I meant to add the TC operator on the plotting XML graphs that uses SNAP.

If you refer to stamps commands I suggest you check the StaMPS user manual and its plot scripts, as the SNAP2StaMPS are not interfering or changing them.

StaMPS only generates the figures, but not their raster geotiffs unless you modify its code for it.

is there a way to at least add a visible coordinate grid like this


or internal + intersects inside the produced raster figure output by the ps_plot command, so i can rectify those images by an external georeferencing tool such as in QGIS?


i am facing error when installing Snap2Stamps in anaconda. Please help.

Does anyone have experience using the latest SNAP 10.0 version in the Snap2STaMPS processing? The results are fine until the mt_prep_snap command, which fails. The reason is @badly formed number.

I noticed that when using the commands splitting_slaves.py, coreg_ifg_topsar.py and stamps_export.py the same message is received which reads: "SNAP STDOUT:b’WARNING: An illegal reflective access operation has occurred\r\nWARNING: Illegal reflective access by org. esa.snap.runtime.Engine (file:/C:/Program%20Files/snap/snap/modules/ext/org.esa.snap.snap-core/org-esa-snap/snap-runtime.jar) to method java.lang.ClassLoader.initializePath(java.lang.String)\r\nWARNING: Please consider reporting this to the maintainers of org.esa.snap.runtime.Engine\r\nWARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations\r\nWARNING: All illegal access operations will be denied in a future release\r\nWARNING: org.esa.snap.core.util.ServiceLoader: org.esa.snap.core.gpf .OperatorSpi: Provider eu.esa.opt.meris.sdr.aerosol.AerosolMergerOp$Spi not found\r\nWARNING: org.esa.snap.core.util.ServiceLoader: org.esa.snap.core.gpf.OperatorSpi: Provider eu.esa.opt.meris.sdr.aerosol.ModisAerosolOp$Spi not found\r\nINFO: org.esa.snap.core.gpf.operators.tooladapter.ToolAdapterIO: Initializing external tool adapters\r\nINFO: org. esa.snap.core.util.EngineVersionCheckActivator: Please check regularly for new updates for the best SNAP experience.\r\nExecuting processing graph\r\n…10%…20%…30% …40%…50%…60%…70%…80%…90% done.\r\n

I tried with SNAP 9.0, and there are no problems.

Does anyone know how to overcome this issue?

@mdelgado I read yours paper titled " Measuring Urban Subsidence in the Rome Metropolitan Area (Italy) with Sentinel-1 SNAP-StaMPS Persistent Scatterer Interferometry", and came to know that you have done a great innovativeness work in PS-InSAR. Similarly, I got to know about yours script from mdelgadoblasco (Jose Manuel Delgado Blasco) · GitHub. I am trying to follow yours snap2stamps script for my research work.

I am doing research work for the landslide identification using PS-InSAR technique along China-Nepal Friendship highway. This highway passes through the high altitude as it passes through the himalaya. Similarly, After Gorkha Earthquake 2015, many landslide has triggered within last 9 years and still a active landslides are there.

I have done some work on snap2stamps operation for PS-InSAR work. Since my research area passes through the high altitude and high slope area I want to integrate external DEM for better Time Series deformation analysis and result. So, I downloaded High Resolution terrain corrected ALOS PALSAR DEM of my study area using ASF Data Search Vertex. Now, my interest is to integrate this DEM with Sentinel-1 images and perform PS-InSAR.

I have done some work which are attached in the file below. So, far using yours script i have done following works:

1)Automatically created a required folders at project folder such as coreg, ifg, logs, MasterSplit, split using python auto_run.py -F project_topsar.conf
2) Created a no. of folders in the name of date of sentinel-1 data acquisition using python topsar_step_0_secondaries_prep.py -F project_topsar.conf
3)Selected automatically the master image using python topsar_automaster.py -F project_topsar.conf -M AUTO
4)Splitted the master image using python topsar_step_1_splitting_master_multi_IW.py -F project_topsar.conf
5) Splitted the secondaries images using python topsar_step_2_splitting_secondaries.py -F project_topsar.conf

Since, I tried to cover at least 105 Km section of China-Nepal Frienship highway, I have to cover two different sub-swath. Also, I want to integrate external DEM with Sentinel-1 images for PS-InSAR. How should i proceed further?

Should i first assemble my master images two sub-swath using topsar_master_assemble_split_applyorbit.xml and perform topsar_export_mergeIW_subset_extDEM.xml.

I am looking forward for yours response.
snap2stamps workflow.docx (56.4 KB)

Is there a method to georeference the figures created by the ps_plot command? so we can export them and overlay them onto other maps on arcgis?

Hello, Tome,has this issue been resolved? I also encountered the same problem.

@lanxi Snap Version 10.0 has problem with opening IW3 swaths. To resolve it just explode and rezip SLCs.

The snap2stamps v2 take care of the “merging” of subswaths. The assemble operation is needed when your image is between 2 SLC adjacent images.

I suggest you try to follow the steps as you indicated and are also in the github readme file.

I believe that the IFG generation should simply work.
Then on the stamps part you should take in consideration for example the usage of methods to reduce APS, as I believe you may need that (if your AOI has high differences more than 1km)

Let me know how it goes