Hi,
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???
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.