System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及动作识别,具体涉及一种基于多模态图神经网络的动作识别方法及装置。
技术介绍
1、人类动作识别 (har)指的是对人执行的动作进行分类。在har中数据模态是多样的,有rgb,传感器和骨架等模态。由于动作涉及时间维度,因此数据都是时间序列数据。rgb模态是视频,传感器模态是安装在人体某个部位的传感器生成的信号序列,骨架模态一般是通过深度相机提取的3d骨架序列或者用openpose算法从rgb图像中提取的2d骨架序列。
2、har可用于各种应用领域。在医疗保健领域,当患者在进行康复训练时,har可以识别患者的动作,从而分析和矫正患者的姿态并且可以防止患者因为错误动作(训练动作不正确或者摔倒等)受到伤害。这可以使得患者可以居家进行康复训练,也不需要人监管,节省了人力物力和时间,非常有意义。在娱乐方面,近年来一些需要身体参与(比如跳舞或运动)的游戏吸引了大量的玩家。而har可以通过识别动作类别从而辅助游戏的进行。在人机交互领域,人可以通过某些手势或者动作让机器人执行某些任务,比如“递一杯水”或“执行组装任务”,而har可以让机器人理解人的动作。在自动驾驶领域,har可以识别行人的动作从而执行对应的规避操作防止碰撞。而在这些领域中,人工识别人类动作是不可行的,因为这些领域有人流量大,需要实时识别人类动作的特点。因此设计一个能快速准确地识别人类动作的算法是很有意义的。
3、包含丰富的人类动作信息的特征无疑是人的骨架的运动。而对人的骨架进行数学建模最好的模型之一就是图结构,其中关节点代表图的节点,骨架代表图的边
4、基于骨架模态和图卷积神经网络(gcn)的人类动作识别(har)算法取得了很大的进展,相比于另一个主流模态rgb对应的cnn网络而言,gcn具有计算量低的优点。在har的场景中 ,传感器模态能弥补骨架模态的不足,但是gcn只能处理骨架模态,无法融合传感器模态数据。
技术实现思路
1、本专利技术的目的是克服现有技术中存在的不足,提供一种基于多模态图神经网络的动作识别方法及装置,技术方案如下:
2、根据本申请的一方面,提供了一种基于多模态图神经网络的动作识别方法,包括如下步骤:
3、s1:将骨架模态数据以及传感器模态数据输入至ss-gcn模型,骨架模态数据的结构为:;其中m是执行该动作时参与的人数,则是关节点中特征向量的维度,则是骨架模态数据的帧数,是关节点的数量;对于传感器模态数据而言,其结构为:;其中是传感器模态数据的维度,是传感器模态数据的帧数;
4、s2:骨架模态数据以及传感器模态数据输入至ss-gcn模型后,需将传感器模态数据的结构转换成骨架模态数据的结构;ss-gcn模型建模一个映射函数:;建模映射函数细分为三步:;
5、步骤s21:进行线性插值操作;由于骨架模态数据和传感器模态数据的采集帧率不一致,即 ;在ss-gcn中,骨架模态是主模态,传感器模态起辅助作用,通过线性插值方法将采样到,即t = ,并设置n = ;
6、步骤s22:在采集数据集时,在人体的所有关节点,与骨架模态数据中的关节点相对应处都安置一个同样的传感器;则此时,映射函数设置为: = ;定义从一个关节点的传感器数据和对应的骨架边重构另一个关节点的传感器数据的重构函数为;重构函数的一个自然实现为rnn cell:
7、;
8、其中,为时刻的外部输入向量;、分别为t-1与t时刻的隐藏层状态矩阵;、分别为输入权重矩阵和隐藏层权重矩阵,而和为二者对应的偏差向量;ss-gcn使用线性层和relu层进行降维;映射函数的输入为:;若源传感器有多个,则最终的输出为:
9、;
10、ss-gcn重构出所有关节点处的虚拟传感器,但离源传感器较远的虚拟传感器的积累误差会很大,模型只对邻近关节点的虚拟传感器进行重构,通过设置一个大小为的常量掩码mask来实现;假设源传感器在关节点n处,则有:
11、;
12、然后对关节点处的虚拟传感器的重构函数为:,则对应的映射函数为;
13、步骤s23:进行补0操作,也就是非主要执行人的传感器模态数据为0;对于m,由于大部分类别的动作只需要一个人完成,传感器只会佩戴在一个人身上,而在那些需要两个人完成的动作类别中,传感器只会佩戴在主要执行人中;
14、s3:在转换传感器模态数据后,需要融合传感器模态数据和骨架模态数据;由于的结构为,的结构为,只需要在第二个维度上拼接和即可,最后融合数据x的结构为。
15、优选的,ss-gcn使用骨架中的边重构虚拟传感器的数据具体过程为:传感器安装在关节点n处,则根据和骨架边可重构出;根据和骨架边可重构出,直至重构出其余()个关节点处的虚拟传感器的数据。
16、根据本申请的另一方面,提供了一种基于多模态图神经网络的动作识别装置,用于实施上述的一种基于多模态图神经网络的动作识别方法,所述装置包括:
17、线性插值模块,所述线性插值模块用于进行线性插值操作,由于骨架模态数据和传感器模态数据的采集帧率不一致,即 ;在ss-gcn中,骨架模态是主模态,传感器模态起辅助作用,通过线性插值方法将采样到,即t = ,并设置n = ;
18、降维模块,所述降维模块用于对数据进行降维操作;由于传感器数据与骨架数据需要拼接在一起,而骨架模态是ss-gcn的主模态,从而需要对传感器数据进行降维,的维度不能直接设置成,ss-gcn使用线性层和relu层进行降维;
19、映射模块,所述映射模块用于对数据进行数据映射操作;
20、补零模块,所述补零模块用于对数据进行补零操作;进行补0操作,也就是非主要执行人的传感器模态数据为0;由于大部分类别的动作只需要一个人完成,传感器只会佩戴在一个人身上,而在那些需要两个人完成的动作类别中,传感器只会佩戴在主要执行人中。
21、综上,融合骨架模态和传感器模态并以gcn作为骨干模型,本文提出了ss-gcn(skeleton sensor gcn)模型。ss-gcn灵活地将传感器模态转换成图结构然后与骨架模态拼接在一起作为gcn的输入,进而提高动作识别的准确性和可靠性,能够提供更加精确、可靠的识别结果。值得注意的是,传感器模态的转换过程是可学习的,数据驱动的形式使得ss-gcn具有灵活性和泛化性。
本文档来自技高网...【技术保护点】
1.一种基于多模态图神经网络的动作识别方法,所述方法包括如下步骤:
2.根据权利要求1所述的一种基于多模态图神经网络的动作识别方法,其中,SS-GCN使用骨架中的边重构虚拟传感器的数据具体过程为:传感器安装在关节点N处,则根据和骨架边可重构出;根据和骨架边可重构出,直至重构出其余个关节点处的虚拟传感器的数据。
3.一种基于多模态图神经网络的动作识别装置,用于实施权利要求1-2任意一项所述的一种基于多模态图神经网络的动作识别方法,所述装置包括:
【技术特征摘要】
1.一种基于多模态图神经网络的动作识别方法,所述方法包括如下步骤:
2.根据权利要求1所述的一种基于多模态图神经网络的动作识别方法,其中,ss-gcn使用骨架中的边重构虚拟传感器的数据具体过程为:传感器安装在关节点n处,则根...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。