"Geographic information systems use GeoTIFF and other formats to organize and
store gridded raster datasets such as satellite imagery and terrain models.
Rasterio reads and writes these formats and provides a Python API based on
Numpy N-dimensional arrays and GeoJSON.
Before Rasterio there was one Python option for accessing the many different
kind of raster data files used in the GIS field: the Python bindings
distributed with the Geospatial Data Abstraction Library, GDAL. These bindings extend Python, but provide little
abstraction for GDAL’s C API. This means that Python programs using them tend
to read and run like C programs. For example, GDAL’s Python bindings require
users to watch out for dangling C pointers, potential crashers of programs.
This is bad: among other considerations we’ve chosen Python instead of C to
avoid problems with pointers.
What would it be like to have a geospatial data abstraction in the Python
standard library? One that used modern Python language features and idioms?
One that freed users from concern about dangling pointers and other
C programming pitfalls? Rasterio’s goal is to be this kind of raster data
library – expressing GDAL’s data model using fewer non-idiomatic extension
classes and more idiomatic Python types and protocols, while performing as
fast as GDAL’s Python bindings."
https://mapbox.github.io/rasterio/
https://github.com/mapbox/rasterio
No comments:
Post a Comment