LEDSmokeAnalysis (LEDSA)
LEDSA (LEDSmokeAnalysis) is a Python-based software package for the computation of spatially and temporally resolved light extinction coefficients from photometric measurements. The method relies on capturing the change in intensity of individual light sources due to fire-induced smoke. Images can be acquired within laboratory experiments using commercially available digital cameras.
Installation
Requirements
- Python 3.8
- pip (Python package installer)
Installation from PyPI
The easiest way to install LEDSA is via pip:
python -m pip install ledsa
Installation from Source
To install LEDSA from source:
-
Clone the repository:
git clone https://github.com/FireDynamics/LEDSmokeAnalysis.git cd LEDSmokeAnalysis
-
Install the package:
pip install .
Usage
LEDSA can be used via its command-line interface (CLI). The general structure is:
python -m ledsa [ARGUMENT] [OPTIONS]
Configuration
Create a default configuration file:
python -m ledsa -conf
Create an analysis configuration file:
python -m ledsa -conf_a
Main Workflow
The typical workflow consists of three main steps:
-
Step 1: Find LEDs on a reference image
python -m ledsa -s1
-
Step 2: Assign LEDs to LED arrays
python -m ledsa -s2
-
Step 3: Analyze light intensity changes among different images for the RGB color channels
python -m ledsa -s3_fast -rgb
-
Calculate 3D coordinates of the individual LEDs
python -m ledsa -coord
-
Run computation of extinction coefficient
python -m ledsa --analysis
For a complete list of options, run:
python -m ledsa --help
Demo
LEDSA includes a demo that demonstrates its functionality using sample data.
Setting Up the Demo
The demo setup will download approximately 5GB of data from the internet:
python -m ledsa --demo --setup /path/to/demo/directory
This will create two directories:
image_data: Contains the sample imagessimulation: Contains configuration files and results
Running the Demo
After setting up the demo, you can run it:
python -m ledsa --demo --run
By default, the demo uses 1 core. You can specify more cores:
python -m ledsa --demo --run --n_cores 4
Documentation
Comprehensive documentation is available at https://firedynamics.github.io/LEDSmokeAnalysis/
Contributing
To introduce new, tested, documented, and stable changes, pull/merge requests into the master branch are used.
Pull request drafts can be used to communicate about changes and new functionality.
After reviewing and testing the changes, they will be merged into master.
Every merge with master is followed by introducing a new version tag corresponding to the semantic versioning paradigm.
License
LEDSA is licensed under the MIT License. See the LICENSE file for details.
Authors
- Kristian Börger (boerger@uni-wuppertal.de)
- Lukas Arnold (arnold@uni-wuppertal.de)
Metadata
Release files for ledsa 0.10.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ledsa-0.10.0.tar.gz | 73.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ledsa-0.10.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 160.6 kB
Release files / ledsa-0.10.0.tar.gz
| Download URL | ledsa-0.10.0.tar.gz |
|---|---|
| Size | 73.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
665b564e902acf958ee93b6f9d5dd60d6cc30032b7d615942dce63723985ecff
|
|
BLAKE2b-256 checksum How to use checksums |
7f1e5961e958d6171ae56275f0edaa91581872b7fa18ed0ffe5aa63717c1194d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 19, 2026.
Transparency logRelease files / ledsa-0.10.0-py3-none-any.whl
| Download URL | ledsa-0.10.0-py3-none-any.whl |
|---|---|
| Size | 86.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
19ba3df170f8c400606778252e85f9fa41bdec5b3cf3d9d0674538b3501f81b8
|
|
BLAKE2b-256 checksum How to use checksums |
e3c59029709c971b41f907f19eb33e80be90e3465de87667a1af0acd3eee6bf6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 19, 2026.
Transparency log