Awesome
WARNING: This repository is under major refactor. There is no specific timeline. You are advised to build from scratch from the master branch.
Special thanks to iniVation for making this possible!
The project is in its Beta development stage, please submit an issue if you encountered a problem.
NEWS As from 0.2.5, we switched CI/CD from Travis CI to Github Actions because the building on travis-ci.org is ceased. We are looking for solutions to produce ARM64 build.
Why PyAER?
iniVation has released DV, a new platform and an SDK for accessing and developing with event cameras.
For robotics projects, you may find rpg_dvs_ros when you use ROS.
So the natural question is: why PyAER?
In a nutshell, PyAER is a combination of a Pythonic libcaer
and a light-weight "ROS".
PyAER serves as an agile package that focus on fast development and extensibility.
In fact, in some scenario, e.g., edge devices, PyAER is more user friendly than other
alternatives.
Design Principle
- Minimum installation effort.
- Clean, simple, easy to manage.
- Well documented, human-readable code.
Installation
-
Install
libcaer
dependency (RECOMMEND)# for Ubuntu sudo apt-get install libcaer-dev # for macOS brew tap inivation/inivation brew install libcaer --with-libserialport --with-opencv
Update
udev
rules if you use a Linux system:$ bash <(curl -s https://raw.githubusercontent.com/duguyue100/pyaer/master/install-udev.sh)
NOTE: The
libcaer
installation has taken care of theudev
update. However, if the problem persists, please try it. -
Install
pyaer
from pypi (RECOMMEND)$ pip install pyaer
-
Install
pyzmq
andh5py
$ pip install pyzmq $ pip install h5py
NOTE:
pyzmq
is not available on ARM-based computer, you will need to build yourself.
Development
For development purpose, you might build pyaer
from source.
Please follow the instructions in INSTALL_FROM_SOURCE.md
Running Examples
-
The scripts folder provides some examples for you to play with.
-
Extra more advanced demos are available at pyaer-demo.
Limitations and Notes
-
2022-08-05: Address the building issue with the latest
libcaer
release. -
2022-06-07: We now switch to follow
libcaer
official release. -
2021-12-01: For DAVIS346 Color model, we now support color events.
-
2021-01-13: DVXplorer cameras are officially supported (Thanks iniVation) for borrowing devices. Samsung EVK support is yet to be tested.
-
2020-12-02: From 0.2.0, we support a
zeromq
-based communication module that allow users to leverage multiple processes during development. It can support multiple devices and concurrent logging and visualization. If you are familiar with ROS, you should find this feature comfortable. -
DYNAP is generally supported. We are currently looking for the correct bias configuration mechanism so that it can easily support the use of the device. We have mapped some core functions that are essential to device configuration.
Contacts
Yuhuang Hu Email: duguyue100@gmail.com