基于FPGA的实时图像分类方法及系统技术方案

技术编号:33385190 阅读:12 留言:0更新日期:2022-05-11 22:59
本发明专利技术提供了一种基于FPGA的实时图像分类方法及系统,所述系统包括用于图像收集的图像获取模块、用于对图像进行解码的解码模块、DDR以及图像处理模块;所述图像获取模块、解码模块、DDR以及图像处理模块依次通讯连接。本发明专利技术提供的卷积神经网络加速模块可以根据板卡资源配置多通道的卷积神经网络加速计算,设置最大并行度进行卷积计算,能够在FPGA上高效率以流水线方式实现卷积神经网络,大大提高了卷积神经网络的推理速度,在不同场景下快速进行图像分类。图像分类。图像分类。

【技术实现步骤摘要】
基于FPGA的实时图像分类方法及系统


[0001]本专利技术涉及一种基于FPGA的实时图像分类方法及系统,属于图像分类


技术介绍

[0002]卷积神经网络是一类包含卷积计算且具有深度结构的前馈神经网络,是深度学习的代表算法之一。在二十一世纪后,随着深度学习理论的提出和数值计算设备的改进,卷积神经网络得到了快速发展,并被应用于计算机视觉、自然语言处理等领域。卷积神经网络为图像而生,但应用不限于图像。在图像处理任务上,卷积神经网络可以用来识别位移、缩放及物体形态扭曲的二维图形。一方面,由于其网络模型中的特征是通过训练数据集进行图像特征学习,从而避免了显式地特征抽取;另一方面,由于图像上同一特征映射面上的神经元权值相同,所以卷积神经网络模型可以并行训练,极大地提高神经网络的训练时长。此外,与神经元彼此相连的神经网络(如传统的人工神经网络)相比,卷积神经网络模型的组织方式特殊,其结构模型更易于理解和分析。卷积神经网络的应用场景和案例并不一定能够真正应用在实际工程领域,但也是足够精彩,因为它不仅代表业界最先进的视觉技术,甚至还可能超出我们的想象范围。
[0003]FPGA作为一种可编程的逻辑资源,在处理卷积神经网络上有着得天独厚的高并行度的优势,可以调整其架构以最大限度地提高性能,同时降低成本和功耗,对于卷积神经网络,可以利用FPGA的高性能接口,高并行度的数据计算,从而起到推理加速的功能。在FPGA上部署ResNet涉及到数据流、并行度等问题,如何将获得的图片数据传入到板卡中也是关键所在,更重要的是如何提高数据传输的效率,这也是亟待解决的问题。
[0004]有鉴于此,确有必要提出一种基于FPGA的实时图像分类方法及系统,以解决上述问题。

技术实现思路

[0005]本专利技术的目的在于提供一种基于FPGA的实时图像分类的系统,以提高数据传输和图像处理的效率。
[0006]为实现上述目的,本专利技术提供了一种基于FPGA的实时图像分类的系统,所述系统包括用于图像收集的图像获取模块、用于对图像进行解码的解码模块、DDR以及图像处理模块;所述图像获取模块、解码模块、DDR以及图像处理模块依次通讯连接。
[0007]作为本专利技术的进一步改进,所述图像处理模块包括数据加载缓冲模块、数据预处理模块、数据重排模块、卷积神经网络模块、数据后处理模块以及数据暂存模块,所述数据加载模块、数据预处理模块、数据重排模块、卷积神经网络模块、数据后处理模块以及数据暂存模块各自相互通讯连接。
[0008]作为本专利技术的进一步改进,所述卷积神经网络加速模块包括卷积计算模块、激活函数模块、池化模块和全连接模块,所述卷积计算模块、激活函数模块、池化模块和全连接模块各自相互通讯连接。
[0009]作为本专利技术的进一步改进,所述DDR为包括控制模块、权重偏置数据模块的DDR。
[0010]作为本专利技术的进一步改进,所述图像获取模块为以太网摄像头。
[0011]本专利技术的目的还在于提供一种基于FPGA的实时图像分类方法,以更好地应用上述基于FPGA的实时图像分类的系统。
[0012]为实现上述目的,本专利技术提供了一种基于FPGA的实时图像分类方法,所述实时图像分类方法主要包括:
[0013]步骤1,通过FPGA上的以太网接口获取图像信息传至VCU IP进行图片解码,然后将数据保存至DDR;
[0014]步骤2,DDR开始加载图像、指令、权重偏置等数据;
[0015]步骤3,设置了预处理层,先进行图像预处理,然后经过图像处理模块进行特征提取,图片分类;
[0016]步骤4,对于处理完的图像在通过HDMI进行分类信息输出。
[0017]作为本专利技术的进一步改进,所述步骤2具体包括:
[0018]步骤2.1,数据加载缓冲模块从外部存储器加载配置数据、ResNet网络所需要加速运算的数据;
[0019]步骤2.2,外部存储器传输进来的数据缓冲后分别分发至控制模块、权重偏置数据模块;
[0020]步骤2.3,控制模块根据传输进来的数据对于加速的ResNet网络进行配置,ResNet加速模块从图像存储模块以及权重、偏置数据模块同时获得所需要的运算数据,分别经过卷积层、激活层、池化层和全连接层,利用FPGA资源进行加速运算。
[0021]作为本专利技术的进一步改进,所述步骤3具体包括:
[0022]步骤3.1,控制模块控制了数据的流向,在数据进行运算之前需要进行预先的配置,保证数据无误。
[0023]步骤3.2,运算完或者中间运算数据存储暂存在数据输出、缓冲模块,用于下一步骤的运算或者将运算完的数据输出到外部存储器中。
[0024]本专利技术的有益效果是:本专利技术的基于FPGA的实时图像分类方法及其系统通过AXI总线进行读写,在片上也设置了双缓存的结构,可以在读取数据的过程中进行数据的处理,提高图像处理的效率。
附图说明
[0025]图1是本专利技术基于FPGA的实时图像分类方法的流程图。
[0026]图2是本专利技术基于FPGA的实时图像分类的系统在FPGA上硬件架构的结构示意图。
具体实施方式
[0027]为了使本专利技术的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本专利技术进行详细描述。
[0028]如图1所示,本专利技术揭示了一种基于FPGA的实时图像分类方法及系统,该系统包括用于图像收集的图像获取模块、用于对图像解码的解码模块、DDR以及图像处理模块;所述图像获取模块、解码模块、DDR以及图像处理模块依次通讯连接;以提高图像处理的效率。本
专利技术可能用于一些对于实时行要求比较高的领域,例如医学领域等。
[0029]图像处理模块包括数据加载缓冲模块、数据预处理模块、数据重排模块、卷积神经网络模块、数据后处理模块以及数据暂存模块,所述数据加载模块、数据预处理模块、数据重排模块、卷积神经网络模块、数据后处理模块以及数据暂存模块各自相互通讯连接。
[0030]卷积神经网络加速模块包括卷积计算模块、激活函数模块、池化模块和全连接模块,所述卷积计算模块、激活函数模块、池化模块和全连接模块各自相互通讯连接。也就是说,通过机器学习的方法来对实时获得的图片进行分类处理。具体的,本专利利用的是机器学习来进行图片分类,将在FPGA板卡上部署卷积神经网络ResNet,通过ResNet来对获取的图片信息进行分类输出。通过AXI总线进行读写,在片上也设置了双缓存的结构,可以在读取数据的过程中进行数据的处理,提高图像处理的效率。卷积神经网络加速模块设置了不同的池化以及激活函数,根据需求可以通过控制寄存器进行配置不同的函数,保证正确的数据流流向。在片上设置了数据暂存模块,计算的中间数据可以暂存在BRAM中,不用经常与外部DDR进行交互,节省数据与外部存储器的数据交互时间。
[0031]如图1所示,本专利技术中基于FPGA的实时图像分类方法主要包括:
[0032]步骤1,通过FPGA上的以太网接口获取图像信本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于FPGA的实时图像分类的系统,其特征在于:所述系统包括用于图像收集的图像获取模块、用于对图像进行解码的解码模块、DDR以及图像处理模块;所述图像获取模块、解码模块、DDR以及图像处理模块依次通讯连接。2.根据权利要求1所述的基于FPGA的实时图像分类的系统,其特征在于:所述图像处理模块包括数据加载缓冲模块、数据预处理模块、数据重排模块、卷积神经网络模块、数据后处理模块以及数据暂存模块,所述数据加载模块、数据预处理模块、数据重排模块、卷积神经网络模块、数据后处理模块以及数据暂存模块各自相互通讯连接。3.根据权利要求2所述的基于FPGA的实时图像分类的系统,其特征在于:所述卷积神经网络加速模块包括卷积计算模块、激活函数模块、池化模块和全连接模块,所述卷积计算模块、激活函数模块、池化模块和全连接模块各自相互通讯连接。4.根据权利要求1所述的基于FPGA的实时图像分类的系统,其特征在于:所述DDR为包括控制模块、权重偏置数据模块的DDR。5.根据权利要求1所述的基于FPGA的实时图像分类的系统,其特征在于:所述图像获取模块为以太网摄像头。6.一种基于FPGA的实时图像分类方法,其特征在于:所述实时图像分类方法主要包括:步骤1,通过FPGA上的以...

【专利技术属性】
技术研发人员:王堃梅其昌陈思光张载龙
申请(专利权)人:南京邮电大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1