rdenham / geowombat

GeoWombat: Utilities for geospatial data

Home Page:https://geowombat.readthedocs.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

GeoWombat: Utilities for geospatial data

Like a wombat, GeoWombat has a simple interface (for raster I/O) with a strong backend (for data processing at scale).

Basic usage

>>> import geowombat as gw

Use a context manager and Xarray plotting to analyze processing chains

>>> # Define geographic bounds to warp images to
>>> with gw.config.update(ref_bounds=bounds):
>>>
>>>     # Open images as Xarray DataArrays
>>>     with gw.open('image_a.tif') as srca, \
>>>         gw.open('image_b.tif') as srcb:
>>>
>>>         # Apply calculations using Xarray and Dask
>>>         results = srca.sel(band=1) * srcb.sel(band=[1, 2, 3]).mean(dim='band')
>>>
>>>         # Check results by computing the task and plotting
>>>         results.gw.imshow()

Computation scales easily over large datasets with minimal changes to the code.

>>> # Set a reference image to align to
>>> with gw.config.update(ref_image='image_a.tif'):
>>>
>>>     # Open images as Xarray DataArrays
>>>     with gw.open('image_a.tif') as srca, \
>>>         gw.open('image_b.tif') as srcb:
>>>
>>>         # The size of srca, srcb, and results are determined by the configuration context
>>>         results = srca.sel(band=1) * srcb.sel(band=[1, 2, 3]).mean(dim='band')
>>>
>>>         # Initiate computation by writing the results to file. 
>>>         # Mix process and thread workers to execute the task in parallel. 
>>>         results.gw.to_raster('output.tif', 
>>>                              n_workers=4, 
>>>                              n_threads=4,
>>>                              compress='lzw')

Documentation


For more details, see https://geowombat.readthedocs.io.

About

GeoWombat: Utilities for geospatial data

https://geowombat.readthedocs.io

License:MIT License


Languages

Language:Jupyter Notebook 89.0%Language:Python 11.0%