opencv生成日志_HLS学习日记(二) 使用opencv

本文记录了作者在HLS中使用OpenCV进行图像处理的体验,包括参考文档、基本流程和一个Harris角点检测的示例。作者通过将图像转换为AXI流并在HLS中进行处理,然后转换回OpenCV显示结果。在实践中,作者发现了一些限制和资源消耗问题,并探讨了可能的优化方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

自从hls入门以来这几天都在搞如何使用opencv,不过过程实在有点艰辛,hls的bug感觉实在有点多,各种神奇的问题,我使用的是2013.4使用的是1个月的免费license,不知道其他童鞋们有木有遇到过。嘛,不管怎么样,虽然我摸索了各种使用方法,有的能行有的不行,不过按照官方的例程的结构果断是没问题的(也不能这么说)。

回归正题,首先放出我参考的几个文件:ug871、ug902、xapp1167(它的参考设计文件对我帮助最大)

还有这篇文章 https://www.eepw.com.cn/article/234670.htm

在hls中使用opencv大体的结构是这样的,在需要综合的文件中包含 hls_video.h文件,这里面有的就是能使用的图像处理相关的函数,在testbench中可以包含opencv或opencv2的头文件,在testbench中使用opencv读取本地图片或视频流,转换成axi的的流文件,使用测试函数处理,返回的也是axi流,将其转换成mat或iplimage等形式用opencv显示出来,这样就能看出被综合文件的功能性。在实际设计时testbench对应的就是摄像头、显示器这类器件,或者是arm部分(zynq器件),xapp1167中的一个图很好的说明了这个结构:

6a5e6c6bc2942696f171b92c59e04be0.png

因为想要参加hls的专题赛,所以这里用harris角点检测来作为一个示例:

综合部分:

#include "test.h"

void test(AXI_STREAM& input,AXI_STREAM& output)

{

const int rows = 960;

const int cols = 640;</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值