基于交叉注意力的2D卷积网络的动作识别方法及系统与流程

未命名 08-15 阅读:109 评论:0

基于交叉注意力的2d卷积网络的动作识别方法及系统
技术领域
1.本发明涉及计算机视觉视频理解技术领域,尤其涉及一种基于交叉注意力的2d卷积网络的动作识别方法及系统。


背景技术:

2.目前视频的动作识别通过rnn、3d-cnn、transformer、2d-cnn和tsm得到,但视频光流等时序特征,作为一种图像像素运动的表达方式,需要经过大量计算得到,往往需要花费更多的存储或者计算资源才能使用;使用rnn则使网络损失了一定的并行能力,训练和推演速度都会损失;3d-cnn的网络参数相较于2d-cnn更多,更加难以训练,计算复杂度也更高;基于transformer的方法对训练数据的需求更多,模型规模更大,需要的硬件成本也相对较高;因此,现有方法存在获取动作的时序信息花费计算资源较高的问题。若采用2d-cnn构架,2d-cnn相对而言需要的计算资源较少,但时序信息的建模能力相对较弱。因此,需要构建一种既保留时序信息的同时,降低网络计算复杂度的视频动作识别方法。


技术实现要素:

3.(一)要解决的技术问题
4.基于上述问题,本发明提供一种基于交叉注意力的2d卷积网络的动作识别方法及系统,解决视频的时序特征的网络计算复杂度较高的问题,降低网络计算复杂度的同时,感受时序信息的变化。
5.(二)技术方案
6.基于上述的技术问题,本发明提供一种基于交叉注意力的2d卷积网络的动作识别方法,包括:
7.s1、读取rgb视频,将视频分成多段,在每段中随机采样一帧,生成动作识别的图像序列,并处理使之符合神经网络的输入要求;
8.s2、将交叉注意力模块添加至2d-cnn的主干架构中,得到交叉注意力网络,包括将所述主干架构的输入经tsm时间转移模块输出的时序通道特征交互后的特征输入所述交叉注意力模块中的前向注意力模块和后向注意力模块,经前向截取和前向零值填充得到的前α帧对当前帧的注意力特征,即前向注意力特征,同时经后向截取和后向零值填充得到的后α帧对当前帧的注意力特征,即后向注意力特征,将所述前向注意力特征和后向注意力特征加权得到交叉注意力特征,将所述交叉注意力特征和所述时序通道特征交互后的特征相加后输出到主干架构,α为设定的注意力步长;再利用数据集数据对网络进行训练得到交叉注意力网络中各个层的参数;
9.s3、将处理后的所述图像序列输入训练后的交叉注意力网络,得到动作识别的分类特征,再根据所述分类特征输出识别结果。
10.进一步的,步骤s2中,所述经前向截取和前向零值填充得到的前α帧对当前帧的注意力特征,即前向注意力特征,同时经后向截取和后向零值填充得到的后α帧对当前帧的注
意力特征,即后向注意力特征,包括:将输入的所述时序通道特征交互后的特征先按帧数t分成t个x,即x1,x2,

,x
t
,再对各个x分别经conv2d卷积填充后,得到对应的a,即a1,a2,

,a
t
,对于前向注意力特征,0《i≤α时,α《i≤t时,对于后向注意力特征,0《i≤t-α时,α时,t-α《i≤t时,得到将各个合成得到前向注意力特征或后向注意力特征。
11.进一步的,步骤s2中,所述交叉注意力模块添加至主干架构各层的个数不超过8个。
12.进一步的,步骤s2中,所述将交叉注意力模块添加至2d-cnn的主干架构中包括:所述2d-cnn的主干构架为resnet50网络,有4个层,每层包括4个bottle neck,每个bottle neck包括输入特征依次经过1
×
1卷积、3
×
3卷积、1
×
1卷积后,与输入特征加权后输出到下一个bottle neck,在每层的最后两个bottle neck插入所述交叉注意力模块。
13.进一步的,所述α设定为1或2。
14.进一步的,步骤s1中,所述处理包括归一化和正则化处理。
15.进一步的,步骤s1中,所述处理还包括:将一个批次的样本特征(n,t,c,h,w)进行形变得到(n*t,c,h,w),其中t表示从视频样本中采样的帧数,c表示视频图像通道数,h、w分别表示视频图像的高和宽,n表示批次中样本的数量。
16.进一步的,步骤s1中,所述将视频分成多段,包括8段或16段。
17.进一步的,步骤s3中,所述再根据所述分类特征输出识别结果包括:通过softmax函数获得输入的图像序列属于每个动作类别的分数,判断输入的所述图像序列最有可能属于的类别并输出。
18.本发明也公开了一种基于交叉注意力的2d卷积网络的动作识别系统,包括:
19.至少一个处理器;以及与所述处理器通信连接的至少一个存储器,其中:
20.所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行所述的基于交叉注意力的2d卷积网络的动作识别方法。
21.(三)有益效果
22.本发明的上述技术方案具有如下优点:
23.(1)本发明基于2d-cnn的动作识别网络,将应用在图像中的注意力机制引入到视频之中,从相邻的时序帧中学习当前帧的交叉注意力特征,对当前帧的特征进行加权,使得交叉注意力特征可以更好地融合视频中的时序信息,2d-cnn降低了动作识别的深度神经网络的计算复杂度,交叉注意力特征感受时序信息的变化,从而提高视频动作识别的准确度;
24.(2)本发明在tsm的基础上,交叉注意力模块增加了从相邻帧中学习时空注意力的机制,更好地感受时空的特征变换,交叉注意力模块将学习到的图像序列的空间注意力特征进行前向或后向移动,并通过注意力步长提升模块时序感知范围的能力,进一步加强交叉注意力特征感受视频中的时序信息的能力;
25.(3)本发明对在2d-cnn中添加交叉注意力模块的数量同样进行了限制,不在2d-cnn的所有主干构架中添加交叉注意力模块,保证时序信息感受范围的同时,减少网络使用时序感受模块时额外造成的延时损失,使网络更加轻量化。
附图说明
26.通过参考附图会更加清楚的理解本发明的特征和优点,附图是示意性的而不应理解为对本发明进行任何限制,在附图中:
27.图1为本发明实施例的基于交叉注意力的2d卷积网络的动作识别方法的流程图;
28.图2为本发明实施例的交叉注意力模块的网络结构示意图,包括前向注意力(front attention)和后向注意力(behind attention)模块。
29.图3为本发明实施例的基于resnet50添加交叉注意力模块的分类网络的结构图;
30.图4为本发明实施例的注意力步长在交叉注意力模块中的示意图。
具体实施方式
31.下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
32.一种基于交叉注意力的2d卷积网络的动作识别方法,如图1所示,包括以下步骤:
33.s1、读取rgb视频,将视频分成多段,在每段中随机采样一帧,生成动作识别的图像序列;
34.在本发明的一个实施例中,所述步骤s1主要包括以下步骤:
35.从动作识别数据集中读取一个视频,将视频等分成t段,t通常为8或16,每段随机采样一帧生成序列作为输入样本,样本的特征形状为(t,c,h,w),其中t表示从视频样本中采样的帧数,c表示视频图像通道数,h、w分别表示视频图像的高和宽。
36.在神经网络的训练过程中,往往并行读取多个批量作为输入,此时,一个批次的样本特征形状为(n,t,c,h,w),其中n表示批次中样本的数量,为符合2d-cnn的输入,通常将样本特征进行形变得到(n*t,c,h,w)作为主干构架的输入。
37.对所述图像序列数据进行归一化和正则化处理,使之符合神经网络的输入要求;对样本数据进行归一化和正则化处理,使神经网络可以更好地处理输入的特征数据。
38.s2、将交叉注意力模块添加至2d-cnn的主干架构中,得到交叉注意力网络,交叉注意力模块使主干架构拥有处理图像序列中的时序信息的能力,再利用数据集数据对网络进行训练得到交叉注意力网络中各个层的参数;
39.其中,所述选择使用的2d-cnn主干架构,将交叉注意力模块添加至主干架构中,包括以下步骤:
40.s21、将一个批次的样本输入主干构架后,将所述主干构架某一层输出的特征,输入tsm时间转移模块得到时序通道特征交互后的特征;
41.一个批次的样本输入主干构架后,如resnet50,在某一层输出的特征,其形状为(n*t,c,h,w),将特征输入tsm模块(temporal shift module,时间转移模块)得到时序通道特征交互后的特征,形状不变,以该特征作为交叉注意力模块的输入。
42.s22、将所述时序通道特征交互后的特征输入交叉注意力模块,得到前向注意力特征和后向注意力特征,将所述前向注意力特征和后向注意力特征加权得到交叉注意力特征;
43.所述前向注意力特征(behind attention)为前向截取和前向零值填充得到的前α帧对当前帧的注意力特征,所述后向注意力特征(front attention)为后向截取和后向零
值填充可得到后α帧对当前帧的注意力特征,α为设定的注意力步长。具体地,将所述时序通道特征交互后的特征(n,t,c,h,w)分别输入所述交叉注意力模块中的前向注意力模块和后向注意力模块,将输入特征先按帧数t分成t个x,即x1,x2,

,x
t
,形式均为(n,c,h,w),再对各个x分别经conv2d卷积填充后,得到对应的a,即a1,a2,

,a
t
,形式均为(n,1,h,w),当前帧的x与前/后α帧对应的a点乘得到当前帧的x没有前/后α帧的保持不变得到即对于前向注意力特征,0《i≤α时,α《i≤t时,对于后向注意力特征,0《i≤t-α时,t-α《i≤t时,得到形式均为(n,c,h,w),将各个合成得到前/后向注意力特征输出,形式为(n,t,c,h,w),最后将所述前向注意力特征和后向注意力特征加权得到交叉注意力特征。
44.注意力步长α可以设定为1或2,以步长为1为例,交叉注意力模块如图2所示,包含两个卷积层,其卷积核大小为(3,3),步长为(1,1),并进行相应的填充,使输出特征的空间大小保持不变,而通道数变为1,其形状为(n*t,1,h,w)。将其进行形变得到(n,t,1,h,w),对其进行前向截取和前向零值填充得到前一帧对当前帧的注意力特征,称为前向注意力(front attention)特征,相应的进行后向截取和后向零值填充可得到后一帧对当前帧的注意力特征,称为后向注意力(behind attention)特征。两种注意力机制共同构成交叉注意力模块(cross attention module)。原特征进行形变得到(n,t,c,h,w),将其与两项注意力特征进行相乘得到加权后的特征,即交叉注意力特征。
45.s23、将所述交叉注意力特征和所述时序通道特征交互后的特征相加,作为所述主干构架下一层的输入。
46.恢复原形状后与经过tsm后得到的特征进行相加,作为主干构架下一层的输入。
47.最后将交叉注意力模块添加到主干构架中,构造所需的网络。之前的方法,如tsm、action net、stm、tea等网络,通常选择在原主干构架,如resnet50中,在所有残差块块中添加用于感受时序信息的模块,模块的时序理解能力在采样帧数较少时可能有冗余。在添加交叉注意力模块时,本发明对模块的数量进行了一定限制,如对resnet50网络,仅在每个stage最后的两个bottle neck中添加模块,如图3所示,2d-cnn主干构架resnet50网络有4个层,每层包括4个bottle neck,每个bottle neck包括输入特征依次经过1
×
1卷积、3
×
3卷积、1
×
1卷积后,与输入特征加权后输出到下一个bottle neck,在每层的最后两个bottle neck插入交叉注意力模块,从而使得交叉注意力模块的个数从原来的16个减少到8个,在保证网络的时序感受能力的同时,减少网络的计算复杂度。网络在视频识别相关的数据集上进行训练,得到相应的参数。
48.在构造网络时,交叉注意力模块可以自由调整注意力移动的距离,即可以从更远的帧图像中学习到注意力特征,指导当前帧特征的学习,将这个距离称为注意力步长(attention stride),即α,注意力步长α设定为1或2时的交叉注意力模块的后向注意力模块如图4所示。在之前的方法中往往不可以自由地调整这个参数,如通道移位,只能移动相邻的两帧图像的通道与当前帧特征进行交互。本发明提出的方法中可以调整注意力步长,使注意力模块的注意力范围增加,直接在一个模块中学习到远距离的时序信息,增加模型的时序感知能力。
49.s3、将处理后的图像序列输入训练后的交叉注意力网络,得到动作识别的分类特
征,再通过softmax函数获得输入序列属于每个动作类别的分数,判断输入序列最有可能属于的类别并输出。
50.在本发明的一个实施例中,所述步骤s4主要包括以下步骤:将步骤s2中经过处理后的图像序列输入训练后的网络,经过softmax函数得到最后的分类特征,其形状一般为(n,s),其中s为数据集中所包含的所有类别数。对应其中一个样本的分类特征,形状为(s),其最大值对应的索引即为网络预测的类别。
51.不同以往针对动作识别的网络中经常使用的自注意力方法,本发明将应用在图像中的注意力机制引入到视频之中,从相邻的时序帧中学习当前帧的空间注意力特征,使得这种注意力特征可以更好地融合视频中的时序信息,提高视频动作识别的准确度。本发明对在2d-cnn中添加模块的数量同样进行了限制,保证时序感受范围的同时,减少网络使用时序感受模块时的额外计算损失,如交叉注意力模块,使网络更加轻量化。
52.表1四个通用的动作识别数据集上提出的方法与相关方法的比较
[0053][0054][0055]
表2与部分相关方法计算复杂度的比较
[0056][0057]
表1为基于四个通用的动作识别数据集上提出的本方法与相关方法的视频动作识别准确度的比较,所有方法均使用采样8帧的输入;表2为本方法与相关方法的计算复杂度的比较,所有方法均为8帧输入,不进行多次采样和裁剪。在一些通用的视频动作识别数据集上进行了实验,在各个数据集上我们使用如下的训练设置:50个训练循环,初始学习率为0.001,并在第20和第40个循环左右将学习率降低为原学习率的0.1倍,权重衰减1e-5,dropout率0.5;网络初始化使用在kinetics400数据集上预训练过的tsm模型参数作为预训练参数;为防止在一些小的数据集上过早过拟合,我们将第一层以外的batch norm冻结。在测试时,为追求更高的精度,我们对每个视频采样2个片段,每个片段输入网络最后的输出
加权平均后经过softmax函数得到最后的识别分数。在几个通用的数据集上验证了方法的可行性。相关实验表明,本发明提出的网络在不损失分类性能的同时,造成的额外计算损失更小。
[0058]
最后需要说明的是,上述的动作识别方法可以转换为软件程序指令,既可以使用包括处理器和存储器的系统来运行实现,也可以通过非暂态计算机可读存储介质中存储的计算机指令来实现。上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0059]
综上可知,通过上述的一种基于交叉注意力的2d卷积网络的动作识别方法及系统,具有以下有益效果:
[0060]
(1)本发明基于2d-cnn的动作识别网络,将应用在图像中的注意力机制引入到视频之中,从相邻的时序帧中学习当前帧的交叉注意力特征,对当前帧的特征进行加权,使得交叉注意力特征可以更好地融合视频中的时序信息,2d-cnn降低了动作识别的深度神经网络的计算复杂度,交叉注意力特征感受时序信息的变化,从而提高视频动作识别的准确度;
[0061]
(2)本发明在tsm的基础上,交叉注意力模块增加了从相邻帧中学习时空注意力的机制,更好地感受时空的特征变换,交叉注意力模块将学习到的图像序列的空间注意力特征进行前向或后向移动,并通过注意力步长提升模块时序感知范围的能力,进一步加强交叉注意力特征感受视频中的时序信息的能力;
[0062]
(3)本发明对在2d-cnn中添加交叉注意力模块的数量同样进行了限制,不在2d-cnn的所有主干构架中添加交叉注意力模块,保证时序信息感受范围的同时,减少网络使用时序感受模块时额外造成的延时损失,使网络更加轻量化。
[0063]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;虽然结合附图描述了本发明的实施方式,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。

技术特征:
1.一种基于交叉注意力的2d卷积网络的动作识别方法,其特征在于,包括:s1、读取rgb视频,将视频分成多段,在每段中随机采样一帧,生成动作识别的图像序列,并处理使之符合神经网络的输入要求;s2、将交叉注意力模块添加至2d-cnn的主干架构中,得到交叉注意力网络,包括将所述主干架构的输入经tsm时间转移模块输出的时序通道特征交互后的特征输入所述交叉注意力模块中的前向注意力模块和后向注意力模块,经前向截取和前向零值填充得到的前α帧对当前帧的注意力特征,即前向注意力特征,同时经后向截取和后向零值填充得到的后α帧对当前帧的注意力特征,即后向注意力特征,将所述前向注意力特征和后向注意力特征加权得到交叉注意力特征,将所述交叉注意力特征和所述时序通道特征交互后的特征相加后输出到主干架构,α为设定的注意力步长;再利用数据集数据对网络进行训练得到交叉注意力网络中各个层的参数;s3、将处理后的所述图像序列输入训练后的交叉注意力网络,得到动作识别的分类特征,再根据所述分类特征输出识别结果。2.根据权利要求1所述的基于交叉注意力的2d卷积网络的动作识别方法,其特征在于,步骤s2中,所述经前向截取和前向零值填充得到的前α帧对当前帧的注意力特征,即前向注意力特征,同时经后向截取和后向零值填充得到的后α帧对当前帧的注意力特征,即后向注意力特征,包括:将输入的所述时序通道特征交互后的特征先按帧数t分成t个x,即x1,x2,

,x
t
,再对各个x分别经conv2d卷积填充后,得到对应的a,即a1,a2,

,a
t
,对于前向注意力特征,0<i≤α时,x
i
,α<i≤t时,对于后向注意力特征,0<i≤t-α时,t-α<i≤t时,得到将各个合成得到前向注意力特征或后向注意力特征。3.根据权利要求2所述的基于交叉注意力的2d卷积网络的动作识别方法,其特征在于,步骤s2中,所述交叉注意力模块添加至主干架构各层的个数不超过8个。4.根据权利要求3所述的基于交叉注意力的2d卷积网络的动作识别方法,其特征在于,步骤s2中,所述将交叉注意力模块添加至2d-cnn的主干架构中包括:所述2d-cnn的主干构架为resnet50网络,有4个层,每层包括4个bottle neck,每个bottle neck包括输入特征依次经过1
×
1卷积、3
×
3卷积、1
×
1卷积后,与输入特征加权后输出到下一个bottle neck,在每层的最后两个bottle neck插入所述交叉注意力模块。5.根据权利要求4所述的基于交叉注意力的2d卷积网络的动作识别方法,其特征在于,所述α设定为1或2。6.根据权利要求1所述的基于交叉注意力的2d卷积网络的动作识别方法,其特征在于,步骤s1中,所述处理包括归一化和正则化处理。7.根据权利要求1所述的基于交叉注意力的2d卷积网络的动作识别方法,其特征在于,步骤s1中,所述处理还包括:将一个批次的样本特征(n,t,c,h,w)进行形变得到(n*t,c,h,w),其中t表示从视频样本中采样的帧数,c表示视频图像通道数,h、w分别表示视频图像的高和宽,n表示批次中样本的数量。8.根据权利要求1所述的基于交叉注意力的2d卷积网络的动作识别方法,其特征在于,步骤s1中,所述将视频分成多段,包括8段或16段。
9.根据权利要求1所述的基于交叉注意力的2d卷积网络的动作识别方法,其特征在于,步骤s3中,所述再根据所述分类特征输出识别结果包括:通过softmax函数获得输入的图像序列属于每个动作类别的分数,判断输入的所述图像序列最有可能属于的类别并输出。10.一种基于交叉注意力的2d卷积网络的动作识别系统,其特征在于,包括:至少一个处理器;以及与所述处理器通信连接的至少一个存储器,其中:所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如权利要求1至9任一项所述的基于交叉注意力的2d卷积网络的动作识别方法。

技术总结
本发明公开了一种基于交叉注意力的2D卷积网络的动作识别方法及系统,所述动作识别方法包括:读取RGB视频,将视频分成多段,在每段中随机采样一帧,生成动作识别的图像序列,并处理使之符合神经网络的输入要求;将交叉注意力模块添加至2D-CNN的主干架构中,得到交叉注意力网络,使主干架构拥有处理图像序列中的时序信息的能力,再利用数据集数据对网络进行训练得到交叉注意力网络中各个层的参数;将处理后的所述图像序列输入训练后的交叉注意力网络,得到动作识别的分类特征,再根据所述分类特征输出识别结果。本发明解决了视频的时序特征的网络计算复杂度较高的问题。征的网络计算复杂度较高的问题。征的网络计算复杂度较高的问题。


技术研发人员:张钰莎 孙圣 雷军军 张何猛 钟杰 彭豁富 李海龙
受保护的技术使用者:中大智能科技股份有限公司
技术研发日:2023.05.29
技术公布日:2023/8/14
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐