Please test the SBAS_snap2stamps

That did not work. when I use the command it successfully works. But when I check the parameters again are set to default.
Screenshot from 2022-04-24 13-10-39

Thanks for your answer @suribabu. it worked.
Dear @dongyusen @ABraun I have one question, as far as I know, the SBAS is a multi-master method and we choose only one master how is this working? can you explain, please?
If anyone knows please enlighten me.

Hi dear researchers. Thanks for your great work @dongyusen
I managed to finish SBAS_snap2stamps but I think there is something wrong with the results.
The first image is the wrapped phase and the second one is v-dao. As you can see the PSI results are really smooth but the SBAS method, recognized some PS points in the water which causes some problems. I think the problem is with the coregistration part. Can anyone help, please?


SBAS wrapped phase

SBAS v-dao

PSI SBAS

Hi, Dongyusen. I am now applying the SBAS scripts you devloped using Sentinel-1 Descending images. Unfortunately, I am getting this messsage. Please advised me how to correct this probelm. Your help is greatly appreciated.

Mr. alib1
I’m sorry to bother you. I have encountered the same problem during data processing. Would I konw that, what is your solution, or how can I avoid this error?

Mr. damianvz,
I am sorry for borhter you,I have the same Error,Would I konw your solution and how can I avoid ir?

When I run 3sbas_topsar_coreg.py, I get a Error like this. I try to found change "shell=Ture"in “subprocess.py”,however,there is a new error waitting for me.Would I get some advices? @suat @alib1 @dongyusen

Hi @vittoriob
I followed the modified script (ps_load_initial_gamma.m) by @mdelgado and apply it in sb_load_initial_gamma.m.
Basically, the added commands are used to remove NaN and Zero Values that present in LanLot.

you can try edited sb_load_initial_gamma.m
sb_load_initial_gamma.m (6.9 KB)

I hope it helps you.

Regards,
Sudi

1 Like

I try to help you @csyoo

In some cases, the output of SNAP contains NaN or Zero Values. You need to remove those NaN and Zero values in STEP 1.

You need add some commands in sb_load_initial_gamma.m to remove NaN and Zero values.

If you don’t mind you can use my edited script here
sb_load_initial_gamma.m (6.9 KB)

It works nice in my SBAS processing.

Best regards,
Sudi

Thank you, Sudi, for your help! I will try.

Thank you Sudi. I’ll try

Hi dear community

I got a question, I’m in STEP 7 trying to check the ifg’s. In the STAMPS User’s manual I found the following paragraph:

As for PS processing, repeating Step 6 after running Step 7 may improve phase-unwrapping accuracy.
Accuracy can also potentially be improved by setting unwrap method to ‘3D’ (default is ‘3D QUICK’
for small baseline processing) before running Step 6, although this will take longer to run.
Unwrapped phase of small baseline interferograms can be viewed using ps plot with the ‘usb’ op-
tions. SCLA error estimated from SB inteferograms can be plotted using the ‘d’ option (the ’D’ option
will give SCLA error estimated from single master interferograms). Residuals between the unwrapped
phase of the small baseline interferograms and that predicted from the model values for the single master
phase can be plotted with the ‘rsb’ option.
The residuals for each small baseline interferogram should be visually inspected, together with the
wrapped and unwrapped phase for each (N.B., you will probably want to view only a few at a time
using the IFG LIST option of ps plot ) . Isolated residuals less than π in magnitude are OK, but
spatially-correlated residuals indicate an unwrapping problem in one or more interferograms. When this is the case, identify which interferogram(s) are incorrectly unwrapped (N.B., one badly unwrapped in-
terferogram can cause non-zero residuals for many interferograms) and drop them from the unwrapping
process, by setting drop ifg index and rerunning Step 6.
You can view a baseline plot for all interferograms not dropped with plot sb baselines .

Does the text in bold mean that I should discard the ifg’s with more than PI in value? or what criteria should I use to discard them?

See below one of the ifg’s I plotted using the rsb option.

image

Hi, Do you have a code that plots only PSGraph

Dear Mr. volter,
I hope you are doing well.
Kindly, my question is about how do you display grd files like this, do you have script or command to run in matlab.
Best Regards

Dear Mr. danvan,
I hope you are doing well.
Kindly, my question is about how do you display grd files like this, do you have script or command to run in matlab.
Best Regards

Dear Mr. suat,
I hope you are doing well.
Kindly, my question is about how do you display grd files like this, do you have script or command to run in matlab.
Best Regards

Dear @SudiParwata and Dear @ABraun please point out the problems in my processing. I am getting problem in running step 3 sbas_topsar_coreg. I have attached the screenshots as well as text of the error.





Processing … 1 of 12 dataset…
Processing …20201217_20201006…

*****IW3 of 1IWs :20201217_20201006 coregistration

b’INFO: org.esa.snap.core.gpf.operators.tooladapter.ToolAdapterIO: Initializing external tool adapters’
b’INFO: org.esa.s2tbx.dataio.gdal.GDALVersion: GDAL not found on system. Internal GDAL 3.2.1 from distribution will be used. (f0)’
b’INFO: org.esa.s2tbx.dataio.gdal.GDALVersion: Internal GDAL 3.2.1 set to be used by SNAP.’
b’INFO: org.esa.snap.core.util.EngineVersionCheckActivator: Please check regularly for new updates for the best SNAP experience.’
b’INFO: org.esa.s2tbx.dataio.gdal.GDALVersion: Internal GDAL 3.2.1 set to be used by SNAP.’
b’Executing processing graph’
b’INFO: org.hsqldb.persist.Logger: dataFileCache open start’
b"-- org.jblas ERROR Couldn’t load copied link file: java.lang.UnsatisfiedLinkError: /tmp/jblas6820592152473353973/libjblas.so: libgfortran.so.5: cannot open shared object file: No such file or directory."
b’’
b’WARNING: org.esa.s1tbx.insar.gpf.coregistration.CreateStackOp: Unable to calculate baselines. org.jblas.NativeBlas.dgemm(CCIIID[DII[DIID[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’Waiting thread received a null tile.’
b’java.lang.NullPointerException’
b’90% done.’
b’org.esa.snap.core.gpf.OperatorException: org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’\tat org.esa.snap.core.gpf.graph.GraphProcessor$GPFImagingListener.errorOccurred(GraphProcessor.java:389)’
b’\tat com.sun.media.jai.util.SunTileScheduler.sendExceptionToListener(Unknown Source)’
b’\tat com.sun.media.jai.util.SunTileScheduler.scheduleTile(Unknown Source)’
b’\tat javax.media.jai.OpImage.getTile(Unknown Source)’
b’\tat javax.media.jai.PlanarImage.getData(Unknown Source)’
b’\tat com.bc.ceres.glevel.MultiLevelImage.getData(MultiLevelImage.java:64)’
b’\tat org.esa.snap.core.gpf.internal.OperatorContext.getSourceTile(OperatorContext.java:449)’
b’\tat org.esa.snap.core.gpf.internal.OperatorContext.getSourceTile(OperatorContext.java:435)’
b’\tat org.esa.snap.core.gpf.Operator.getSourceTile(Operator.java:459)’
b’\tat org.esa.s1tbx.sentinel1.gpf.TOPSARDeburstOp.computeTileInOneSwathFloat(TOPSARDeburstOp.java:904)’
b’\tat org.esa.s1tbx.sentinel1.gpf.TOPSARDeburstOp.computeTileStack(TOPSARDeburstOp.java:811)’
b’\tat org.esa.snap.core.gpf.internal.OperatorImageTileStack.computeRect(OperatorImageTileStack.java:122)’
b’\tat org.esa.snap.core.gpf.internal.OperatorImageTileStack.computeTile(OperatorImageTileStack.java:86)’
b’\tat com.sun.media.jai.util.SunTileScheduler.scheduleTile(Unknown Source)’
b’\tat javax.media.jai.OpImage.getTile(Unknown Source)’
b’\tat javax.media.jai.PlanarImage.getData(Unknown Source)’
b’\tat com.bc.ceres.glevel.MultiLevelImage.getData(MultiLevelImage.java:64)’
b’\tat org.esa.snap.core.gpf.internal.OperatorContext.getSourceTile(OperatorContext.java:449)’
b’\tat org.esa.snap.core.gpf.internal.OperatorContext.getSourceTile(OperatorContext.java:435)’
b’\tat org.esa.snap.core.gpf.internal.OperatorImageTileStack.computeRect(OperatorImageTileStack.java:116)’
b’\tat org.esa.snap.core.gpf.internal.OperatorImageTileStack.computeTile(OperatorImageTileStack.java:86)’
b’\tat com.sun.media.jai.util.SunTileScheduler.scheduleTile(Unknown Source)’
b’\tat javax.media.jai.OpImage.getTile(Unknown Source)’
b’\tat com.sun.media.jai.util.RequestJob.compute(Unknown Source)’
b’\tat com.sun.media.jai.util.WorkerThread.run(Unknown Source)’
b’Caused by: org.esa.snap.core.gpf.OperatorException: org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’\tat org.esa.snap.engine_utilities.gpf.OperatorUtils.catchOperatorException(OperatorUtils.java:434)’
b’\tat org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp.computeTileStack(SpectralDiversityOp.java:827)’
b’\tat org.esa.snap.core.gpf.internal.OperatorImageTileStack.computeRect(OperatorImageTileStack.java:122)’
b’\tat org.esa.snap.core.gpf.internal.OperatorImageTileStack.computeTile(OperatorImageTileStack.java:86)’
b’\t… 23 more’
b’Caused by: org.esa.snap.core.gpf.OperatorException: org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’\tat org.esa.snap.engine_utilities.gpf.OperatorUtils.catchOperatorException(OperatorUtils.java:434)’
b’\tat org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp.estimateRangeOffset(SpectralDiversityOp.java:942)’
b’\tat org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp.computeTileStack(SpectralDiversityOp.java:806)’
b’\t… 25 more’
b’Caused by: org.esa.snap.core.gpf.OperatorException: org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’\tat org.esa.snap.engine_utilities.gpf.OperatorUtils.catchOperatorException(OperatorUtils.java:434)’
b’\tat org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp.crossCorrelatePair(SpectralDiversityOp.java:1490)’
b’\tat org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp.estimateRangeOffset(SpectralDiversityOp.java:877)’
b’\t… 26 more’
b’Caused by: org.esa.snap.core.gpf.OperatorException: org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’\tat org.esa.snap.engine_utilities.gpf.OperatorUtils.catchOperatorException(OperatorUtils.java:434)’
b’\tat org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp$2.process(SpectralDiversityOp.java:1446)’
b’\tat org.esa.snap.core.util.ThreadRunnable.run(ThreadRunnable.java:23)’
b’\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)’
b’\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)’
b’\tat java.lang.Thread.run(Thread.java:748)’
b’Caused by: org.esa.snap.core.gpf.OperatorException: org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’\tat org.esa.snap.engine_utilities.gpf.OperatorUtils.catchOperatorException(OperatorUtils.java:434)’
b’\tat org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp.getFineOffsets(SpectralDiversityOp.java:984)’
b’\tat org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp.estimateAzRgOffsets(SpectralDiversityOp.java:958)’
b’\tat org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp.access$200(SpectralDiversityOp.java:110)’
b’\tat org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp$2.process(SpectralDiversityOp.java:1437)’
b’\t… 4 more’
b’Caused by: java.lang.UnsatisfiedLinkError: org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’\tat org.jblas.NativeBlas.dcopy(Native Method)’
b’\tat org.jblas.ComplexDoubleMatrix.real(ComplexDoubleMatrix.java:917)’
b’\tat org.jlinda.core.utils.SarUtils.intensity(SarUtils.java:152)’
b’\tat org.jlinda.core.utils.SarUtils.magnitude(SarUtils.java:156)’
b’\tat org.jlinda.core.coregistration.utils.CoregistrationUtils.crossCorrelateFFT(CoregistrationUtils.java:219)’
b’\tat org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp.getFineOffsets(SpectralDiversityOp.java:973)’
b’\t… 7 more’
b’’
b’Error: org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’-- org.jblas INFO Deleting /tmp/jblas6820592152473353973/libjblas_arch_flavor.so’
b’-- org.jblas INFO Deleting /tmp/jblas6820592152473353973/libjblas.so’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’org.jblas.NativeBlas.dcopy(I[DII[DII)V’
b’-- org.jblas INFO Deleting /tmp/jblas6820592152473353973/libgfortran-4.so’
b’-- org.jblas INFO Deleting /tmp/jblas6820592152473353973/libquadmath-0.so’
b’-- org.jblas INFO Deleting /tmp/jblas6820592152473353973’
033[1;35m Error in processing … coreg_ifg2run

Have you seen this?

https://senbox.atlassian.net/wiki/spaces/SNAP/pages/1898577958/S1TBX+FAQs#On-Linux-I-get-the-error-org.jblas.NativeBlas.dgemm(CCIIID[DII[DIID[DII)V

1 Like

Thank You so much for your prompt reply. I have the latest versions of both libgfortran3 and libgfortran5 installed. Could it be due to this reason that I had originally downloaded the data for PSI, where I chose a single master without any consideration for temporal baseline. Now I wanted to test StaMPS_SBAS. Please check if I executed following steps correctly for it.

  1. Edit the config/txt file, where I kept Temp_baseline as 12 days (for successive S1 data)
  2. Apply Coregistration to a master and an arbitrary slave followed by deburst, merging and choosing Crop AOI from Subset Tool.
  3. Splitting_master_free.py
  4. Splitting_slaves_free.py
  5. SBAS_topsar_coreg.py (this gets error)
    Thank you so much again.

the error message is quite clear, so I don’t expect the data selection to be the source of the error.

1 Like