Skip to content

Ingesting Sentinel 1 B images #2805

Closed
Closed

Description

@brunifrancesco

I'm experimenting Geotrellis feature to ingest a downloaded Sentinel 1 image downloaded from ESA scihub; specifically the image is the one tagged with the following ID:

S1B_IW_SLC__1SDV_20180905T013930_20180905T013957_012573_01732C_B94E

I used gdal_translate script to convert the complex data type to a floating one (since Geotrellis is not able to process complex data types); after that I ran the ingestion procedure but I got this error:

Caused by: geotrellis.vector.ExtentRangeError: Invalid Extent: xmin must be less than xmax (xmin=73.44075377325863, xmax=71.70715627378026)
    at geotrellis.vector.Extent.<init>(Extent.scala:117)
    at geotrellis.raster.io.geotiff.tags.TiffTags.tiePointsModelSpace(TiffTags.scala:449)
    at geotrellis.raster.io.geotiff.tags.TiffTags.extent(TiffTags.scala:259)
    at geotrellis.raster.io.geotiff.reader.GeoTiffReader$.geotrellis$raster$io$geotiff$reader$GeoTiffReader$$getGeoTiffInfo$1(GeoTiffReader.scala:455)
    at geotrellis.raster.io.geotiff.reader.GeoTiffReader$.readGeoTiffInfo(GeoTiffReader.scala:484)
    at geotrellis.spark.io.hadoop.HadoopGeoTiffInfoReader.getGeoTiffInfo(HadoopGeoTiffInfoReader.scala:53)
    at geotrellis.spark.io.GeoTiffInfoReader$$anonfun$1.apply(GeoTiffInfoReader.scala:81)
    at geotrellis.spark.io.GeoTiffInfoReader$$anonfun$1.apply(GeoTiffInfoReader.scala:79)
    at scala.collection.Iterator$$anon$12.nextCur(Iterator.scala:435)
    at scala.collection.Iterator$$anon$12.hasNext(Iterator.scala:441)
    at org.apache.spark.storage.memory.MemoryStore.putIteratorAsValues(MemoryStore.scala:216)
    at org.apache.spark.storage.BlockManager$$anonfun$doPutIterator$1.apply(BlockManager.scala:1092)
    at org.apache.spark.storage.BlockManager$$anonfun$doPutIterator$1.apply(BlockManager.scala:1083)
    at org.apache.spark.storage.BlockManager.doPut(BlockManager.scala:1018)
    at org.apache.spark.storage.BlockManager.doPutIterator(BlockManager.scala:1083)
    at org.apache.spark.storage.BlockManager.getOrElseUpdate(BlockManager.scala:809)
    at org.apache.spark.rdd.RDD.getOrCompute(RDD.scala:335)
    at org.apache.spark.rdd.RDD.iterator(RDD.scala:286)
    at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:87)
    at org.apache.spark.scheduler.Task.run(Task.scala:109)
    at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:345)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)

It seems that coordinate values have been inverted somehow.
Looking at the output of gdal_info*, there is nothing wrong and coordinate values seems all correct.
Ideas?

Activity

  1. added this to the 2.1 milestone on Oct 1, 2018
  2. self-assigned this
    on Oct 1, 2018
  3. pomadchin commented on Oct 1, 2018

    @pomadchin
    Member

    So in this case, raster has the following GDAL output:

    Corner Coordinates:
    Upper Left  (    0.0,    0.0)
    Lower Left  (    0.0,13545.0)
    Upper Right (21995.0,    0.0)
    Lower Right (21995.0,13545.0)
    Center      (10997.5, 6772.5)
    

    and it looks like this extent is inverted, for instance a working raster GDAL output looks like this:

    Corner Coordinates:
    Upper Left  (  286815.949, 4888536.981) ( 77d39'51.52"W, 44d 7' 8.24"N)
    Lower Left  (  286815.949, 4888030.769) ( 77d39'50.79"W, 44d 6'51.85"N)
    Upper Right (  287122.593, 4888536.981) ( 77d39'37.74"W, 44d 7' 8.56"N)
    Lower Right (  287122.593, 4888030.769) ( 77d39'37.00"W, 44d 6'52.17"N)
    Center      (  286969.271, 4888283.875) ( 77d39'44.26"W, 44d 7' 0.21"N)
    
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions