Library to enable easy use of the Orfeo ToolBox (OTB) in Python
Project description
pyotb: a pythonic extension of Orfeo Toolbox
pyotb wraps the Orfeo Toolbox (OTB) python bindings to make it more developer friendly.
Key features
- Easy use of OTB applications from python
- Simplify common sophisticated I/O features of OTB
- Lazy execution of in-memory pipelines with OTB streaming mechanism
- Interoperable with popular python libraries (numpy, rasterio)
- Extensible
Documentation hosted at pyotb.readthedocs.io.
Example
Building a simple pipeline with OTB applications
import pyotb
# RigidTransformResample application, with input parameters as dict
resampled = pyotb.RigidTransformResample({
"in": "https://some.remote.data/input.tif", # Note: no /vsicurl/...
"interpolator": "linear",
"transform.type.id.scaley": 0.5,
"transform.type.id.scalex": 0.5
})
# OpticalCalibration, with automatic input parameters resolution
calib = pyotb.OpticalCalibration(resampled)
# BandMath, with input parameters passed as kwargs
ndvi = pyotb.BandMath(calib, exp="ndvi(im1b1, im1b4)")
# Pythonic slicing using lazy computation (no memory used)
roi = ndvi[20:586, 9:572]
# Pipeline execution
# The actual computation happens here !
roi.write("output.tif", "float")
pyotb's objects also enable easy interoperability with numpy and rasterio:
# Numpy and RasterIO style attributes
print(roi.shape, roi.dtype, roi.transform)
print(roi.metadata)
# Other useful information
print(roi.get_infos())
print(roi.get_statistics())
array = roi.to_numpy()
array, profile = roi.to_rasterio()
Contributing
Contributions are welcome on Github or the source repository hosted on the Orfeo ToolBox GitLab.
Project details
Release history Release notifications | RSS feed
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.0.dev4.tar.gz
(40.9 kB
view hashes)
Built Distribution
pyotb-2.0.0.dev4-py3-none-any.whl
(36.3 kB
view hashes)
Close
Hashes for pyotb-2.0.0.dev4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d1224071d020ea889eb43d5f0e156f7103dea88fc2c89265a519b6da2ee93ddb |
|
MD5 | 3aa387b2a256b73f2c20fc5e3869f416 |
|
BLAKE2b-256 | 70e39e6ce44204fe3edbb72e8d3d03efa0edf4ae939c4cad9640d868e73b6dd6 |