prophesee-ai/openeb
GitHub: prophesee-ai/openeb
Prophesee 推出的开源事件视觉 SDK,提供从硬件抽象、事件流处理到机器学习管线和可视化的完整工具链,支持开发事件相机应用与第三方设备插件。
Stars: 290 | Forks: 87
# OpenEB
OpenEB 是与 [Metavision SDK](https://docs.prophesee.ai/stable/index.html) 相关的开源项目。
它使任何人都能更好地理解基于事件的视觉 (event-based vision),直接与事件进行交互,并构建
他们自己的应用程序或相机插件。作为相机制造商,通过构建您自己的插件,确保您的客户能够受益于最先进的
基于事件的软件套件。作为创作者、科学家或学术界人士,加入并为快速发展的基于事件的视觉社区做出贡献。
OpenEB 由 [Metavision SDK 的开源模块](https://docs.prophesee.ai/stable/modules.html#chapter-modules-and-packaging-open) 组成:
* HAL:用于操作任何基于事件的视觉设备的硬件抽象层。
* Base:基于事件的应用程序的基础和通用定义。
* Core:用于可视化和事件流处理的通用算法。
* Core ML:用于机器学习的通用函数,以及 event_to_video 和 video_to_event pipeline。
* Stream:构建在 HAL 之上的高级抽象,用于轻松与基于事件的相机进行交互。
* UI:用于基于事件的数据的查看器和显示控制器。
OpenEB 还包含 [Prophesee 相机插件](https://docs.prophesee.ai/stable/installation/camera_plugins.html) 的源代码,
支持从我们的基于事件的相机传输数据以及读取基于事件的数据的录像。
支持的相机包括:
* EVK3 - VGA/320/HD
* EVK4 - HD
本文档介绍如何编译和安装 OpenEB 代码库。
了解更多信息,请参阅我们的 [在线文档](https://docs.prophesee.ai/),您将在其中找到:
* 关于使用 C++ 或 Python 入门的 [教程](https://docs.prophesee.ai/stable/tutorials/index.html),
* 演示如何使用
[我们的 API](https://docs.prophesee.ai/stable/api.html) 的 [示例](https://docs.prophesee.ai/stable/samples.html),
* [模块和打包的说明](https://docs.prophesee.ai/stable/modules.html)。
## 在 Linux 上编译
编译和执行已在满足以下要求的平台上进行了测试:
* Linux:Ubuntu 22.04 或 24.04 64 位
* 架构:amd64(又称 x64)
* 最低支持 OpenGL 3.0 的显卡
在其他平台上(例如,其他 Linux 发行版、不同的 Ubuntu 版本、ARM 架构
等)的编译尚未经过测试。对于这些平台,可能需要对本指南或代码本身进行一些调整。
### 升级 OpenEB
如果您要从先前版本升级 OpenEB,请首先查看
[发行说明](https://docs.prophesee.ai/stable/release_notes.html)。
某些更改可能会影响您对 SDK 的使用(例如 [API](https://docs.prophesee.ai/stable/api.html) 更新)
和相机(例如可能需要进行 [固件更新](https://support.prophesee.ai/portal/en/kb/articles/evk-firmware-versions))。
在安装新版本之前,请移除任何先前安装的 Prophesee 软件:
* 如果您之前将 Metavision 文件安装到了系统路径中,请导航到源
目录中的 `build` 文件夹并运行:
```
sudo make uninstall
```
* 进行一次全面检查,以确保以下位置没有残留的旧 Prophesee 或 Metavision 文件:
* 在您的系统路径中(`/usr/lib`、`/usr/local/lib`、`/usr/include`、`/usr/local/include`),
* 在您的环境变量中(`PATH`、`PYTHONPATH` 和 `LD_LIBRARY_PATH`)。
### 获取 OpenEB 源代码
要获取 OpenEB 源代码,您可以克隆 [GitHub 上的 OpenEB 仓库](https://github.com/prophesee-ai/openeb):
```
git clone https://github.com/prophesee-ai/openeb.git --branch 5.2.0
```
在以下章节中,此目录的绝对路径将称为 ``OPENEB_SRC_DIR``。
如果您选择从 GitHub 下载 OpenEB 的归档文件而不是克隆仓库,
请确保选择 `Full.Source.Code.*` 归档文件。请勿使用自动生成的 `Source.Code.*` 归档文件,
因为它不包含必需的 submodule。
下载正确的归档文件后,解压源代码。
### 前置条件
安装以下依赖项:
```
sudo apt update
sudo apt -y install apt-utils build-essential software-properties-common wget unzip curl git cmake
sudo apt -y install libopencv-dev libboost-all-dev libusb-1.0-0-dev libprotobuf-dev protobuf-compiler
sudo apt -y install libhdf5-dev hdf5-tools libglew-dev libglfw3-dev libcanberra-gtk-module ffmpeg
```
可选地,如果您想运行测试,则需要安装 Google Gtest 和 Gmock 包。
有关更多详细信息,请参阅 [Google Test 用户指南](https://google.github.io/googletest/):
```
sudo apt -y install libgtest-dev libgmock-dev
```
对于 [Python API](https://docs.prophesee.ai/stable/api/python/index.html#chapter-api-python),您将需要 Python 和一些额外的库。
我们支持:
* Ubuntu 22.04 上的 Python 3.9 和 3.10
* Ubuntu 24.04 上的 Python 3.11 和 3.12。
我们建议在 Python 中使用 [virtualenv](https://virtualenv.pypa.io/en/latest/) 以避免与其他已安装的 Python 包发生冲突。
因此,首先安装它以及一些 Python 开发工具:
```
sudo apt -y install python3.x-venv python3.x-dev
# 其中 "x" 为 9、10、11 或 12,具体取决于你的 Python 版本
```
接下来,创建一个虚拟环境并安装必要的依赖项。要仅使用 CPU 的 pytorch(无 cuda):
```
python3 -m venv /tmp/prophesee/py3venv --system-site-packages
/tmp/prophesee/py3venv/bin/python -m pip install pip --upgrade
/tmp/prophesee/py3venv/bin/python -m pip install -r OPENEB_SRC_DIR/utils/python/requirements_openeb.txt -r OPENEB_SRC_DIR/utils/python/requirements_pytorch_cpu.txt
```
要使用带有 cuda 的 pytorch,请使用 `OPENEB_SRC_DIR/utils/python/requirements_pytorch_cuda.txt` 替代 `OPENEB_SRC_DIR/utils/python/requirements_pytorch_cpu.txt`
请注意,在创建虚拟环境时,必须使用 `--system-site-packages` 选项以确保
可以访问安装在系统目录中的 SDK 包。但是,此选项也会默认使您的本地
用户 site-packages(通常位于 `~/.local/lib/pythonX.Y/site-packages`)可见。
为了防止这种情况并保持更干净的虚拟环境,您可以将环境变量 `PYTHONNOUSERSITE` 设置为 true。
可选地,您可以运行 `activate` 命令(`source /tmp/prophesee/py3venv/bin/activate`)来修改您的 shell 环境变量,
将虚拟环境的 Python 解释器和脚本设置为当前会话的默认值。
这允许您使用简单的命令(如 `python`),而无需每次都指定完整路径。
C++ API 的 Python 绑定依赖于 [pybind11](https://github.com/pybind) 库,具体版本为 2.11.0。
*注意*,只有在您想要使用 C++ API 的 Python 绑定时才需要 pybind11。
您可以在编译期间的第 3 步通过传递参数 `-DCOMPILE_PYTHON3_BINDINGS=OFF` 来选择不创建这些绑定(见下文)。
在这种情况下,您将不需要安装 pybind11,但您将无法使用我们针对 C++ API 的 Python 接口。
遗憾的是,目前没有预编译版本的 pybind11,因此您需要手动安装它:
```
wget https://github.com/pybind/pybind11/archive/v2.11.0.zip
unzip v2.11.0.zip
cd pybind11-2.11.0/
mkdir build && cd build
cmake .. -DPYBIND11_TEST=OFF
cmake --build .
sudo cmake --build . --target install
```
要使用机器学习功能,您需要安装一些额外的依赖项。
首先,如果您有带 GPU 的 Nvidia 硬件,您可以选择安装 [CUDA (11.6 或 11.7)](https://developer.nvidia.com/cuda-downloads)
和 [cuDNN](https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html),以利用 pytorch 和 libtorch。
请务必通过查看 [Nvidia 兼性页面](https://docs.nvidia.com/deeplearning/cudnn/support-matrix/index.html) 来确保您安装的 CUDA 版本与您的 GPU 兼容。
请注意,目前我们不支持 [OpenCL](https://www.khronos.org/opencl/) 和 AMD GPU。
### 编译
1. 创建并打开 `OPENEB_SRC_DIR` 中的 build 目录:`mkdir build && cd build`
2. 使用 CMake 生成 makefile:`cmake .. -DBUILD_TESTING=OFF`。
如果您想为 cmake 指定要使用的 Python 版本,应使用选项 ``-DPython3_EXECUTABLE=<要使用的_python_路径>``。
例如,当您的系统上安装的 Python 版本比我们支持的版本更新时,这非常有用。
在这种情况下,cmake 会选择它,并且编译可能会失败。
3. 编译:`cmake --build . --config Release -- -j 4`
编译完成后,您有两个选择:您可以选择直接在 `build` 文件夹中工作,
或者您可以将 OpenEB 文件部署到系统路径(`/usr/local/lib`、`/usr/local/include`...)。
* 选项 1 - 在 `build` 文件夹中工作
* 要直接从 `build` 文件夹使用 OpenEB,您需要使用此脚本更新一些环境变量
(您可以将其添加到您的 `~/.bashrc` 中以使其永久生效):
source utils/scripts/setup_env.sh
* [Prophesee 相机插件](https://docs.prophesee.ai/stable/installation/camera_plugins.html) 已包含在 OpenEB 中,
但您仍然需要将 udev 规则文件复制到系统路径中并重新加载它们,以便通过以下命令检测到您的相机:
sudo cp /hal_psee_plugins/resources/rules/*.rules /etc/udev/rules.d
sudo udevadm control --reload-rules
sudo udevadm trigger
* 选项 2 - 部署在系统路径中
* 要部署 OpenEB,请运行以下命令:
sudo cmake --build . --target install
请注意,您也可以使用 `CMAKE_INSTALL_PREFIX` 变量(`-DCMAKE_INSTALL_PREFIX=`)将 OpenEB 文件(应用程序、示例、库等)部署在您选择的目录中
在第 2 步生成 makefile 时。同样,您可以使用 `PYTHON3_SITE_PACKAGES` 变量(`-DPYTHON3_SITE_PACKAGES=`)配置 Python 包的部署目录。
* 您还需要更新 `LD_LIBRARY_PATH` 和 `HDF5_PLUGIN_PATH`
(您可以将其添加到您的 `~/.bashrc` 中以使其永久生效):
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export HDF5_PLUGIN_PATH=$HDF5_PLUGIN_PATH:/usr/local/hdf5/lib/plugin # 在 Ubuntu 22.04 上
export HDF5_PLUGIN_PATH=$HDF5_PLUGIN_PATH:/usr/local/lib/hdf5/plugin # 在 Ubuntu 24.04 上
请注意,如果您使用的是第三方相机,则需要安装由
相机供应商提供的插件,并使用 `MV_HAL_PLUGIN_PATH` 环境变量指定插件的位置。
要开始使用 OpenEB,您可以下载一些 [样本录像](https://docs.prophesee.ai/stable/datasets.html)
并使用 [metavision_viewer](https://docs.prophesee.ai/stable/samples/modules/stream/viewer.html) 可视化它们
或者您可以从兼容 Prophesee 的基于事件的相机传输数据。
### 运行测试套件(可选)
运行测试套件是验证编译和安装是否成功的最佳方式。
* 下载运行测试所需的 [文件](https://kdrive.infomaniak.com/app/share/975517/0b7e3395-374a-4552-86d0-8aa4527392b3)。
点击右上角文件夹的 `Download`。请注意,下载的归档文件大小约为 1.5 Gb。
* 解压归档文件并将内容放在 `/datasets` 中。
例如,序列 `gen31_timer.raw` 应位于 `/datasets/openeb/gen31_timer.raw`。
* 在启用了测试选项的情况下重新生成 makefile:
```
cd /build
cmake .. -DBUILD_TESTING=ON
```
* 再次编译。 `cmake --build . --config Release -- -j 4`
* 最后,运行测试套件: `ctest --verbose`
## 在 Windows 上编译
目前,我们仅支持 Windows 11。
在其他 Windows 版本上的编译尚未经过测试。
对于这些平台,可能需要对本指南或代码本身进行一些调整。
### 升级 OpenEB
如果您要从先前版本升级 OpenEB,请首先查看 [发行说明](https://docs.prophesee.ai/stable/release_notes.html)。
某些更改可能会影响您对 SDK 的使用(例如 [API](https://docs.prophesee.ai/stable/api.html) 更新)
和相机(例如可能需要进行 [固件更新](https://support.prophesee.ai/portal/en/kb/articles/evk-firmware-versions))。
在安装新版本之前,请移除任何先前安装的 Prophesee 软件。
移除您安装 Metavision 工件的文件夹,检查以下两项:
* 源代码的 `build` 文件夹,
* `C:\Program Files\Prophesee`,这是部署步骤的默认安装路径。
### 获取 OpenEB 源代码
要获取 OpenEB 源代码,您可以克隆 [GitHub 上的 OpenEB 仓库](https://github.com/prophesee-ai/openeb):
```
git clone https://github.com/prophesee-ai/openeb.git --branch 5.2.0
```
在以下章节中,此目录的绝对路径将称为 ``OPENEB_SRC_DIR``
如果您选择从 GitHub 下载 OpenEB 的归档文件而不是克隆仓库,
请确保选择 `Full.Source.Code.*` 归档文件。请勿使用自动生成的 `Source.Code.*` 归档文件,
因为它不包含必需的 submodule。
### 前置条件
此过程的某些步骤在 FAT32 和 exFAT 文件系统上无法运行。
因此,在继续之前,请确保您使用的是 NTFS 文件系统。
您必须启用对长路径的支持:
* 按 Windows 键,输入 gpedit.msc 并按回车
* 导航到 Local Computer Policy > Computer Configuration > Administrative Templates > System > Filesystem
* 双击“Enable Win32 long paths”选项,选择“Enabled”选项并点击“OK”
要编译 OpenEB,您需要安装一些额外的工具:
* 安装 [git](https://git-scm.com/download/win)
* 安装 [CMake 3.26](https://cmake.org/files/v3.26/cmake-3.26.6-windows-x86_64.msi)
* 安装 Microsoft C++ 编译器(64 位)。您可以选择以下解决方案之一:
* 仅用于构建,您可以安装 MS Build Tools(免费,属于 Windows SDK 包的一部分)
* 安装包含在
[Visual Studio 2022 - Fall 2023 LTSC version 17.8](https://learn.microsoft.com/en-us/visualstudio/releases/2022/release-history#evergreen-bootstrappers) 中的 Microsoft Visual C++ 编译器(MSVC,64 位版本)。
* 选择“C++ build tools”,勾选 Windows 10 SDK,并添加 English Language Pack
* 用于开发,您也可以下载并运行 [Visual Studio Installer](https://visualstudio.microsoft.com/downloads/)
* 安装 [vcpkg](https://github.com/microsoft/vcpkg),它将用于安装依赖项:
* 在我们将称为VCPKG_SRC_DIR` 的文件夹中下载并解压 [vcpkg 2024.11.16 版本](https://github.com/microsoft/vcpkg/archive/refs/tags/2024.11.16.zip)
* `cd `
* `bootstrap-vcpkg.bat`
* `vcpkg update`
* 将位于 OpenEB 源代码 ``utils/windows/11`` 中的 ``vcpkg-openeb.json`` 文件复制
到 `VCPKG_SRC_DIR` 中并将其重命名为 ``vcpkg.json``
* 运行以下命令安装库:
* `vcpkg install --triplet x64-windows --x-install-root installed`
* 最后,下载并安装 [ffmpeg](https://www.gyan.dev/ffmpeg/builds/ffmpeg-release-full.7z),并将 `bin` 目录添加到您的 PATH 中。
请注意,如果您要在多个项目或版本的 OpenEB 中使用 vcpkg,简化您管理的
vcpkg 安装数量会很有帮助。为了实现这一点,您将需要
库的具体版本。您可以通过将我们的 `vcpkg.json` 文件与
[官方 vcpkg 仓库](https://github.com/microsoft/vcpkg/tree/2024.11.16/versions) 进行交叉比对来找到这些版本,
但为了您的方便,我们在下面列出了它们:
* libusb: 1.0.26
* boost: 1.84.0
* opencv: 4.8.0
* dirent: 1.24.0
* gtest: 1.14.0
* pybind11: 2.11.1
* glew: 2.2.0
* glfw3: 3.3.9
* hdf5: 1.14.2
* protobuf: 3.21.12
#### 安装 Python 和库
* 下载以下 Python 版本之一的“Windows x86-64 executable installer”:
* [Python 3.10](https://www.python.org/downloads/release/python-31011/)
* [Python 3.11](https://www.python.org/downloads/release/python-3119/)
* [Python 3.12](https://www.python.org/downloads/release/python-3125/)
* 将 Python 安装和脚本目录添加到您的 `PATH` 中,并确保它们列在
包含启动 Microsoft Store 的 Python 别名的 `WindowsApps` 文件夹之前。因此,如果您将
Python 3.10 安装在默认路径中,您的用户 `PATH` 应按该顺序包含以下三行:
```
%USERPROFILE%\AppData\Local\Programs\Python\Python310
%USERPROFILE%\AppData\Local\Programs\Python\Python310\Scripts
%USERPROFILE%\AppData\Local\Microsoft\WindowsApps
```
我们建议在 Python 中使用 [virtualenv](https://virtualenv.pypa.io/en/latest/) 以避免与其他已安装的 Python 包发生冲突。
创建一个虚拟环境并安装必要的依赖项。要仅使用 CPU 的 pytorch(无 cuda):
```
python -m venv C:\tmp\prophesee\py3venv --system-site-packages
C:\tmp\prophesee\py3venv\Scripts\python -m pip install pip --upgrade
C:\tmp\prophesee\py3venv\Scripts\python -m pip install -r OPENEB_SRC_DIR\utils\python\requirements_openeb.txt -r OPENEB_SRC_DIR\utils\python\requirements_pytorch_cpu.txt
```
要使用带有 cuda 的 pytorch,请使用 `OPENEB_SRC_DIR/utils/python/requirements_pytorch_cuda.txt` 替代 `OPENEB_SRC_DIR/utils/python/requirements_pytorch_cpu.txt`
在创建虚拟环境时,必须使用 `--system-site-packages` 选项以确保
可以访问安装在系统目录中的 SDK 包。但是,此选项也会默认使您的本地
用户 site-packages 可见。
为了防止这种情况并保持更干净的虚拟环境,您可以将环境变量 `PYTHONNOUSERSITE` 设置为 true。
可选地,您可以运行 `activate` 命令(`C:\tmp\prophesee\py3venv\Scripts\activate`)来修改您的 shell 环境变量,
将虚拟环境的 Python 解释器和脚本设置为当前会话的默认值。
这允许您使用简单的命令(如 `python`),而无需每次都指定完整路径。
#### ML 模块的前置条件
要使用机器学习功能,您需要安装一些额外的依赖项。
首先,如果您有带 GPU 的 Nvidia 硬件,您可以选择安装 [CUDA (11.6 或 11.7)](https://developer.nvidia.com/cuda-downloads)
和 [cuDNN](https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html),以利用 pytorch 和 libtorch。
### 编译
#### 使用 CMake 编译
在 `OPENEB_SRC_DIR` 文件夹中打开命令提示符:
1. 创建并打开 build 目录,将在其中创建临时文件:`mkdir build && cd build`
2. 使用 CMake 生成 makefile:`cmake .. -A x64 -DCMAKE_TOOLCHAIN_FILE=\cmake\toolchains\vcpkg.cmake -DVCPKG_DIRECTORY=`。
请注意,传递给参数 `-DCMAKE_TOOLCHAIN_FILE` 的值必须是绝对路径,而不是相对路径。
3. 编译:`cmake --build . --config Release --parallel 4`
编译完成后,您有两个选择:您可以选择直接在 `build` 文件夹中工作,
或者您可以将 OpenEB 文件(应用程序、示例、库等)部署在您选择的目录中。
* 选项 1 - 在 `build` 文件夹中工作
* 要直接从 `build` 文件夹使用 OpenEB,
您需要使用此脚本更新一些环境变量:
utils\scripts\setup_env.bat
* 选项 2 - 部署在您选择的目录中
* 要将 OpenEB 部署在默认文件夹(`C:\Program Files\Prophesee`)中,请执行此命令
(您的控制台应以管理员身份启动):
cmake --build . --config Release --target install
* 要将 OpenEB 部署在另一个文件夹中,您应该重新生成解决方案(上述第 2 步)
并加上值为您的目标文件夹(`OPENEB_INSTALL_DIR`)的附加变量 `CMAKE_INSTALL_PREFIX`。
同样,要指定 Python 包的部署位置(``PYTHON3_PACKAGES_INSTALL_DIR``),您应该使用
`PYTHON3_SITE_PACKAGES` 变量。
以下是自定义这两个文件夹的命令示例:
cmake .. -A x64 -DCMAKE_TOOLCHAIN_FILE=\cmake\toolchains\vcpkg.cmake -DVCPKG_DIRECTORY= -DCMAKE_INSTALL_PREFIX= -DPYTHON3_SITE_PACKAGES= -DBUILD_TESTING=OFF
执行此命令后,您应该启动 OpenEB 的实际编译和安装
(您的控制台应以管理员身份启动):
cmake --build . --config Release --parallel 4
cmake --build . --config Release --target install
* 您还需要手动编辑一些环境变量:
* 将 `\bin` 追加到 `PATH`(如果您使用默认配置,则为 `C:\Program Files\Prophesee\bin`)
* 将 `\lib\metavision\hal\plugins` 追加到 `MV_HAL_PLUGIN_PATH`(如果您使用默认配置,则为 `C:\Program Files\Prophesee\lib\metavision\hal\plugins`)
* 将 `\lib\hdf5\plugin` 追加到 `HDF5_PLUGIN_PATH`(如果您使用默认配置,则为 `C:\Program Files\Prophesee\lib\hdf5\plugin`)
* 将 `` 追加到 `PYTHONPATH`(如果您使用默认配置,则不需要)
#### 使用 MS Visual Studio 编译
在 `OPENEB_SRC_DIR` 文件夹中打开命令提示符:
1. 创建并打开 build 目录,将在其中创建临时文件:`mkdir build && cd build`
2. 使用 CMake 生成 Visual Studio 文件:`cmake .. -G "Visual Studio 17 2022" -A x64 -DCMAKE_TOOLCHAIN_FILE=\cmake\toolchains\vcpkg.cmake -DVCPKG_DIRECTORY=`(根据您的 Visual Studio 版本进行调整)。
请注意,传递给参数 `-DCMAKE_TOOLCHAIN_FILE` 的值必须是绝对路径,而不是相对路径。
3. 打开解决方案文件 `metavision.sln`,选择 `Release` 配置并构建 `ALL_BUILD` 项目。
编译完成后,您可以选择直接在 `build` 文件夹中工作,
或者您可以将 OpenEB 文件(应用程序、示例、库等)部署在您选择的目录中。
* 选项 1 - 在 `build` 文件夹中工作
* 要直接从 `build` 文件夹使用 OpenEB,
您需要按照脚本 `utils\scripts\setup_env.bat` 中的操作更新环境变量
* 选项 2 - 部署 OpenEB
* 要部署 OpenEB,您需要构建 `INSTALL` 项目。
默认情况下,文件将部署在 `C:\Program Files\Prophesee` 中
* 您还需要手动编辑一些环境变量:
* 将 `\bin` 追加到 `PATH`(如果您使用默认配置,则为 `C:\Program Files\Prophesee\bin`)
* 将 `\lib\metavision\hal\plugins` 追加到 `MV_HAL_PLUGIN_PATH`(如果您使用默认配置,则为 `C:\Program Files\Prophesee\lib\metavision\hal\plugins`)
* 将 `\lib\hdf5\plugin` 追加到 `HDF5_PLUGIN_PATH`(如果您使用默认配置,则为 `C:\Program Files\Prophesee\lib\hdf5\plugin`)
* 将 `` 追加到 `PYTHONPATH`(如果您使用默认配置,则不需要)
#### 相机插件
Prophesee 相机插件已包含在 OpenEB 中,但您需要安装驱动程序
以便相机可在 Windows 上使用。为此,请按照以下步骤操作:
1. 从我们的文件服务器下载 [wdi-simple.exe](https://kdrive.infomaniak.com/app/share/975517/cb164518-e68f-49fd-a6a1-eea693783bd2)
2. 在以管理员身份启动的命令提示符中执行以下命令:
```
wdi-simple.exe -n "EVK" -m "Prophesee" -v 0x04b4 -p 0x00f4
wdi-simple.exe -n "EVK" -m "Prophesee" -v 0x04b4 -p 0x00f5
wdi-simple.exe -n "EVK" -m "Prophesee" -v 0x04b4 -p 0x00f3
```
如果您拥有 EVK2 或 RDK2,还有几个额外的步骤需要完成,详情请参阅我们的在线文档
中 OpenEB 安装指南的 [相机插件部分](https://docs.prophesee.ai/stable/installation/windows_openeb.html#camera-plugins)。
如果您使用的是第三方相机,则需要按照相机供应商提供的说明
安装驱动程序和相机插件。请确保在
`MV_HAL_PLUGIN_PATH` 环境变量中引用该插件的位置。
#### 开始使用
要开始使用 OpenEB,您可以下载一些 [样本录像](https://docs.prophesee.ai/stable/datasets.html)
并使用 [metavision_viewer](https://docs.prophesee.ai/stable/samples/modules/stream/viewer.html) 可视化它们
或者您可以从兼容 Prophesee 的基于事件的相机传输数据。
### 运行测试套件(可选)
运行测试套件是确保您在编译和安装过程中一切正常的可靠方法。
* 下载运行测试所需的 [文件](https://kdrive.infomaniak.com/app/share/975517/0b7e3395-374a-4552-86d0-8aa4527392b3)。
点击右上角文件夹的 `Download`。请注意,下载的归档文件大小约为 1.5 Gb。
* 解压归档文件并将内容放在 `/datasets` 中。
例如,序列 `gen31_timer.raw` 应位于 `/datasets/openeb/gen31_timer.raw`。
* 要运行测试套件,您需要使用 CMake 重新配置构建环境并重新编译
* 使用 CMake 编译
1. 使用 CMake 重新生成构建(注意 `-DCMAKE_TOOLCHAIN_FILE` 必须是绝对路径,而不是相对路径)::
cd /build
cmake .. -A x64 -DCMAKE_TOOLCHAIN_FILE=\cmake\toolchains\vcpkg.cmake -DVCPKG_DIRECTORY= -DBUILD_TESTING=ON
2. 编译:`cmake --build . --config Release --parallel 4`
* 使用 MS Visual Studio 编译
1. 使用 CMake 生成 Visual Studio 文件(根据您的 Visual Studio 版本调整命令,并注意 `-DCMAKE_TOOLCHAIN_FILE` 必须是绝对路径,而不是相对路径):
`cmake .. -G "Visual Studio 17 2022" -A x64 -DCMAKE_TOOLCHAIN_FILE=\cmake\toolchains\vcpkg.cmake -DVCPKG_DIRECTORY= -DBUILD_TESTING=ON`
2. 打开解决方案文件 `metavision.sln`,选择 `Release` 配置并构建 `ALL_BUILD` 项目。
* 运行测试套件只需执行 `ctest -C Release`
标签:Apex, Bash脚本, C++, Python, 事件相机, 凭据扫描, 数据擦除, 无后门, 机器学习, 机器视觉, 硬件抽象层, 逆向工具