pytools4dart

This is a read-only mirror of https://gitlab.com/pytools4dart/pytools4dart.

https://github.com/pytools4dart/pytools4dart

Science Score: 49.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 4 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.6%) to scientific vocabulary

Keywords

lidar radiative-transfer-models remote-sensing satellite-imagery simulation
Last synced: 6 months ago · JSON representation

Repository

This is a read-only mirror of https://gitlab.com/pytools4dart/pytools4dart.

Basic Info
Statistics
  • Stars: 3
  • Watchers: 1
  • Forks: 1
  • Open Issues: 0
  • Releases: 0
Topics
lidar radiative-transfer-models remote-sensing satellite-imagery simulation
Created almost 4 years ago · Last pushed 11 months ago
Metadata Files
Readme Changelog License Zenodo

README.md

pytools4dart: python API for DART simulator

Documentation

licence python build status version DOI

The python package pytools4dart was developed to address scripted simulations, especially for simulations with dimensions, number of parameters or complexity not manageable with DART graphical interface. Typical examples are the production of a 3D mockups with thousands of voxels or objects and thousands of optical properties (e.g. voxelised lidar data intersected with crown specific bio-chemical traits), or the specification of hundreds of spectral bands to simulate a hyperspectral sensor.

Package pytools4dart extends DART to complex and massive simulation with the power of python for pre/post processing and analysis, by making possible the connection to any other python packages (rasterio, laspy, scikitlearn, ...). It also extends DART to computing on headless server, typically HPC servers. And with python scripting, it allows for easy lightweight version control, e.g. with git, to keep track of your simulation history.

Features

The python API covers most of DART features and more:

  • Configurable with any version of DART
  • Create, load, compare DART simulations
  • Full Parametrisation of any type of simulation
  • Proxies & Summaries of most used parameters: scene elements (sizes, objects, properties), sensor bands, light source
  • DART Runners: run simulations step by step (direction, phase, ...) or fully, run/resume sequence processing, on remote server
  • Sequence Generator
  • Pre/Post-Processing tools:
    • hyperspectral tools (hstools): read ENVI .hdr files, extract wavelengths and bandwidths, stack band images to ENVI file
    • voxreader : load voxelisation file/data, intersect with polygons/raster to define properties, export to simulation plots
    • DART2LAS: lidar processing tools
      • extract returns with gaussian decomposition of lidar waveforms (accelerated with C++ backend)
      • convert lidar simulation results to LAS files (full-waveform and returns only)
    • Prospect: generate thousands of optical properties from bio-chemical traits
  • Examples : several documented use cases to facilitate the development of your own simulations.

Check website for details and user guides.

Install

Recommended installation is under conda (with mamba, much faster than conda to solve environment).

Execute the following in a terminal (or Miniforge prompt in Windows):

shell conda install mamba -n base -c conda-forge # only if conda was installed without mamba mamba env create -n myptd -f https://gitlab.com/pytools4dart/pytools4dart/-/raw/master/environment.yml conda activate myptd python -c "import pytools4dart as ptd; ptd.configure(r'<path to DART directory>')" # e.g. r'~/DART', r'C:\DART'

Requirements under Windows: Visual Studio C++ compiler, see Win10 video tutorial

For other installation modes (virtualenv, graphical interface, package update) and details (requirements, tests, uninstall, etc.), see installation guide.

License

The pytools4dart product documentation in the docs and pytools4dart/data folders are licensed under a CC-BY-SA license.

All other code in this repository is licensed under the GPL-v3 license.

Citation

If you use pytools4dart, please cite the following references:

Florian de Boissieu, Eric Chraibi, Claudia Lavalley, and Jean-Baptiste Féret, "Pytools4dart: A Python API for DART Radiative Transfer Simulator", doi: 10.5281/zenodo.8319766.

Acknowledgments

The development was partially supported by CNES TOSCA program for projects HYPERTROPIK and LEAF-EXPEVAL, and french ANR project BIOCOP (ANR-17-CE32-0001-01).

We thank our colleagues from DART development team at CESBIO who provided insight and expertise that greatly assisted the development of this package.

We also thank Yingjie WANG for his previous work on python interface to DART simulator.

GitHub Events

Total
  • Watch event: 1
  • Delete event: 1
  • Push event: 8
  • Create event: 2
Last Year
  • Watch event: 1
  • Delete event: 1
  • Push event: 8
  • Create event: 2

Committers

Last synced: about 2 years ago

All Time
  • Total Commits: 1,477
  • Total Committers: 7
  • Avg Commits per committer: 211.0
  • Development Distribution Score (DDS): 0.208
Past Year
  • Commits: 121
  • Committers: 1
  • Avg Commits per committer: 121.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Florian de Boissieu f****s@g****m 1,170
Eric Chraibi e****i@i****r 174
Claudia Lavalley c****y@c****r 73
Florian de Boissieu f****u@i****r 54
Florian de Boissieu b****u@d****t 2
jim r****r@p****h 2
Feret Jean-Baptiste j****t@i****r 2
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: about 2 years ago

All Time
  • Total issues: 0
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 0
  • Total pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • MariusTheisen (1)
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels

Dependencies

requirements.txt pypi
  • colorama *
  • cython *
  • laspy >=2
  • laszip *
  • lmfit *
  • lxml *
  • matplotlib *
  • numba *
  • numpy *
  • pandas *
  • path *
  • plyfile *
  • pyjnius *
  • rasterio *
  • rtree *
  • scipy *
  • setuptools *
  • tinyobjloader ==2.0.0rc5
setup.py pypi
environment.yml pypi
  • laszip *
  • prosail *