首页 / 专利库 / 人工智能 / 机器学习 / 集成学习 / 基于层次信息传递的图片人体动作识别方法

基于层次信息传递的图片人体动作识别方法

阅读:1018发布:2020-10-26

专利汇可以提供基于层次信息传递的图片人体动作识别方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于层次信息传递的图片人体动作识别方法,于,包括下述步骤:S1、将人体分割为一个层次结构,该层次结构是自顶向下由粒度越来越细的局部身体区域构成,即将人体递归地分解为更小的身体部分;S2、构建层次传播网络,递归地对步骤S1中层次结构的信息进行传递与整合,从而得到最终的动作描述子;S3、将步骤S2得到的动作描述子与额外的全图信息结合,输入最后的全连接层进行分类,使用sigmoid函数来计算该 置信度 的概率分布,用二元交叉熵来计算分类损失。本发明定义了抽象的人体分割 框架 与分割规则,使得人体分割方案的 选定 更加灵活,降低单一性或者不合理性。,下面是基于层次信息传递的图片人体动作识别方法专利的具体信息内容。

1.一种基于层次信息传递的图片人体动作识别方法,其特征在于,包括下述步骤:
S1、将人体分割为一个层次结构,该层次结构是自顶向下由粒度越来越细的局部身体区域构成,即将人体递归地分解为更小的身体部分;围绕这些身体部分,从图像中截取对应区域,利用卷积神经网络提取图像特征;
S2、构建层次传播网络,递归地对步骤S1中层次结构的特征信息进行传递与整合,从而得到最终的动作描述子;
S3、将步骤S2得到的动作描述子与额外的全图信息结合,输入最后的全连接层进行分类。
2.根据权利要求1所述基于层次信息传递的图片人体动作识别方法,其特征在于,所述步骤S1具体为:
将该人体层次分割标记为A={Hi},i=1,2,...,I,I是该人体层次分割的总层数,Hi表示第i层里身体部分的集合;由此可见,H1包含最大的身体部分,因此也是层次人体分割A的根结点;Hi里的每个节点可被分解为更小的部分,由此构成Hi+1里的结点;因此HI包含最小的身体部分。
3.根据权利要求2所述基于层次信息传递的图片人体动作识别方法,其特征在于,步骤S2具体为:
HI中结点的信息传递到HI-1中对应的父节点,形成位于该父节点位置的集成信息,这些集成信息又被传递至HI-2中对应的父节点上,在这种递归模式下,底层的信息最终被传播并集成到H1的根结点上,形成最终的动作描述子。
4.根据权利要求3所述基于层次信息传递的图片人体动作识别方法,其特征在于,将Hi里的第j个结点标记为xij,将传递并集成于xij的信息标记为b(xij),则有:
其中xi+1,k表示Hi+1的第k个结点,Sij用于保证Hi+1中结点的信息只传递给对应的父节点,即,k∈Sij表示xi+1,k是由xij分割出来的子结点,mi+1表示Hi+1的聚合信息,K是Hi+1结点的个数,mi+1使得同一层级不同身体部位的结点之间的细微联系也能够被捕捉,uij,vi+1,k与是模型的参数,分别用于结合来自当前的信息、来自其子结点的信息以及Hi+1的聚合信息,⊙表示对位乘法;
对于i=I有b(xIj)=uIj⊙xIj,至此所有b(xij)的递归定义完成了,每个结点都聚合了来自自身以及其子结点的信息,因此b(x11)编码了整个人体层次分割的上下文信息并生成了该人体的动作描述子。
5.根据权利要求1所述基于层次信息传递的图片人体动作识别方法,其特征在于,步骤S3具体为:
假设数据集的动作类别共有C个,则全连接层有C个输出,分别代表该图像在每个动作类别上的分类置信度,接着使用sigmoid函数来计算该置信度的概率分布,用二元交叉熵来计算分类损失,从而对网络进行训练,在识别过程中,将概率最高的那个动作类别作为图像的动作类别,从而得到动作识别的最终结果。
6.根据权利要求5所述基于层次信息传递的图片人体动作识别方法,其特征在于,所述步骤S3中,进行分类的公式如下:
S=ΘT(wα⊙b(x11)+wβ⊙fI),
其中S就是分类的置信度,wα与wβ是可学习的模型参数,fI是原图的CNN特征,Θ是全连接层的参数。

说明书全文

基于层次信息传递的图片人体动作识别方法

技术领域

[0001] 本发明属于计算机视觉技术领域,具体涉及一种基于层次信息传递的图片人体动作识别方法。

背景技术

[0002] 图像动作识别是计算机视觉领域的一项基础且重要的研究,它要求模型识别图像中人体所进行的动作并给出动作的类别。图像动作识别有很多方面的应用,例如图像说明(Image Caption)、群体行为识别(collective activity recognition)及人家人物交互识别(Human-object Interaction)等等。图像动作识别也是视频动作分析的基础,通过将视频视为单个图像,可以将问题转化为图像的动作识别,从而在时间维度上进一步建模。
[0003] 已有的工作主要可以分为三类:基于人体姿态的图像动作识别、基于层次结构的图像动作识别以及基于物体检测的图像动作识别。
[0004] 1)基于人体姿态的图像动作识别:这一类方法的主要思路是捕捉图像中人体的姿态信息并进行编码,因为人体姿态常常隐含着大量动作的线索。Mallya在Learning Models for Actions and Person-object Interactions with Transfer to Question Answering中利用深度卷积神经网络提取图像的特征矩阵,接着使用人体姿势估计(pose estimator)检测人体在图像中的边界框(bounding box)。人体姿势估计算法用于检测人体关键点(例如某些关节点)在图像中的坐标位置,利用这些坐标位置即可计算出人体在图像中的边界框;若无特别提及,下文提到的人体姿势估计算法都是利用别人提供且训练好的模型。得到人体在图像上的边界框后,通过区域池化算法(RoI Pooling),可以在特征矩阵上裁剪出边界框对应的特征区域,接着将该特征区域与原图的特征矩阵调整为相同的大小。此时特征区域包含了人体姿势的信息,而原图特征矩阵包含了人体周围的一些有用信息(例如发生交互的物体等)。为了将这两种信息进行融合,首先用两个卷积层对它们进行特征通道(channel)降维,接着在通道维度上对两者进行拼接,最后利用神经网络的分类层对拼接后的特征进行分类。
[0005] 2)基于层次结构的图像动作识别:这一类方法的主要思路是将人体分割为不同的局部区域(例如手臂、躯干等),通过利用每个局部区域所隐含的不同动作信息,将之结合成为最终的动作描述子进行分类。Zhao在Single Image Action Recognition Using Semantic Body Part Actions中定义了一系列人体的局部区域,以及局部区域对应的动作类别列表;将人体局部区域提取出来后,对每个局部区域分别学习一个子网络,来计算该区域在对应的动作类别列表上的概率分布。利用这些训练好的子网络来提取局部区域的特征,并使用线性显著性分析(Linear Discriminative Analysis)来挑选出最具判别效果的一些区域,将这些区域的特征向量进行连接,作为最后的动作描述子进行动作分类。
[0006] 3)基于层次结构的图像动作识别:这一类方法在传统的基于人体姿态的方法之上,加入了对互动物体的信息挖掘,常应用于人-物互动的场景。Gkioxari在Contextual Action Recognition with R*CNN中提出了R*CNN结构,利用选择搜索(Selective Search)从图像中获取许多区域,这些区域具有相似的色彩、纹理、尺度等,且往往包含了物体。类似于Mallya的文章,R*CNN也利用了人体边界框;并且从获取到的区域中,筛选出若干合适的区域,使得该区域与人体边界框的重叠率满足某种预设的条件。类似于Mallya的文章,R*CNN采用卷积神经网络提取整个图像的特征矩阵,并利用区域池化算法从特征矩阵中裁剪出人体边界框及所选区域的特征区域,调整为相同的大小。不同于Mallya的模型的拼接方式,R*CNN分别将这两个特征区域输入到后续的神经网络分类层,获取对应的在所有动作类别上的概率分布,再对这两个概率分布进行对位取最大值的操作,作为最终的概率分布。在这种方法中,从选择搜索算法中筛选出来的区域,往往包含了人体进行互动的物体信息,从而对动作的识别有增进效果。
[0007] 相对于视频里的动作分析,静态图像的动作分析由于缺少时间维度上的动态线索,所以更具挑战性。上述方法都将人体看作一个整体,让深度模型去自动学习人体里的动作信息,这是十分困难的。同时,不同类别的动作可能会具有相似的姿态,例如骑单车与骑,所以单纯对整个人体建模将会损失许多具有判别性质的局部信息。
[0008] Zhao的方法对上述问题进行了优化,更多地利用了人体局部区域的信息。但是它存在一个不便利之处,它需要提前设置每个局部身体区域对应的动作列表,从而对每个身体区域学习一个子网络。由于人体动作空间十分庞大,设置动作列表是一个难以定义的行为,并且限制了该模型在实际中的应用。
[0009] 另一方面,Zhao的方法在对局部身体区域的信息进行融合的时候,所使用的方式比较浅层(将所有特征向量进行拼接)。这样的方式将不同身体区域当成了平行的、互相独立的单元,而忽略了它们之间的相互联系。由于神经网络具有生物相似性,从生物的度出发,我们可以发现,一个动作其实是一个复杂的系统。在这个系统中,不同的局部身体区域包含着各自的局部上下文信息,这些信息具有层级属性(例如手掌和手臂的关系),并且相同层级的区域会发生大量的交互,将信息整合并传递至更高的层级。在这种自底向上的模式中,信息最终被整合为一个完整的动作描述子,描述整个人体的动作。显然,Zhao的方法缺少这方面的分析与建模。

发明内容

[0010] 本发明的主要目的在于克服现有技术的缺点与不足,提供一种基于层次信息传递的图片人体动作识别方法,使得人体分割方案的选定更加灵活,降低单一性或者不合理性。
[0011] 为了达到上述目的,本发明采用以下技术方案:
[0012] 本发明一种基于层次信息传递的图片人体动作识别方法,包括下述步骤:
[0013] S1、将人体分割为一个层次结构,该层次结构是自顶向下由粒度越来越细的局部身体区域构成,即将人体递归地分解为更小的身体部分;围绕这些身体部分,从图像中截取对应区域,利用卷积神经网络提取图像特征;
[0014] S2、构建层次传播网络,递归地对步骤S1中层次结构的特征信息进行传递与整合,从而得到最终的动作描述子;
[0015] S3、将步骤S2得到的动作描述子与额外的全图信息结合,输入最后的全连接层进行分类。
[0016] 作为优选的技术方案,所述步骤S1具体为:
[0017] 将该人体层次分割标记为A={Hi},i=1,2,…,I,I是该人体层次分割的总层数,Hi表示第i层里身体部分的集合;由此可见,H1包含最大的身体部分,因此也是层次人体分割A的根结点;Hi里的每个节点可被分解为更小的部分,由此构成Hi+1里的结点;因此HI包含最小的身体部分。
[0018] 作为优选的技术方案,步骤S2具体为:
[0019] HI中结点的信息传递到HI-1中对应的父节点,形成位于该父节点位置的集成信息,这些集成信息又被传递至HI-2中对应的父节点上,在这种递归模式下,底层的信息最终被传播并集成到H1的根结点上,形成最终的动作描述子。
[0020] 作为优选的技术方案,将Hi里的第j个结点标记为xij,将传递并集成于xij的信息标记为b(xij),则有:
[0021]
[0022]
[0023] 其中xi+1,k表示Hi+1的第k个结点,Sij用于保证Hi+1中结点的信息只传递给对应的父节点,即,k∈Sij表示xi+1,k是由xij分割出来的子结点,mi+1表示Hi+1的聚合信息,K是Hi+1结点的个数,mi+1使得同一层级不同身体部位的结点之间的细微联系也能够被捕捉,uij,vi+1,k与是模型的参数,分别用于结合来自当前的信息、来自其子结点的信息以及Hi+1的聚合信息, 表示对位乘法;
[0024] 对于i=I有 至此所有b(xij)的递归定义完成了,每个结点都聚合了来自自身以及其子结点的信息,因此b(x11)编码了整个人体层次分割的上下文信息并生成了该人体的动作描述子。
[0025] 作为优选的技术方案,步骤S3具体为:
[0026] 假设数据集的动作类别共有C个,则全连接层有C个输出,分别代表该图像在每个动作类别上的分类置信度,接着使用sigmoid函数来计算该置信度的概率分布,用二元交叉熵来计算分类损失,从而对网络进行训练,在识别过程中,将概率最高的那个动作类别作为图像的动作类别,从而得到动作识别的最终结果。
[0027] 作为优选的技术方案,所述步骤S3中,进行分类的公式如下:
[0028]
[0029] 其中S就是分类的置信度,wα与wβ是可学习的模型参数,fI是原图的CNN特征,Θ是全连接层的参数。
[0030] 本发明与现有技术相比,具有如下优点和有益效果:
[0031] (1)在图像动作识别任务中,现有技术多是把整个人体当作一个整体来进行处理,这种方式忽略了人体不同部位对动作的刻画视角差异及贡献程度差异。与本发明类似的技术(将人体进行分割的技术)中,分割的方案是固定的,并且分割的粒度比较单一。本发明的分割方式是一种抽象的框架,为用户提供自定义分割方案的可能。同时,分割规则保证了分割方案符合人体部位的层次性,并提供尽可能全面的粒度覆盖,从而能够更充分地挖掘不同人体部位对动作的上下文线索。
[0032] (2)现有技术在考虑多个身体部位的融合时,采用了比较浅显的手段,将特征进行拼接,或者其他池化(pooling)的方式,这种方法将多个身体部位的信息看成了同一层级的、平行的、甚至相互独立的。而本发明的层次传播网络,实现了对多层次信息进行有效传递与整合的构想。附图说明
[0033] 图1是本发明人体层次分割框架的一种分割方案。
[0034] 图2是本发明层次传播网络的图示;
[0035] 图3是本发明的运行流程。

具体实施方式

[0036] 下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
[0037] 实施例
[0038] 本发明基于层次信息传递的图片人体动作识别方法,主要包括下述步骤:
[0039] (1)将人体分割为一个层次结构,该层次结构是自顶向下由粒度越来越细的局部身体区域构成,即将人体递归地分解为更小的身体部分;
[0040] (2)构建层次传播网络,递归地对步骤(1)中层次结构的信息进行传递与整合,从而得到最终的动作描述子;
[0041] (3)将步骤(2)得到的动作描述子与额外的全图信息结合,输入最后的全连接层进行分类,使用sigmoid函数来计算该置信度的概率分布,用二元交叉熵来计算分类损失。
[0042] 通过在公开的HICO(Human Interaction with Common Objects)与Pascal VOC动作数据集上验证本发明的技术方案,并证明该发明的有效性。
[0043] 下面对本发明的技术方案做具体的阐述:
[0044] 1)人体层次分割:
[0045] 人体层次分割由自顶向下粒度越来越细的身体部分组成,它的构成是通过将人体递归地分解为更小的身体部分。将该人体层次分割标记为A={Hi},i=1,2,…,I。I是该人体层次分割的总层数,Hi表示第i层里身体部分的集合。由此可见,H1包含最大的(粒度最粗、层级最高)的身体部分,因此也是层次人体分割A的根结点。Hi里的每个节点(身体部分)可以被分解为更小的部分(比如将上半身分解为左右手与躯干),由此构成Hi+1里的结点。因此H1包含最小(粒度最细、层级最低)的身体部分。该人体层次分割描述了一个抽象的分割框架,针对此框架的分割规则可以有不同的分割方案。图1展示了其中一种分割方案,可以看见,A中的每个层级从不同的尺度与视角描述动作的上下文信息。
[0046] 2)构建层次传播网络;
[0047] 本发明的人体层次分割是一种自顶向下的递归分割方案,为了模拟不同层级的信息互动与传播,本发明的层次传播网络被设计为一种自底向上的递归信息传播方案。该流程大体如下:
[0048] HI中结点的信息传递到HI-1中对应的父节点,形成位于该父节点位置的集成信息。这些集成信息又被传递至HI-2中对应的父节点上。在这种递归模式下,底层的信息最终被传播并集成到H1的根结点上,形成最终的动作描述子。
[0049] 接下来用公式表示来更具体地描述这个流程:
[0050] 将Hi里的第j个结点标记为xij,将传递并集成于xij的信息标记为b(xij),则有:
[0051]
[0052]
[0053] 其中xi+1,k表示Hi+1的第k个结点,Sij用于保证Hi+1中结点的信息只传递给对应的父节点,即,k∈Sij表示xi+1,k是由xij分割出来的子结点,mi+1表示Hi+1的聚合信息,K是Hi+1结点的个数,mi+1使得同一层级不同身体部位的结点之间的细微联系也能够被捕捉,uij,vi+1,k与是模型的参数,分别用于结合来自当前的信息、来自其子结点的信息以及Hi+1的聚合信息,⊙表示对位乘法(element-wise multiplication)。
[0054] 对于i=I有b(xIj)=uIj⊙xIj。至此所有b(xij)的递归定义完成了。每个结点都聚合了来自自身以及其子结点的信息,因此b(x11)编码了整个人体层次分割的上下文信息并生成了该人体的动作描述子。图2展示了这一方法,从左边到中间是分割后的身体部位到各个层次结点的映射,右边是将信息从H2传播并整合到H1的图示。
[0055] 3)该描述子与额外的全图信息结合,输入最后的全连接层(fully connected layer)进行分类,公式如下:
[0056] S=ΘT(wα⊙b(x11)+wβ⊙fI),
[0057] 其中S就是分类的置信度,wα与wβ是可学习的模型参数,fI是原图的CNN(卷积神经网络)特征,Θ是全连接层的参数,通过使用sigmoid函数来计算该置信度的概率分布,用二元交叉熵(binary cross entropy)来计算分类损失。
[0058] 下面结合一个具体的实现方案对本发明的技术方案做进一步的阐述:
[0059] 上述1)中的人体层次分割是一个抽象的分割框架,在这部分将描述本发明所使用的具体分割方案。在此将人体分割为3个部分,因此I=3。
[0060] 对于H1,选择人体的上半身作为根结点,因为很多图片都不包含人体的下半身,因此没有采用下半身的部分。
[0061] 对于H2,将上半身分割为3个部分,躯干(头与颈部也包含在内)、左手和右手。
[0062] 对于H3,进一步将H2里的结点分解为10个骨架关节点(本实施例使用了Regional Multi-Person Pose Estimation来提取这些关节点)。
[0063] 为了获取H1与H2中身体部位对应的图像区域,围绕这些身体部分对应的关节点坐标构造一个最小的矩形,并在四个方向上扩展10个像素,从而截取这个图像区域。为了获取H3中关节点对应的图像区域,以关节点坐标为中心,截取一个64x64像素的区域。上述截取的图像区域都利用双线性插值(bi-linear interpolation)调整为224x224。对于截取的每个图像区域(分别对应层次分割中的一个结点/身体部位),训练一个卷积神经网络。具体而言我们使用ResNet-50(50层的残差网络),并且所有这些网络都在ImageNet数据集上预训练过。本实施例使用随机梯度下降算法(stochastic gradient descent)来优化这些网络的参数。
[0064] 这些网络最后一个全连接层的输出作为对应身体部位的特征向量输入层次传播网络,使得每个xij结点就是对应身体部位的特征向量。同样我们利用随机梯度下降算法来优化层次传播网络的参数。
[0065] 给定一张图片,如图3所示,本发明进行动作识别的流程如下:
[0066] a)使用Regional Multi-Person Pose Estimation方法来提取所需要的关节点坐标位置。
[0067] b)使用3)中的流程来截取图像中身体部位的区域。
[0068] c)将截取的图像区域输入对应的训练好的ResNet-50中,获取最后一个全连接层的输出作为该身体部位的特征向量。
[0069] d)将该身体部位的特征向量输入层次传播网络对应的结点,并通过2)中的公式计算出最后的动作概率分布。
[0070] 通过本发明的技术方案,针对给定的包含人体动作信息的静态图片,可以准确地识别出该图片中人体动作的类别(例如骑单车、跑步等)。
[0071] 上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈