Skip to main content

Library to enable easy use of the Orfeo ToolBox (OTB) in Python

Project description

pyotb: Orfeo ToolBox for Python

latest release pipeline status coverage report read the docs status

pyotb wraps the Orfeo Toolbox in a pythonic, developer friendly fashion.

Key features

  • Easy use of Orfeo ToolBox (OTB) applications from python
  • Simplify common sophisticated I/O features of OTB
  • Lazy execution of operations thanks to OTB streaming mechanism
  • Interoperable with popular python libraries (numpy and rasterio)
  • Extensible

Documentation hosted at pyotb.readthedocs.io.

Example

Building a simple pipeline with OTB applications

import pyotb

# RigidTransformResample, with input parameters as dict
resampled = pyotb.RigidTransformResample({
    "in": "https://myserver.ia/input.tif",  # Note: no /vsicurl/
    "interpolator": "linear", 
    "transform.type.id.scaley": 0.5,
    "transform.type.id.scalex": 0.5
})

# OpticalCalibration, with input parameters as args
calib = pyotb.OpticalCalibration(resampled)

# BandMath, with input parameters as kwargs
ndvi = pyotb.BandMath(calib, exp="ndvi(im1b1, im1b4)")

# Pythonic slicing
roi = ndvi[20:586, 9:572]

# Pipeline execution. The actual computation happens here!
roi.write("output.tif", "float")

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

pyotb-2.0.2.tar.gz (45.8 kB view hashes)

Uploaded Source

Built Distribution

pyotb-2.0.2-py3-none-any.whl (40.8 kB view hashes)

Uploaded Python 3

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