I am trying to apply Terrain Correction to EW GRDM files using the Copernicus 30m DEM using ver 8.0.4 (Windows 64bit) but I always get the following error:
Type: OperatorException
Message: GeoTiff imageReader not found
and the following log is generated. I’d be grateful for any advice on how to resolve this.
java.lang.IllegalStateException: GeoTiff imageReader not found.
at org.esa.snap.dataio.geotiff.GeoTiffImageReader.findImageReader(GeoTiffImageReader.java:270)
at org.esa.snap.dataio.geotiff.GeoTiffImageReader.buildImageReader(GeoTiffImageReader.java:251)
at org.esa.snap.dataio.geotiff.GeoTiffImageReader.<init>(GeoTiffImageReader.java:85)
at org.esa.snap.dataio.geotiff.GeoTiffImageReader.buildGeoTiffImageReader(GeoTiffImageReader.java:327)
at org.esa.snap.dataio.geotiff.GeoTiffImageReader.buildGeoTiffImageReader(GeoTiffImageReader.java:298)
at org.esa.snap.dataio.geotiff.GeoTiffProductReader.readProductNodesImpl(GeoTiffProductReader.java:121)
at org.esa.snap.core.dataio.AbstractProductReader.readProductNodes(AbstractProductReader.java:178)
at org.esa.snap.core.dataop.dem.ElevationFile.getLocalFile(ElevationFile.java:137)
at org.esa.snap.core.dataop.dem.ElevationFile.getFile(ElevationFile.java:104)
at org.esa.snap.core.dataop.dem.ElevationFile.getTile(ElevationFile.java:84)
at org.esa.snap.core.dataop.dem.BaseElevationModel.getSamples(BaseElevationModel.java:161)
at org.esa.snap.core.dataop.resamp.BilinearInterpolationResampling.resample(BilinearInterpolationResampling.java:82)
at org.esa.snap.core.dataop.dem.BaseElevationModel.getElevation(BaseElevationModel.java:99)
at org.esa.snap.dem.dataio.DEMFactory.getLocalDEM(DEMFactory.java:182)
at org.esa.s1tbx.sar.gpf.geometric.RangeDopplerGeocodingOp.computeTileStack(RangeDopplerGeocodingOp.java:881)
Caused: org.esa.snap.core.gpf.OperatorException: GeoTiff imageReader not found.
at org.esa.snap.engine_utilities.gpf.OperatorUtils.catchOperatorException(OperatorUtils.java:432)
at org.esa.s1tbx.sar.gpf.geometric.RangeDopplerGeocodingOp.computeTileStack(RangeDopplerGeocodingOp.java:1098)
at org.esa.snap.core.gpf.internal.OperatorImageTileStack.computeRect(OperatorImageTileStack.java:122)
at org.esa.snap.core.gpf.internal.OperatorImageTileStack.computeTile(OperatorImageTileStack.java:86)
Caused: org.esa.snap.core.gpf.OperatorException: GeoTiff imageReader not found.
at org.esa.snap.core.gpf.internal.OperatorExecutor$GPFImagingListener.errorOccurred(OperatorExecutor.java:381)
at com.sun.media.jai.util.SunTileScheduler.sendExceptionToListener(Unknown Source)
at com.sun.media.jai.util.SunTileScheduler.scheduleTile(Unknown Source)
at javax.media.jai.OpImage.getTile(Unknown Source)
at javax.media.jai.PlanarImage.getData(Unknown Source)
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.OperatorImage.computeRect(OperatorImage.java:75)
at javax.media.jai.SourcelessOpImage.computeTile(Unknown Source)
at com.sun.media.jai.util.SunTileScheduler.scheduleTile(Unknown Source)
at javax.media.jai.OpImage.getTile(Unknown Source)
at com.sun.media.jai.util.RequestJob.compute(Unknown Source)
[catch] at com.sun.media.jai.util.WorkerThread.run(Unknown Source)
I am also experiencing the “GeoTiff imageReader not found” error.
I am using GPT to do a standard RTC and GLCM with a sh script on Ubuntu 20.04 LTS.
The nodes in the graph are:
READ
Apply Orbit File
Calibration to beta0
Terrain Flattening - Copernicus 30m Global DEM
Terrain Correction - Copernicus 30m Global DEM
GLCM
Bandmerge
Write to CSV
SNAP is updated to version 8.0.4
When I run the script with a SUBSET in the graph it executes fine. When I run the script over the full scene (no SUBSET) then I get the error.
I have substantially increased the RAM on the machine its running on to no avail.
I have updated the GDAL version on the machine to 3.0.4 with no success. Previously it was using the internal version installed with SNAP.
Successful output:
ubuntu@ip-172-31-6-65:~/scripts$ sh s1_gpt1a.sh
Mon Jun 21 16:47:02 UTC 2021
INFO: org.esa.snap.core.gpf.operators.tooladapter.ToolAdapterIO: Initializing external tool adapters
INFO: org.esa.s2tbx.dataio.gdal.GDALVersion: GDAL 3.0.4 found on system. JNI driver will be used.
INFO: org.esa.s2tbx.dataio.gdal.GDALVersion: Installed GDAL 3.0.4 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 3.0.4 set to be used by SNAP.
Executing processing graph
INFO: org.hsqldb.persist.Logger: dataFileCache open start
.16%.32%.49%.65%…81%. done.
Mon Jun 21 16:47:28 UTC 2021
ubuntu@ip-172-31-6-65:~/scripts$
Error Output:
ubuntu@ip-172-31-6-65:~/scripts$ sh s1_gpt1b.sh
Mon Jun 21 16:28:43 UTC 2021
INFO: org.esa.snap.core.gpf.operators.tooladapter.ToolAdapterIO: Initializing external tool adapters
INFO: org.esa.s2tbx.dataio.gdal.GDALVersion: GDAL 3.0.4 found on system. JNI driver will be used.
INFO: org.esa.s2tbx.dataio.gdal.GDALVersion: Installed GDAL 3.0.4 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 3.0.4 set to be used by SNAP.
Executing processing graph
INFO: org.hsqldb.persist.Logger: dataFileCache open start
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
GeoTiff imageReader not found.
90% done.
java.lang.NullPointerException
Error: java.lang.NullPointerException
Mon Jun 21 16:41:20 UTC 2021
ubuntu@ip-172-31-6-65:~/scripts$
JNI means “Java Native Interface”. See: Ubuntu libgdal-java_3.0.4 There are many tutorials that show how to manage Ubuntu packages. Please learn how to check if the package is installed. If not, see if installing it solves your GeoTIFF problem, or at least gives some more helpful messages. If it doesn’t work it is easy to remove a package that is not required by some other package.
I downloaded the same acquisition again and got the same result.
However, I tried the same processing with a linux machine (fedora) and it worked. This isn’t a solution to the problem however, as I really need it to work under Windows. It does seem that perhaps there is something wrong with the windows setup. It is Windows 10 Enterprise (release 1809). Are there some dependencies that might be missing related to reading GeoTiffs?
I had exactly the same issue when running with the Copernicus DEM.
It seems happening when a tile is badly downloaded (and results with a 0 Ko file).
You need to remove the corrupted tiles in your .snap/auxdata/dem directory: