C++ drivers wrapped in a Python library for interfacing with event-based cameras, supporting both Prophesee and iniVation devices.
-
Support for iniVation DVS cameras via libcaer
-
Python bindings using nanobind
-
Cross-platform support (Linux, macOS, Windows)
-
Planned support for Prophesee event-based cameras via OpenEB (see issue #1)
pip install event-camera-drivers
If you have Nix installed with flakes enabled:
# Enter development environment
nix develop
# Install in development mode
pip install -e .
Prerequisites:
- CMake (3.16 or higher)
- C++ compiler with C++17 support
- Python 3.9 or higher
- OpenEB 5.0.0
- libcaer
- Clone the repository:
git clone https://github.com/aestream/event-camera-drivers
cd event-camera-drivers
- Create and activate a virtual environment:
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
- Install development dependencies:
pip install scikit-build-core pytest build nanobind
- Install in development mode:
pip install -e .
import event_camera_drivers as evd
camera = evd.InivationCamera()
for packet in camera:
print(packet)
Or, in conjuction with Faery (read more in the Faery documentation):
import faery
faery.events_stream_from_inivation_camera()
...
- Install Nix package manager (recommended):
curl -L https://nixos.org/nix/install | sh
-
Enable Nix flakes (if not already enabled).
-
Enter development environment:
nix develop
pip install build
python -m build
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under LGPLv3 - see the LICENSE file for details.
- OpenEB - Prophesee's Open Event-Based Vision SDK
- libcaer - Minimal C library to access neuromorphic sensors