Skip to main content

Visualize Cloud Optimized GeoTIFF in browser

Project description

rio-viz

A Rasterio plugin to visualize Cloud Optimized GeoTIFF in browser.

Test Coverage Package version Downloads

Install

You can install rio-viz using pip

$ pip install rio-viz

with 3d feature

# 3d visualization features is optional, you'll need to have `cython==0.28` installed before being able to install `rio-viz["mvt"]`
$ pip install -U pip cython==0.28
$ pip install rio-viz["mvt"]

Build from source

$ git clone https://github.com/developmentseed/rio-viz.git
$ cd rio-viz
$ pip install -e .

CLI

$ rio viz --help
Usage: rio viz [OPTIONS] SRC_PATH

  Rasterio Viz cli.

Options:
  --nodata NUMBER|nan        Set nodata masking values for input dataset.
  --minzoom INTEGER          Overwrite minzoom
  --maxzoom INTEGER          Overwrite maxzoom
  --style [satellite|basic]  Mapbox basemap
  --port INTEGER             Webserver port (default: 8080)
  --host TEXT                Webserver host url (default: 127.0.0.1)
  --mapbox-token TOKEN       Pass Mapbox token
  --no-check                 Ignore COG validation
  --reader TEXT              rio-tiler Reader (BaseReader or AsyncBaseReader). Default is `rio_tiler.io.COGReader`
  --layers TEXT              limit to specific layers (for Multi* readers)
  --server-only              Launch API without opening the rio-viz web-page.
  --config NAME=VALUE        GDAL configuration options.
  --help                     Show this message and exit.

3D (Experimental)

rio-viz supports Mapbox VectorTiles encoding from a raster array. This feature was added to visualize sparse data stored as raster but will also work for dense array. This is highly experimental and might be slow to render in certain browser and/or for big rasters.

Multi Reader support

rio-viz support multiple/custom reader as long they are subclass of rio_tiler.io.base.BaseReader or rio_tiler.io.base.AsyncBaseReader.

# MultiFiles
$ rio viz "cog_band{2,3,4}.tif" \
  --reader rio_viz.io.reader.MultiFilesReader

# MultiBandReader
# Landsat 8 - rio-tiler-pds
# We use `--layers` to limit the number of bands
$ rio viz LC08_L1TP_013031_20130930_20170308_01_T1 \
  --reader rio_tiler_pds.landsat.aws.landsat8.L8Reader \
  --layers B1,B2 \
  --config GDAL_DISABLE_READDIR_ON_OPEN=FALSE \
  --config CPL_VSIL_CURL_ALLOWED_EXTENSIONS=".TIF,.ovr"

# MultiBaseReader
# We use `--layers` to limit the number of assets
rio viz https://earth-search.aws.element84.com/v0/collections/sentinel-s2-l2a-cogs/items/S2A_34SGA_20200318_0_L2A \
  --reader rio_tiler.io.STACReader \
  --layers B04,B03,B02

# aiocogeo
$ rio viz https://naipblobs.blob.core.windows.net/naip/v002/al/2019/al_60cm_2019/30087/m_3008701_ne_16_060_20191115.tif \
  --reader aiocogeo.tiler.COGTiler

RestAPI

When launching rio-viz, the application will create a FastAPI application to access and read the data you want. By default the CLI will open a web-page for you to explore your file but you can use --server-only option to ignore this.

$ rio viz my.tif --server-only

# In another console
$ curl http://127.0.0.1:8080/info | jq
{
  "bounds": [6.608576517072109, 51.270642883468895, 11.649386808679436, 53.89267160832534],
  "band_metadata": [...],
  "band_descriptions": [...],
  "dtype": "uint8",
  "nodata_type": "Mask",
  "colorinterp": [
    "red",
    "green",
    "blue"
  ]
}

You can see the full API documentation over http://127.0.0.1:8080/docs

API documentation

Contribution & Development

See CONTRIBUTING.md

Authors

Created by Development Seed

Changes

See CHANGES.md.

License

See LICENSE.txt

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

rio-viz-0.6.1.tar.gz (39.1 kB view details)

Uploaded Source

File details

Details for the file rio-viz-0.6.1.tar.gz.

File metadata

  • Download URL: rio-viz-0.6.1.tar.gz
  • Upload date:
  • Size: 39.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for rio-viz-0.6.1.tar.gz
Algorithm Hash digest
SHA256 6c05735bd8147abf234d5e705cc9f0d05b5f6f437e6010dba061f8f3129ff50f
MD5 f4281255ba7d67476ca4d0ea3a9354ed
BLAKE2b-256 1ad52d1740edec8f37368285f9248f3456637d73676dcac785d98e216bbbbc11

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