Lichtenberg is a collection of example implementations of Dielectric Breakdown represents Lichtenberg Figure
like thunder and lightning.
- DBM(Dielectric Breakdown Model) - Paper
- Fast DBM - Paper
- DLA(Diffusion-limited aggregation) - Paper
- Uniform Probability Model - URL
- ValueNoise Probability Model
- Probability from Image
The source code of the core algorithm are implemented in C++. Examples are written in Python(via Pybind11).
- Python 3.7 or later
- C++ Compiler supports C++17
- for Windows: Visual Studio 2019 is confirmed
- for Linux(Mac): gcc 9.3 is confirmed
- CMake 3.1 or later
- Pybind11
- Pillow
- Scipy (for some examples)
- NumPy (for some examples)
(for Ubuntu)Install C++ Compiler and CMake
sudo apt install build-essential cmake
Clone this repository (don't forget recursive option)
git clone --recursive https://github.com/chromia/lichtenberg.git
cd lichtenberg
Install with setup.py
python setup.py install
Examples are in examples/ directory
cd examples
python 01_basic.py
...
The result will be output to examples/ directory(e.g. examples/01_basic_gray.png)
- MIT License
- except examples/resources/cityby-night-05.jpg(public domain image) - original