Raster I/O Simplification

Introduction

A set of Python modules which makes it easy to write raster processing code in Python. Built on top of GDAL, it handles the details of opening and closing files, checking alignment of projection and raster grid, stepping through the raster in small blocks, etc., allowing the programmer to concentrate on the processing involved. It is licensed under GPL 3.

Example

"""
Reads in two input files and adds them together.
Assumes that they have the same number of bands.
"""
from rios import applier

# Set up input and output filenames.
infiles = applier.FilenameAssociations()
infiles.image1 = "file1.img"
infiles.image2 = "file2.img"

outfiles = applier.FilenameAssociations()
outfiles.outimage = "outfile.img"

# Set up the function to be applied
def addThem(info, inputs, outputs):
    """
    Function to be called by rios.
    Adds image1 and image2 from the inputs, and
    places the result in the outputs as outimage.
    """
    outputs.outimage = inputs.image1 + inputs.image2

# Apply the function to the inputs, creating the outputs.
applier.apply(addThem, infiles, outfiles)

See Applier Examples for more information.

Downloads

From GitHub. Release notes by version can be viewed in Release Notes.

Conda packages are available under the ‘conda-forge’ channel. Once you have installed Conda, run the following commands on the command line to install rios:

conda config --add channels conda-forge
conda create -n myenv rios
conda activate myenv

High level functions

Low level functions

Command Line Programs

RIOS comes with two command line programs:
  • rioscalcstats computes statistics and pyramid layers (overviews) on a file.

  • riosprintstats prints statistics information previously calculated on the file.

Refer to the helpstrings (run with -h) for usage of these programs. Note that by default, RIOS calculates pyramid layers and statistics on a file.

Utilities

Internal