FAQ

Table of Contents

General

Which operating systems are supported by Metavision Intelligence?

Metavision Intelligence supports Linux Ubuntu 18.04 / 20.04 and Windows 10 64-bit. For other OS, you can compile OpenEB which contains the source code of our Open modules.

What kind of data do we get from a Prophesee sensor?

Prophesee sensor are streaming Contrast Detection (CD) events. They represent a response of a pixel to a change of illumination and are of 2 types:

  • CD ON events correspond to positive change : from dark to light

  • CD OFF events correspond to negative change : from light to dark

For more information, check our pages on event-based concepts and events streaming and decoding.

Can I record data from supported cameras? Which format is used for data recording?

You can record data with Metavision Studio. Data are recorded to RAW format. However, Metavision Studio allows you to export your recording in AVI format.

Alternatively, you can use the application Metavision Viewer to record RAW files. As you have an access to the source code of this application, you can see the Metavision SDK in use and even enhance it to fit your needs.

In addition, you can convert RAW files to the following formats:

How do I know what is the event encoding format of a RAW file?

You can find the EVT format (EVT2 or EVT3) of your RAW file by one of those methods:

How can I check the duration and the event rate of my RAW file?

You can use metavision_raw_info application:

metavision_raw_info -i YOUR_FILE.raw

How can I read IMU data with Metavision?

Some of Prophesee products are able to record IMU (Inertial Measurement Unit) data along with the sensor native data stream. This IMU is not part of our sensors but is mounted on another board (Invensense MPU-9250) within some of our EKVs. Until version 2.0.0, IMU was supported in Metavision, but this feature was not leveraged by any of our partner’s camera, so we decided that supporting it was not relevant for us and we removed it since version 2.1.0 of Metavision Intelligence.

If you want to use the IMU or if you have RAW files that contain IMU data that you want to decode, the easiest way is to use Metavision 2.0.0. Please check our Knowledge Center page on IMU data.

If you want to read IMU data with the latest version of Metavision, you will have to program your own events decoder. In that case, check our Knowledge Center page on IMU format.

How can I retrieve information on installed Prophesee software?

You can retrieve the information on the installed software and their versions with these applications:

How can I retrieve information on plugged cameras?

You can retrieve the information on the plugged cameras with metavision_platform_info application.

metavision_platform_info

What kind of extension USB cable should I use for my camera?

If the USB cables provided with the camera is too short for your use, you will have to use an extension cable, but you have to be careful as you will quickly reach the USB specs length limits for the support of USB 3.0 super speed. Hence, we recommend to use to use an active USB 3.0 extension cable with an external power supply. Here is an example of such a cable: StarTech.com Active USB 3.0 Extension Cable with AC Power Adapter

To avoid flicker events, which non-flickering light source should I use?

The best non-flickering light source is any halogen lighting. If you want LED source, you must double check it is not flickering (lots of them are using PWM modulation for dimming, and produce flicker). We successfully used Dracast Camlux Pro Bi-Color.

Can I use a Virtual Machine (VM) to work with my camera?

Prophesee cameras require USB 3.0, and due to limited support of USB 3.0 by Virtual Machines, your display and USB will not perform as expected, therefore we do not recommend using Virtual Machines.

Troubleshooting

How can I fix ‘Entry Point Not Found’ when launching Metavision applications on Windows?

When running Metavision applications on Windows, you may hit the following error message: “Entry Point Not Found. The procedure entry point inflateValidate could not be located in the dynamic link library C:\Program Files\Prophesee\bin\libpng16.dll.”

This means version of libpng included in Metavision is incompatible with some other libraries of your installation. Most probably, there are multiple copies of zlib1.dll in your installation and the first one found by Windows is not ours.

First, check if multiple zlib1.dll can indeed be found in your installation. For this open an explorer and search for zlib1.dll. You should at least have one result in the folder C:\Program Files\Prophesee\third_party\bin

If you find multiple results, you need to reorder your Path environment variables and move Prophesee Paths first. Here is one way to do it:

  • open the start menu

  • search environment

  • select edit environment variables of the system

  • click environment variables

  • in system variables, locate Path

  • edit and reorder the environment variables to have Prophesee Paths at the top

Updating Path in System Variables

How can I fix the error ‘the code execution cannot proceed because msvcp140.dll / msvcp140_1.dll was not found’ on Windows?

During installation of Metavision SDK on Windows, we check the presence of MS Visual C++, and we rely on the registry to know if the libs are there or not.

It seems that the uninstall of the previous MS Visual C++ Redistributable was not done properly (without any visible error), and you could end up with a registry value without the installed software. In this case, the installation of Metavision SDK on Windows could miss MS Visual C++.

To fix the issue, please check if the MS Visual C++ Redistributable is installed. If not, then install it properly.

Why do I get the message ‘Could not enumerate devices on board EVKv2 frame too short to be valid’ when using an EVK2?

This message means that the firmware of your EVK2 needs to be upgraded. To perform the upgrade, follow the procedure described in the Knowledge Center EVK2 upgrade page.

To have access to this page, request an account to the Knowledge Center and contact us to have access to the EVK2 upgrade page.

How can I fix the error ‘Failed to load module “canberra-gtk-module”’ on Ubuntu?

Install the package required to display videos, as mentioned in the installation tutorial:

sudo apt -y install libcanberra-gtk-module

How can I fix the error ‘No plugin available for input stream. Could not identify source from header’ when reading RAW files?

This error message can occur when trying to read a RAW file, for example with Metavision Viewer:

$ metavision_viewer -i /path/to/my_file.raw
[HAL][ERROR] While opening RAW file '/path/to/my_file.raw':

terminate called after throwing an instance of 'Metavision::HalException'
  what():
------------------------------------------------
Metavision HAL exception
Error 101000: No plugin available for input stream. Could not identify source from header:
% Date 2021-02-03 11:53:21
% integrator_name Prophesee
(...)
------------------------------------------------

This problem can have multiple causes:

  • the Camera Plugins are not found. If you installed third party plugins or compiled plugins yourself, you need to specify the location of the plugin binaries using the MV_HAL_PLUGIN_PATH environment variable (follow the camera plugins installation guide).

  • the RAW file is not recognized. The RAW file header contains ASCII information that is used to detect what plugin to use when opening the file with Metavision SDK. If this header is missing some required metadata, opening the file will fail. For example, the error No plugin available could be caused by a missing or malformed plugin_name in the header. Hence, it’s good practice to check this header with a text editor when hitting this error, and fix it if needed. Note that the application metavision_raw_info prints some information about the RAW file (including the plugin_name) that could help fix the RAW file. Finally, if you have multiple RAW files to update, contact us so that we can provide you with a script.

How can I fix the error ‘CMake Error Could NOT find Python3’ when compiling OpenEB on Ubuntu?

When compiling OpenEB on Ubuntu, the generation of the makefiles might fail with Could NOT find Python3 whereas you do have a Python version that we support. This problem can be caused by a more recent version of Python present on your system that cmake is trying to use. The error could be similar to:

$ cmake .. -DBUILD_TESTING=OFF
-- The C compiler identification is GNU 9.3.0
(...)
-- Found Boost: /usr/lib/x86_64-linux-gnu/cmake/Boost-1.71.0/BoostConfig.cmake (found version "1.71.0") found components: program_options filesystem timer chrono thread
CMake Error at /usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:146 (message):
  Could NOT find Python3 (missing: Python3_INCLUDE_DIRS Python3_LIBRARIES
  Development Development.Module Development.Embed) (found version "3.9.5")
Call Stack (most recent call first):
  /usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:393 (_FPHSA_FAILURE_MESSAGE)
  cmake/Modules/FindPython/Support.cmake:2999 (find_package_handle_standard_args)
  cmake/Modules/FindPython3.cmake:391 (include)
  cmake/custom_functions/python3.cmake:63 (find_package)
  CMakeLists.txt:211 (include)

In that case, we can see that cmake found some version of the Python interpreter, but it then fails because it does not find other required components from this specific version. The solution is to specify to cmake which version of Python to use with the option -DPython3_EXECUTABLE=<path_to_python_to_use>.

For example to specify Python3.8:

$ which python3.8
/usr/bin/python3.8
$ cmake .. -DBUILD_TESTING=OFF -DPython3_EXECUTABLE=/usr/bin/python3.8
-- The C compiler identification is GNU 9.3.0
(...)
-- Found Boost: /usr/lib/x86_64-linux-gnu/cmake/Boost-1.71.0/BoostConfig.cmake (found version "1.71.0") found components: program_options filesystem timer chrono thread
-- Found Python3: /usr/bin/python3.8 (found version "3.8.10") found components: Interpreter Development Development.Module Development.Embed
(...)
-- Configuring done
-- Generating done
-- Build files have been written to: /home/user/dev/openeb/build

How to fix the warning ‘New Boost version may have incorrect or missing dependencies’ when compiling on Windows?

When compiling OpenEB or SDK samples on Windows, depending on your version of CMake, you might get warnings like:

CMake Warning at C:/Program Files/CMake/share/cmake-3.20/Modules/FindBoost.cmake:1354 (message):
New Boost version may have incorrect or missing dependencies and imported targets

Those warnings can be safely ignored. Though, if you want to get rid of them, you may upgrade to a newer version of CMake, but we don’t fully guarantee you won’t hit other problems as compilation was not tested with the most recent CMake versions.

How can I change the logging level at runtime?

Metavision uses its own logging mechanism with four levels: TRACE, INFO, WARNING, ERROR. Any message that has a higher or equal level will be enabled to pass through, and any message that has a lower level will be ignored.

The default level (INFO) can be changed by setting the environment variable MV_LOG_LEVEL. This can help you troubleshoot problems. For example, to get a more detailed log, TRACE level can be used:

Linux

export MV_LOG_LEVEL=TRACE

Windows

set MV_LOG_LEVEL=TRACE

How to install EVKx driver on Windows 10, if the installation of unsigned drivers is disabled on you PC?

In some cases, the installation of Evaluation Kit drivers could be not authorized on your Windows PC. This depend generally on the policies applied by your IT department. If you are in that situation, you can temporally authorize the installation by following the steps described on this page: How to Install Unsigned Drivers on Windows 10