Open modules samples

Open modules C++ samples
C++ samples of the open modules allow you to understand the building blocks of the SDK by starting from basic examples. If you want to start programming from the ground up, you should start with the C++ Get Started tutorial.
In the following table, for each sample, you will find:
its module
if the sample is using the SDK pipelines
the main algorithms or classes demonstrated in the sample
Name |
Description |
Module |
Using SDK pipelines |
UI framework used for display |
Main algorithms or classes demonstrated in the sample |
---|---|---|---|---|---|
Prints information on the installed software (e.g. software version) |
Base |
No |
N/A |
||
Sample explained step by step that shows how to print statistics and display frames from an event-based camera or from a RAW file |
Core |
No |
SDK UI |
||
Application that detects and masks active pixels (application designed for future sensors) |
Driver |
No |
OpenCV |
||
Displays data from an event-based camera or from a RAW file using SDK Driver API |
Driver |
No |
OpenCV |
||
Cuts RAW or HDF5 event file from/to given time |
Driver |
No |
N/A |
||
Gets information about a file and prints it to console |
Driver |
No |
N/A |
||
Converts a file to CSV-formatted file in C++ |
Driver |
No |
N/A |
||
Converts a file to DAT-formatted file |
Driver |
No |
N/A |
||
Converts a file to an HDF5 event file in C++ |
Driver |
Yes |
N/A |
||
Converts events from a file to AVI video |
Core |
No |
N/A |
||
Filters events (ROI + polarity) and displays them on the screen |
Core |
Yes |
SDK UI |
||
Filters events and shows both unfiltered and filtered events |
Core |
Yes |
SDK UI |
||
Reads CSV-formatted file and displays events on the screen |
Core |
Yes |
SDK UI |
||
Generate and displays histo/diff event frames from event files |
Core |
No |
SDK UI |
||
Displays Time Surface of events |
Core |
No |
SDK UI |
||
Shows how to create and interact with basic windows |
UI |
No |
SDK UI |
Open modules Python samples
Python samples of the open modules allow you to understand the building blocks of the SDK by starting from basic examples. If you want to start programming from the ground up, you should start with the Python Get started tutorial.
In the following table, for each sample, you will find its modules and the main algorithm or classes demonstrated in the sample.
Name |
Description |
Module |
Main algorithms or classes demonstrated in the sample |
---|---|---|---|
Sample explained step by step that shows how to print statistics and display frames from an event-based camera or from a RAW file |
Core |
||
Displays events from an event-based camera or from a file (RAW or DAT) |
Core |
||
Record events from an event-based camera to a RAW file |
Core |
||
Converts RAW file to CSV-formatted file in Python |
Core |
||
Filters events (ROI + polarity) and displays them on the screen |
Core |
||
Reads CSV-formatted file and displays events on the screen |
Core |
||
Reads multiple AER events file formats and displays events on the screen |
Core |
||
Synchronizes event-based cameras |
Core |
||
Reads RAW, dynamically splits into event frames based on the content of the stream, and displays result on screen |
Core |
||
Displays Time Surface of events |
Core |
||
Demonstrates Event to Video ML pipeline |
Core ML |
||
Trains Event to Video ML pipeline |
Core ML |
||
Visualize Event to Video training data |
Core ML |
||
Demonstrates CPU Video to Event ML pipeline |
Core ML |
||
Demonstrates GPU Video to Event ML pipeline |
Core ML |
||
Demonstrates Corner Detection ML pipeline |
Core ML |
||
Trains Corner Detection ML pipeline |
Core ML |
HAL samples
HAL is the API to access camera features in a generic way (i.e. hiding the hardware specificities of each device). You can discover how to operate and tune sensors and cameras using this API. The samples listed in the table below can be used as starting point.
Note
If you want to build a full-featured application in C++ (with display, data conversion etc.),
you might consider using the Driver module that offers a user-friendly API to
access the camera and the data with the Camera class (Metavision::Camera
). Follow the tutorial
Get Started using C++ to discover SDK Driver C++ API. And if you want to code
in Python, follow the tutorial Python Get started that shows how you can
use EventsIterator
to stream events.
Name |
Description |
Main algorithm or class demonstrated in the sample |
---|---|---|
Lists all connected Prophesee devices |
||
Prints information on the platform, connected devices, and installed software (useful for debug) |
||
Cuts RAW file from/to given time |
||
Seek in a RAW file |
||
Showcases various HAL API facilities |
||
Synchronizes event-based cameras |
|
|
Provides an example of HAL plugin |
Note
The HAL API is available in C++ and Python but we currently have samples only for the C++ API. If you want to use Python, we recommend to follow the Events Iterator tutorial and check the HAL Python API documentation.