pyBSM is a Python-based tool for sensor modeling. It provides common components useful for simulating the image formation process through different imaging systems.
Reason this release was yanked:
The replacement for opencv caused numerous numerical errors which causes invalid results.
Project description
pyBSM
pyBSM is a Python-based tool for sensor modeling. It provides common components useful for simulating the image formation process through different imaging systems.
This repo builds off of the work done by LeMaster and Eismann in creating the original pyBSM package for modeling image systems [1] as well as LeMaster, et al. in their work in validating the pyBSM package [2].
NOTE: A set of functions which infer OTFs from user data has been removed from the current distribution of pyBSM. They are archived under the v0.7.0 tag if they are needed.
References
[1] LeMaster, Daniel A., and Michael T. Eismann. ‘pyBSM: A Python Package for Modeling Imaging Systems’. Society of Photo-Optical Instrumentation Engineers (SPIE) Conference Series, edited by Eric J. Kelmelis, vol. 10204, 2017, p. 1020405, https://doi.org10.1117/12.2262561. Society of Photo-Optical Instrumentation Engineers (SPIE) Conference Series.
[2] LeMaster, Daniel, et al. Validating pyBSM: A Python Package for Modeling Imaging Systems. 05 2018, p. 19, https://doi.org10.1117/12.2305228.
Installation
Ensure the source tree is acquired locally before proceeding.
To install the current version via pip:
pip install pybsm
Alternatively, you can use Poetry:
poetry install
For more detailed installation instructions, visit the installation documentation.
Getting Started
Explore usage examples of the pybsm package in various contexts using the Jupyter notebooks provided in the ./examples/ directory.
Contributions are encouraged! For more details, refer to the CONTRIBUTING.md file.
Documentation
Documentation for both release snapshots and the latest master branch is available on ReadTheDocs.
To build the Sphinx-based documentation locally for the latest reference:
# Install dependencies
poetry install --sync --with linting,tests,docs
# Navigate to the documentation root
cd docs
# Build the documentation
poetry run make html
# Open the generated documentation in your browser
firefox _build/html/index.html
Developer Tools
Pre-commit Hooks
Pre-commit hooks ensure that code complies with required linting and formatting guidelines. These hooks run automatically before commits but can also be executed manually. To bypass checks during a commit, use the --no-verify flag.
To install and use pre-commit hooks:
# Install required dependencies
poetry install --sync --with linting,tests,docs
# Initialize pre-commit hooks for the repository
poetry run pre-commit install
# Run pre-commit checks on all files
poetry run pre-commit run --all-files
Contributing
- Follow the JATIC Design Principles.
- Adopt the Git Flow branching strategy.
- Detailed release information is available in docs/release_process.rst.
- Additional contribution guidelines can be found in CONTRIBUTING.md.
License
Contacts
Principal Investigator: Brian Hu (Kitware) @brian.hu Product Owner: Austin Whitesell (MITRE) @awhitesell Scrum Master / Tech Lead: Brandon RichardWebster (Kitware) @b.richardwebster Deputy Tech Lead: Emily Veenhuis (Kitware) @emily.veenhuis
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pybsm-0.10.0.tar.gz.
File metadata
- Download URL: pybsm-0.10.0.tar.gz
- Upload date:
- Size: 76.5 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.4 CPython/3.9.21 Linux/6.5.0-1021-aws
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
83ba46e359636e428a44a0c0c6336ea984cdfabf5f943cf20427ca74bcb3fbf7
|
|
| MD5 |
415c20efd75fddf6705c96be0cf4a50c
|
|
| BLAKE2b-256 |
dab5e60dcbb3d28b20ec198866ce324e0bc129a61619ef805f128b83f136bf59
|
File details
Details for the file pybsm-0.10.0-py3-none-any.whl.
File metadata
- Download URL: pybsm-0.10.0-py3-none-any.whl
- Upload date:
- Size: 77.8 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.4 CPython/3.9.21 Linux/6.5.0-1021-aws
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c36383a1e77295751bf64adca113f230da0d2e66f9f42ac118f4dcd8b39b2632
|
|
| MD5 |
14c702362bc154ccc09268b31a450954
|
|
| BLAKE2b-256 |
c84d2862322b458e242d220df4a8b807bc8ab09bc8a4e54108df7cd1aec4e2b1
|