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

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

3天内不再提示

hls之xfopencv

倩倩 ? 来源:Hack电子 ? 作者:Hack电子 ? 2022-09-09 15:07 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

  1. 为什么要引入xfopencv

vivado本身集成了opencv库以及hls视频库了,opencv不能被综合导出为RTL电路,hls视频库的功能有所欠缺,因此引入xfopencv作为既可以被综合导出为RTL电路,也能够实现opencv丰富的功能。

2.软件环境

vivado 2019.1,包含vivado,hls,以及SDSOC套件。

3.下载

1.打开github直接搜索xfopencv,如图所示

d4aa65b8-2ffd-11ed-ba43-dac502259ad0.png

2.点击master->tags->选择与本身vivado匹配的版本(我的版本是2019.1,所以选择第一个)

d4d0d7c0-2ffd-11ed-ba43-dac502259ad0.png

4.使用(xfopencv/examples/canny)

1.解压下载的文档,创建HLS工程,右击source->add files,添加文件如如所示

d4fe2b58-2ffd-11ed-ba43-dac502259ad0.png

2.右击Test Bench->add files,添加如下文件,其中im0.jpg在data文件夹

d537b47c-2ffd-11ed-ba43-dac502259ad0.png

3.选中project->settings->syntheis 添加顶层文件,如图所示

d54f5460-2ffd-11ed-ba43-dac502259ad0.png

4.然后选中xf_canny_accel.cpp文件,选择Edit GFLAS Dialog,用于添加xfopencv库,添加内容

-I <路径 to your xfopencv> -D__(双下划线)SDSVHLS__(双下划线)。

d57051c4-2ffd-11ed-ba43-dac502259ad0.png

5.然后选择Simulation,对tb文件添加xfopencv库,方式同上,内容如下

-I <路径 to your xfopencv> -D__(双下划线)SDSVHLS__(双下划线) -std=c++0x

d5a96630-2ffd-11ed-ba43-dac502259ad0.png

5.综合以及C仿真

1.综合

由于xf_canny_accel.cpp文件中的XF_USE_URAM未被定义,删掉后综合才能不出错

原始代码

xf::Canny(_src,_dst1,low_threshold,high_threshold);  //xf::xfMat2AXIvideo(nms_output, _dst1);  #pragma SDS wait(1)  //xf::AXIvideo2xfMat(_dst1, nms_output);  xf::EdgeTracing(_dst1,_dst2);

更改以后的代码

xf::Canny(_src,_dst1,low_threshold,high_threshold);  //xf::xfMat2AXIvideo(nms_output, _dst1);  #pragma SDS wait(1)  //xf::AXIvideo2xfMat(_dst1, nms_output);  xf::EdgeTracing(_dst1,_dst2);  //xf::xfMat2AXIvideo(edge_output, _dst2);}

2.C仿真

选择im0.jpg作为输入图片

原始图像:

d60a80fa-2ffd-11ed-ba43-dac502259ad0.jpg

opencv处理图像:

d644cc9c-2ffd-11ed-ba43-dac502259ad0.png

xfopencv处理图像:

d68127dc-2ffd-11ed-ba43-dac502259ad0.png

以上为xfopencv的例子学习,关于xfopencv更加详细的介绍请参考xilinx官方文档ug1233

审核编辑 :李倩


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

    关注

    1

    文章

    390

    浏览量

    61277
  • OpenCV
    +关注

    关注

    32

    文章

    643

    浏览量

    43106
  • HLS
    HLS
    +关注

    关注

    1

    文章

    133

    浏览量

    24970

原文标题:hls之xfopencv

文章出处:【微信号:Hack电子,微信公众号:Hack电子】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    harmony-utilsCacheUtil,缓存工具类

    harmony-utilsCacheUtil,缓存工具类
    的头像 发表于 07-04 16:36 ?151次阅读

    harmony-utilsCharUtil,字符工具类

    harmony-utilsCharUtil,字符工具类
    的头像 发表于 07-04 16:34 ?150次阅读

    harmony-utilsDeviceUtil,设备相关工具类

    harmony-utilsDeviceUtil,设备相关工具类
    的头像 发表于 07-03 18:27 ?184次阅读

    harmony-utilsFileUtil,文件相关工具类

    harmony-utilsFileUtil,文件相关工具类
    的头像 发表于 07-03 18:23 ?169次阅读

    harmony-utilsImageUtil,图片相关工具类

    harmony-utilsImageUtil,图片相关工具类
    的头像 发表于 07-03 18:22 ?210次阅读

    如何在Unified IDE中创建视觉库HLS组件

    最近我们分享了开发者分享|AMD Vitis HLS 系列 1 - AMD Vivado IP 流程(Vitis 传统 IDE)和开发者分享|AMD Vitis HLS 系列 2:AMD
    的头像 发表于 07-02 10:55 ?579次阅读
    如何在Unified IDE中创建视觉库<b class='flag-5'>HLS</b>组件

    使用AMD Vitis Unified IDE创建HLS组件

    这篇文章在开发者分享|AMD Vitis HLS 系列 1 - AMD Vivado IP 流程(Vitis 传统 IDE) 的基础上撰写,但使用的是 AMD Vitis Unified IDE,而不是之前传统版本的 Vitis HLS
    的头像 发表于 06-20 10:06 ?1105次阅读
    使用AMD Vitis Unified IDE创建<b class='flag-5'>HLS</b>组件

    如何使用AMD Vitis HLS创建HLS IP

    本文逐步演示了如何使用 AMD Vitis HLS 来创建一个 HLS IP,通过 AXI4 接口从存储器读取数据、执行简单的数学运算,然后将数据写回存储器。接着会在 AMD Vivado Design Suite 设计中使用此 HLS
    的头像 发表于 06-13 09:50 ?759次阅读
    如何使用AMD Vitis <b class='flag-5'>HLS</b>创建<b class='flag-5'>HLS</b> IP

    Vivado HLS设计流程

    为了尽快把新产品推向市场,数字系统的设计者需要考虑如何加速设计开发的周期。设计加速主要可以从“设计的重用”和“抽象层级的提升”这两个方面来考虑。Xilinx 推出的 Vivado HLS 工具可以
    的头像 发表于 04-16 10:43 ?830次阅读
    Vivado <b class='flag-5'>HLS</b>设计流程

    使用HLS流程设计和验证图像信号处理设备

    STMicroelectronics成像部门负责向消费者、工业、安全和汽车市场提供创新的成像技术和产品。该团队精心制定了一套通过模板实现的High-Level Synthesis(HLS)高层次综合流程,使得上述产品能够迅速上市。对于汽车市场,该流程符合ISO 26262标准,因此能确保可靠性。
    的头像 发表于 01-08 14:39 ?730次阅读
    使用<b class='flag-5'>HLS</b>流程设计和验证图像信号处理设备

    MATLA B助力数字与模拟芯片设计:高效实现HLS、UCIe和UVM

    ? 本文将分享 MathWorks 参与 中国集成电路设计业高峰论坛暨展览会 ICCAD-Expo 的展台展示以及发表主题演讲《MATLAB 加速数字和模拟芯片设计--高效实现 HLS、UCIe
    的头像 发表于 12-20 11:11 ?836次阅读
    MATLA B助力数字与模拟芯片设计:高效实现<b class='flag-5'>HLS</b>、UCIe和UVM

    引线键合DOE试验

    共赏好剧引线键合DOE试验欢迎扫码添加小编微信扫码加入知识星球,领取公众号资料 原文标题:引线键合
    的头像 发表于 11-01 11:08 ?999次阅读

    EMI传导

    EMI传导---20241024EMI传导的基础知识介绍EMI传导的理论解析EMI传导的实际测试EMI传导模块,本人10多年的电源工程师,一些个人经验?
    发表于 10-24 16:32 ?5次下载

    防雷击器件压敏电阻

    电子发烧友网站提供《防雷击器件压敏电阻.docx》资料免费下载
    发表于 10-23 10:35 ?0次下载

    优化 FPGA HLS 设计

    优化 FPGA HLS 设计 用工具用 C 生成 RTL 的代码基本不可读。以下是如何在不更改任何 RTL 的情况下提高设计性能。 介绍 高级设计能够以简洁的方式捕获设计,从而
    发表于 08-16 19:56