Snap2stamps error

Any tips how to create this get_modis.py file ?

I cannot find it inside the TRAIN folder either. There’s no such folder named python packages in my entire linux system

This problem was solved previously but now I am getting this new error during coregisteration and the following sub-steps while operating of descending images.

/home/shadi/descending_2017_2018/Frame495/split/20171001/20171001_IW1.dim
[3] Processing slave file :20171001_IW1.dim

SNAP STDOUT:INFO: org.esa.snap.core.gpf.operators.tooladapter.ToolAdapterIO: Initializing external tool adapters
INFO: org.esa.snap.core.util.EngineVersionCheckActivator: Please check regularly for new updates for the best SNAP experience.
Executing processing graph
INFO: org.hsqldb.persist.Logger: dataFileCache open start
INFO: org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp: Shifts written to file: /home/shadi/.snap/var/log/IW1_range_shifts.json
INFO: org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp: Estimating azimuth offset for blocks in overlap: 1/2
INFO: org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp: Estimating azimuth offset for blocks in overlap: 2/2
WARNING: org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp: NetworkESD (azimuth shift): arc = IW1_VV_mst_30Nov2017_IW1_VV_slv1_01Oct2017 overlap area = 1, weight for this overlap is 0.0
INFO: org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp: Shifts written to file: /home/shadi/.snap/var/log/IW1_azimuth_shifts.json
…10%…20%…30%…40%…50%…60%.java.lang.NullPointerException
java.lang.NullPointerException
90% done.
org.esa.snap.core.gpf.OperatorException: Cannot construct DataBuffer.
at org.esa.snap.core.gpf.graph.GraphProcessor$GPFImagingListener.errorOccurred(GraphProcessor.java:389)
at com.sun.media.jai.util.SunTileScheduler.sendExceptionToListener(SunTileScheduler.java:1646)
at com.sun.media.jai.util.SunTileScheduler.scheduleTile(SunTileScheduler.java:921)
at javax.media.jai.OpImage.getTile(OpImage.java:1129)
at javax.media.jai.PlanarImage.cobbleFloat(PlanarImage.java:3254)
at javax.media.jai.PlanarImage.getData(PlanarImage.java:2181)
at com.bc.ceres.glevel.MultiLevelImage.getData(MultiLevelImage.java:64)
at org.esa.snap.core.gpf.internal.OperatorContext.getSourceTile(OperatorContext.java:449)
at org.esa.snap.core.gpf.internal.OperatorContext.getSourceTile(OperatorContext.java:435)
at org.esa.snap.core.gpf.Operator.getSourceTile(Operator.java:459)
at org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp.performRangeAzimuthShift(SpectralDiversityOp.java:2284)
at org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp.computeTileStack(SpectralDiversityOp.java:821)
at org.esa.snap.core.gpf.internal.OperatorImageTileStack.computeRect(OperatorImageTileStack.java:122)
at org.esa.snap.core.gpf.internal.OperatorImageTileStack.computeTile(OperatorImageTileStack.java:86)
at com.sun.media.jai.util.SunTileScheduler.scheduleTile(SunTileScheduler.java:904)
at javax.media.jai.OpImage.getTile(OpImage.java:1129)
at javax.media.jai.PlanarImage.cobbleFloat(PlanarImage.java:3254)
at javax.media.jai.PlanarImage.getData(PlanarImage.java:2181)
at com.bc.ceres.glevel.MultiLevelImage.getData(MultiLevelImage.java:64)
at org.esa.snap.core.gpf.internal.OperatorContext.getSourceTile(OperatorContext.java:449)
at org.esa.snap.core.gpf.internal.OperatorContext.getSourceTile(OperatorContext.java:435)
at org.esa.snap.core.gpf.Operator.getSourceTile(Operator.java:459)
at org.esa.s1tbx.sentinel1.gpf.TOPSARDeburstOp.computeTileInOneSwathFloat(TOPSARDeburstOp.java:904)
at org.esa.s1tbx.sentinel1.gpf.TOPSARDeburstOp.computeTileStack(TOPSARDeburstOp.java:811)
at org.esa.snap.core.gpf.internal.OperatorImageTileStack.computeRect(OperatorImageTileStack.java:122)
at org.esa.snap.core.gpf.internal.OperatorImageTileStack.computeTile(OperatorImageTileStack.java:86)
at com.sun.media.jai.util.SunTileScheduler.scheduleTile(SunTileScheduler.java:904)
at javax.media.jai.OpImage.getTile(OpImage.java:1129)
at javax.media.jai.PlanarImage.cobbleShort(PlanarImage.java:2951)
at javax.media.jai.PlanarImage.getData(PlanarImage.java:2172)
at com.bc.ceres.glevel.MultiLevelImage.getData(MultiLevelImage.java:64)
at org.esa.snap.core.datamodel.Band.readRasterData(Band.java:309)
at org.esa.snap.core.dataio.ProductSubsetBuilder.readBandRasterDataRegion(ProductSubsetBuilder.java:393)
at org.esa.snap.core.dataio.ProductSubsetBuilder.readBandRasterDataImpl(ProductSubsetBuilder.java:330)
at org.esa.snap.core.dataio.AbstractProductReader.readBandRasterData(AbstractProductReader.java:277)
at org.esa.snap.core.gpf.common.SubsetOp.computeTile(SubsetOp.java:295)
at org.esa.snap.core.gpf.internal.OperatorImage.computeRect(OperatorImage.java:82)
at javax.media.jai.SourcelessOpImage.computeTile(SourcelessOpImage.java:137)
at com.sun.media.jai.util.SunTileScheduler.scheduleTile(SunTileScheduler.java:904)
at javax.media.jai.OpImage.getTile(OpImage.java:1129)
at javax.media.jai.PlanarImage.getData(PlanarImage.java:2085)
at com.bc.ceres.glevel.MultiLevelImage.getData(MultiLevelImage.java:64)
at org.esa.snap.core.gpf.internal.OperatorContext.getSourceTile(OperatorContext.java:449)
at org.esa.snap.core.gpf.internal.OperatorContext.getSourceTile(OperatorContext.java:435)
at org.esa.snap.core.gpf.internal.OperatorImageTileStack.computeRect(OperatorImageTileStack.java:116)
at org.esa.snap.core.gpf.internal.OperatorImageTileStack.computeTile(OperatorImageTileStack.java:86)
at com.sun.media.jai.util.SunTileScheduler.scheduleTile(SunTileScheduler.java:904)
at javax.media.jai.OpImage.getTile(OpImage.java:1129)
at com.sun.media.jai.util.RequestJob.compute(SunTileScheduler.java:247)
at com.sun.media.jai.util.WorkerThread.run(SunTileScheduler.java:468)
Caused by: java.lang.RuntimeException: Cannot construct DataBuffer.
at com.sun.media.jai.util.DataBufferUtils.constructDataBuffer(DataBufferUtils.java:132)
at com.sun.media.jai.util.DataBufferUtils.createDataBufferFloat(DataBufferUtils.java:214)
at javax.media.jai.ComponentSampleModelJAI.createDataBuffer(ComponentSampleModelJAI.java:271)
at javax.media.jai.RasterFactory.createWritableRaster(RasterFactory.java:691)
at javax.media.jai.PlanarImage.createWritableRaster(PlanarImage.java:1982)
at org.esa.snap.core.gpf.internal.OperatorImageTileStack.createWritableRaster(OperatorImageTileStack.java:181)
at org.esa.snap.core.gpf.internal.OperatorImageTileStack.getWritableRaster(OperatorImageTileStack.java:171)
at org.esa.snap.core.gpf.internal.OperatorImageTileStack.getWritableRaster(OperatorImageTileStack.java:153)
at org.esa.snap.core.gpf.internal.OperatorImageTileStack.computeRect(OperatorImageTileStack.java:111)
at org.esa.snap.core.gpf.internal.OperatorImageTileStack.computeTile(OperatorImageTileStack.java:86)
at com.sun.media.jai.util.SunTileScheduler.scheduleTile(SunTileScheduler.java:904)
… 47 more

Error: Cannot construct DataBuffer.
– org.jblas INFO Deleting /tmp/jblas7116186565449515897/libgfortran-4.so
– org.jblas INFO Deleting /tmp/jblas7116186565449515897/libquadmath-0.so
– org.jblas INFO Deleting /tmp/jblas7116186565449515897/libjblas_arch_flavor.so
– org.jblas INFO Deleting /tmp/jblas7116186565449515897/libjblas.so
– org.jblas INFO Deleting /tmp/jblas7116186565449515897

[3] Finished process in 168.885437965 seconds.

Could it be due to memory? RAM? or Java Xmx parameter?

Yes, I have located where the problem was. My computer is a little too weak to handle such intensive processing. Even though I have set

COMPUTING RESOURCES TO EMPLOY

CPU=8
CACHE=12G

Those project configuration settings were not applied for some reason neither when cache=12G nor cache=8G , so I changed the cache option in SNAP itelf but automatically computing the system’s cache size and here’s what I got

Some interferograms were successfully created while others weren’t. So, I took a further step and reduced the AOI to be subset and now all the slaves have been successfully used to create interferograms. This snap-to-stamps processing is just too demanding. I thought the process would take too long but never thought it would crash or cause errors if the system couldn’t handle it

There’s something really strange though. All the interferograms look like this

Please check if the secondary images overlap the entire reference AOI

Hello everyone, I just did the corregistration and interferogram formation but it gives me this warning message: WARNING: org.jlinda.core.Baseline: Max. error bperp modeling at 3D datapoints: 25.741510197840086m. this warning only appear in one pair of images from the stack, is this normal? or has a solution?. Any help is useful.

Yes, Problem solved, The correct overlapping bursts between the master and slaves were not indicated in the scripts

It is indicated in the manual.
Happy that you have solved it

Hi,
I am getting the following error in my 5 images, what should I do?

SNAP STDOUT:INFO: org.esa.snap.core.gpf.operators.tooladapter.ToolAdapterIO: Initializing external tool adapters
INFO: org.esa.s2tbx.dataio.gdal.GDALVersion: GDAL 2.2.3 found on system. JNI driver will be used.
INFO: org.esa.s2tbx.dataio.gdal.GDALVersion: Installed GDAL 2.2.3 set to be used by SNAP.
INFO: org.esa.snap.core.util.EngineVersionCheckActivator: Please check regularly for new updates for the best SNAP experience.
INFO: org.esa.s2tbx.dataio.gdal.GDALVersion: Installed GDAL 2.2.3 set to be used by SNAP.
Executing processing graph
INFO: org.hsqldb.persist.Logger: dataFileCache open start
…10%…20%…INFO: org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp: Shifts written to file: /home/gndz/.snap/var/log/IW2_range_shifts.json
INFO: org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp: Estimating azimuth offset for blocks in overlap: 1/8
INFO: org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp: Estimating azimuth offset for blocks in overlap: 2/8
INFO: org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp: Estimating azimuth offset for blocks in overlap: 3/8
INFO: org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp: Estimating azimuth offset for blocks in overlap: 4/8
INFO: org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp: Estimating azimuth offset for blocks in overlap: 5/8
INFO: org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp: Estimating azimuth offset for blocks in overlap: 6/8
INFO: org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp: Estimating azimuth offset for blocks in overlap: 7/8
INFO: org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp: Estimating azimuth offset for blocks in overlap: 8/8
WARNING: org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp: NetworkESD (azimuth shift): arc = IW2_VV_mst_02Sep2019_IW2_VV_slv1_16Jul2019 overlap area = 0, weight for this overlap is 0.0
WARNING: org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp: NetworkESD (azimuth shift): arc = IW2_VV_mst_02Sep2019_IW2_VV_slv1_16Jul2019 overlap area = 1, weight for this overlap is 0.0
WARNING: org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp: NetworkESD (azimuth shift): arc = IW2_VV_mst_02Sep2019_IW2_VV_slv1_16Jul2019 overlap area = 2, weight for this overlap is 0.0
WARNING: org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp: NetworkESD (azimuth shift): arc = IW2_VV_mst_02Sep2019_IW2_VV_slv1_16Jul2019 overlap area = 3, weight for this overlap is 0.0
INFO: org.esa.s1tbx.sentinel1.gpf.SpectralDiversityOp: Shifts written to file: /home/gndz/.snap/var/log/IW2_azimuth_shifts.json
…30%…40%…50%…60%…70%…80%…90% done.
– org.jblas INFO Deleting /tmp/jblas5290024103253089492/libquadmath-0.so
– org.jblas INFO Deleting /tmp/jblas5290024103253089492/libjblas.so
– org.jblas INFO Deleting /tmp/jblas5290024103253089492/libgfortran-4.so
– org.jblas INFO Deleting /tmp/jblas5290024103253089492/libjblas_arch_flavor.so
– org.jblas INFO Deleting /tmp/jblas5290024103253089492

I think the processing went well. There is no error

1 Like

I have a question if you wouldn’t mind.
As you can see here, in line number 69, the topographic phase removal option is disabled,

I have used this graph file during the automated processing step “Master-slave coregistration and interferogram generation” and yet topographic phase bands were created. How is that possible ?
and the tutorial never mentioned editing this line during for the pre-Stamps-processing chain.

Just scroll down and you will find the operator TopoPhase Removal (line 106) :wink:

You have just needed to go a bit down to get it clear.
Obviously, no need to rise an unexisting alarm to everybody.

Best,

This is embarrassing, I thought it was the reason why all the interferograms and velocity maps of my study area still contain persistent topographic pattern even after StaMPS processing. I apologize for such disturbance I have caused

1 Like

No problem!
It can happen to everybody.

The main reasons for topography alike signal could be: 1) not too accurate DEM, 2) atmospheric signal link to the topography

Enjoy the processing

Hi dear @mdelgado sorry to ask but I am trying to use the PSI method and I got this error:
python2.7 slaves_prep.py project.conf
Traceback (most recent call last):
File “slaves_prep.py”, line 16, in
from pathlib import Path
ImportError: No module named pathlib
I have used this before but it is not working now any suggestion?

1 Like

That was specified on the user manual for the version 1 :wink:

I used that but for some reasons it is not working. I think the problem is with ubuntu 22. so i think i should downgrade it.

I invite you to see the version 2 then, which includes a yaml file with all the dependencies which you can directly use to create your conda environment with the python dependencies.