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

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

3天内不再提示

基于Vitis HLS的加速图像处理

C29F_xilinx_inc 来源:赛灵思 作者:赛灵思 2022-02-16 16:21 次阅读

1、unified2020.1
linux ubuntu18.04.2

推荐文档链接:
https://xilinx.github.io/Vitis_Libraries/vision/2020.1/overview.html#hls...
https://forums.xilinx.com/t5/High-Level-Synthesis-HLS/Using-Vitis-Vision...
https://github.com/Xilinx/Vitis_Libraries
Vitis Vision库是OpenCV和Vision功能的加速库,可在Vitis环境中使用,这些库的L1目录是示例设计。为了适应各种用户环境,从2020.1版本开始,Xilinx不再使用Vivado / Vitis工具提供预安装的OpenCV版本。尽管Vitis_hls编译Vision库不需要OpenCV,但是用户测试验证使用时OpenCV。

2、linux下安装opencv(opencv-3.4.12)
链接:https://opencv.org/releases/
sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev libjpeg.dev libtiff4.dev
unzip opencv-3.4.12.zip
cd opencv-3.4.12
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release -DOPENCV_GENERATE_PKGCONFIG=ON -DCMAKE_INSTALL_PREFIX=/usr/local …
make -j8
sudo make install

ldconfig -p |grep opencv
sudo ldconfig -v
qt中测试,报错 failed to load module “canberra-gtk-module”
sudo apt-get install libcanberra-gtk-module

3、在vitis library中 每个类别提供三种代码
L1:最低级的代码,旨在用高级综合工具综合后,可以在Vitis(逻辑)中实现这些功能,或将其用作新IP开发的一部分。
L2:中间级可以在Vitis中实现功能(逻辑)。不太懂也不关心!
L3:最高级提供了由多个加速内核创建的应用程序。不太懂也不关心!

4、在linux系统中测试
(1)复制L1/examples中的sobelfilter
(2)将build文件复制到文件夹(xf_config_params.h)这个文件存放的是滤波器参数
(3)在data中辅助一个128x128的png图像
(4)配置hls运行前的环境

source /settings64.sh

export OPENCV_INCLUDE=

export OPENCV_LIB=

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:

(5)在此终端打开vitis_hls
(6)新建hls工程
(7)添加源文件中所需的.cpp 和.h 并且在cflags中添加

-I
-std=c++0x(其他调用的.h文件的路径,否则将头文件复制到一个文件夹)

pYYBAGIMpwuAc9UmAADrfB2ykoA971.png

(8)在tb的cflags中添加

-I
-std=c++0x -I
(其他调用的.h文件的路径,否则将头文件复制到一个文件夹)

pYYBAGIMpw2AHjKZAAE0vQHNAl4672.png

(9)在连接器 (linker flags)中添加

-L
-lopencv_core -lopencv_imgcodecs -lopencv_imgproc

(10)在输入(input arguments)中输入图片名称
(11)保存

5、点击综合

poYBAGIMpw-AITWhAAG1CG9beLU462.png

6、点击仿真

pYYBAGIMpxCABtm7AAE9t5LS-G0135.png

7、实验现象

pYYBAGIMpxGAKJ3wAAFETYgmib0808.png

8、协同仿真

poYBAGIMpxOAJiuVAADPoO7VQFY638.png

9、信号太多,挑模块的输入输出即可,否则除非内存很大,不然会卡死。

输入数据

pYYBAGIMpxSAB2wjAARKrLzrrEI915.png

输出数据

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

    关注

    27

    文章

    1279

    浏览量

    56608
  • Vitis
    +关注

    关注

    0

    文章

    145

    浏览量

    7394
收藏 人收藏

    评论

    相关推荐

    有没有大佬知道NI vision 有没有办法通过gpu和cuda来加速图像处理

    有没有大佬知道NI vision 有没有办法通过gpu和cuda来加速图像处理
    发表于 10-20 09:14

    图像处理器是什么意思

    图像处理器(Image Processor)是一种专门用于图像处理和计算的硬件设备或芯片,它通过高速数据传输、图像编解码、滤波、变换等多种技
    的头像 发表于 08-14 09:28 663次阅读

    AMD Vitis™设计工具中的Libraries新功能介绍

    AMD Vitis™ 2023.2 设计工具是 Vitis 设计工具变化较大的一个版本,设计流程和界面都发生了变化。
    的头像 发表于 05-29 09:50 516次阅读
    AMD <b class='flag-5'>Vitis</b>™设计工具中的Libraries新功能介绍

    基于FPGA的实时边缘检测系统设计,Sobel图像边缘检测,FPGA图像处理

    算法 ,利用乒乓操作和 SDRAM 缓存图像,可以实时提取视频图像的边缘特征。文中对比了 MATLAB 和 FPGA 的处理效果,由于 FPGA 对算法采取了硬件加速,所以相较于 MA
    发表于 05-24 07:45

    在Windows 10上创建并运行AMD Vitis™视觉库示例

    本篇文章将演示创建一个使用 AMD Vitis™ 视觉库的 Vitis HLS 组件的全过程。此处使用的是 Vitis Unified IDE。如果您使用的是旧版 AMD
    的头像 发表于 05-08 14:02 648次阅读
    在Windows 10上创建并运行AMD <b class='flag-5'>Vitis</b>™视觉库示例

    FPGA版通用图形处理架构创新解决方案

    ThunderGP是基于HLS的开源通用图形处理框架,支持Vitis和SDAccel开发环境,适用于U50、U200、U250和VCU1525等Xilinx Alveo平台(官方开发板)。
    发表于 03-26 12:16 434次阅读
    FPGA版通用图形<b class='flag-5'>处理</b>架构创新解决方案

    Vitis2023.2使用之—— updata to Vitis Unified IDE

    上一章聊了一下vitis2023.2怎样使用classic Vitis IDE,这章我们来说一说基于classic Vitis IDE的工程怎么样更新到新版本的Vitis Unifie
    发表于 03-24 17:14

    Vitis2023.2使用之—— classic Vitis IDE

    Vitis 已经更新到2023.2了,新版本相较于旧版本更新了嵌入式平台,新版平台增加了Versal™ AI 引擎 DSP 设计的增强功能,全新的独立 Vitis 嵌入式软件,最新 Vitis 统一
    发表于 03-24 16:15

    Vitis AI用户指南

    电子发烧友网站提供《Vitis AI用户指南.pdf》资料免费下载
    发表于 01-03 10:51 1次下载
    <b class='flag-5'>Vitis</b> AI用户指南

    Vivado HLS图像传感器FPN噪声去除算法设计

    ,表现为明暗不均匀的条带噪声。同时,为了满足图像传感器的实时摄像要求,算法的处理延时要低[3]。基于以上原因,本设计提出一种适用于图像传感器的 FPN 噪声去除算法,并在XilinxZynq平台的 PL 端(FPGA)进行设计与
    的头像 发表于 01-02 11:10 1494次阅读
    Vivado <b class='flag-5'>HLS</b>的<b class='flag-5'>图像</b>传感器FPN噪声去除算法设计

    AMD-Xilinx的Vitis-HLS编译指示小结

    内的走线就会过长,这会导致时序违规。 以下行为可能阻止或限制 Vitis HLS 可在数据流模型内执行的重叠: 在数据流区域中间读取函数输入或写入函数输出。 单一生产者使用者违例。 任务的有条件执行
    发表于 12-31 21:20

    CamSim相机模拟器:极大加速图像处理开发与验证过程

    友思特CamSim相机模拟器,可以极大地加速图像处理的开发和验证过程,轻松复制测试数据,减少测试时间,降低测试成本。
    的头像 发表于 12-27 09:17 461次阅读
    CamSim相机模拟器:极大<b class='flag-5'>加速</b><b class='flag-5'>图像</b><b class='flag-5'>处理</b>开发与验证过程

    Vitis 统一软件平台文档

    AMD Vitis 软件平台是一款开发环境,主要用于开发包括 FPGA 架构、Arm 处理器子系统和 AI 引擎在内的设计。Vitis 工具与 AMD Vivado ML 设计套件相结合,可为
    的头像 发表于 12-20 10:00 490次阅读
    <b class='flag-5'>Vitis</b> 统一软件平台文档

    研讨会:利用编译器指令提升AMD VitisHLS 设计性能

    /C++ 代码为 AMD 设备上可编程逻辑的 RTL 代码加速 IP 创建。 在 Vitis HLS 中,优化指令脱颖而出成为最强大的工具之一,使设计人员能够从相同底层 C 模型出发,探索各种架构
    的头像 发表于 12-05 09:10 507次阅读
    研讨会:利用编译器指令提升AMD <b class='flag-5'>Vitis</b>™ <b class='flag-5'>HLS</b> 设计性能

    FPGA图像处理方法

    图像在采集和传输的过程中,通常会产生噪声,使图像质量降低,影响后续处理。因此须对图像进行一些图像滤波、
    的头像 发表于 12-02 13:15 1050次阅读