论文部分内容阅读
目标检测是计算机视觉领域的研究热点,在智能交通、智能视频监控、航空航天等诸多领域有非常广阔的应用前景。目前,基于卷积神经网络的目标检测以绝对的优势超过了传统的目标检测算法,但由于卷积神经网络结构复杂、计算量过大,导致其很难在资源不足、功耗低的嵌入式平台实现实时应用。因此,目前工业中常使用激光、雷达等传感器实现目标检测,价格相对高昂。YOLO作为目前性能最佳的实时目标检测模型之一,结构简单、检测速度快,相比其它卷积神经网络模型而言更适合应用到低功耗的嵌入式平台。此外,通过分析GPU、ASIC、FPGA三种芯片在功耗、价格等多方面的优劣,最终选用ARM+FPGA硬件架构的Zynq-7020嵌入式平台设计和实现基于Tiny-YOLO的目标检测系统。本文主要工作包括:1.权衡计算延时和精度损失,提出了8位整型量化推理方案来有效缓解嵌入式平台计算资源和存储资源不足的问题,用整型乘法运算模拟浮点型乘法运算效果,优化激活函数减少量化激活值的时间,并提出相应的量化训练方案降低权重的精度损失,相比浮点型训练与推理,模型大小压缩了75%,计算速度提升2-3倍。2.根据卷积神经网络的结构特征,进行了卷积神经网络计算的软硬件划分,选择在可编程逻辑系统(PL)中设计卷积层和池化层的并行计算IP核,在双核ARM Cortex-A9的处理系统(PS)实现Softmax层和非极大值抑制算法。通过卷积层、池化层并行计算特征和Tiny-YOLO模型的数据量、计算量分析,在Zynq-7020资源限制条件下,设计了嵌入式平台的数据存储、分割、计算方法来完成卷积层和池化层算法的并行加速,相比PS端串行处理,检测速度提高约300倍。3.在Zynq-7020平台构建了目标检测系统的硬件架构,并搭建了目标检测系统的软件运行环境,在上述工作的基础上通过软硬件协同设计,实现了Tiny-YOLO模型的实时目标检测。本文设计立足于嵌入式平台的目标检测系统研究,权衡速度与精确度,最终实现了低成本、高实时性的目标检测系统。在SDSoC开发环境下的硬件仿真表明,片上总功率仅只有2.9W,目标检测速度达到23FPS,达到了实时目标检测的应用需求。