基于PYNQ的图像分类识别技术研究与实现

来源 :南京邮电大学 | 被引量 : 0次 | 上传用户:weidaxia888
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
图像分类识别作为人工智能领域的重要组成部分,有着广阔的应用前景和重要的研究意义。卷积神经网络模型是图像分类识别中应用非常广泛的技术手段并且已经在CPU和GPU平台上实现了部署,但是高功耗的缺陷使得CPU和GPU无法应用于目前的嵌入式移动终端场景中。近年来,新的研究热点聚焦在如何低功耗实现图像分类识别系统。本文提出一种基于卷积神经网络的图像分类识别系统方案,该方案研究基于ARM+FPGA异构系统的实现方法,系统搭载于Xilinx的PYNQ-Z2(Python productivity for Zynq)嵌入式开发平台。通过软硬件协同设计思路规划软硬件工作任务,制定系统性能指标,最终搭建PYNQ图像分类识别系统。该系统可以通过编辑上位机程序读取不同数据集的特征参数实现对不同数据集的识别,不仅显著提高了系统的通用性,而且在满足分类识别功能的前提下大幅降低了硬件功耗。论文中主要的研究工作包括以下方面:首先,对整体系统进行分析,通过软硬件协同设计思路明确功能模块,完成任务划分。在处理系统(Process System,PS)部分,通过Jupyter Notebook平台基于Python实现上位机程序二进制特征参数的读取以及对硬件的控制。在可编程逻辑(Programmable Logic,PL)部分,实现卷积神经网络的模块设计和系统通路搭建。在理解卷积神经网络算法的基本原理后,在电脑端对待测试的MNIST数据集和CIFAR-10数据集进行卷积神经网络模型搭建,完成训练验证最终得到MNIST模型和CIFAR-10模型的准确率分别为99.06%和62.25%,随后设计特征参数提取函数完成权重和偏执参数的提取及格式转换,转换为硬件平台可以进行读取的二进制格式。接着使用Xilinx VIVADO HLS(High Level Synthesis,HLS)设计工具,设计实现图像分类识别系统中卷积神经网络的自定义IP核模块,包括卷积层IP核以及最大池化层IP核,利用HLS工具中的优化指令进行组合对比测试,最终综合得到符合设计目标的IP核模块。在完成自定义IP核的设计之后,以IP核模块和ZYNQ模块为主实现整体系统的通路搭建,完成验证后在Jupyter Notebook中通过上位机程序调用控制。最后,完成驱动程序及系统上位机的设计并对系统进行功能及性能测试。通过测试得到系统在对MNIST和CIFAR-10数据集的识别上可以实现正常的分类,系统功耗的参数为1.54W。测试结果表明仅需通过不同的特征参数文件并编辑上位机程序就可以实现系统的通用设计目标,系统功耗则远远低于CPU等传统平台的功耗,证明了基于PYNQ的图像分类识别系统的可行性。
其他文献
介绍了炉内移钢机液压系统的设计,以电液比例压力流量复合阀(PQ阀)为核心元件组成负载适应系统,实现了压力、流量的分别控制,节能降耗,满足特殊工艺要求,充分发挥液压传动的