# pyotb: Orfeo ToolBox for Python
[![latest release](https://gitlab.orfeo-toolbox.org/nicolasnn/pyotb/-/badges/release.svg)](https://gitlab.orfeo-toolbox.org/nicolasnn/pyotb/-/releases)
[![pipeline status](https://gitlab.orfeo-toolbox.org/nicolasnn/pyotb/badges/develop/pipeline.svg)](https://gitlab.orfeo-toolbox.org/nicolasnn/pyotb/-/commits/develop)
[![coverage report](https://gitlab.orfeo-toolbox.org/nicolasnn/pyotb/badges/develop/coverage.svg)](https://gitlab.orfeo-toolbox.org/nicolasnn/pyotb/-/commits/develop)
[![read the docs status](https://readthedocs.org/projects/pyotb/badge/?version=master)](https://pyotb.readthedocs.io/en/master/)
**pyotb** wraps the [Orfeo Toolbox](https://www.orfeo-toolbox.org/) 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](https://numpy.org/) and
[rasterio](https://rasterio.readthedocs.io/))
- Extensible
Documentation hosted at [pyotb.readthedocs.io](https://pyotb.readthedocs.io/).
## Example
Building a simple pipeline with OTB applications
```py
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")
```
Raw data
{
"_id": null,
"home_page": null,
"name": "pyotb",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": null,
"keywords": "gis, remote sensing, otb, orfeotoolbox, orfeo toolbox",
"author": "Nicolas Nar\u00e7on, Vincent Delbar",
"author_email": "R\u00e9mi Cresson <remi.cresson@inrae.fr>",
"download_url": "https://files.pythonhosted.org/packages/fd/ba/a9c45b72724d126e56fd2f3e7b7e0b22174a0ca3f15a0d8c0347d71aaf17/pyotb-2.0.2.tar.gz",
"platform": null,
"description": "# pyotb: Orfeo ToolBox for Python\n\n[![latest release](https://gitlab.orfeo-toolbox.org/nicolasnn/pyotb/-/badges/release.svg)](https://gitlab.orfeo-toolbox.org/nicolasnn/pyotb/-/releases)\n[![pipeline status](https://gitlab.orfeo-toolbox.org/nicolasnn/pyotb/badges/develop/pipeline.svg)](https://gitlab.orfeo-toolbox.org/nicolasnn/pyotb/-/commits/develop)\n[![coverage report](https://gitlab.orfeo-toolbox.org/nicolasnn/pyotb/badges/develop/coverage.svg)](https://gitlab.orfeo-toolbox.org/nicolasnn/pyotb/-/commits/develop)\n[![read the docs status](https://readthedocs.org/projects/pyotb/badge/?version=master)](https://pyotb.readthedocs.io/en/master/)\n\n**pyotb** wraps the [Orfeo Toolbox](https://www.orfeo-toolbox.org/) in a pythonic, developer friendly \nfashion. \n\n## Key features\n\n- Easy use of Orfeo ToolBox (OTB) applications from python\n- Simplify common sophisticated I/O features of OTB\n- Lazy execution of operations thanks to OTB streaming mechanism\n- Interoperable with popular python libraries ([numpy](https://numpy.org/) and \n[rasterio](https://rasterio.readthedocs.io/))\n- Extensible\n\nDocumentation hosted at [pyotb.readthedocs.io](https://pyotb.readthedocs.io/).\n\n## Example\n\nBuilding a simple pipeline with OTB applications\n\n```py\nimport pyotb\n\n# RigidTransformResample, with input parameters as dict\nresampled = pyotb.RigidTransformResample({\n \"in\": \"https://myserver.ia/input.tif\", # Note: no /vsicurl/\n \"interpolator\": \"linear\", \n \"transform.type.id.scaley\": 0.5,\n \"transform.type.id.scalex\": 0.5\n})\n\n# OpticalCalibration, with input parameters as args\ncalib = pyotb.OpticalCalibration(resampled)\n\n# BandMath, with input parameters as kwargs\nndvi = pyotb.BandMath(calib, exp=\"ndvi(im1b1, im1b4)\")\n\n# Pythonic slicing\nroi = ndvi[20:586, 9:572]\n\n# Pipeline execution. The actual computation happens here!\nroi.write(\"output.tif\", \"float\")\n```\n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "Library to enable easy use of the Orfeo ToolBox (OTB) in Python",
"version": "2.0.2",
"project_urls": {
"documentation": "https://pyotb.readthedocs.io",
"homepage": "https://github.com/orfeotoolbox/pyotb",
"repository": "https://forgemia.inra.fr/orfeo-toolbox/pyotb"
},
"split_keywords": [
"gis",
" remote sensing",
" otb",
" orfeotoolbox",
" orfeo toolbox"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "68b5344257f510a26ca5d44237d30f0b3da142e314d1d4432004749cc92ed0a5",
"md5": "351639b8ff742fb6fe55b88fe865cc75",
"sha256": "e9a53250d8a9cb5b7984d26ac4f829859ec7f77518327af30ecc1e8697fa6a51"
},
"downloads": -1,
"filename": "pyotb-2.0.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "351639b8ff742fb6fe55b88fe865cc75",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 40823,
"upload_time": "2024-04-05T12:30:37",
"upload_time_iso_8601": "2024-04-05T12:30:37.902175Z",
"url": "https://files.pythonhosted.org/packages/68/b5/344257f510a26ca5d44237d30f0b3da142e314d1d4432004749cc92ed0a5/pyotb-2.0.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "fdbaa9c45b72724d126e56fd2f3e7b7e0b22174a0ca3f15a0d8c0347d71aaf17",
"md5": "1b5e8a6181eff8adeb7b499184ccc3d7",
"sha256": "3a7cd3feebe4d223da74835517fc6b2932e026180c2fa330726e78430df0509f"
},
"downloads": -1,
"filename": "pyotb-2.0.2.tar.gz",
"has_sig": false,
"md5_digest": "1b5e8a6181eff8adeb7b499184ccc3d7",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 45779,
"upload_time": "2024-04-05T12:30:40",
"upload_time_iso_8601": "2024-04-05T12:30:40.072548Z",
"url": "https://files.pythonhosted.org/packages/fd/ba/a9c45b72724d126e56fd2f3e7b7e0b22174a0ca3f15a0d8c0347d71aaf17/pyotb-2.0.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-04-05 12:30:40",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "orfeotoolbox",
"github_project": "pyotb",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "pyotb"
}