Skip to main content

Create rasters from global tiles

Project description

tile-mate

PyPI license PyPI pyversions PyPI version Conda version Conda platforms

This tool provides a tool to create continuous rasters of global publicly available tiles such as Pekel Occurence and ESA 10 m land cover. This is a simpler cousin of dem-stitcher without the need for basic post-processing (e.g. fractional pixel translation and vertical datum transformations).

The API can be summarized as

from tile_mate import get_raster_from_tiles

bounds = [-120.55, 34.85, -120.25, 35.15]
X, p = get_raster_from_tiles(bounds, tile_shortname='esa_world_cover_2021')

# X is an c x m x n numpy array, where c is the number of channels specified by `count`
# p is a dictionary (or a rasterio profile) including relevant GIS metadata; CRS is epsg:4326

The rasters are returned in the global lat/lon projection epsg:4326 and the API assumes that bounds are supplied in this format.

import rasterio

with rasterio.open('esa_world_cover_2021_subset.tif', 'w', **p) as ds:
   ds.write(X)

Installation

In order to easily manage dependencies, we recommend using dedicated project environments via Anaconda/Miniconda or Python virtual environments.

You can install the package with conda/mamba using:

mamba install tile_mate

or

pip install tile-mate

Alternatively, you can clone the repository and manage the environment using the environment.yml file provided.

  1. mamba env update -f environment.yml
  2. Activate the environment conda activate tile-mate
  3. Install the library with pip via pip install tile-mate.

For development, use pip with -e (editable) mode:

python -m pip install -e .

Python 3.9+ is supported.

Notebooks

We have notebooks to demonstrate common usage:

Datasets Supported

The datasets supported are:

In [1]: from tile_mate.stitcher import DATASET_SHORTNAMES

In [2]: DATASET_SHORTNAMES
Out[2]: 'pekel_water_occ_2021',
 'esa_world_cover_2020',
 'esa_world_cover_2021',
 'hansen_annual_mosaic',
 'hansen_lossyear',
 'hansen_gain',
 'hansen_treecover_2000',
 's1_coherence_2020',
 'cop_100_lulc_discrete',
 'radd_deforestation_alerts_2022',
 'hand'

More information about these datasets can be found below

See these notebooks to see how these tiles are generated and organized.

Dateline support

None curently.

Contributing

We welcome contributions to this open-source package. To do so:

  1. Create an GitHub issue ticket desrcribing what changes you need (e.g. issue-1)
  2. Fork this repo
  3. Make your modifications in your own fork
  4. Make a pull-request (PR) in this repo with the code in your fork and tag the repo owner or a relevant contributor.

We use flake8 and associated linting packages to ensure some basic code quality (see the environment.yml). These will be checked for each commit in a PR. Try to write tests wherever possible.

Support

  1. Create an GitHub issue ticket desrcribing what changes you would like to see or to report a bug.
  2. We will work on solving this issue (hopefully with you).

Acknowledgements

This tool was developed to support OPERA.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tile_mate-0.0.10.tar.gz (5.8 MB view details)

Uploaded Source

Built Distribution

tile_mate-0.0.10-py3-none-any.whl (4.4 MB view details)

Uploaded Python 3

File details

Details for the file tile_mate-0.0.10.tar.gz.

File metadata

  • Download URL: tile_mate-0.0.10.tar.gz
  • Upload date:
  • Size: 5.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for tile_mate-0.0.10.tar.gz
Algorithm Hash digest
SHA256 e58ff7eaedd98f79cae121ed5a87c4b31721a2ce39b8ef628f8a522b2442f9c3
MD5 660526d32762177622c92df370b26c40
BLAKE2b-256 f0b5f406242e35222b4047d528a2f57f5b55b473fbbdefb30ec39ba39728c881

See more details on using hashes here.

File details

Details for the file tile_mate-0.0.10-py3-none-any.whl.

File metadata

  • Download URL: tile_mate-0.0.10-py3-none-any.whl
  • Upload date:
  • Size: 4.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for tile_mate-0.0.10-py3-none-any.whl
Algorithm Hash digest
SHA256 a4cbb28b1b4fc49f9270d42e578da32cd9e4d78cf74fb40f806804cc527377dd
MD5 96f31f71441a6c4878053e8ac64d9717
BLAKE2b-256 33d4bb222cfda8bb69fb5d03cd694fc268343f79e22c77726399ce21f5319be7

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page