Read and write rasters in parallel using Rasterio and Dask
Read a multiband raster
>>> from dask_rasterio import read_raster >>> array = read_raster('tests/data/RGB.byte.tif') >>> array dask.array<stack, shape=(3, 718, 791), dtype=uint8, chunksize=(1, 3, 791)> >>> array.mean() dask.array<mean_agg-aggregate, shape=(), dtype=float64, chunksize=()> >>> array.mean().compute() 40.858976977533935
Read a single band from a raster
>>> from dask_rasterio import read_raster >>> array = read_raster('tests/data/RGB.byte.tif', band=3) >>> array dask.array<raster, shape=(718, 791), dtype=uint8, chunksize=(3, 791)>
Write a singleband or multiband raster
>>> from dask_rasterio import read_raster, write_raster >>> array = read_raster('tests/data/RGB.byte.tif') >>> new_array = array & (array > 100) >>> new_array dask.array<and_, shape=(3, 718, 791), dtype=uint8, chunksize=(1, 3, 791)> >>> prof = ... # reuse profile from tests/data/RGB.byte.tif... >>> write_raster('processed_image.tif', new_array, **prof)
write_raster accept a
block_size argument that
acts as a multiplier to the block size of rasters. The default value is 1,
which means the dask array chunk size will be the same as the block size of
the raster file. You will have to adjust this value depending on the
specification of your machine (how much memory do you have, and the block
size of the raster).
Install with pip:
pip install dask-rasterio
Now, clone the repository and run
poetry install. This will create a virtual
environment and install all required packages there.
poetry run pytest to run all tests.
poetry build to build package on
Please report any bugs and enhancement ideas using the GitHub issue tracker:
Feel free to also ask questions on our Gitter channel, or by email.
Any help in testing, development, documentation and other tasks is highly appreciated and useful to the project.
For more details, see the file CONTRIBUTING.md.
Source code is released under a BSD-2 license. Please refer to LICENSE.md for more information.
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Hashes for dask_rasterio-0.2.1-py3-none-any.whl