SNAPHU Unwrapping

I’ve been working with SLC tiles to generate the DSM over my study area. Well, so far everything seams Ok but the unwrapping process in SNAPHU (Ubuntu Virtual Machine) is running since yesterday morning (22 hours until now). I know the limitations of my computer (8GB RAM with core i7) but it seams that it is a no ending process. Has anyone here had the same problem? Is there any other tool (Free) to unwrappe rapped phases of Sentinel-1A SLC IW images in Windows? I would like to know if someone else had the same problem? I subset the images to my study area in the Brazilian Pantanal!


Same here. I am also still waiting for unwrapping process and it is already running for more than 1 week. May be because our area of interest is on vegetation area (forest) and coherension between SLC is not so good (using C band). I hope some one can answer our questions.

Hi Marden. I’ve made some changes in the configuration of my Virtual Machine. You might increase the number of cores to 4 if it´s possible. When exporting the data to Snaphu in SNAP you have to be sure if you have chosen the MCF as initial method. Now I was able to generate the unwrapped phase in less than 1 hour. Moreover, I had problems on snaphu import by using SNAP. I had to do the whole process by using NEST 5.1. I’ve seen some people here facing the same problem.

Hi Osvaldo,

How would you get snaphu to run on multiple cores? And is there an option to use several threads? I am using an iMac, 16GB RAM and 3.2 GHz Intel Core i5. Any ideas on how to speed up snaphu?

Would be very grateful for any help!

Since you have 16 GB available, you can set the number of cores to 8GB on your virtual machine settings! You have to go on your Virtual Machine Settings and change the number of cores to the maximum allowed by your system (Processors). Well, that´s the procedure I adopted by running Ubuntu in a VM within Windows. I’m not sure how to do that in Macintosh!!!

Hi Osvaldo,

I am facing similar problems using SNAPHU for S1A SLC IW unwrapping. I selected a single sub-scene (IW3) but it seems that my system is not good enought (Debian linux, 8 i7 CPUs @3.6GHz, 16Gb ram + 32Gb swap).

Using MCF solver, i got out of memory message after:
Setting up data structures for cs2 MCF solver.

Using MST algorithm, I got an Abort after 3days of work, following the messages:
Running approximate minimum spanning tree solver
Maximum flow on network: 167
((Maximum flow) * NSHORTCYCLE) too large

I’m not sure on how to cope with this problem, I was thinking of reducing the scene (half of it is covered by sea), but no idea on how to mask out something on applying the unwrapping on a subset of the scene (I thought i could subset the scene by subset command, but it does not seem to produce any dialog. it seems the problem is known and has its own opened ticket).

Since it seems you were able to solve the problem, do you have any hint on how to work this out under snap?

Thank you in advance.

What is the coherence of the phase-field you are trying to unwrap?

I’m working on Neaples area, Italy.

Actually, the scene is taken in a mixed environment, so i get coherence values of less than 0.2 on sea and in strongly vegetated areas (i’m not focused on those areas) and around 0.8 in the city and in nearby urban areas (my target).

Hope that this info might help.


You should not try to unwrap over areas with coherence of 0.2 as the signal there is practically pure noise and forcing SNAPHU to unwrap there will make it consume larger amounts of time and memory.

Kind mengdahl,

I am aware of the fact that such low coherence values are mostly noise. I’d love to subset image only on the area of interest, but subset command does not work because of a known bug under linux.

The problem is then on how could I mask them out before feeding snaphu. I could try to create some mask using bandmath and applying it to the scene, but then i do not know if the resulting masked file will work in snaphu…

Do you think that masking will work?

anyway, thank you for the suggestion.

I haven’t used SNAPHU personally so I do not know the answer to your question, perhaps someone else could help?

Have you filter your interferogram ( e.g. Goldstein phase filter with FFT size 128 and window size 5) before exporting to snaphu ?

Could you post a view of the interferogram ?


Hey Giorgia @gdallavia,

Try snaphu unwrap (MCF) of 8000x 8000 pixel (or something smaller) subsets of your image. I had the same snaphu unwrapping issues and my solution was splitting (subsets) the regular IW3 image into four (~7000-8000 pixels in range/azimuth) and then running the unwrapping routine on each individually. It still takes about 15-20 hours, but atleast I get the unwrapped phase at the end of it.
Also, have a look at the steps used here to get a better idea of how to improve the D-INSAR.

Hope this helps,

1 Like

Thank you all for your replies…

Patrick: yes, I applied filtering before exporting and
Gopika: at the moment I am not able to subset the image for a known issue of the subset command under linux on snap beta version 5.

After my post, I tried again to run snaphu after applying a mask for sea. At this very moment, snaphu is running and i got some benefits wrt previous post, since it is still running at a subsequent phase (Running nonlinear network flow optimizer).

At this very moment, I dare not to open SNAP while snaphu is still running, since I don’t want to use resources allocated for snaphu. Once the process will end (hopefully) well or will crash, I’ll try to export my interferogram and coherence map, in case of negative results.

Of course, i’ll upgrade to beta version 8, since it seems that with the upgrade, subset is going to work.

By the now, thank you all for your advices!

Well. I have a question for those who have already finished the InSAR with Sentinels TOPS.
I’m not sure about the steps I’ve been using to get digital elevation models by interferometry of Sentinel SLC scenes. My Unwrapped phase is basically noise even in areas with high coherence. Well, I’ve been following the steps as follow:

  1. Corregistration by using the function “S-1 TOPS Corregistration” (Sentinel 1 Toolbox)
  2. “Interfarogram Generation”. In this step I’m considering the corregistered IW Swath;
  3. “Goldstein Phase Filtering”;
  4. “Snaphu Export”. I’m not applying the topographic phase removal, since I’m interest in the resulting DEM and not DinSAR,
  5. “Snaphu Import” of the unwrapped phase;
  6. "Range-Doppler Terrain Correction;
  7. “DEM generation”, which is the final step.

My results are poor with all SLC scenes I tried.

Does anyone had the same problem? I really need to generate these DEMs…
Thank you all!


Please post some snapshots of the intermediate results.

I think you are missing the step of de-bursting the TOPS interferogram (“S1 TOPS Deburst” under Radar->Sentinel-1 TOPS menu) before applying filtering and exporting to SNAPHU.


I believe that´s not the issue here. I’m using the customized tool on Sentinel 1 toolbox. InSAR TOPS Sentinel 1 corregistration - Interfarogram creation, which allows the automatic debrust of the swaths. Well. I will download new scenes and paste “prints” of the whole procedure here. Thank you!


The quality of the unwrapping results are highly dependent on the coherence levels of the interferogram.
Please try to test using an InSAR pair of short temporal separation.

I guess the only option would be waiting for the availability of more scenes over my study area (averaging a series of InSAR DEMs). Also, I could use RADARSAT scenes but I guess it’s not free…