Why GeoWombat?#

GeoWombat uses xarray and rasterio to open geospatial rasters as chunked dask arrays. So, why not just use these libraries directly?

GeoWombat is built on top of these libraries, with some key additions for added flexibility with raster I/O and data processing. Examples include:

  • On-the-fly CRS transformation

  • Automatic data alignment

  • Multi-image mosaicking

  • Flexible data writing over parallel tasks

Why not Rasterio?#

Rasterio is the engine behind much of the data transformations and I/O. However, rasterio loads data in memory as numpy arrays. We wanted to build a library that could process rasters of any size.

Why not Xarray?#

Xarray’s open_rasterio function is the interface to rasterio. It opens a delayed raster as a dask.array.Array, which means data are not loaded into memory until requested. However, xarray is intended to be a general purpose library. Therefore, it does not include geo-specific tasks included in geowombat, such as radiometric adjustments, vector/raster interaction, and special purpose I/O such as on-the-fly mosaicking.