0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用VVAS开发软件应用

XILINX开发者社区 来源:XILINX开发者社区 2023-08-02 09:28 次阅读

本文作者:AMD 工程师Chen Shaoyi

Vitis 视频分析 SDK 是在 AMD 平台上构建 AI 驱动的智能视频分析解决方案的完整软件栈。它从 USB/MIPI 摄像头、视频文件或者 RTSP 流中获取输入,并使用 Vitis AI 实现各种基于人工智能的应用,如智能城市、行人检测、健康监测、智慧零售、缺陷检测等等。

对于开发者,VVAS 以基础插件、软件加速库的形式提供了一个框架,并为用户开发自己的插件以控制定制的硬件加速器提供了简化接口。有了这个框架,用户可以轻松地将他们的定制加速器/内核集成到 Vitis Video Analytics SDK 中。它建立在 XRT、Vitis 和 Vitis AI 之上,并对这些复杂的接口进行了抽象化,使开发人员更容易构建视频分析应用。

96f1db84-305b-11ee-9e74-dac502259ad0.png

用户通过 Core API 可以完成软硬件的调度。这四个 API 是:

xlnx_kernel_init()

xlnx_kernel_deinit()

xlnx_kernel_start()

xlnx_kernel_done()

我们首先介绍如何将软件应用集合到 VVAS 框架中。软件应用指的是只在 CPU 上执行,不使用 FPGA 部分的自定义插件。我们以 smartcam 应用中的 AI Rendering 插件作为例子。相关代码可以从参考链接中找到。

973263d4-305b-11ee-9e74-dac502259ad0.png

AI Rendering 插件的主要功能是绘制检测到的物体。当 DPU 推理结果(如检测到的人脸的坐标)传递给 AI Rendering 插件后,该插件负责在原始帧中的物体周围绘制边界框。

xlnx_kernel_init() API 只在插件初始化的时候被 VVAS 调用一次。软件应用可以在这个函数中执行一次性初始化操作。

9768620e-305b-11ee-9e74-dac502259ad0.png

xlnx_kernel_start() API 在处理输入缓冲区中的每个帧调用这个 API,以便进一步处理。软件应用可以执行每帧操作,如更新状态机,读/写 IP 的寄存器,然后指示 kernel 处理输入。

979e3712-305b-11ee-9e74-dac502259ad0.png

xlnx_kernel_done() VVAS 基础插件会调用这个 API 来确认 kernel 是否已经完成处理缓冲区中的帧。加速应用可以在这个函数中实现逻辑,以通过这个 API 了解 kernel 的状态。

97d2079a-305b-11ee-9e74-dac502259ad0.png

xlnx_kernel_deinit() 这个 API 在 kernel 结束运行时被 VVAS 基础插件调用。加速应用必须执行任何清理、去初始化任务,如释放私有句柄和内部内存分配。

97eb070e-305b-11ee-9e74-dac502259ad0.png

以上代码编译后成为 vvas 插件的一部分,并放置在 /opt/xilinx/kv260-smartcam/lib/ 目录下。

9802e28e-305b-11ee-9e74-dac502259ad0.png

在 smartcam 的 GStreamer 应用中,调用 drawresult 的相关代码为:

98287d78-305b-11ee-9e74-dac502259ad0.png


其中 drawresult.json 中需要指明使用的库文件名为 libvvas_airender.so:

9841e5ec-305b-11ee-9e74-dac502259ad0.png

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • amd
    amd
    +关注

    关注

    25

    文章

    5413

    浏览量

    133763
  • 接口
    +关注

    关注

    33

    文章

    8422

    浏览量

    150665
  • 摄像头
    +关注

    关注

    59

    文章

    4788

    浏览量

    95210
  • Video
    +关注

    关注

    0

    文章

    195

    浏览量

    45131
  • Vitis
    +关注

    关注

    0

    文章

    145

    浏览量

    7369

原文标题:开发者分享|使用 VVAS 开发软件应用

文章出处:【微信号:gh_2d1c7e2d540e,微信公众号:XILINX开发者社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    清华FPGA的开发软件

    清华的FPGA除了官方提供的开发软件,能用其它开发软件进行开发吗? 官方的开发软件安装,挺麻烦啊。
    发表于 06-23 12:25

    开发软件

    一个好的开发软件是一个好的开始,对于为电子领域来说,好的开发软件更为至关重要;现在就给大家介绍几款好的开发软件,1,就是keil2.就是protues3.protel 99 se这三款开发软件
    发表于 07-20 10:23

    Altera FPGA开发软件安装指南

    Altera FPGA开发软件安装指南
    发表于 07-21 17:19 0次下载
    Altera FPGA<b class='flag-5'>开发软件</b>安装指南

    AVR开发软件大全

    AVR开发软件大全
    发表于 01-16 11:33 3896次阅读

    STM8S开发软件安装教程

    ST公司的8位单片机-STM8S开发软件安装教程
    发表于 09-01 15:01 0次下载

    ADI DSP开发软件的学习软件

    ADI DSP开发软件的学习软件
    发表于 01-14 14:42 21次下载

    arm开发软件使用教程

    arm开发软件使用教程
    发表于 02-08 00:52 27次下载

    ZigBee开发软件和驱动

    ZigBee开发软件和驱动
    发表于 12-01 17:15 17次下载
    ZigBee<b class='flag-5'>开发软件</b>和驱动

    开发套件SnapSensor开发软件

    开发套件SnapSensor开发软件
    发表于 05-28 09:42 1次下载
    <b class='flag-5'>开发</b>套件SnapSensor<b class='flag-5'>开发软件</b>

    串口屏开发软件VisualTFT_3.0.0.1176

    串口屏开发软件VisualTFT_3.0.0.1176
    发表于 04-28 13:43 6次下载

    串口屏开发软件VisualTFT_3.0.0.1137

    串口屏开发软件VisualTFT_3.0.0.1137
    发表于 04-28 13:47 18次下载

    FP7195设计开发软件

    电子发烧友网站提供《FP7195设计开发软件.zip》资料免费下载
    发表于 11-08 00:41 41次下载

    FP5207设计开发软件

    电子发烧友网站提供《FP5207设计开发软件.rar》资料免费下载
    发表于 11-08 21:40 43次下载

    FP5217设计开发软件

    电子发烧友网站提供《FP5217设计开发软件.zip》资料免费下载
    发表于 11-08 23:14 15次下载

    FP7209设计开发软件

    电子发烧友网站提供《FP7209设计开发软件.zip》资料免费下载
    发表于 11-10 22:38 49次下载