Error in Terrain Flattening a COSMO-SkyMed image (null image)

Hi everyone,
I’m working with COSMO-SkyMed (CSK) images and trying to apply Terrain Flattening (TF) process to compare with previous result I got without TF. At first I performed Calibration with ‘Create beta0 virtual band’ checked. I’m using TanDEM-X as elevation data with 12 m resolution, what probably caused the first error message below. I then unchecked the option ‘Re-grid method’. The result is a 0 (null) value image, i.e. all black. Can someone help me to understand if I’m doing something wrong? My DEM is in geographic coordinates. I also tried with ACE30 (Auto Download) DEM.

You can download the CSK image here to try replicate. I appreciate any help. Thanks

org.esa.snap.core.gpf.OperatorException: java.lang.NullPointerException
at org.esa.snap.engine_utilities.gpf.OperatorUtils.catchOperatorException(OperatorUtils.java:432)
at org.esa.s1tbx.sar.gpf.geometric.TerrainFlatteningOp.computeTileStack(TerrainFlatteningOp.java:496)
at org.esa.snap.core.gpf.internal.OperatorImageTileStack.computeRect(OperatorImageTileStack.java:116)
at org.esa.snap.core.gpf.internal.OperatorImageTileStack.computeTile(OperatorImageTileStack.java:85)
at com.sun.media.jai.util.SunTileScheduler.scheduleTile(SunTileScheduler.java:904)
Caused: org.esa.snap.core.gpf.OperatorException: java.lang.NullPointerException
at org.esa.snap.core.gpf.internal.OperatorExecutor$GPFImagingListener.errorOccurred(OperatorExecutor.java:376)
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.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:407)
at org.esa.snap.core.gpf.internal.OperatorContext.getSourceTile(OperatorContext.java:393)
at org.esa.snap.core.gpf.internal.OperatorImage.computeRect(OperatorImage.java:73)
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 com.sun.media.jai.util.RequestJob.compute(SunTileScheduler.java:247)
[catch] at com.sun.media.jai.util.WorkerThread.run(SunTileScheduler.java:468)

No clue?
I still didn’t get it to work.

This data product is in Antarctica. Terrain Flattening currently does not support the poles even if you have a DEM for the area. Unlike terrain correction where you could select an output projection and use a polar projection, in terrain flatttening it only uses a lat lon grid. This can get very large at the pole latitudes.

Thank you for your answer @lveci. I successfully performed the TF on this image. I think the algorithm now support the poles. I was able to complete the process with my own DEM in UTM (TanDEM-X resampled to 6m resolution) and also in Polar projection (REMA with 8m resolution).
The solution was your reply in another thread advising to multilook the images to the same resolution as your DEM:

It will be nice with SNAP could incorporate in TF and TC GUI the option to auto download DEM specifically to the poles, like REMA.

Thank you again for your attention.

1 Like