首页> 中国专利> 一种动作识别模型的训练及动作识别方法与相关装置

一种动作识别模型的训练及动作识别方法与相关装置

摘要

本发明实施例提供了一种动作识别模型的训练及动作识别方法与相关装置,该方法包括:接收视频数据,视频数据中具有多帧原始图像数据,从原始图像数据中进行采样,获得目标图像数据,根据目标图像数据在全局的特征识别在视频数据中出现的动作,获得全局动作,根据目标图像数据在局部的特征识别在视频数据中出现的动作,获得局部动作,将全局动作与局部动作融合为在视频数据中出现的目标动作,通过使用局部动作识别分支和全局动作识别分支分别进行视频数据进行动作建模和识别动作,避免只关注局部动作信息或全局动作信息的缺陷,提高了识别动作的灵活性,通过融合局部动作和全局动作预测视频数据的动作,提高了识别各种不同视频数据的精确度。

著录项

  • 公开/公告号CN112749666A

    专利类型发明专利

  • 公开/公告日2021-05-04

    原文格式PDF

  • 申请/专利权人 百果园技术(新加坡)有限公司;

    申请/专利号CN202110056978.X

  • 发明设计人 蔡祎俊;卢江虎;项伟;

    申请日2021-01-15

  • 分类号G06K9/00(20060101);G06K9/46(20060101);G06K9/62(20060101);

  • 代理机构11332 北京品源专利代理有限公司;

  • 代理人孟金喆

  • 地址 新加坡巴西班让路枫树商业城30号楼15层31A

  • 入库时间 2023-06-19 10:51:07

说明书

技术领域

本发明实施例涉及计算机视觉的技术领域,尤其涉及一种动作识别模型的训练及动作识别方法与相关装置。

背景技术

随着短视频等视频应用的快速发展,用户可以随时随地制作视频数据并上传至视频平台,使得互联网上存在着海量的视频数据。由于互联网具有公开性和广泛传播性,所以各大视频平台在视频数据公开之前,会对这些视频数据进行内容审核、实施有效的监管。

动作识别是内容审核的其中一部分,用于过滤涉及暴力等视频数据。

传统对视频数据识别动作的方法根据于人工设计的特征提取算子,其提取到的特征很难适应视频数据的内容多样性,因此,现有的视频动作识别方法主要使用基于深度学习的方法。

但是,基于深度学习的方法一般较为单一,灵活性较差,导致动作识别的精度较低。

发明内容

本发明实施例提出了一种动作识别模型的训练及动作识别方法与相关装置,以解决基于深度学习的方法对视频数据识别动作精度较低的问题。

第一方面,本发明实施例提供了一种动作识别方法,包括:

接收视频数据,所述视频数据中具有多帧原始图像数据;

从所述原始图像数据中进行采样,获得目标图像数据;

根据所述目标图像数据在全局的特征识别在所述视频数据中出现的动作,获得全局动作;

根据所述目标图像数据在局部的特征识别在所述视频数据中出现的动作,获得局部动作;

将所述全局动作与所述局部动作融合为在所述视频数据中出现的目标动作。

第二方面,本发明实施例还提供了一种动作识别模型的训练方法,包括:

确定动作识别模型,所述动作识别模型包括采样网络、全局动作识别网络、局部动作识别网络;所述采样网络用于从视频数据的多帧原始图像数据中进行采样,获得目标图像数据,所述全局动作识别网络用于根据所述目标图像数据在全局的特征识别在所述视频数据中出现的动作,获得全局动作,所述局部动作识别网络用于根据所述目标图像数据在局部的特征识别在所述视频数据中出现的动作,获得局部动作,所述全局动作与所述局部动作用于融合为在所述视频数据中出现的目标动作;

计算所述全局动作识别网络在识别所述全局动作时的全局损失值;

计算所述局部动作识别网络在识别所述局部动作时的局部损失值;

根据所述全局损失值与所述局部损失值更新所述采样网络、所述全局动作识别网络与所述局部动作识别网络。

第三方面,本发明实施例还提供了一种动作识别装置,包括:

视频数据接收模块,用于接收视频数据,所述视频数据中具有多帧原始图像数据;

采样模块,用于从所述原始图像数据中进行采样,获得目标图像数据;

全局动作识别模块,用于根据所述目标图像数据在全局的特征识别在所述视频数据中出现的动作,获得全局动作;

局部动作识别模块,用于根据所述目标图像数据在局部的特征识别在所述视频数据中出现的动作,获得局部动作;

目标动作融合模块,用于将所述全局动作与所述局部动作融合为在所述视频数据中出现的目标动作。

第四方面,本发明实施例还提供了一种动作识别模型的训练装置,包括:

动作识别模型确定模块,用于确定动作识别模型,所述动作识别模型包括采样网络、全局动作识别网络、局部动作识别网络;所述采样网络用于从视频数据的多帧原始图像数据中进行采样,获得目标图像数据,所述全局动作识别网络用于根据所述目标图像数据在全局的特征识别在所述视频数据中出现的动作,获得全局动作,所述局部动作识别网络用于根据所述目标图像数据在局部的特征识别在所述视频数据中出现的动作,获得局部动作,所述全局动作与所述局部动作用于融合为在所述视频数据中出现的目标动作;

全局损失值计算模块,用于计算所述全局动作识别网络在识别所述全局动作时的全局损失值;

局部损失值计算模块,用于计算所述局部动作识别网络在识别所述局部动作时的局部损失值;

动作识别模型更新模块,用于根据所述全局损失值与所述局部损失值更新所述采样网络、所述全局动作识别网络与所述局部动作识别网络。

第五方面,本发明实施例还提供了一种计算机设备,所述计算机设备包括:

一个或多个处理器;

存储器,用于存储一个或多个程序,

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的动作识别方法或者如第二方面所述的动作识别模型的训练方法。

第六方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的动作识别方法或者如第二方面所述的动作识别模型的训练方法。

在本实施例中,接收视频数据,视频数据中具有多帧原始图像数据,从原始图像数据中进行采样,获得目标图像数据,根据目标图像数据在全局的特征识别在视频数据中出现的动作,获得全局动作,根据目标图像数据在局部的特征识别在视频数据中出现的动作,获得局部动作,将全局动作与局部动作融合为在视频数据中出现的目标动作,针对局部动作识别分支和全局动作识别分支执行一次采样操作,即局部动作识别分支和全局动作识别分支复用同一个特征,在保持视频数据的主要特征的情况下,可降低视频数据的数据量,降低识别动作的计算量,通过使用局部动作识别分支和全局动作识别分支分别进行视频数据进行动作建模和识别动作,避免只关注局部动作信息或全局动作信息的缺陷,提高了识别动作的灵活性,通过融合局部动作和全局动作预测视频数据的动作,提高了识别各种不同视频数据的精确度。

附图说明

图1为本发明实施例一提供的一种动作识别方法的流程图;

图2为本发明实施例一提供的一种动作识别的架构示意图;

图3为本发明实施例一提供的一种二维特征提取网络的结构示例图;

图4为本发明实施例一提供的一种二维投影块的结构示例图;

图5为本发明实施例一提供的一种二维残差块的结构示例图;

图6为本发明实施例一提供的一种三维特征提取网络的结构示例图;

图7为本发明实施例一提供的一种三维投影块的结构示例图;

图8为本发明实施例一提供的一种三维残差块的结构示例图;

图9为本发明实施例一提供的一种局部时序建模的示意图;

图10是本发明实施例二提供的一种动作识别模型的训练方法的流程图;

图11为本发明实施例三提供的一种动作识别装置的结构示意图;

图12为本发明实施例三提供的一种动作识别模型的训练装置的结构示意图;

图13为本发明实施例四提供的一种计算机设备的结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

基于深度学习的方法对视频动作识别主要包括以空间上的二维卷积(2D卷积),时间和空间上的三维卷积(3D卷积)以及时序上的一维卷积(1D卷积)等为基础构建特征提取网络,主要包括如下两类:

(1)、基于局部视频片段建模的方法

在视频数据中通过密集采帧的方法获得一系列局部的图像数据,作为局部视频序列,从局部视频序列中识别出局部(即视频片段)包含的动作。

但是,基于局部视频片段建模的方法无法利用视频数据中的全局时序信息,因此,无法直接识别整个视频数据中包含的动作。

为了提高识别整个视频数据中包含的动作的准确率,一般是对一个视频数据进行多次采样处理,这会显著增加了整体的计算开销。

同时,基于局部视频片段建模的方法假设视频数据中的每一个局部中都包含具有判别能力的动作,这一假设在实际应用场景中是不合理的。

(2)基于全局视频序列建模的方法

对视频数据进行稀疏采帧得到全局的图像数据,作为全局视频序列,并全局视频序列中识别出全局(即视频整体)包含的动作。

但是,基于全局视频序列建模的方法对视频数据进行整体建模,因此,具有判别能力的局部动作信息可能会被视频数据中的其他内容所抑制,从而无法被有效利用。

此外,基于全局视频序列建模的方法假设作为目标的动作分布在整个视频数据中,但在实际应用场景中,作为目标的动作经常分布在视频数据中的一个片段内,其余片段则包含与作为目标的动作无关的其他动作。

综上,这两种方法都无法很好地覆盖不同时序粒度的动作,基于局部视频片段建模的方法无法利用视频数据中的全局时序信息,基于全局视频序列建模的方法对局部动作的时序信息缺乏关注。

这两种方法都假设视频数据中的每个片段均包含具有判别能力的动作,这一假设在实际应用场景中经常是不成立的,实际场景下短视频中经常包含大量与作为目标的动作无关的内容,而具有判别能力的动作只出现在一部分片段中。

为了提高动作识别的准确率,基于全局视频序列建模的方法通常需求对一个视频数据进行多次采样处理,显著增加了整体的计算开销。

针对上述问题,本发明实施例在一个动作识别模型内利用全局动作识别网络和局部动作识别网络分别识别不同时序粒度的动作,使用多示例学习(Multiple InstanceLearning,MIL)的方法对局部动作识别网络进行学习以关注具有判别能力的片段(即包含作为目标的动作的片段),从而可以高效地识别不同时序粒度的动作,对每一个视频数据,动作识别模型做一次采样和处理,从而可以降低整体计算开销,提高视频内容审核的效率。

此外,本发明将局部动作识别的问题建模为多示例学习问题,通过多示例学习的方法,使动作识别模型关注到具有较强判别能力的局部动作信息,从而减少无关背景片段的影响。

实施例一

图1为本发明实施例一提供的一种动作识别方法的流程图,本实施例可适用于基于全局和局部对视频数据识别动作的情况,该方法可以由动作识别装置来执行,该动作识别装置可以由软件和/或硬件实现,可配置在计算机设备中,例如,服务器、工作站、个人电脑,等等,具体包括如下步骤:

步骤101、接收视频数据。

在实际应用中,用户可以在客户端中实时制作视频数据或编辑在先的视频数据,如短视频、微电影、直播数据等,将视频数据上传至视频平台,意图在该视频平台发布该视频数据,让公众传阅、浏览。

不同的视频平台可按照业务、法律等因素制定视频内容审核标准,在发布视频数据之前,按照该审核规范对该视频数据的内容进行审核,本实施例可在动作的维度上对视频数据的内容进行审核,过滤掉一些不符合视频内容审核标准的视频文件,如包含色情、低俗、暴力等内容的视频数据,从而发布一些符合视频内容审核标准的视频数据。

如果对于实时性要求较高,在视频平台中可设置流式实时系统,用户通过客户端实时将视频数据上传至该流式实时系统,该流式实时可将该视频数据传输至在动作的维度上对视频数据进行内容审核的计算机设备。

如果对于实时性要求较低,在视频平台中可设置数据库,如分布式数据库等,用户通过客户端将视频数据上传至该数据库,该在动作的维度上对视频数据进行内容审核的计算机设备可从该数据库读取该视频数据。

在本实施例中,如图2所示,可预先训练动作识别模型,该动作识别模型可融合局部动作信息和全局动作信息预测视频数据出现的目标动作,在训练动作识别模型完成时,可将动作识别模型的参数和结构保存起来,在执行视频内容审核的流程时,直接加载动作识别模型、完成视频数据中的目标动作识别即可,无需重新训练动作识别模型。

该动作识别模型包括采样网络(又称采样层210)、全局动作识别网络220、局部动作识别网络230,采样网络210统一为全局动作识别网络220、局部动作识别网络230提供视频数据的特征,全局动作识别网络220可在全局的维度对视频数据识别动作,局部动作识别网络230可在局部的维度对视频数据识别动作,全局动作识别网络220与局部动作识别网络230为动作识别模型中并行的分支,使得动作识别模型同时得到全局和局部的建模能力。

步骤102、从原始图像数据中进行采样,获得目标图像数据。

如图2所示,在视频数据201中具有多帧图像数据202,为便于区分,可记为原始图像数据,针对视频数据201,可进行解码并抽取原始图像数据202,将原始图像数据202输入采样网络210中执行采样操作,输出目标图像数据,从而在保持视频数据201的主要特征的情况下,降低视频数据的数据量,降低识别动作的计算量。

在部分情况下,为降低计算的开销量,并非把视频数据的所有原始数据作为输入,而逐秒均匀地抽取多帧(如15帧)作为代表输入到动作识别模型中,当然,视频数据的抽取方式会对识别动作的精度造成一定的影响,此时,可以根据业务场景设计更具偏向性的抽取方式。

一般情况下,二维的操作较三维的操作简单,若在动作识别模型中,以二维的操作为主、三维操作为辅,则可以对原始图像数据执行二维的采样操作,获得目标图像数据。

在一种采样的方式中,可对原始图像数据执行二维卷积操作,获得目标图像数据。

其中,二维卷积操作是指以H(高)、W(宽)上的2个维度进行卷积的操作。

当然,若在动作识别模型中,以三维的操作为主、二维的操作为辅,则可以对原始图像数据执行三维的采样操作(如三维卷积操作,即,以T(时间)、H、W上的3个维度进行卷积的卷积操作),获得目标图像数据,本实施例对此不加以限制。

步骤103、根据目标图像数据在全局的特征识别在视频数据中出现的动作,获得全局动作。

针对目标图像数据,可输入全局动作识别网络,全局动作识别网络具有全局建模的能力,预测全局视频数据可能出现的动作,作为全局动作。

在本发明的一个实施例中,步骤103可以包括如下步骤:

步骤1031、对目标图像数据提取二维下的特征,获得全局空间特征。

如图2所示,为了高效实现对视频数据识别动作的时序建模,全局动作识别网络使用了二维特征提取网络2221与三维特征提取网络2211这两种结构提取特征。

其中,在二维特征提取网络中,可对每一帧目标图像数据执行二维卷积操作,从而对空间信息建模,获得全局空间特征。

在一种二维特征提取网络的结构示例中,如图3所示,二维特征提取网络为多层的残差神经网络,二维特征提取网络包括多个二维阶段(stage),在每个二维阶段中依次设置有二维投影块、多个二维残差块,即,在提取全局空间特征时按照顺序划分为多个二维阶段(stage)在每个二维阶段中依次设置有二维投影块、多个二维残差块。

其中,二维残差块是一种在H、W的维度下使用跨步连接来构建的卷积神经网络模块,通常由两到三个卷积层组成。

则在本示例中,步骤1031包括如下步骤:

步骤10311、在当前二维阶段中,调用二维投影块对目标图像数据执行二维卷积操作,依次调用多个二维残差块对目标图像数据执行二维卷积操作。

步骤10312、判断是否已遍历所有二维阶段网络;若是,则执行步骤10313,若是,则执行步骤10314。

步骤10313、将目标图像数据输出为全局空间特征。

步骤10314、将目标图像数据输出至下一个二维阶段网络,返回执行步骤10311。

从第一个二维阶段开始(即当前二维阶段初始为第一个二维阶段)、按照顺序依次遍历每个二维阶段,即按照顺序依次调用每个二维阶段对目标图像数据进行处理。

具体而言,二维特征提取网络中存在n(n为正整数,n≥2)个二维阶段,第1个二维阶段的输入,为初始的目标图像数据,第2-n个二维阶段的输入,为上一个二维阶段输出的目标图像数据。

第n个二维阶段输出的目标图像数据,为整个二维特征提取网络输出的全局空间特征。

在一些设计中,如图2所示,可在全局动作识别网络中设置二维池化层2222,该二维池化层级2222联在二维特征提取网络2221之后,在步骤10313中,对目标图像数据执行空间上的全局池化操作(如全局池化平均操作),作为全局空间特征。

在每个二维阶段中,均可调用二维投影块对目标图像数据执行二维卷积操作,依次调用多个二维残差块对目标图像数据执行二维卷积操作。

其中,所谓依次调用多个二维残差块,是指第一个二维残差块输入的目标图像数据为二维投影块输出的目标图像数据,非第一个二维残差块输入的目标图像数据为上一个二维残差块输出的目标图像数据,最后一个二维残差块输出的目标图像数据为整个二维阶段输出的目标图像数据。

进一步而言,对于二维投影块,在每经过一个二维阶段时,二维投影块可以缩小目标图像数据的尺寸、扩大目标图像数据的通道,对输入的每帧目标图像数据单独提取特征,获取视频数据在各个时间点上的空间信息。

具体而言,如图4所示,二维投影块设置有第一二维卷积层(2D Conv_1)、多个第二二维卷积层(2D Conv_2),则在二维投影块提取特征时,一方面,调用第一二维卷积层(2DConv_1)对目标图像数据执行二维卷积操作,另一方面,依次调用多个第二二维卷积层(2DConv_2)对目标图像数据执行二维卷积操作。

其中,所谓依次调用多个第二二维卷积层(2D Conv_2),是指第一个第二二维卷积层(2D Conv_2)输入的目标图像数据为原始的目标图像数据或上一个二维阶段输出的目标图像数据,非第一个第二二维卷积层(2D Conv_2)输入的目标图像数据为上一个第二二维卷积层(2D Conv_2)输出的目标图像数据。

从而对第一二维卷积层(2D Conv_1)输出的目标图像数据与第二二维卷积层(2DConv_2)输出的目标图像数据进行合并。

此外,为了减少二维残差块运算的通道数、进而减少参数量,二维残差块可使用bottleneck(瓶颈)的设计理念。

如图5所示,对于bottleneck的设计,二维残差块设置有多个第三二维卷积层(2DConv_3),因此,在每个二维残差块中,可依次调用多个第三二维卷积层(2D Conv_3)对目标图像数据执行二维卷积操作,第一个第三二维卷积层(2D Conv_3)可压缩目标图像数据的通道数,最后一个第三二维卷积层(2D Conv_3)可恢复目标图像数据的通道数。

其中,所谓依次调用多个第三二维卷积层(2D Conv_3),是指第一个第三二维卷积层(2D Conv_3)输入的目标图像数据为二维投影块或上一个二维残差块输出的目标图像数据,非第一个第三二维卷积层(2D Conv_3)输入的目标图像数据为上一个第三二维卷积层(2D Conv_3)输出的目标图像数据,最后一个第三二维卷积层(2D Conv_3)输出的目标图像数据为整个二维残差块输出的目标图像数据。

为使本领域技术人员更好地理解本发明实施例,以下通过具体的示例来说明本发明实施例中的二维特征提取网络。

在本示例中,如图3所示,二维特征提取网络按照顺序划分为四个二维阶段(stage):

在第一个二维阶段(stage_1)中依次设置有一个二维投影块、三个二维残差块(二维残差块_1-二维残差块_3)。

在第二个二维阶段(stage_2)中依次设置有一个二维投影块、四个二维残差块(二维残差块_1-二维残差块_4)。

在第三个二维阶段(stage_3)中依次设置有一个二维投影块、六个二维残差块(二维残差块_1-二维残差块_6)。

在第四个二维阶段(stage_4)中依次设置有一个二维投影块、三个二维残差块(二维残差块_1-二维残差块_3)。

如图4所示,在每个二维投影块中均设置有一个第一二维卷积层(2D Conv_1)、三个第二二维卷积层(2D Conv_2),第一二维卷积层(2D Conv_1)的卷积核为1×1,第二二维卷积层(2D Conv_2)的卷积核依次为1×1、3×3、1×1。

如图5所示,在每个二维残差块中均设置有三个第三二维卷积层(2D Conv_3),第三二维卷积层(2D Conv_3)的卷积核依次为1×1、3×3、1×1。

当然,上述二维特征提取网络只是作为示例,在实施本发明实施例时,可以根据实际情况设置其它二维特征提取网络,例如,为了降低计算量,在每个二维投影块中设置有一个第一二维卷积层、两个第二二维卷积层,和/或,在每个二维残差块中设置有两个第三二维卷积层,等等,本发明实施例对此不加以限制。另外,除了上述二维特征提取网络外,本领域技术人员还可以根据实际需要采用其它二维特征提取网络,本发明实施例对此也不加以限制。

步骤1032、对目标图像数据提取三维下的特征,获得全局时序特征。

在三维特征提取网络中,可对每一帧目标图像数据执行三维卷积操作,从而对相邻的目标图像数据进行时序信息建模,获得全局时序特征。

在一种三维特征提取网络的结构示例中,如图6所示,三维特征提取网络为多层的残差神经网络,一般情况下,为了降低计算量,三维特征提取网络的层级小于二维特征提取网络的层级。

三维特征提取网络包括多个三维阶段(stage),第一个三阶段中设置一个或多个三维残差块,其他三维阶段中依次设置有三维投影块、一个或多个三维残差块,在提取全局时序特征时按照顺序划分为多个三维阶段(stage),第一个三阶段中设置一个或多个三维残差块,其他三维阶段中依次设置有三维投影块、一个或多个三维残差块。

其中,三维残差块是一种在T、H、W的维度下使用跨步连接来构建的卷积神经网络模块,通常由两到三个卷积层组成。

则在本示例中,步骤1032包括如下步骤:

步骤10321、在当前三维阶段中,调用三维投影块对目标图像数据执行三维卷积操作,和/或,调用三维残差块对目标图像数据执行三维卷积操作。

步骤10322、判断是否已遍历所有三维阶段;若是,则执行步骤10323,若是,则执行步骤10324。

步骤10323、将目标图像数据输出为全局时序特征;

步骤10324、将目标图像数据输出至下一个三维阶段网络,返回执行步骤10321。

从第一个三维阶段开始(即当前三维阶段初始为第一个二维阶段)、按照顺序依次遍历每个三维阶段,即按照顺序依次调用每个三维阶段对目标图像数据进行处理。

具体而言,三维特征提取网络中存在m(m为正整数,n≥2)个三维阶段,第1个三维阶段的输入,为初始的目标图像数据,第2-m个三维阶段的输入,为上一个三维阶段输出的目标图像数据。

第n个三维阶段输出的目标图像数据,为整个三维特征提取网络输出的全局时序特征。

在一些设计中,如图2所示,可在全局动作识别网络220中设置三维池化层2212,该三维池化层2212级联在三维特征提取网络2211之后,在步骤10323中,对目标图像数据执行时序上的全局池化操作(如全局池化平均操作),作为全局时序特征。

在第一个三维阶段中,可调用三维残差块对目标图像数据执行三维卷积操作,在第二个及第二个以后的三维阶段中,可调用三维投影块对目标图像数据执行三维卷积操作,调用三维残差块对目标图像数据执行三维卷积操作。

若三维阶段存在多个三维残差块,则可以依次调用多个三维残差块对目标图像数据执行三维卷积操作。

其中,所谓依次调用多个三维残差块,是指第一个三维残差块输入的目标图像数据为三维投影块输出的目标图像数据,非第一个二维残差块输入的目标图像数据为上一个三维残差块输出的目标图像数据,最后一个维残差块输出的目标图像数据为整个三维阶段输出的目标图像数据。

进一步而言,对于三维投影块,在每经过非第一个三维阶段时,三维投影块可以缩小目标图像数据的尺寸、扩大目标图像数据的通道,对输入的相邻两帧目标图像数据之间关联提取特征,获取视频数据的时序信息。

具体而言,如图7所示,三维投影块设置有多个第一三维卷积层(3D Conv_1)、第二三维卷积层(3D Conv_2),则在三维投影块提取特征时,一方面,依次调用多个第一三维卷积层(3D Conv_1)对目标图像数据执行三维卷积操作,另一方面,调用第二三维卷积层(3DConv_2)对目标图像数据执行三维卷积操作。

其中,所谓依次调用多个第一三维卷积层(3D Conv_1),是指第一个第一三维卷积层(3D Conv_1)输入的目标图像数据为上一个三维残阶段输出的目标图像数据,非第一个第一三维卷积层(3D Conv_1)输入的目标图像数据为上一个第一三维卷积层(3D Conv_1)输出的目标图像数据。

从而对第一三维卷积层(3D Conv_1)输出的目标图像数据与第二三维卷积层(3DConv_2)输出的目标图像数据进行合并。

此外,为了减少三维残差块运算的通道数、进而减少参数量,三维残差块可使用bottleneck(瓶颈)的设计理念。

如图8所示,对于bottleneck的设计,三维残差块设置有多个第三三维卷积层(3DConv_3),因此,在每个三维残差块中,依次调用多个第三三维卷积层(3D Conv_3)对目标图像数据执行三维卷积操作,第一个第三三维卷积层(3D Conv_3)可压缩目标图像数据的通道数,最后一个第三三维卷积层(3D Conv_3)可恢复目标图像数据的通道数。

其中,所谓依次调用多个第三三维卷积层(3D Conv_3),是指第一个第三二维卷积层(3D Conv_3)输入的目标图像数据为原始的目标图像数据或上一个三维阶段输出的目标图像数据,非第一个第三三维卷积层(3D Conv_3)输入的目标图像数据为上一个第三三维卷积层(3D Conv_3)输出的目标图像数据,最后一个第三三维卷积层(3D Conv_3)输出的目标图像数据为整个三维残差块输出的目标图像数据。

为使本领域技术人员更好地理解本发明实施例,以下通过具体的示例来说明本发明实施例中的三维特征提取网络。

在本示例中,三维特征提取网络按照顺序划分为三个三维阶段(stage):

在第一个三维阶段(stage_1)中设置有一个三维残差块。

在第二个三维阶段(stage_2)中依次设置有一个三维投影块、一个三维残差块。

在第三个三维阶段(stage_3)中依次设置有一个三维投影块、一个三维残差块。

如图7所示,在每个三维投影块中均设置有两个第一三维卷积层(3D Conv_1)、一个第二三维卷积层(3D Conv_2),第一三维卷积层(3D Conv_1)的卷积核依次为3×3×3、3×3×3,第二三维卷积层(3D Conv_2)的卷积核为3×3×3。

如图8所示,在每个三维残差块中均设置有两个第三三维卷积层(3D Conv_3),第三三维卷积层(3D Conv_3)的卷积核依次为3×3×3、3×3×3。

当然,上述三维特征提取网络只是作为示例,在实施本发明实施例时,可以根据实际情况设置其它三维特征提取网络,例如,为了通过精确度,在每三维投影块中设置有三个第一三维卷积层、一个第二三维卷积层,和/或,在每个三维残差块中设置有三个第三三维卷积层,等等,本发明实施例对此不加以限制。另外,除了上述三维特征提取网络外,本领域技术人员还可以根据实际需要采用其它三维特征提取网络,本发明实施例对此也不加以限制。

步骤1033、将全局空间特征与全局时序特征拼接为全局目标特征。

如图2所示,多帧目标图像数据经过二维特征提取模型的处理,可输出多维(如1024维)的全局空间特征,多帧目标图像数据三维特征提取模型的处理,可输出多维(如512维)的全局时序特征,全局空间特征与全局时序特征这两组特征可通过特征拼接器223进行拼接,可得到多维(1536维)的全局目标特征。

步骤1034、将全局目标特征映射为预设的动作,获得在视频数据中出现的全局动作。

在本实施例中,如图2所示,可设置线性的全局分类器(如全连接层)224,该全局分类器224可对进行全局的动作分类。

具体而言,将全局目标特征输入到该全局分类器224中,可将全局目标特征映射为预设的动作,从而在全局的维度下、在视频数据中出现的动作,为便于区分,该动作记为全局动作。

步骤104、根据目标图像数据在局部的特征识别在视频数据中出现的动作,获得局部动作。

如果全局动作识别网络可以较为高效地识别全局动作,但其无法有效利用布局动作信息,无法有效识别不同时序粒度的动作,则可以在全局动作识别网络的基础上添加一个轻量化的局部动作识别网络,以便更好地利用视频数据中的局部动作信息,并和全局动作识别网络形成互补,以提高动作识别模型整体的动作识别能力。

进一步而言,局部动作识别网络可以通过数据驱动的方式进行学习,从而利用与该局部工作相匹配的时序卷积分支提取的信息来完成局部动作识别。

此时,采样网络与全局动作识别网络配套,为降低在局部动作识别网络的额外计算开销,可以在采样网络的基础上构建局部动作识别网络,复用采样网络输出的目标图像数据,可以有效控制局部动作识别分支带来的额外计算开销,使整个动作识别模型的计算开销仍然保持在较低水平。

针对目标图像数据,可输入局部动作识别网络,局部动作识别网络具有局部建模的能力,预测局部视频数据可能出现的动作,作为局部动作。

在本发明的一个实施例中,步骤104可以包括如下步骤:

步骤1041、提取在局部目标图像数据中表征运动的特征,作为局部运动特征。

在本实施例中,如图2所示,局部动作识别模式的初始是局部时序建模,这一部分的输入是采样网络(如二维卷积网络)对每帧原始图像数据提取出的特征,即目标图像数据f

目标图像数据不包含时序信息,局部动作的时序信息主要为局部运动特征,因此,如图2所示,可在局部目标图像数据中提取表征运动的特征,作为局部运动特征231。

一般情况下,可以使用光流(图像数据中的每一个像素值表示对应空间位置上的像素从当前帧到下一帧的位移)等形式表示局部运动特征,但光流具有较大的计算和存储开销,因此,难以应用在大规模的视频动作识别中。

为了实现高效的局部运动特征建模,本实施例使用目标图像数据上的帧差特征来表达局部运动特征。

具体而言,如图9所示,在时间的维度上,计算任意相邻的两帧目标图像数据901之间的差值902,作为局部运动特征903。

对于第t帧,计算每相邻两帧目标图像数据的差值d

此外,考虑到帧差特征收噪声影响较大,如图9所示,可对局部运动特征进行平滑操作,如,使用逐通道(channel-wise)、卷积核为3x3的空间卷积进行平滑操作,从而降低局部运动特征的噪声。

步骤1042、在多个尺度下对局部运动特征进行时序卷积操作,获得局部时序特征。

单一的局部运动特征可能不足用于识别动作,因此,如图所示,本实施例可在时间维度上对局部运动特征执行多尺度时序卷积232,从而在局部时序建模,获得局部时序特征,通过在局部动作识别分支中使用多尺度的时序卷积来学习不同时序粒度的局部动作,可提高动作识别模型对不同局部动作的识别能力。

其中,如图9所示,所谓多个尺度,可以指多个大小不同的卷积核9051,如3、5、7,实现一组时间维度上的一维时序卷积进行多尺度的局部时序建模。

所谓时序卷积,可以指在时间维度T上进行卷积的卷积操作。

具体而言,可以以并行的方式使用多个卷积核9051对局部运动特征沿时间维度进行卷积操作,获得多个帧间时序特征。

将局部运动特征与多个帧间时序特征逐元素(element-wise)相加9052,得到不同时间尺度的特征,作为局部时序特征。

当然,除了使用多个具有不同卷积核大小的时序卷积进行多尺度时序卷积之外,还可以采用其他方式进行多尺度时序卷积,例如,可以使用多个不同池化窗口大小的最大值池化或平均值池化层进行多尺度时序卷积,等等,本实施例对此不加以限制。

步骤1043、将局部时序特征映射为预设的动作,获得在单帧目标图像数据中出现的单体动作。

在本实施例中,如图2所示,可设置线性的局部分类器(如全连接层)233,该局部分类器可对进行局部的动作分类。

具体而言,将局部时序特征输入到该局部分类器233中,可将局部时序特征映射为预设的动作,从而预测在单帧目标图像数据中出现的动作,为便于区分,该动作记为单体动作。

步骤1044、将所有单体动作融合为在视频数据中出现的局部动作。

对于给定的视频数据,在其中任意位置和任意时间长度的一个片段包含作为目标的动作,便可认为该视频整体上包含作为目标的动作,因此,如图2所示,不同片段的动作识别结果(即单体动作)通过池化操作234进行整合,可以得到在全局的维度下、在整个视频数据中出现的动作。

以最大值池化操作作为池化操作的示例,在本示例中,可统计各个类型下单体动作的数量,选择数量最大的单体动作为在视频数据中出现的局部动作。

步骤105、将全局动作与局部动作融合为在视频数据中出现的目标动作。

在本实施例中,如图2所示,若在全局维度下预测视频数据出现的全局动作、以及在局部维度下预测视频数据出现的局部动作,则可以在局部动作识别网络的末尾添加一个融合层,将全局动作与局部动作进行融合240,从而综合预测视频数据中出现的动作,为便于区分,该动作记为目标动作。

在具体实现中,一方面,确定全局动作的概率,作为全局概率,另一方面,确定局部动作的概率,作为局部概率。

将各个全局动作与各个局部动作进行比较。

若全局动作与局部动作相同,则将全局动作与局部动作设置为在视频数据中出现的目标动作,以及,基于全局概率与局部概率计算目标动作的目标概率,其中,目标概率与全局概率、局部概率均正相关,即全局概率越大、局部概率越大,则目标概率越大,反之,全局概率越小、局部概率越小,则目标概率越小。

在一个示例中,由于局部动作识别网络和全局动作识别网络分别利用的是局部动作信息和全局动作信息进行动作识别,因此,二者具有较强的互补性。

则在本示例中,全局动作的全局概率为p

将一减去反相概率,获得目标动作的目标概率,则目标概率p表示如下:

P=1-(1-p

在本示例中,基于近似独立性的假设对全局动作识别分支和局部动作识别分支的预测结果(即全局动作、局部动作)进行融合,从而能够更好地利用全局动作识别分支和局部动作识别分支的互补性,增强动作识别模型整体识别动作的准确率。

当然,上述计算目标概率的方式只是作为示例,在实施本发明实施例时,可以根据实际情况设置其它计算目标概率的方式,例如,将全局概率与局部概率通过相乘、加权之后相加计算目标概率,等等,本发明实施例对此不加以限制。另外,除了上述计算目标概率的方式外,本领域技术人员还可以根据实际需要采用其它计算目标概率的方式,本发明实施例对此也不加以限制。

目标概率越高,视频数据越有可能含有该目标动作,目标概率越低,视频数据越有可能不含有该目标动作,本实施例可视目标概率的情况对视频数据标注该目标动作的标签,后者,推送技术人员进行人工审核,本实施例对此不加以限制。

在本实施例中,接收视频数据,视频数据中具有多帧原始图像数据,从原始图像数据中进行采样,获得目标图像数据,根据目标图像数据在全局的特征识别在视频数据中出现的动作,获得全局动作,根据目标图像数据在局部的特征识别在视频数据中出现的动作,获得局部动作,将全局动作与局部动作融合为在视频数据中出现的目标动作,针对局部动作识别分支和全局动作识别分支执行一次采样操作,即局部动作识别分支和全局动作识别分支复用同一个特征,在保持视频数据的主要特征的情况下,可降低视频数据的数据量,降低识别动作的计算量,通过使用局部动作识别分支和全局动作识别分支分别进行视频数据进行动作建模和识别动作,避免只关注局部动作信息或全局动作信息的缺陷,提高了识别动作的灵活性,通过融合局部动作和全局动作预测视频数据的动作,提高了识别各种不同视频数据的精确度。

实施例二

图10为本发明实施例二提供的一种动作识别模型的训练方法的流程图,本实施例可适用于基于全局和局部对视频数据识别动作的情况,该方法可以由动作识别模型的训练装置来执行,该动作识别模型的训练装置可以由软件和/或硬件实现,可配置在计算机设备中,例如,服务器、工作站、个人电脑,等等,具体包括如下步骤:

步骤1001、确定动作识别模型。

在本实施例中,可预先构建动作识别模型,动作识别模型可以使用MXNet(一款设计为效率和灵活性的深度学习框架)作为底层支持库实现,动作识别模型可利用四张显卡完成训练。

在具体实现中,动作识别模型包括如下结构:

1、采样网络

采样网络用于从视频数据的多帧原始图像数据中进行采样,获得目标图像数据。

进一步地,采样网络还用于对原始图像数据执行二维卷积操作,获得目标图像数据。

2、全局动作识别网络

全局动作识别网络用于根据目标图像数据在全局的特征识别在视频数据中出现的动作,获得全局动作。

进一步地,全局动作识别网络包括如下结构:

2.1、二维特征提取网络

二维特征提取网络用于对目标图像数据提取二维下的特征,获得全局空间特征。

在一些设计中,二维特征提取网络按照顺序划分为多个二维阶段,在每个二维阶段中依次设置有二维投影块、多个二维残差块。

二维投影块用于对目标图像数据执行二维卷积操作。

二维残差块用于对目标图像数据执行二维卷积操作,最后一个二维残差块输出的目标图像数据为全局空间特征。

在部分情况下,全局动作识别网络还包括二维池化层,该二维池化层级联在二维特征提取网络之后,用于对目标图像数据执行空间上的全局池化操作(如全局池化平均操作),作为全局空间特征。

示例性地,二维投影块设置有第一二维卷积层、多个第二二维卷积层;

第一二维卷积层用于对目标图像数据执行二维卷积操作;

第二卷积层用于对目标图像数据执行二维卷积操作;

第一二维卷积层输出的目标图像数据与第二二维卷积层输出的目标图像数据合并为二维投影块输出的目标图像数据。

示例性地,二维残差块设置有多个第三二维卷积层。

第三二维卷积层用于对目标图像数据执行二维卷积操作。

2.2、三维特征提取网络

三维特征提取网络用于对目标图像数据提取三维下的特征,获得全局时序特征。

在部分情况下,全局动作识别网络还包括三维池化层,该三维池化层级联在三维特征提取网络之后,对目标图像数据执行时序上的全局池化操作(如全局池化平均操作),作为全局时序特征。

在一些设计中,三维特征提取网络按照顺序划分为多个三维阶段,第一个三阶段中设置一个或多个三维残差块,其他三维阶段中依次设置有三维投影块、一个或多个三维残差块。

三维投影块用于对目标图像数据执行三维卷积操作;

三维残差块用于对目标图像数据执行三维卷积操作,最后一个三维残差块输出的目标图像数据为全局时序特征。

示例性地,三维投影块设置有多个第一三维卷积层、第二三维卷积层;

第一三维卷积层用于对目标图像数据执行三维卷积操作;

第二三维卷积层用于对目标图像数据执行三维卷积操作;

第一三维卷积层输出的目标图像数据与第二三维卷积层输出的目标图像数据合并为三维投影块输出的目标图像数据。

示例性地,三维残差块设置有多个第三三维卷积层。

第三三维卷积层用于对目标图像数据执行三维卷积操作。

2.3、特征拼接器

特征拼接器,用于将全局空间特征与全局时序特征拼接为全局目标特征。

2.4、全局分类器

全局分类器,用于将全局目标特征映射为预设的动作,获得在视频数据中出现的全局动作。

3、局部动作识别网络

局部动作识别网络用于根据目标图像数据在局部的特征识别在视频数据中出现的动作,获得局部动作。

进一步地,局部动作识别网络包括如下结构:

3.1、运动特征提取网络

运动特征提取网络用于提取在局部目标图像数据中表征运动的特征,作为局部运动特征。

示例性地,运动特征提取网络还用于计算任意相邻的两帧目标图像数据之间的差值,作为局部运动特征。

在一些实施方式中,局部动作识别网络还包括如下结构:

平滑层,级联在运动特征提取网络之后,用于对局部运动特征进行平滑操作。

3.2、时序特征提取网络

时序特征提取网络,用于在多个尺度下对局部运动特征进行时序卷积操作,获得局部时序特征。

在具体实现中,时序特征提取网络包括:

多个时序卷积层,多个时序卷积层设置有大小不同的卷积核;

每个时序卷积层用于使用指定卷积核对局部运动特征沿时间维度进行卷积操作,获得多个帧间时序特征。

特征融合层,用于将局部运动特征与多个帧间时序特征相加,得到局部时序特征。

3.3、局部分类器

局部分类器用于将局部时序特征映射为预设的动作,获得在单帧目标图像数据中出现的单体动作。

3.4、全局池化层

全局池化层用于将所有单体动作融合为在视频数据中出现的局部动作。

在具体实现中,全局池化层还用于统计各个类型下单体动作的数量,选择数量最大的单体动作为在视频数据中出现的局部动作。

在本实施例中,全局动作与局部动作用于融合为在视频数据中出现的目标动作。

在具体实现中,可确定全局动作的概率,作为全局概率,确定局部动作的概率,作为局部概率,若全局动作与局部动作相同,则将全局动作与局部动作设置为在视频数据中出现的目标动作,基于全局概率与局部概率计算目标动作的目标概率,目标概率与全局概率、局部概率均正相关。

示例性地,动作融合层还用于计算第一差值与第二差值之间的乘积,作为反相概率,第一差值表示一减去全局概率,第二差值表示一减去局部概率;将一减去反相概率,获得目标动作的目标概率。

在本发明实施例中,由于动作识别模型的结构及其应用与实施例一的应用基本相似,所以描述的比较简单,相关之处参见实施例一的部分说明即可,本发明实施例在此不加以详述。

在训练时,可对作为样本的视频数据根据业务的数据需求以及驱动,采取不同的数据增强方案进行数据增强,例如,随机缩放裁剪、随机运动模糊、随机翻转,等等本实施例对此不加以限制。

步骤1002、计算全局动作识别网络在识别全局动作时的全局损失值。

在训练动作识别模型时,对于全局动作识别网络,可以使用预设的损失函数计算其在识别全局动作时的损失值,作为全局损失值。

示例性地,损失函数可以为交叉熵损失,即一种用于分类任务的损失函数,其目标是使全局动作识别网络预测出的全局动作的概率分布与标注给定的正确全局动作的分布之间的差异最小化。

步骤1003、计算局部动作识别网络在识别局部动作时的局部损失值。

在训练动作识别模型时,对于局部动作识别网络,可以使用预设的损失函数计算其在识别局部动作时的损失值,作为局部损失值。

示例性地,损失函数可以为交叉熵损失,即一种用于分类任务的损失函数,其目标是使局部动作识别网络预测出的局部动作的概率分布与标注给定的正确局部动作的分布之间的差异最小化。

在视频数据的内容审核的业务场景中,一个视频数据中经常只有一部分片段包含作为目标的动作,其余片段则包含无关的背景内容。而标注时通常只给出视频级别的动作,即整个视频数据中是否包含作为目标的动作,而没有视频数据中哪个片段包含作为目标的动作的标注。

为此,在本实施例中,从多示例学习的角度将视频数据看成是一个样本包,将每一个局部片段(即每帧原始图像数据)看成一个示例。

在一个示例中具有作为目标的动作时,该示例为正样本示例,正样本的视频数据中的多个局部片段构成多示例学习中的一个正样本包,该正样本包中至少包含一个正样本示例。

在示例中均不具有作为目标的动作时,该示例为负样本示例,负样本的视频数据中的多个局部片段构成多示例学习中的一个负样本包,该负样本包中的所有示例均为负样本示例。

多示例学习是在样本包而非示例的级别上进行模型训练,具体而言,调用局部网络对视频数据进行处理,从而确定在视频数据出现的动作,作为参考动作,以视频数据作为样本包、每帧原始图像数据作为示例,在样本包中取概率最高的动作,作为样本包的局部动作。

使用预设的损失函数计算参考动作与局部动作之间的差异,作为局部动作识别网络在识别局部动作时的局部损失值。

本实施例使用多示例学习的方法对局部动作识别网络进行训练,保证局部动作识别网络得到有效的训练,可解决实际业务场景中目标动作经常只出现在视频数据中的部分片段的问题。

步骤1004、根据全局损失值与局部损失值更新采样网络、全局动作识别网络与局部动作识别网络。

动作识别模型(包括采样网络、全局动作识别网络与局部动作识别网络)可以看作是一种函数映射,而动作识别模型(包括采样网络、全局动作识别网络与局部动作识别网络)的训练过程是一个函数优化求解的过程。优化求解的目标就是不断更新该动作识别模型(包括采样网络、全局动作识别网络与局部动作识别网络)所包含的参数,将已标注的样本作为输入的数据,经过动作识别模型(包括采样网络、全局动作识别网络与局部动作识别网络)的计算,输出的预测值和标注之间的损失值最小。

动作识别模型(包括采样网络、全局动作识别网络与局部动作识别网络)训练的过程就是参数更新的过程:计算损失函数在当前参数的梯度方向,然后根据损失值和学习速率,计算参数的更新幅度,在梯度相反方向更新参数。

假设动作识别模型(包括采样网络、全局动作识别网络与局部动作识别网络)的参数表示为w,损失函数为f,则损失函数在第t个时刻时的参数梯度g

其中,

因此,学习率为a时,第t个时刻参数的更新幅度可以表示为:

Δw

第t+1个时刻时的更新可以表示为:

w

对于全局动作识别网络而言,可基于全局损失值计算全局动作识别网络中的梯度,作为全局梯度,从而应用全局梯度对全局动作识别网络进行梯度下降,以更新全局动作识别网络中的参数。

对于局部动作识别网络而言,可基于局部损失值计算局部动作识别网络中的梯度,作为局部梯度,从而应用局部梯度对局部动作识别网络进行梯度下降,以更新局部动作识别网络中的参数。

对于采样网络而言,可将全局梯度与局部梯度结合(即向量相加)为相交梯度,从而应用相交梯度对采样网络进行梯度下降,以更新采样网络的参数。

在训练全局动作识别网络、局部动作识别网络、采样网络的过程中,可使用一些非启发式的优化算法来提高梯度下降的收敛速度,以及优化性能。

在本实施例中,确定动作识别模型,动作识别模型包括采样网络、全局动作识别网络、局部动作识别网络;采样网络用于从视频数据的多帧原始图像数据中进行采样,获得目标图像数据,全局动作识别网络用于根据目标图像数据在全局的特征识别在视频数据中出现的动作,获得全局动作,局部动作识别网络用于根据目标图像数据在局部的特征识别在视频数据中出现的动作,获得局部动作,全局动作与局部动作用于融合为在视频数据中出现的目标动作,计算全局动作识别网络在识别全局动作时的全局损失值,计算局部动作识别网络在识别局部动作时的局部损失值,根据全局损失值与局部损失值更新采样网络、全局动作识别网络与局部动作识别网络,在动作识别模型中针对局部动作识别网络和全局动作识别网络执行一次采样操作,即局部动作识别网络和全局动作识别网络复用同一个特征,在保持视频数据的主要特征的情况下,可降低视频数据的数据量,降低识别动作的计算量,通过使用局部动作识别网络和全局动作识别网络分别进行视频数据进行动作建模和识别动作,避免只关注局部动作信息或全局动作信息的缺陷,提高了识别动作的灵活性,通过融合局部动作和全局动作预测视频数据的动作,提高了识别各种不同视频数据的精确度。

此外,结合全局动作识别网络和局部动作识别网络的损失值对动作识别模型进行联合训练,从而使全局动作识别网络和局部动作识别网络更好地共享动作识别模型的采样网络,并取得更好的整体性能。

需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。

实施例三

图11为本发明实施例三提供的一种动作识别装置的结构框图,具体可以包括如下模块:

视频数据接收模块1101,用于接收视频数据,所述视频数据中具有多帧原始图像数据;

采样模块1102,用于从所述原始图像数据中进行采样,获得目标图像数据;

全局动作识别模块1103,用于根据所述目标图像数据在全局的特征识别在所述视频数据中出现的动作,获得全局动作;

局部动作识别模块1104,用于根据所述目标图像数据在局部的特征识别在所述视频数据中出现的动作,获得局部动作;

目标动作融合模块1105,用于将所述全局动作与所述局部动作融合为在所述视频数据中出现的目标动作。

在本发明的一个实施例中,所述全局动作识别模块1103包括:

全局空间特征提取模块,用于对所述目标图像数据提取二维下的特征,获得全局空间特征;

全局时序特征提取模块,用于对所述目标图像数据提取三维下的特征,获得全局时序特征;

全局目标特征拼接模块,用于将所述全局空间特征与所述全局时序特征拼接为全局目标特征;

全局目标特征映射模块,用于将所述全局目标特征映射为预设的动作,获得在所述视频数据中出现的全局动作。

在本发明的一个实施例中,在所述提取全局空间特征时按照顺序划分为多个二维阶段,在每个所述二维阶段中依次设置有二维投影块、多个二维残差块;

所述全局空间特征提取模块还用于:

在当前所述二维阶段中,调用所述二维投影块对所述目标图像数据执行二维卷积操作,依次调用多个所述二维残差块对所述目标图像数据执行二维卷积操作;

判断是否已遍历所有所述二维阶段网络;

若是,则将所述目标图像数据输出为全局空间特征;

若是,则将所述目标图像数据输出至下一个所述二维阶段网络,返回执行在当前所述二维阶段中,调用所述二维投影块对所述目标图像数据执行二维卷积操作,依次调用多个所述二维残差块对所述目标图像数据执行二维卷积操作。

在本发明的一个实施例中,所述二维投影块设置有第一二维卷积层、多个第二二维卷积层;所述全局空间特征提取模块还用于:

调用所述第一二维卷积层对所述目标图像数据执行二维卷积操作;

依次调用多个所述第二卷积层对所述目标图像数据执行二维卷积操作;

对所述第一二维卷积层输出的目标图像数据与所述第二二维卷积层输出的目标图像数据进行合并。

在本发明的一个实施例中,所述二维残差块设置有多个第三二维卷积层;所述全局空间特征提取模块还用于:

在每个所述二维残差块中,依次调用多个所述第三二维卷积层对所述目标图像数据执行二维卷积操作。

在本发明的一个实施例中,在所述提取全局时序特征时按照顺序划分为多个三维阶段,第一个所述三阶段中设置一个或多个三维残差块,其他所述三维阶段中依次设置有三维投影块、一个或多个三维残差块;

所述全局时序特征提取模块还用于:

在当前所述三维阶段中,调用所述三维投影块对所述目标图像数据执行三维卷积操作,和/或,调用所述三维残差块对所述目标图像数据执行三维卷积操作;

判断是否已遍历所有所述三维阶段;

若是,则将所述目标图像数据输出为全局时序特征;

若是,则将所述目标图像数据输出至下一个所述三维阶段网络,返回执行在当前所述三维阶段中,调用所述三维投影块对所述目标图像数据执行三维卷积操作,和/或,依次调用多个所述三维残差块对所述目标图像数据执行三维卷积操作。

在本发明的一个实施例中,所述三维投影块设置有多个第一三维卷积层、第二三维卷积层;所述全局时序特征提取模块还用于:

依次调用多个所述第一三维卷积层对所述目标图像数据执行三维卷积操作;

调用所述第二三维卷积层对所述目标图像数据执行三维卷积操作;

对所述第一三维卷积层输出的目标图像数据与所述第二三维卷积层输出的目标图像数据进行合并。

在本发明的一个实施例中,所述三维残差块设置有多个第三三维卷积层;所述全局时序特征提取模块还用于:

在每个所述三维残差块中,依次调用多个所述第三三维卷积层对所述目标图像数据执行三维卷积操作。

在本发明的一个实施例中,所述局部动作识别模块1104包括:

局部运动特征提取模块,用于提取在局部所述目标图像数据中表征运动的特征,作为局部运动特征;

局部时序特征生成模块,用于在多个尺度下对所述局部运动特征进行时序卷积操作,获得局部时序特征;

局部时序特征映射模块,用于将所述局部时序特征映射为预设的动作,获得在单帧所述目标图像数据中出现的单体动作;

单体动作融合模块,用于将所有所述单体动作融合为在所述视频数据中出现的局部动作。

在本发明的一个实施例中,所述局部运动特征提取模块包括:

帧间差计算模块,用于计算任意相邻的两帧所述目标图像数据之间的差值,作为局部运动特征。

在本发明的一个实施例中,所述局部时序特征生成模块包括:

多时序卷积模块,用于使用多个卷积核对所述局部运动特征沿时间维度进行卷积操作,获得多个帧间时序特征;

特征融合模块,用于将所述局部运动特征与多个所述帧间时序特征相加,得到局部时序特征。

在本发明的一个实施例中,所述单体动作融合模块包括:

数量统计模块,用于统计各个类型下所述单体动作的数量;

局部动作选择模块,用于选择数量最大的所述单体动作为在所述视频数据中出现的局部动作。

在本发明的一个实施例中,所述局部动作识别模块1104还包括:

平滑操作模块,用于对所述局部运动特征进行平滑操作。

在本发明的一个实施例中,所述目标动作融合模块1105包括:

全局概率确定模块,用于确定所述全局动作的概率,作为全局概率;

局部概率确定模块,用于确定所述局部动作的概率,作为局部概率;

目标动作确定模块,用于若所述全局动作与所述局部动作相同,则将所述全局动作与所述局部动作设置为在所述视频数据中出现的目标动作;

目标概率计算模块,用于基于所述全局概率与所述局部概率计算所述目标动作的目标概率,所述目标概率与所述全局概率、所述局部概率均正相关。

在本发明的一个实施例中,所述目标概率计算模块包括:

反相概率计算模块,用于计算第一差值与第二差值之间的乘积,作为反相概率,所述第一差值表示一减去所述全局概率,所述第二差值表示一减去所述局部概率;

反相概率相减模块,用于将一减去所述反相概率,获得所述目标动作的目标概率。

本发明实施例所提供的动作识别装置可执行本发明任意实施例所提供的动作识别方法,具备执行方法相应的功能模块和有益效果。

实施例四

图12为本发明实施例四提供的一种动作识别模型的训练装置的结构框图,具体可以包括如下模块:

动作识别模型确定模块1201,用于确定动作识别模型,所述动作识别模型包括采样网络、全局动作识别网络、局部动作识别网络;所述采样网络用于从视频数据的多帧原始图像数据中进行采样,获得目标图像数据,所述全局动作识别网络用于根据所述目标图像数据在全局的特征识别在所述视频数据中出现的动作,获得全局动作,所述局部动作识别网络用于根据所述目标图像数据在局部的特征识别在所述视频数据中出现的动作,获得局部动作,所述全局动作与所述局部动作用于融合为在所述视频数据中出现的目标动作;

全局损失值计算模块1202,用于计算所述全局动作识别网络在识别所述全局动作时的全局损失值;

局部损失值计算模块1203,用于计算所述局部动作识别网络在识别所述局部动作时的局部损失值;

动作识别模型更新模块1204,用于根据所述全局损失值与所述局部损失值更新所述采样网络、所述全局动作识别网络与所述局部动作识别网络。

在本发明的一个实施例中,所述局部损失值计算模块1203包括:

参考动作确定模块,用于确定在所述视频数据出现的动作,作为参考动作;

局部动作确定模块,用于以所述视频数据作为样本包、每帧所述原始图像数据作为示例,在所述样本包中取概率最高的动作,作为所述样本包的局部动作;

动作差异计算模块,用于计算所述参考动作与所述局部动作之间的差异,作为所述局部动作识别网络在识别所述局部动作时的局部损失值。

在本发明的一个实施例中,所述动作识别模型更新模块1204包括:

全局梯度计算模块,用于基于所述全局损失值计算所述全局动作识别网络中的梯度,作为全局梯度;

局部梯度计算模块,用于基于所述局部损失值计算局部动作识别网络中的梯度,作为局部梯度;

相交梯度计算模块,用于将所述全局梯度与所述局部梯度结合为相交梯度;

全局动作识别网络更新模块,用于应用所述全局梯度对所述全局动作识别网络进行梯度下降,以更新所述全局动作识别网络;

局部动作识别网络更新模块,用于应用所述局部梯度对所述局部动作识别网络进行梯度下降,以更新所述局部动作识别网络;

采样网络更新模块,用于应用所述相交梯度对所述采样网络进行梯度下降,以更新所述采样网络。

本发明实施例所提供的动作识别模型的训练装置可执行本发明任意实施例所提供的动作识别模型的训练方法,具备执行方法相应的功能模块和有益效果。

实施例五

图13为本发明实施例五提供的一种计算机设备的结构示意图。图13示出了适于用来实现本发明实施方式的示例性计算机设备12的框图。图13显示的计算机设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图13所示,计算机设备12以通用计算设备的形式表现。计算机设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。

总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。

计算机设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。

系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图13未显示,通常称为“硬盘驱动器”)。尽管图13中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。

具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。

计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机设备12交互的设备通信,和/或与使得该计算机设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机设备12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。

处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的动作识别方法、动作识别模型的训练方法。

实施例六

本发明实施例六还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述动作识别方法、动作识别模型的训练方法的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

其中,计算机可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号