Putting data from different sources (with different bboxes, different temporal and spatial resolution) in a single eopatch

I just found out about eo-learn a few days ago. It seems to be quite useful to handle satellite data! However, I haven’t quite found what I’m looking for on the internet.

I have satellite data from different sources, with different resolutions, slightly different bboxes, and different time stamps. To be able to put all the data in a single eopatch, I have to get the same bbox for all data and get them in the same spatial and temporal resolution. This seems like a fundamental thing and yet, I haven’t found any examples online!

I thought maybe you could provide me with such an example???

thank you very much for your help!!


In eo-learn there is indeed no task for spatially reprojecting and resampling data. But there are a couple of alternatives:

Option 1

  • Use GDAL or rasterio to reproject your images into the same CRS. Optionally you can also resample them to the same resolution.

  • Use eolearn.io.ImportFromTiff task to load data from your GeoTiff files as features into EOPatches. You have options to read an entire image into a single EOPatch or, by providing ImportFromTiff different bounding boxes, read different parts of an image into different EOPatches.

Option 2

  • Ingest each type of your data into Sentinel Hub service as a BYOC collection. Everything is written in the instructions but basically you would have to:

    • convert your images into cloud optimized geotiff format,
    • upload images to an AWS S3 bucket and configure bucket permissions,
    • configure BYOC collection(s).
  • Use eolearn.io.SentinelHubInputTask to query data from BYOC collections to obtain data for arbitrary bounding box, CRS, and resolution.

In case you have a small amount of data (e.g. only a few images) I would suggest the option 1 as it is a bit simpler. But if you have a large amount of data then option 2 might work much better. That is because Sentinel Hub service will handle all reprojecting, resampling, and joining data from multiple images, which would otherwise require quite some processing resources.