Note
Go to the end to download the full example code.
From/to Rasterio#
This example demonstrates importing and exporting a rasterio.io.DatasetReader
or rasterio.io.DatasetReader
from and to a
Raster
.
import rasterio as rio
A raster can be imported from a rasterio.io.DatasetReader
or rasterio.io.MemoryFile
simply by instantiating Raster
.
import geoutils as gu
filename_rast = gu.examples.get_path("exploradores_aster_dem")
ds = rio.DatasetReader(filename_rast)
rast = gu.Raster(ds)
rast
The data is unloaded, as when instantiated with a filename.
The data will be loaded explicitly by any function requiring its data
, such as show()
.
rast.plot(cmap="terrain")
We can also pass a rasterio.io.MemoryFile
during instantiation.
mem = rio.MemoryFile(open(filename_rast, "rb"))
rast = gu.Raster(mem)
rast
The data is, as expected, already in memory.
Finally, we can export a Raster
to a rasterio.io.DatasetReader
of a rasterio.io.MemoryFile
using
to_rio_dataset
<open DatasetReader name='/vsimem/e1be3258-6f69-43f4-9914-5bfb6c1daeec/e1be3258-6f69-43f4-9914-5bfb6c1daeec.tif' mode='r'>
Total running time of the script: (0 minutes 1.248 seconds)