Installation on Linux Ubuntu

This section describes how to install the latest available Prophesee’s Software on Linux Ubuntu 18.04 and 20.04 64-bit.

Requirements

Please, note that the following requirements must be fulfilled:

  • Operating system: Linux Ubuntu 18.04 or 20.04 64-bit

  • Architecture: amd64 (a.k.a. x64)

  • Graphic card: must support OpenGL 3.0 minimum

  • CPU: must support AVX2 (see the list of processor supporting AVX2)

For other operating systems and architecture compatibilities, contact us.

Prerequisites

Removing Old Software

First of all, you will need to remove the previously installed Prophesee software.

If you previously installed Metavision software from Debian packages, then execute the following commands depending on your OS:

  • on Ubuntu 18.04:

    sudo apt remove 'prophesee-*' 'metavision-*' --purge
    
  • on Ubuntu 20.04:

    sudo apt remove '~nprophesee-.*' '~nmetavision-.*' --purge
    

Note

If you installed Metavision 2.1 previously, you also should remove OpenCV libraries. The ones coming with Metavision 2.1 were custom ones, whereas when installing the 2.2, the official libraries will be installed. Here is the command to remove those libraries: sudo apt remove "libopencv*" "opencv-*" "python*-opencv" --purge

If you previously compiled Metavision software from the source code, then go to the build folder in the source code directory and uninstall it:

sudo make uninstall

Installing Dependencies

Install additional packages required to display videos and diagnose OpenGL drivers:

sudo apt -y install libcanberra-gtk-module mesa-utils

For the Python API, you will need Python and some additional libraries.

Currently, we support:

  • Python 3.6 and 3.7 on Ubuntu 18.04

  • Python 3.8 on Ubuntu 20.04

If Python is not available on your system, install it and then install these extra libraries:

sudo apt -y install python3-pip python3-tk
sudo apt -y install python3.X-dev  # where X is 6, 7 or 8 depending on your Python version (3.6, 3.7 or 3.8)
python3 -m pip install pip --upgrade
python3 -m pip install "numpy==1.19.5" opencv-python matplotlib jupyter pandas

Note

You can use Anaconda/Conda to install Python and manage your packages, but ensure to use a Python version that we support. In this documentation, we chose to use pip. If you wish to use Anaconda/Conda, adapt the library installation accordingly and use conda instead of pip.

Installation

Follow one of the following installation procedures depending on your chosen Metavision Intelligence Plan.

Warning

Metavision Essentials is a stand-alone evaluation version of Metavision Intelligence. It does not require to compile and install OpenEB. It comes as pre-built Ubuntu packages for OpenEB modules and the Python API of our Professional modules (see Metavision modules organization). It also includes the Prophesee Camera Plugins, making it the quickest way to get up to speed with event-based cameras and our SDK.

Installing Metavision Essentials

To install Metavision Essentials, you need to configure the apt software repositories of your system:

  • First, clean your sources list directory from earlier installation of Prophesee software:

    • remove essentials.list, prophesee.list, sdk.list or designer.list from the folder /etc/apt/sources.list.d (if you have any)

    sudo rm /etc/apt/sources.list.d/prophesee.list /etc/apt/sources.list.d/essentials.list /etc/apt/sources.list.d/sdk.list /etc/apt/sources.list.d/designer.list
    
    • check if you have any Prophesee Server in the file /etc/apt/sources.list and remove it

  • Then, add Prophesee’s servers to the list of apt repositories by coping the new .list file (that you should have been provided during the sign-up) to the folder /etc/apt/sources.list.d

  • Update the list of repositories and packages:

    sudo apt update
    

Now you are ready to install Metavision Essentials:

sudo apt -y install 'metavision-*'

Note

For a given minor release of Metavision (e.g. 2.2), all the patch versions (e.g. 2.2.0 and 2.2.1) can be installed from our apt repository and by default the most recent one will be installed.

To install a specific patch version (here 2.2.0), use the command sudo apt -y install 'metavision-*=2.2.0'

If you plan to compile the C++ code samples, you need to install cmake, libboost-program-options-dev and libeigen3-dev libraries:

sudo apt -y install cmake libboost-program-options-dev libeigen3-dev

Finally, to use the Machine Learning module, you need to install some additional dependencies.

You are now ready to use Metavision. You may want to start by some visualization of data from an event-based camera with Metavision Player. Or you can choose to dive directly in the SDK by following a Tutorial or looking at a Code Sample.

Compiling OpenEB

OpenEB is the open source version or our code base for the modules Base, Core, Driver, UI, and HAL (see Metavision modules organization). You don’t need to compile it if you already installed Metavision Essentials as those modules are already included in the packages. But it is the way to go if you want to get a deeper understanding of event-based vision and start contributing to the community. To compile OpenEB on Linux, follow our compilation guide.

Compiling Metavision Professional

Metavision Professional provides the full source code of the modules you acquired.

To compile the source code:

Camera Plugins

Plugin libraries are distributed by camera makers.

Prophesee Plugins:

  • Are included in binary form in Metavision Essentials. In this case, they are automatically found by Metavision HAL (no need to update environment variables)

  • Can be downloaded in binary form by signing-up to Prophesee Camera Plugins

  • Can be purchased in source form; contact us for more details.

Third-party plugins can be retrieved from suppliers. If you installed a third-party vendor plugin, you need to specify the location of the plugin using the MV_HAL_PLUGIN_PATH environment variable. For example:

export MV_HAL_PLUGIN_PATH=/path/to/my/plugins/

Note

If you want to permanently set this environment variable, you should include the export in your ~/.bashrc