如何在Sundance VCS3 MPSoC开发板上启用Vitis AI/DPU,并配合Prophesee IMX636事件驱动视觉摄像头
VCS3 是市场上最小的封装形式的 MPSoC 平台之一。其紧凑的尺寸和低功耗使其成为边缘 AI 应用的理想平台。搭载 XCZU3EG MPSoC,VCS3 提供了低延迟、高能效的处理流水线,适用于实时 AI 负载。
本文介绍了如何为Sundance VCS3 MPSoC开发套件创建FPGA设计,集成Prophesee IMX636事件驱动视觉传感器(即神经形态或DVS传感器),并部署机器学习模型以实时处理事件驱动的数据。
基于事件的视觉传感器Prophesee是一种神经形态传感器,也称为动态视觉传感器(DVS)。
我们正在使用 2022.2 版本的工具,即 VIVADO 和 Petalinux 进行此应用开发。
本应用快速概览
VIVADO流水线 - 概述
VIVADO流水线包括用于Prophesee事件传感器数据采集的IMX636 MIPI流水线、用于机器学习推理的DPU层次结构,以及在VCS3 3D套件上显示EventML结果的显示流水线。
我们正在使用 Vitis AI 3.0 和 DPU B512 变体进行机器学习推理。在设计中采用这些 IP 模块后,完整流水线的资源使用情况如下:
Petalinux 开发
我们基于Sundance提供的模板,开发了petalinux项目,并为VCS3套件构建了构建产物。VCS3有三种主要的Linux启动方式,即JTAG、QSPI和eMMC。
我们正在eMMC的一个分区中启动BOOT.BIN、boot.scr和image.ub,第二个分区则存放Rootfs。
要获取Prophesee IMX636事件式传感器数据,我们需要在Petalinux镜像上使用Metavision SDK(openEB核心),并且摄像头访问以及部分数据处理都在Metavision SDK中完成。
同一款应用结合MetaVision SDK,可运行基于DPU的机器学习推理,并将结果显示在VCS3 3D套件附带的显示器上。
上述机器学习模型可实时处理传感器捕获的事件型数据。该模型参数少于40万个,针对边缘AI推理进行了高度优化,可在紧凑的Sundance VCS3 MPSoC平台上实现低延迟、高功耗效率的运行。这表明,即使采用小型外形的MPSoC,也能有效运行实时的事件型视觉应用,而无需依赖高端计算硬件。
本文编译自hackster.io





