硬件加速边缘检测优化处理方案

硬件加速边缘检测优化处理方案,第1张

摘 要: 针对计算机处理高清图像或视频的边缘检测时存在延时长和数据存储带宽受限的缺点,提出了用Vivado HLS将边缘检测软件代码转换成RTL级硬件电路硬件加速方法。硬件加速是将运算量大的功能模块由硬件电路实现,根据硬件电路工作频率高和数据位宽自定义,可以解决延时长和数据宽度受限的缺点。实验结果表明,边缘检测硬件加速方法不仅使延时和数据带宽都得到了改善,而且也缩短了边缘检测的开发周期。

0 引言

在计算机视觉和图像处理领域中,图像边缘检测技术起着重要的作用,其效果好坏直接影响整个系统的性能。由于图像的边缘蕴含了丰富的内在信息,是进行图像分割、特征值提取的重要依据。边缘检测不仅能减少处理数据,又能保留图像中物体的形状信息,是实时图像处理中的重要内容之一[1]。

在现阶段,主要采用软件方式或者FPGA硬件方式来实现边缘检测。文献[2]-[4]采用软件方法实现图像的边缘检测,虽然边缘检测的效果得到了改善,但是不能在延时和数据带宽方面做出改善。文献[5]-[7]采用FPGA方法实现图像的边缘检测,此硬件方法虽然改善了边缘检测的延时长和数据带宽受限的不足,但是由于FPGA硬件设计的复杂性会导致整个电路开发周期变长。

本文采用Xilinx公司的Vivado HLS将边缘检测的软件代码转化为RTL硬件电路。这样不仅解决了软件方法所带给系统延时长和数据带宽窄的缺点,而且避免了FPGA硬件电路设计周期长的不足。

1 边缘检测算法设计

基于Sobel算子的边缘检测具有算法简单、实现方便等优势,但在处理图像时会存在对噪声敏感和边缘界限模糊等不足,所以需要在Sobel算法的基础上进行优化。优化后的边缘检测由中值滤波、膨胀滤波、边缘检测模块和腐蚀滤波模块构成,如图1所示。在图像输入后,首先中值滤波器对输入图像进行平滑图像噪声处理,然后由膨胀滤波器求出图像的局部最大值,再由边缘检测模块来提取图像的边缘信息,最后由腐蚀滤波器消除图像中的“斑点”噪声,从而得到最佳的图像边缘。

硬件加速边缘检测优化处理方案,硬件加速边缘检测优化处理方案,第2张

2 边缘检测软硬件协同设计

边缘检测的软硬件协同设计主要包括软件应用设计、硬件加速设计和SoC应用设计。

2.1 软硬件协作开发流程

软件应用设计是将边缘检测的功能用OpenCV函数或者自定义功能函数实现;硬件加速设计将软件代码转换为RTL电路,其中不可综合的函数或者语句需用Vivado HLS支持的函数替换;SoC应用设计将Vivado HLS输出的RTL电路应用到实际的SoC系统[8]。图2是边缘检测硬件加速流程图。

硬件加速边缘检测优化处理方案,硬件加速边缘检测优化处理方案,第3张

如图2所示,首先完成软件应用的开发,然后将Vivado HLS不能综合的OpenCV函数链替换成HLS视频库函数链,最后封装成IP在FPGA中调用。

2.2 边缘检测软硬件协作实现

在软件实现阶段使用OpenCV函数库或者自定义的C语言函数实现边缘检测算法,但Vivado HLS不能综合所有的软件代码。当软件代码中存在Vivado HLS不能综合的函数时就需要将这些函数展开或者替换,如定点运算、片上的行缓存和窗口缓存来完成动态的内存分配、浮点和图像在外部存储器中存放和修改的 *** 作。

硬件加速方案是在软件应用的基础上实现的。在搭建SoC时,使用的是芯片内部的AXI互联总线,其所支持的数据类型是AXI4 video stream。在设计边缘检测IP接口时需要将AXI4 video stream与Vivado HLS所支持的hls::Mat类型进行相互转换。数据的转换模块见图2中AXIvideo2Mat和Mat2AXIvideo模块。Vivado HLS将OpenCV函数链转换成HLS视频库函数链。硬件加速阶段包括边缘检测的仿真与优化,只有在优化和仿真通过之后才将RTL级电路封装成IP核输出。

3 系统搭建与IP核优化

边缘检测的软硬件协作应用具有一定的局限性,只能在具备处理器和可编程逻辑阵列的SoC中应用。本文是在Xilinx公司的zc7z020clg484-1系列芯片中进行边缘检测的系统搭建与功能验证。

3.1 SoC系统设计

Vivado HLS将边缘检测IP输出到Vivado的IP catalog,在SoC系统设计时调用边缘检测IP核即可。搭建的边缘检测SoC系统如图3所示。

硬件加速边缘检测优化处理方案,硬件加速边缘检测优化处理方案,第4张

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2598999.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-09
下一篇 2022-08-09

发表评论

登录后才能评论

评论列表(0条)

保存