当前位置:   article > 正文

VIVADO HLS学习_hls::axivideo2mat

hls::axivideo2mat

FPGA设计中OpenCV的应用

from 如何使用Vivado HLS视频库加速zynq 7000 可编程 SOC OpenCV应用在这里插入图片描述

1、OpenCV中图像IplImage,CvMat,Mat类型和Vivado HLS中图像hls::Mat类型介绍

在opencv中,Mat类型与CvMat和IplImage类型都可以代表和显示图像,Mat侧重图像计算,而CvMat和IplImage类型更侧重于“图像”。VivadoHLS视频处理函数库使用hls::Mat<>数据类型,这种类型用于模型化视频像素流处理,实质等同于hls::steam<>流的类型,而不是OpenCV中在外部memory中存储的matrix矩阵类型。因此,在用HLS实现OpenCV的设计中,需要将输入和输出HLS可综合的视频设计接口,修改为Video stream接口,也就是采用HLS提供的video接口可综合函数,实现AXI4 video stream到VivadoHLS中hls::Mat<>类型的转换。

2、VIVADO HLS处理流程

opencv中图像数据以matrix矩阵形式存储,而vivado hls中以hls::Mat数据类型处理图像,因此根据上图流程图可知,需要将图像转化为可综合数据形式再进行处理。数据转化流程如下:

  1. 将图像数据转化为AXIvideo形式输入。
  2. 将AXIvideo数据流形式转化为MAT数据类型进行图像计算处理,该步可进行综合。转换函数:hls::AXIvideo2Mat(from ug902)
  3. 将MAT数据形式转化为AXIvideo数据流类型,该步可进行综合。转换函数:hls::Mat2AXIvideo(from ug902)
  4. 将AXIvideo数据流形式转化为图像数据进行输出。

HLS中数据类型

vivado hls支持c c++,提供整形和定点任意精度数据类型,并支持system C一部分的任意精度数据类型。
from ug902提供的数据在这里插入图片描述
eg.c++数据类型使用 #include “ap_int.h”
from ug902在这里插入图片描述
eg.定点标识符简介 #include “ap_fixed.h”
from ug902在这里插入图片描述

opencv中像素数据类型

opencv中像素数据类型描述
格式如下:XF[每像素比特数][有符号(s)无符号(u)浮点数(f)]C[通道数]
from ug1233在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/592053
推荐阅读
相关标签
  

闽ICP备14008679号