基于视频流处理的二维卷积神经网络架构制造技术

技术编号:35571568 阅读:13 留言:0更新日期:2022-11-12 15:56
本发明专利技术公开了一种基于视频流处理的二维卷积神经网络架构,采用流水线结构,将各层卷积运算分布在流水线上的各个节点单元;流水线上的每一节点单元按照像素排列顺序独立处理一层或连续若干层的卷积运算;逐行扫描的图像数据按照顺序输入到流水线输入端,每一个时钟节拍输入一个像素;每一节点单元的输出结果均为下一节点单元的输入数据;所述流水线上各个节点单元同步处理数据,即各节点单元按照相同速度处理数据。本发明专利技术采用流水线处理方式,流水线上各个节点单元按照网络输入图像像素频率同步运行,减少节点单元间对数据缓存的要求,大大提高系统效率,并减少了系统功耗。并减少了系统功耗。并减少了系统功耗。

【技术实现步骤摘要】
基于视频流处理的二维卷积神经网络架构


[0001]本专利技术涉及神经网络
,特别涉及基于视频流处理的二维卷积神经网络架构。

技术介绍

[0002]伴随着深度学习技术的发展,卷积神经网络越来越广泛的应用在图像处理及计算机视觉领域。由于卷积神经网络对算力有较高的要求,具有AI功能的通用及专用芯片普遍采用专用的AI加速器电路及模块,才能满足卷积神经网络的运算要求。其中最典型的方法是将卷积神经网络运算转换为线性矩阵运算,并采用乘法累加器阵列实现二维矩阵乘法加速运算。这种方法具有通用性强、容易实现等特点。但加速器应用效率较低,需要大量数据缓存及较高的数据带宽,因而会增加系统功耗及延时。这些缺点限制了AI技术在终端及边缘计算领域的推广应用。

技术实现思路

[0003]为了解决上述问题,本专利技术提供了一种基于视频流处理的二维卷积神经网络架构,采用流水线式处理方式,减少系统对存储器带宽的要求,提高系统的运算效率。
[0004]为此,本专利技术的技术方案是:基于视频流处理的二维卷积神经网络架构,采用流水线结构,将各层卷积运算分布在流水线上的各个节点单元;流水线上的每一节点单元按照像素排列顺序独立处理一层或连续若干层的卷积运算;逐行扫描的图像数据按照顺序输入到流水线输入端,每一个时钟节拍输入一个像素;每一节点单元的输出结果均为下一节点单元的输入数据;所述流水线上各个节点单元同步处理数据,即各节点单元按照相同速度处理数据。
[0005]本专利技术采用级联流水线处理结构,与基于块处理的矩阵线性运算单元加速器设计完全不同。图像数据以像素为单位,进入流水线输入端,逐级进入流水线内各个节点单元,完成深度卷积神经网络的各级运算,每个节点单元可根据需求设计不同的卷积运算。各个单元按照统一的速度处理数据,上一个节点单元的输出结果直接输入下一个节点单元,不需要缓存大量数据,大大提高系统工作效率。
[0006]优选地,流水线上的每个独立的节点单元,均采用硬件电路实现二维卷积运算;所述硬件电路包括多个并行处理的乘法累加器及相应的本地行缓存单元及参数缓存单元,网络参数存储在参数缓存单元内;所有节点单元采用串联连接。节点单元按照流水线串联连接,每个节点单元原则上可以独立设计,但实际上是采用同样的结构,不同的乘法器数量及本地缓存大小。网络参数存储在参数缓存单元,可重复使用,减少系统缓存带宽要求。
[0007]优选地,相邻节点单元通过并联连接,可形成数据处理量更大的节点单元,且合并后形成的节点单元仍与其余节点单元保持相同速度处理数据。相邻节点单元的乘法累加器、本地行缓存单元、参数缓存单元均合并。根据网络每一层/节点单元所需要的硬件资源(乘法器/缓存)决定,如果原有节点单元资源不足,则需要合并相邻节点单元。
[0008]优选地,同时处理多幅图像时,将多幅图像沿行方向拼接,节点单元内部设有补零功能,用于隔离并联图像在拼接位置的处理,即在每幅图像边缘补零。当需要对多幅图像同时做并行处理时,采用将多幅图像沿行方向拼接的方式组成一幅大图像处理,在拼接处保留足够的隔离带以减少图像边缘处的窜扰,利用补零的方式形成隔离带。
[0009]优选地,流水线上各节点单元同步处理数据,即第一个节点单元处理完第一个像素后,将输出数据传送至第二个节点单元,同时第一个节点单元处理第二个像素,以此类推,每个节点单元将处理的数据传送至下一个节点单元后,开始接收上一个节点单元处理的数据。
[0010]与现有技术相比,本专利技术的有益效果是:采用流水线处理方式,每一节点单元的运算结果输出到流水线的下一个节点单元作为输入数据,图像数据不需要传回到帧存储器缓存;流水线上各个节点单元按照网络输入图像像素频率同步运行,减少节点单元间对数据缓存的要求,大大提高系统效率,并减少了系统功耗;每一级节点单元的卷积运算的滤波器系数可以一次性加载完成并保持不变,网络参数分配在各个节点单元内部的参数缓存单元,减少系统对存储器带宽的要求。
附图说明
[0011]以下结合附图和本专利技术的实施方式来作进一步详细说明
[0012]图1为本专利技术的流水线架构图;
[0013]图2为本专利技术单个节点单元的结构图;
[0014]图3为本专利技术两个节点单元的合并连接图;
[0015]图4为实施例1的流水线架构图;
[0016]图5为实施例1的Bottelneck模块结构图。
具体实施方式
[0017]参见附图。本实施例所述的二维卷积神经网络架构,采用流水线结构,将各层卷积运算分布在流水线上的各个节点单元;流水线上的每一按照像素排列顺序独立处理一层或连续若干层的卷积运算;每一个节点单元可包含多层卷积运算,具体卷积核数量根据实际需求设定。
[0018]逐行扫描的Bayer或RGB图像数据按照顺序输入到流水线输入端,每一个时钟节拍输入一个像素;每一节点单元的输出结果直接作为下一节点单元的输入数据;所述流水线上各个节点单元同步处理数据,即各节点单元按照相同速度处理数据。所谓同步是指各个单元按照统一的速度处理数据,第一节点单元处理完一个像素后,就将输出数据传送到第二节点单元,同时第一节点单元处理第二个像素,而第二节点单元不必等第一节点单元处理完所有数据后才开始处理,取消了系统级帧存储器或块缓存单元,不需要缓存大量数据,大大提高系统工作效率。
[0019]流水线上的每个独立的节点单元,采用硬件电路实现二维卷积运算;所述硬件电路包括多个并行处理的乘法累加器及相应的本地行缓存单元及参数缓存单元,网络参数存储在参数缓存单元内;所有节点单元采用串联连接。节点单元按照流水线串联连接,每个节点单元原则上可以独立设计,但实际上是采用同样的结构,但是选择不同的乘法器数量及
本地缓存大小。网络参数存储在参数缓存单元,可重复使用,减少系统缓存带宽要求。硬件电路还包括输出多路复用器、时序控制器、数据接口、激活函数电路等卷积网络常规结构。
[0020]根据网络每一层/节点单元所需要的硬件资源(乘法器/缓存)决定,如果原有节点单元资源不足,则需要合并相邻节点单元。相邻节点单元通过并联连接,可形成数据处理量更大的节点单元,且合并后形成的节点单元仍与其余节点单元保持相同速度处理数据。相邻节点单元的乘法累加器、本地行缓存单元、参数缓存单元均合并。
[0021]当需要同时处理多幅图像时,将多幅图像沿水平的行方向拼接,组成一幅更大的图像进行处理,在拼接处保留足够的隔离带以减少图像边缘处的窜扰。节点单元内部设有补零功能,利用补零的方式形成隔离带,用于隔离并联图像在拼接位置的处理。因为做卷积运算时需要在边缘补零(复位移位寄存器),所以在拼接多幅图像时,需要在每幅图像边缘补零。
[0022]实施例1
[0023]以两幅224*224的图像为例:
[0024]1)图像输入:将两幅图像拼接成(224+224)*224,在每幅图像行起始位置加复位信号;
[0025]2)神经网络流水线由9个节点单元组成,其中,中间的7个节点单元完成Botte本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于视频流处理的二维卷积神经网络架构,其特征在于:采用流水线结构,将各层卷积运算分布在流水线上的各个节点单元;流水线上的每一节点单元按照像素排列顺序独立处理一层或连续若干层的卷积运算;逐行扫描的图像数据按照顺序输入到流水线输入端,每一个时钟节拍输入一个像素;每一节点单元的输出结果均为下一节点单元的输入数据;所述流水线上各个节点单元同步处理数据,即各节点单元按照相同速度处理数据。2.如权利要求1所述的基于视频流处理的二维卷积神经网络架构,其特征在于:流水线上的每个独立的节点单元,均采用硬件电路实现二维卷积运算;所述硬件电路包括多个并行处理的乘法累加器及相应的本地行缓存单元及参数缓存单元,网络参数存储在参数缓存单元内;所有节点单元采用串联连接。3.如权利要求1所述的基...

【专利技术属性】
技术研发人员:张文涵迟天舒林建国
申请(专利权)人:嘉兴真与科技有限责任公司
类型:发明
国别省市:

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

1