Introduction
We offer different software solutions to use our event cameras. The different software solutions are designed to be versatile and range from getting familiar with event cameras to advanced usage.
DV is our main software solution and is designed to be user-friendly and easy to use.
DV-Processing is a C++/Python library for generic processing algorithms.
Other software solutions include a ROS integration and the low-level library Libcaer.
Common Definitions
Throughout our software stack, we keep common definitions.
Events
Events are the main data points generated by our cameras. In literature and, more particularly, in our software, they
are defined as follows:
An Event
is a single-pixel detection of brightness change. It is generally composed of the
following fields:
timestamp
, represents the time when the change happened. It is represented as a Unix Timestamp in microseconds. Type:int64
x
, represents the horizontal coordinate on the sensor (in pixels) where the change happened. Type:int16
y
, represents the vertical coordinate on the sensor (in pixels) where the change happened. Type:int16
polarity
, represents the sign of the change that happened.1
represents an increase in intensity,0
represents a decrease in intensity. Type:bool
Frames
Frames are the containers for image data.
A Frame
is generally composed of the following fields:
timestamp
represents the time of the start of exposure of the frame. It is represented as a Unix Timestamp in microseconds. Type:int64
There can be other timestamp fields representing start of exposure, end of exposure, start of generation or end of generation.
pixels
represents the image data stored as a pixel array. It is based on OpenCV Mat types. Type: array ofuint8
sizeX
represents the image’s width in pixels. Type:int16
sizeY
represents the image’s height in pixels. Type:int16
positionX
represents the horizontal image offset from the upper-left corner of a sensor in pixels. Type:int16
positionY
represents the vertical image offset from the upper-left corner of a sensor in pixels. Type:int16
Triggers
Triggers are data points forwarded by a camera informing about the waveform of an
external input signal.
A Trigger
is generally composed
of the following fields:
timestamp
, represents the time when the signal component was detected. It is represented as a Unix Timestamp in microseconds. Type:int64
TriggerType
, represents the signal component that was detected. For example, it can be one ofEXTERNAL_SIGNAL_RISING_EDGE
,EXTERNAL_SIGNAL_FALLING_EDGE
. Type:int8
Accumulation
Accumulation is the process of reconstructing images from events by integrating the individual event values over time. This term is often used instead of Image Reconstruction.
Read more in the section about the accumulator module.