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

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

3天内不再提示

AMD Vitis™ Libraries Vision L3 Isppipeline U50流程示例

XILINX开发者社区 来源:XILINX开发者社区 2024-01-03 10:10 次阅读

一. 关于 AMD Vitis Vision Library

Vitis Vision 库是一组 90 多个内核,基于 OpenCV 计算机视觉库,针对 AMD FPGA、AMD AI Engine 和 AMD SoC 进行了优化。 Vitis Vision 库中的内核在 Vitis 工具套件中进行了优化和支持。

二.硬件和软件要求

Vitis Vision 库设计用于与 AMD Zynq、AMD Zynq Ultrascale+、AMD VCK190和 AMD Alveo FPGA 配合使用。 该库已在 zcu102、zcu104、vck190、U50 和 U200 板上经过验证。

必要条件:

有效安装Vitis 2022.2或更高版本以及相应的许可证。

必须安装Xilinx Runtime (XRT)。 XRT 为 AMD FPGA 提供软件接口

安装 OpenCV-4.4.0 x86 库(兼容libjpeg.so)。 x86 库必须用于:

a.L1 flow irrespective of target FPGA device being PCIe or embedded.
b.L2/L3 flow when the target device is PCIe based
c.L2/L3 flow when performing software emulation for an embedded platform.
对于针对嵌入式平台的 L2/L3 Flow(针对hardware emulation and hardware build),应使用 sysroot 中附带的 aarch32/aarch64 版本 OpenCV。

如果libOpenCL.so不存在,则必须安装。

安装 Vitis 2022.2 或更高版本支持该平台的卡。

如果针对嵌入式平台,请安装它并设置评估板。

三.OpenCV 安装指导

建议全新安装 OpenCV 4.4.0,不要使用系统的现有库,因为它们可能适用于 Vitis 环境,也可能不适用于。

请确保更新和升级系统的软件包和操作系统库,并安装 cmake 版本>3.5,然后再继续。不然可能遇到如下的错误:

#CMake Error: The source directory "/home/***/Desktop/source/source/build/WITH_V4L=ON" does not exist.

以下步骤可帮助安装编译和链接 Vitis Vision 主机代码中的 OpenCV 调用所需的基本库。

cc475832-a95e-11ee-8b88-92fbcf53809c.png

下面是一个完整的示例,基于 Ubuntu 22.04/bash,在 /home/ycw/Desktop 路径下操作。

cc70fc96-a95e-11ee-8b88-92fbcf53809c.png

以下为可能会遇到的问题:

Q1: 遇到下面的这个错误,可能 cmake 的版本没有大于3.5。

CMake Error: The source directory "/home/ycw/Desktop/source/source/build/WITH_V4L=ON" does not exist.

Q2:FATAL: In-source builds are not allowed.

需要安装上面的步骤 mkdir build文件夹,注意如果已经创建了 build 目录,还是出现这个 FATAL ERROR 注意 cd 回 source 目录内,尝试使用如下命令清理一下 cache:rm -rf CMakeCache.txt CMakeFiles

Q3:CMAKE_CXX_COMPILER=< path-to-Vitis-installation-directory>.

这里的 path-to-Vitis-installation-directory应该设置成 Vitis_HLS 的路径。

见上面的完整示例。

五. 两种platform 的master/vision/L3/examples/isppipeline 的流程


Level 3: Pipeline Applications:
https://github.com/Xilinx/Vitis_Libraries/tree/master/vision/L3#level-3-pipeline-applications


不同设备和行为流程如下:

cc8eb736-a95e-11ee-8b88-92fbcf53809c.png

实例:

1. Pcie设备示例(U50):

xilinx_u50_gen3x16_xdma_5_202210_1.xpfm的编译 make 流程:

a. OPENCV_INCLUDE、OPENCV_LIB 指向的是步骤3(OpenCV安装指导)CMAKE_INSTALL_PREFIX 设置的目录内。

b. U50 的platform

(xilinx_u50_gen3x16_xdma_5_202210_1.xpfm)

该示例 xilinx_u50_gen3x16_xdma_5_202210_1.xpfm 默认部署在下图的路径。

cca6d42e-a95e-11ee-8b88-92fbcf53809c.png

c. 示例代码:

ccbf887a-a95e-11ee-8b88-92fbcf53809c.png

2. Embedded 设备示例(ZCU102):

xilinx_zcu102_base_202220_1.xpfm 的编译 make 流程:

注意点:

a.OPENCV_INCLUDE、OPENCV_LIB指向的是步骤3(OpenCV安装指导)CMAKE_INSTALL_PREFIX 设置的目录内。

b. SYSROOT 可以通过如下的方式获取:

2.1 在下面的链接下载 zynqmp 的 common image :

https://www.xilinx.com/member/forms/download/xef.html?filename=xilinx-zynqmp-common-v2022.2_10141622.tar.gz

2.2 解压之后,cd 到 common-image 目录内,使用命令(./sdk.sh-y -d ./ -p)安装 sysroot。该示例安装完成之后,安装在下图显示的目录:/home/ycw/Desktop/xilinx-zynqmp-common-v2022.2/sysroots/

ccd9e030-a95e-11ee-8b88-92fbcf53809c.png

c.示例代码:

ccf8727a-a95e-11ee-8b88-92fbcf53809c.png

六. 板上运行

U50 的 HW 运行示例:

1. 使用 make run TARGET=hw 运行的示例代码:

cd156042-a95e-11ee-8b88-92fbcf53809c.png

注:运行之后可以看到在

/home/ycw/Desktop/Vitis_Libraries-2022.2/vision/L3/examples/isppipeline/目录下生成了 hls_output.png 文件。

2. Build HW 之后生成的 App 运行示例:

cd308066-a95e-11ee-8b88-92fbcf53809c.png

注:

1. 当前在

/home/ycw/Desktop/Vitis_Libraries-2022.2/vision/L3/examples/isppipeline/build_dir.hw.xilinx_u50_gen3x16_xdma_5_202210_1/

路径内,isppipeline 需要带入输入图片的绝对路径参数,这里输入图片的路径是:

/home/ycw/Desktop/Vitis_Libraries-2022.2/vision/L3/examples/isppipeline/input.png

2. 生成的图片默认也在

/home/ycw/Desktop/Vitis_Libraries-2022.2/vision/L3/examples/isppipeline/build_dir.hw.xilinx_u50_gen3x16_xdma_5_202210_1/

路径内。

cd4cc58c-a95e-11ee-8b88-92fbcf53809c.png








审核编辑:刘清

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

    关注

    1603

    文章

    21326

    浏览量

    593231
  • soc
    soc
    +关注

    关注

    38

    文章

    3746

    浏览量

    215695
  • 计算机视觉
    +关注

    关注

    8

    文章

    1600

    浏览量

    45617
  • OpenCV
    +关注

    关注

    29

    文章

    611

    浏览量

    40786
  • Ubuntu系统
    +关注

    关注

    0

    文章

    84

    浏览量

    3785

原文标题:开发者分享|AMD Vitis™ Libraries Vision L3 Isppipeline U50/ZCU102 流程示例

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

收藏 人收藏

    评论

    相关推荐

    Vitis2023.2使用之—— classic Vitis IDE

    AMD官网下载全系统安装包,或下载网页版安装包,安装好vitis全套组件。打开vivado建一个测试工程编译好后,在tcl命令输入框子输入命令 vitis –classic 即可打开传统的GUI界面
    发表于 03-24 16:15

    AMD将放弃Vision品牌 改用platform区分产品

    相近而不得不放弃。今天根据SemiAccurate消息称AMD将放弃Vision品牌,网站称“所有提及” Vision名称的新PC和产品样本都将会被移除,并且以后对笔记本等称呼以“platform
    发表于 12-29 13:41

    有具有CMT,MBM,L3 CAT,L3 CDP和MBA的处理器吗

    大家好,我想购买一台带有两个处理器的服务器,每个处理器至少支持16个核心,我还需要它们支持CMT,MBM,L3 CAT和L3 CDP,在理想的世界中它们也支持MBA。我已经读过家庭E5xxxx v4
    发表于 11-06 11:19

    在IWR1642/AWR1642上修改代码改变L3 RAM分布

    本文以AWR1642为例,介绍了在AWR1642 ES2.0 EVM上基于mmWave SDK 2.1的mmw demo下如何修改代码来改变L3 RAM分布的具体流程和步骤。IWR1642
    发表于 03-12 06:45

    普通电脑换上Xilinx Alveo U50 100G网卡传文件会有多快

    高性能数据中心的网络演进趋势开源100Gbps NIC(Corundum)架构简介基于流水线的队列管理基于Xilinx Alevo U50和VCU118 板卡的测试
    发表于 01-28 07:14

    如何在IWR1642/AWR1642上修改L3 RAM的分布?

    本文以AWR1642为例,介绍了在AWR1642 ES2.0 EVM上基于mmWave SDK 2.1的mmw demo下如何修改代码来改变L3 RAM分布的具体流程和步骤。IWR1642
    发表于 11-10 08:06

    【KV260视觉入门套件试用体验】部署DPU镜像并运行Vitis AI图像分类示例程序

    /root目录下已经有了两个目录。 使用tree命令,可以看到Vitis-AI目录结构: 接下来我们将会尝试运行vai_runtime下的resnet50示例程序,我们先看看这个目录下的文件结构
    发表于 09-10 23:01

    【KV260视觉入门套件试用体验】Vitis-AI加速的YOLOX视频目标检测示例体验和原理解析

    会对关键源码进行解析。 一、Vitis AI Library简介 上一篇帖子中,我们了解了Vitis统一软件平台和Vitis AI,并体验了Vitis AI Runtime的Resne
    发表于 10-06 23:32

    【KV260视觉入门套件试用体验】KV260系列之Petalinux镜像+Resnet 50探索

    的工具、功能强大的库、多元化的模型和直观的设计示例Vitis AI 以高效和易用性为核心,使其得以在 AMD SoC 和自适应 SoC 上成功解锁 AI 加速的全部潜能。Vitis
    发表于 10-16 04:22

    Vitis Vision | 利用Vitis HLS tcl shell 一键跑通视觉加速例程

    在论坛上遇到在高层次综合工具中调用视觉库遇到的大多数问题都和 opencv 库以及Xilinx Vision 库的安装路径有关,如今 Vitis HLS 2020.1 之后的版本都不再提供
    发表于 01-27 06:17 6次下载
    <b class='flag-5'>Vitis</b> <b class='flag-5'>Vision</b> | 利用<b class='flag-5'>Vitis</b> HLS tcl shell 一键跑通视觉加速例程

    基于Vitis HLS的加速图像处理

    Vitis Vision库是OpenCV和Vision功能的加速库,可在Vitis环境中使用,这些库的L1目录是示例设计。为了适应各种用户环
    的头像 发表于 02-16 16:21 2067次阅读
    基于<b class='flag-5'>Vitis</b> HLS的加速图像处理

    Vitis HLS工具简介及设计流程

    Vitis HLS 是一种高层次综合工具,支持将 C、C++ 和 OpenCL 函数硬连线到器件逻辑互连结构和 RAM/DSP 块上。Vitis HLS 可在Vitis 应用加速开发流程
    的头像 发表于 05-25 09:43 1979次阅读

    AMD全新Vitis HLS资源现已推出

    AMD Vitis HLS 工具允许用户通过将 C/C++ 函数综合成 RTL,轻松创建复杂的 FPGA 算法。Vitis HLS 工具与 Vivado Design Suite(用于综合、布置和布线)及
    的头像 发表于 04-23 10:41 688次阅读
    <b class='flag-5'>AMD</b>全新<b class='flag-5'>Vitis</b> HLS资源现已推出

    Vitis流程:视觉 L1 重映射函数 Zynq baremetal 设计实例

    本文展示了在AMD Zynq设计中,如何用 Vitis Vision Library中的函数导出一个 IP
    的头像 发表于 07-13 17:05 359次阅读
    <b class='flag-5'>Vitis</b> 库<b class='flag-5'>流程</b>:视觉 L1 重映射函数 Zynq baremetal 设计实例

    Alveo U50数据中心加速卡数据表

    电子发烧友网站提供《Alveo U50数据中心加速卡数据表.pdf》资料免费下载
    发表于 09-15 10:45 0次下载
    Alveo <b class='flag-5'>U50</b>数据中心加速卡数据表