vivado HLS算法分析

HLS算法分析

HLS中使用C/C++语言作为开发语言,通过高层次综合将其转为IP核,省去了使用硬件语言的开发难度

该项目调用HLS中的hls_opencv视频库,对图像进行处理。

 

使用HLS要完成的目标:

针对输入图像进行灰度处理,然后做帧差处理,在对帧差图片进行二值化。

最后生成IP核,再使用vivado工具。完成图像处理的硬件加速过程。

 

 

针对上述目标,设计如下算法:

1):输入图像一和图像二,两个输入的InputImage ,使用HLS_OPENCV库将图像转换为Mat

    hls::AXIvideo2Mat(INPUT_STREAM1, img_01);

    hls::AXIvideo2Mat(INPUT_STREAM2, img_02);

2):对两幅图像做RGB2GRAY处理,将RGB图像转换为灰度图,为帧差做处理

hls::CvtColor<HLS_RGB2GRAY>(img_01, img_1);

    hls::CvtColor<HLS_RGB2GRAY>(img_02, img_2);

3):对两幅灰度图片做帧差

    hls::AbsDiff(img_1, img_2, img_4);

4):对帧差图片做二值化处理,二值化阈值使用OTSU自适应算法

    hls::Threshold(img_4,img_5, Thresh,255,HLS_THRESH_BINARY);

    参数说明:                                      

    Thresh为阈值,255为二值最大值,HLS_THRESH_BINARY 详细见文档

5):将Mat数组转为视频流输出

    hls::Mat2AXIvideo(img_5, OUTPUT_STREAM);

 

 

针对上述步骤,需提前设定好各类参数,包括:

    图像的尺寸

    图像的输入输出

    输入流的位宽

    输出流的位宽

    图像Mat数组的大小,图像的通道问题

   

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值