掌桥专利:专业的专利平台
掌桥专利
首页

一种数据处理方法、计算机设备以及可读存储介质

文献发布时间:2023-06-19 11:29:13


一种数据处理方法、计算机设备以及可读存储介质

技术领域

本申请涉及互联网技术领域,尤其涉及一种数据处理方法、计算机设备以及可读存储介质。

背景技术

动作捕捉(Motion capture)又称为动态捕捉,简称动捕,是指记录并处理人或其他物体动作的技术,主要应用于动画/电影制作,大型游戏或者虚拟现实。动捕设备根据工作原理不同可分为机械、声学、光学、电磁、关系等多个类别。以光学动捕为例,光学动作需要在表演者(执行动作的演员)身上贴若干肢体标识点(marker),由多个摄影机捕捉这些肢体标识点的位置,再将这些标识点位置还原并渲染至相应的虚拟形象身上,最终实现真实演员动作表演到骨骼动画的映射。

然而在动捕数据(即肢体标识点的标识点位置数据)采集过程中,硬软件的精度误差往往会给对肢体标识点进行轨迹追踪所得的肢体轨迹引入噪声,例如光学摄像头成像误差、计算软件建模和计算精度有限等,且演员肢体动作的丰富性会使肢体轨迹的关系复杂多变(例如多条轨迹曲线交缠),导致动捕数据标记精度较低,此外,现有技术通常还需要配合复杂的人工修复,如逐帧判断、修复、验证等若干步骤,导致处理效率低。

发明内容

本申请实施例提供了一种数据处理方法、计算机设备以及可读存储介质,可以提高标记标识点位置数据的效率和准确率。

本申请实施例一方面提供了一种数据处理方法,包括:

获取姿态动作帧序列中的肢体标识点的标识点位置数据;姿态动作帧序列包括运动对象;标识点位置数据用于表征运动对象的肢体在姿态动作帧序列中的位置;

对标识点位置数据进行标识点分类,得到第一概率矩阵;第一概率矩阵包括肢体标识点在至少两个肢体轨迹标签上的分类概率;

对第一概率矩阵中的分类概率进行矩阵归一化处理,得到第二概率矩阵;第二概率矩阵的每一行上的归一化分类概率之和满足概率约束条件,第二概率矩阵的每一列上的归一化分类概率之和满足概率约束条件;

根据第二概率矩阵所包含的与肢体标识点相关联的至少两个归一化分类概率,在至少两个肢体轨迹标签中确定肢体标识点的最大匹配肢体轨迹标签,根据最大匹配肢体轨迹标签识别肢体标识点所属的肢体轨迹类型。

本申请实施例一方面提供了一种数据处理方法,包括:

获取姿态动作样本帧序列中的样本肢体标识点的初始标识点位置数据,基于随机排列矩阵对初始标识点位置数据进行数据预处理,得到样本标识点位置数据;姿态动作样本帧序列包括样本运动对象;初始标识点位置数据用于表征样本运动对象的肢体在姿态动作样本帧序列中的位置;

将样本标识点位置数据输入初始标识点分类模型,在初始标识点分类模型中,对样本标识点位置数据进行标识点分类,得到第一概率预测矩阵;第一概率预测矩阵包括样本肢体标识点在至少两个预测肢体轨迹标签上的分类概率;

对第一概率预测矩阵中的分类概率进行矩阵归一化处理,得到第二概率预测矩阵;第二概率预测矩阵的每一行上的归一化分类概率之和满足概率约束条件,第二概率预测矩阵的每一列上的归一化分类概率之和满足概率约束条件;

根据第二概率预测矩阵和随机排列矩阵生成目标损失函数,根据目标损失函数对初始标识点分类模型中的模型参数进行调整,得到标识点分类模型;标识点分类模型用于生成姿态动作帧序列中的肢体标识点的标识点位置数据对应的第二概率矩阵;第二概率矩阵用于在至少两个肢体轨迹标签中确定肢体标识点的最大匹配肢体轨迹标签,最大匹配肢体轨迹标签用于识别肢体标识点所属的肢体轨迹类型。

本申请实施例一方面提供了一种数据处理装置,包括:

数据获取模块,用于获取姿态动作帧序列中的肢体标识点的标识点位置数据;姿态动作帧序列包括运动对象;标识点位置数据用于表征运动对象的肢体在姿态动作帧序列中的位置;

概率生成模块,用于对标识点位置数据进行标识点分类,得到第一概率矩阵;第一概率矩阵包括肢体标识点在至少两个肢体轨迹标签上的分类概率;对第一概率矩阵中的分类概率进行矩阵归一化处理,得到第二概率矩阵;第二概率矩阵的每一行上的归一化分类概率之和满足概率约束条件,第二概率矩阵的每一列上的归一化分类概率之和满足概率约束条件;

标签确定模块,用于根据第二概率矩阵所包含的与肢体标识点相关联的至少两个归一化分类概率,在至少两个肢体轨迹标签中确定肢体标识点的最大匹配肢体轨迹标签,根据最大匹配肢体轨迹标签识别肢体标识点所属的肢体轨迹类型。

其中,上述概率生成模块,包括:

第一概率生成单元,用于将标识点位置数据输入标识点分类模型,在标识点分类模型的分类网络层中,对标识点位置数据进行特征提取,得到类别特征;根据类别特征在分类网络层中输出第一概率矩阵;第一概率矩阵包括类别特征对应的分类概率;

第二概率生成单元,用于将第一概率矩阵输入标识点分类模型的归一化网络层,在归一化网络层中,对第一概率矩阵中的每一行分类概率以及每一列分类概率共同进行至少两次归一化处理,得到第二概率矩阵;第二概率矩阵包括类别特征对应的归一化分类概率,第二概率矩阵的每一行上的归一化分类概率之和均位于概率约束条件所指示的概率约束区间内,且第二概率矩阵的每一列上的归一化分类概率之和均位于概率约束区间内。

其中,上述肢体标识点的数量为N个,至少两个肢体轨迹标签的数量为N个,N为大于1的整数;

上述标签确定模块,包括:

构建单元,用于以N个肢体标识点作为第一顶点集、以N个肢体轨迹标签作为第二顶点集构建二分图,基于第二概率矩阵所包含的与N个肢体标识点相关联的N

确定单元,用于从二分图中获取一个或多个匹配边集合;每个匹配边集合均包括一条或多条顶点互不相同的连接线;将所包含的连接线对应的归一化分类概率之和最大的匹配边集合,确定为第二概率矩阵的最大匹配边集合;在最大匹配边集合中,将肢体标识点M

其中,上述姿态动作帧序列包括T个姿态动作帧,T个姿态动作帧与T个第二概率矩阵一一对应;T为大于1的整数;

上述标签确定模块,包括:

识别单元,用于在T个第二概率矩阵中,分别获取肢体标识点M

其中,上述识别单元,具体用于将相同的最大匹配肢体轨迹标签所关联的目标分类概率划分到同一个分类概率集合中;一个最大匹配肢体轨迹标签对应一个分类概率集合;根据分类概率集合中的目标分类概率,生成分类概率集合对应的最大匹配肢体轨迹标签的可信度,将具有最大可信度的最大匹配肢体轨迹标签确定为肢体标识点M

其中,上述识别单元,具体用于在T个第二概率矩阵中,分别获取数值最大的归一化分类概率作为最大分类概率;一个目标分类概率关联一个最大分类概率;分别获取每个目标分类概率与所关联的最大分类概率之间的概率差值,得到T个概率差值,将T个概率差值分别确定为所关联的目标分类概率对应的最大匹配肢体轨迹标签的可信度;将具有最大可信度的最大匹配肢体轨迹标签确定为肢体标识点M

其中,上述装置还包括:

动画生成模块,用于将T个最大匹配肢体轨迹标签中与肢体标识点M

本申请实施例一方面提供了一种数据处理装置,包括:

数据获取模块,用于获取姿态动作样本帧序列中的样本肢体标识点的初始标识点位置数据,基于随机排列矩阵对初始标识点位置数据进行数据预处理,得到样本标识点位置数据;姿态动作样本帧序列包括样本运动对象;初始标识点位置数据用于表征样本运动对象的肢体在姿态动作样本帧序列中的位置;

第一概率生成模块,用于将样本标识点位置数据输入初始标识点分类模型,在初始标识点分类模型中,对样本标识点位置数据进行标识点分类,得到第一概率预测矩阵;第一概率预测矩阵包括样本肢体标识点在至少两个预测肢体轨迹标签上的分类概率;

第二概率生成模块,用于对第一概率预测矩阵中的分类概率进行矩阵归一化处理,得到第二概率预测矩阵;第二概率预测矩阵的每一行上的归一化分类概率之和满足概率约束条件,第二概率预测矩阵的每一列上的归一化分类概率之和满足概率约束条件;

调整模块,用于根据第二概率预测矩阵和随机排列矩阵生成目标损失函数,根据目标损失函数对初始标识点分类模型中的模型参数进行调整,得到标识点分类模型;标识点分类模型用于生成姿态动作帧序列中的肢体标识点的标识点位置数据对应的第二概率矩阵;第二概率矩阵用于在至少两个肢体轨迹标签中确定肢体标识点的最大匹配肢体轨迹标签,最大匹配肢体轨迹标签用于识别肢体标识点所属的肢体轨迹类型。

其中,上述数据获取模块,包括:

位置更新单元,用于获取初始标识点位置数据的中心位置,根据中心位置对初始标识点位置数据进行更新,得到第一中间位置数据;

坐标变换单元,用于对第一中间位置数据进行坐标变换,得到第二中间位置数据;

高度更新单元,用于获取样本运动对象的高度信息,根据高度信息对第二中间位置数据进行更新,得到第三中间位置数据;

随机排列单元,用于根据随机排列矩阵对第三中间位置数据进行随机排列,得到第四中间位置数据;

噪声添加单元,用于获取噪声数据,将第四中间位置数据中的一个或多个数据替换为噪声数据,得到样本标识点位置数据。

其中,上述位置更新单元,具体用于获取初始标识点位置数据的坐标均值,将坐标均值确定为中心位置;将初始标识点位置数据和中心位置进行相减,得到第一中间位置数据。

其中,上述坐标变换单元,具体用于对第一中间位置数据进行主成分分析,得到第一主成分坐标轴和第二主成分坐标轴,根据第一主成分坐标轴和第二主成分坐标轴构建目标坐标系;目标坐标系与第一中间位置数据所处的坐标系不相同;对第一中间位置数据进行坐标变换,得到位于目标坐标系的第二中间位置数据。

其中,上述第一概率生成模块,包括:

特征提取单元,用于将样本标识点位置数据输入初始标识点分类模型,在初始标识点分类模型的分类网络层中,对样本标识点位置数据进行特征提取,得到类别特征;

概率输出单元,用于根据类别特征在分类网络层中输出第一概率预测矩阵;第一概率预测矩阵包括类别特征对应的分类概率。

其中,上述分类网络层包括至少两个分类网络块,每个分类网络块均包括至少两个全连接层以及至少两个激活函数;至少两个分类网络块包括分类网络块S

上述特征提取单元,具体用于获取分类网络块S

本申请实施例一方面提供了一种计算机设备,包括:处理器、存储器、网络接口;

上述处理器与上述存储器、上述网络接口相连,其中,上述网络接口用于提供数据通信功能,上述存储器用于存储计算机程序,上述处理器用于调用上述计算机程序,以执行本申请实施例中的方法。

本申请实施例一方面提供了一种计算机可读存储介质,上述计算机可读存储介质中存储有计算机程序,上述计算机程序适于由处理器加载并执行本申请实施例中的方法。

本申请实施例一方面提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例中的方法。

本申请实施例通过采集运动对象的姿态动作帧序列,可以获取姿态动作帧序列中的肢体标识点的标识点位置数据,且标识点位置数据用于表征该运动对象的肢体在姿态动作帧序列中的位置,进一步,可以对标识点位置数据进行标识点分类,得到第一概率矩阵,再对第一概率矩阵中的分类概率进行矩阵归一化处理,可以得到第二概率矩阵,进而可以根据第二概率矩阵所包含的与肢体标识点相关联的至少两个归一化分类概率,在至少两个肢体轨迹标签中确定肢体标识点的最大匹配肢体轨迹标签,最终可以根据最大匹配肢体轨迹标签识别肢体标识点所属的肢体轨迹类型。由此可见,本申请实施例提供了一种动捕数据标记方法,该方法中没有涉及过多复杂计算过程,处理效率高,可做到实时响应,也就是说,本申请实施例可以自动化地高效输出每个姿态动作帧中的标识点位置数据对应的归一化分类概率,后续根据归一化分类概率确定最大匹配肢体轨迹标签,可以得到整体概率最大的情况下不重复、不遗漏的标记结果,从而可以提高标记标识点位置数据的效率和准确率。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的一种系统架构示意图;

图2a-图2b是本申请实施例提供的一种数据处理的场景示意图;

图3是本申请实施例提供的一种数据处理方法的流程示意图;

图4是本申请实施例提供的一种分类网络的结构示意图;

图5a-图5b是本申请实施例提供的一种二分图的示意图;

图6是本申请实施例提供的一种轨迹标记后处理的场景示意图;

图7a-图7b是本申请实施例提供的一种数据标记的场景示意图;

图8是本申请实施例提供的一种数据处理方法的流程示意图;

图9是本申请实施例提供的一种模型训练的流程示意图;

图10是本申请实施例提供的一种正确率比较的示意图;

图11a-图11b是本申请实施例提供的一种数据标记的场景示意图;

图12是本申请实施例提供的一种数据处理装置的结构示意图;

图13是本申请实施例提供的一种数据处理装置的结构示意图;

图14是本申请实施例提供的一种计算机设备的结构示意图;

图15是本申请实施例提供的一种计算机设备的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。

人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。

计算机视觉技术(Computer Vision,CV)是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括数据处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。

本申请实施例提供的方案涉及人工智能的计算机视觉技术以及深度学习等技术,具体过程通过如下实施例进行说明。

请参见图1,是本申请实施例提供的一种系统架构示意图。如图1所示,该系统架构可以包括服务器100以及终端集群,终端集群可以包括:终端设备200a、终端设备200b、…、终端设备200c,其中,终端集群之间可以存在通信连接,例如终端设备200a与终端设备200b之间存在通信连接,终端设备200a与终端设备200c之间存在通信连接。同时,终端集群中的任一终端设备可以与服务器100存在通信连接,例如终端设备200a与服务器100之间存在通信连接,其中,上述通信连接不限定连接方式,可以通过有线通信方式进行直接或间接地连接,也可以通过无线通信方式进行直接或间接地连接,还可以通过其它方式,本申请在此不做限制。

动作捕捉系统是指用来实现动作捕捉的专业技术设备,不同的动作捕捉系统依照的原理不同,系统组成也不尽相同。总体来讲,动作捕捉系统通常由硬件和软件两大部分构成,硬件一般包含信号发射与接收传感器、信号传输设备以及数据处理设备等,软件一般包含系统设置、空间定位定标、运动捕捉以及数据处理等功能模块。应该理解,如图1所示的终端集群中的每个终端设备均可以安装有动作捕捉软件,用于处理动作捕捉硬件捕捉到的原始数据,例如将原始数据处理成可继续后处理(如标定、修正、纠错等)的数据,当该动作捕捉软件运行于各终端设备中时,可以分别与上述图1所示的服务器100之间进行数据交互,使得服务器100可以接收来自于每个终端设备的业务数据。例如,可以事先在运动对象(如执行动作的演员)的特定部位安装传感器(或称为跟踪装置),这些传感器会提供运动对象的位置信息,通常会根据捕捉的细致程度确定传感器的数量。进一步,在运动对象运动过程中,可以通过信号捕捉设备来捕捉位置信号,然后通过数据传输设备将信号捕捉设备捕捉到的大量位置数据快速准确地传输到动作捕捉软件进行处理,随后可以将处理后的位置数据发送至服务器100,再由服务器100下发至其它终端设备。

以终端设备(可以是终端设备200a、终端设备200b或者终端设备200c)为例,在光学式动作捕捉系统中,上述传感器一般为光学标识点(即marker,为便于理解,在本申请实施例中称为肢体标识点),例如LED(发光二极管)、高亮回归式反光球等,动作捕捉相机则作为信号捕捉设备,在运动对象的关键部位(如人体的关节处等)粘贴多个肢体标识点,则在运动对象运动过程中,多个动作捕捉相机可以从不同角度实时探测肢体标识点,并将捕捉到的原始数据实时传输至终端设备,终端设备上安装有动作捕捉软件,可以将二维(2D)的原始数据重建成三维(3D)的标识点位置数据(即三维的空间坐标)。可以理解,当动作捕捉相机以足够高的频率连续拍摄时,可以从拍摄采集到的包含运动对象的姿态动作帧序列(即图像序列)中得到所有肢体标识点的运动轨迹,此时首要问题是确定各轨迹来自哪一个肢体标识点,即对每个肢体标识点的标识点位置数据进行标记(labeling),因为后续对标识点位置数据的所有处理,都需要建立在明确的轨迹识别上。本申请实施例提供了一种针对标识点位置数据的自动标记方法,终端设备可以调用动作捕捉软件对标识点位置数据进行标识点分类,得到每个肢体标识点的标识点位置数据在至少两个肢体轨迹标签上的分类概率,这些分类概率会存储至第一概率矩阵,需要说明的是,在同一个姿态动作帧中,每个肢体标识点唯一对应一个肢体轨迹标签,且不同的肢体标识点对应的肢体轨迹标签互不相同,因此,肢体标识点的数量与肢体轨迹标签的数量是相同的。进一步,由于难以确保第一概率矩阵满足概率约束条件,即第一概率矩阵中的分类概率是“伪概率”,因此终端设备可以对第一概率矩阵中的分类概率进行矩阵归一化处理,从而得到第二概率矩阵,此时第二概率矩阵的每一行上的归一化分类概率之和将满足概率约束条件,且每一列上的归一化分类概率之和也满足概率约束条件。随后,终端设备可以根据第二概率矩阵所包含的与肢体标识点相关联的至少两个归一化分类概率,在至少两个肢体轨迹标签中确定肢体标识点的最大匹配肢体轨迹标签,进而可以根据最大匹配肢体轨迹标签识别所有肢体标识点所属的肢体轨迹类型,即可实现轨迹识别。后续可以将标记完成后的标识点位置数据处理为骨骼动画的形式,以实时显示运动对象的肢体动作,将其应用于动画/电影制作、游戏制作、虚拟现实等场景,可以提高制作效率和显示效果。其中,骨骼动画是模型动画中的一种,在骨骼动画中,对象模型具有互相连接的“骨骼”组成的骨架结构,通过改变骨骼的朝向和位置来为对象模型生成动画。

可选的,可以理解的是,服务器100也可以获取到标识点位置数据,并对标识点位置数据进行如上述终端设备所执行的数据标记过程,最终可以得到所有肢体标识点所属的肢体轨迹类型。

可以理解的是,本申请实施例提供的方法可以由计算机设备执行,计算机设备包括但不限于终端设备或服务器。其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云数据库、云服务、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备可以是智能手机、平板电脑、笔记本电脑、台式计算机、掌上电脑、移动互联网设备(mobile internet device,MID)、可穿戴设备(例如智能手表、智能手环等)、智能电脑等可以运行上述动作捕捉软件的智能终端。其中,终端设备和服务器可以通过有线或无线方式进行直接或间接地连接,本申请实施例在此不做限制。

需要说明的是,服务器还可以是区块链网络上的一个节点。区块链是一种分布式数据存储、点对点传输、共识机制以及加密算法等计算机技术的新型应用模式,主要用于对数据按时间顺序进行整理,并加密成账本,使其不可被篡改和伪造,同时可进行数据的验证、存储和更新。可以理解的是,区块链系统中可以包括一个或多个智能合约,这些智能合约可以是指一种区块链各节点(包括共识节点)可以理解并执行的代码,可以执行任意逻辑并得到结果。在一个区块链节点系统中可以包括多个节点,该区块链节点系统可以对应于区块链网络(包括但不限于联盟链所对应的区块链网络),多个节点具体可以包括上述所说的服务器。区块链节点系统中的每个节点之间可以存在信息连接,节点之间可以通过上述信息连接进行信息传输。例如,当区块链节点系统中的任意节点(如上述服务器100)接收到输入信息(如标识点位置数据)时,区块链节点系统中的其他节点便根据共识算法获取该输入信息,将该输入信息作为共享数据中的数据进行存储,使得区块链节点系统中全部节点上存储的数据均一致。

需要说明的是,本申请实施例提供的针对标识点位置数据的自动标记方法可集成为插件接入到动作捕捉软件中,用于辅助动捕数据的标记。为便于理解,下述以终端设备200a为例进行具体说明。

请一并参见图2a-图2b,是本申请实施例提供的一种数据处理的场景示意图。该数据处理场景的实现过程可以在如图1所示的服务器100中进行,也可以在终端设备(如图1所示的终端设备200a、终端设备200b或终端设备200c中的任意一个)中进行,还可以由终端设备和服务器共同执行,此处不做限制,本申请实施例仅以终端设备200a执行为例进行说明。如图2a所示,终端设备200a可以获取针对运动对象采集到的姿态动作帧序列A,假设姿态动作帧序列A中包含T个姿态动作帧,T为大于1的整数,则姿态动作帧序列A可以包括姿态动作帧A1、姿态动作帧A2、…、姿态动作帧AT,可以理解,若在该运动对象身上存在多个肢体标识点(假设包括肢体标识点M1、肢体标识点M2、肢体标识点M3、…、肢体标识点MN共N个肢体标识点,N为大于1的整数),则通过姿态动作帧序列A对这多个肢体标识点进行轨迹追踪后,可以得到多条肢体轨迹,再通过本申请实施例提供的方法对上述多个肢体标识点的标识点位置数据进行自动标记,则可以明确各肢体轨迹来自于哪一个肢体标识点,如可以使用L1、L2、L3、…、LN等作为肢体轨迹标签来表示不同的肢体轨迹,则将图2a中的一条肢体轨迹标记为L1可以表示该肢体轨迹对应于肢体标识点M1的标识点位置数据,即该肢体轨迹是来自于肢体标识点M1,随后两者可以建立起关联关系。

下面以姿态动作帧A1为例对上述数据自动标记的过程进行具体说明。如图2b所示,姿态动作帧A1中的多个黑色圆点用于表示不同的肢体标识点,每个肢体标识点对应于运动对象的一个肢体关节,终端设备200a可以获取姿态动作帧A1中的肢体标识点M1、肢体标识点M2、肢体标识点M3、…、肢体标识点MN各自对应的一组标识点位置数据,每组标识点位置数据均包括相应的肢体标识点在x轴、y轴、z轴上的空间坐标,为便于理解和区分,此处将这N组标识点位置数据统称为标识点位置数据B,进而可以对标识点位置数据B进行标识点分类,得到第一概率矩阵P1,可以理解,由于每个肢体标识点对应的肢体轨迹标签是唯一的(即对一个肢体标识点进行轨迹追踪只能得到一条肢体轨迹),因此可以将标识点分类看作多分类问题,即对N组标识点位置数据(大小为N×3)分N类,从而得到的第一概率矩阵P1为N×N大小的矩阵,其中,第一概率矩阵P1包括各个肢体标识点分别在N个肢体轨迹标签上的分类概率。进一步,针对分类问题,预测得到的矩阵需要满足概率约束条件,因此可以对第一概率矩阵P1进行矩阵归一化处理,以使最终得到的第二概率矩阵P2的每一行上的归一化分类概率之和等于1,且每一列上的归一化分类概率之和也等于1。随后,终端设备200a可以根据第二概率矩阵P2中的N×N个归一化分类概率,在上述N个肢体轨迹标签中确定每个肢体标识点的最大匹配肢体轨迹标签,即可完成对标识点位置数据的标记,例如将肢体标识点M1标记为L1,肢体标识点M2标记为L2,此时的标记结果可以实现整体概率最大化,且所有最大匹配肢体轨迹标签均不重复、不遗漏。如图2b所示,在完成自动标记后,标记后的姿态动作帧A1中的肢体标识点之间会显示连线,表示每个肢体标识点都清楚了自己的“身份”,可选的,可以将不同肢体区域中的连线和肢体标识点设置为不同的颜色,以便人眼观察的时候可以更好地区分,而不会将近邻的肢体标识点混杂在一起。此外,还可以进一步根据标记后的标识点位置数据生成与运动对象相匹配的骨架结构(即图中的灰色填充区域),可以理解,随着运动对象在每个姿态动作帧中的动作变化,骨骼的位置和朝向也会相应发生变化,由此可以生成相应的骨骼动画。可以理解,对其它姿态动作帧的标记过程与对姿态动作帧A1的标记过程一致,这里不再进行赘述。对所有姿态动作帧完成标记后,可进一步识别每一帧中的肢体标识点所属的肢体轨迹类型,即识别每条肢体轨迹最终会被标记上的肢体轨迹标签,具体过程可以参见下述图3所对应的实施例。

需要说明的是,上述标识点分类以及矩阵归一化处理均可以通过标识点分类模型实现,终端设备200a可以利用具有海量图像的图片数据库,训练深度神经网络以学习大数据中隐含的肢体轨迹时空规律,得到标识点分类模型,具体过程可以参见下述图8所对应的实施例。

可以理解,现有的标记方案在面对肢体轨迹上由噪声导致的缺失或抖动,或者多条肢体轨迹交缠的复杂情况时,往往会导致标识点位置数据的错误标记,或者,会采用复杂的处理流程来提高标记精度,导致标记效率低,而本申请实施例基于深度神经网络,提供了一种标识点分类模型,在对标识点位置数据进行标记的过程中,即使面对噪声数据和复杂空间关系也能给出可靠的标记结果,且没有过多的复杂计算过程,标记效率高,可做到实时响应,也就是说,本申请实施例提供的方法可以提高标记标识点位置数据的效率和准确率。

请参见图3,图3是本申请实施例提供的一种数据处理方法的流程示意图。该数据处理方法可以由计算机设备执行,计算机设备可以包括如图1所述的终端设备或服务器。该数据处理方法至少可以包括以下步骤S101-步骤S104:

步骤S101,获取姿态动作帧序列中的肢体标识点的标识点位置数据;姿态动作帧序列包括运动对象;标识点位置数据用于表征运动对象的肢体在姿态动作帧序列中的位置;

具体的,计算机设备可以识别姿态动作帧序列中的肢体标识点,进而可以将肢体标识点的二维原始位置数据重建为三维的标识点位置数据,可以理解,在构建的坐标系中,三维的标识点位置数据包括肢体标识点在x轴、y轴、z轴上的空间坐标,因此可以更准确地表征运动对象的肢体在姿态动作帧序列中的位置。需要说明的是,姿态动作帧序列可以包括多个姿态动作帧,可以通过对运动对象进行拍摄得到,因此每个姿态动作帧中均包含有运动对象,肢体标识点可以附着在运动对象的关键部位上,且肢体标识点的数量可以根据实际情况进行选择。相应的,当运动对象运动时(例如跑步),相关的肢体标识点会随之移动,从而对应的标识点位置数据会发生改变,因此对肢体标识点进行轨迹追踪可以得到不同关键部位的运动轨迹(即肢体轨迹)。其中,运动对象可以包括运动的人或其它物体(如动物)。

步骤S102,对标识点位置数据进行标识点分类,得到第一概率矩阵;第一概率矩阵包括肢体标识点在至少两个肢体轨迹标签上的分类概率;

具体的,计算机设备可以将获取到的标识点位置数据输入标识点分类模型,进而可以在标识点分类模型的分类网络层中,对标识点位置数据进行特征提取,得到类别特征,进一步,可以根据该类别特征在分类网络层中输出第一概率矩阵,其中,第一概率矩阵包括类别特征对应的分类概率。需要说明的是,标识点分类模型的输入数据为单帧数据,即每个姿态动作帧的标识点位置数据是独立标记的。可以理解,若肢体标识点为N个(N为大于1的整数),则将N×3大小的标识点位置数据输入标识点分类模型,可以通过分类网络层预测得到N×N大小的第一概率矩阵,其中,第一概率矩阵中的第i行、第j列的分类概率即代表将第j个肢体轨迹标签(例如可记为L

请一并参见图4,是本申请实施例提供的一种分类网络的结构示意图。如图4所示,该分类网络可以作为标识点分类模型中的分类网络层,其网络层数较多,具体可以包括多个全连接层(Dense Layer)以及多个激活函数。其中,可以将一些全连接层和激活函数封装为分类网络块(Block),且每个分类网络块的结构可以是相同的,例如可以参见分类网络块1,具体可以包括全连接层11、激活函数12、全连接层13、激活函数14以及全连接层15。需要说明的是,由于网络层数较多时梯度传播困难,导致模型训练困难,因此本申请实施例中的分类网络层采用类似ResNet(残差神经网络)的结构,在分类网络层中引入了残差连接(也可称为Shortcut路径),这样相当于梯度通过这些Shortcut路径走了无需通过网络的捷径,可便于梯度传播。其中,激活函数1、激活函数2、激活函数3、激活函数4以及每个分类网络块中的激活函数均可以采用Leaky ReLU函数(带泄露修正线性单元函数),其数学表示为:

激活函数5具体可以采用Sigmoid函数(一种常见的S型函数),可使输出的值在(0,1)区间内,其数学表示为:

步骤S103,对第一概率矩阵中的分类概率进行矩阵归一化处理,得到第二概率矩阵;第二概率矩阵的每一行上的归一化分类概率之和满足概率约束条件,第二概率矩阵的每一列上的归一化分类概率之和满足概率约束条件;

需要说明的是,上述步骤S102得到的第一概率矩阵中的每个分类概率虽然都经过Sigmoid函数进行了归一化处理,但此时很难确保标识点分类模型输出的第一概率矩阵满足概率约束条件,在本申请实施例中,概率约束条件是指在N×N的概率矩阵中,每一行求和均为1,且每一列求和均为1,可以理解,第i行求和为1代表第i个肢体标识点在所有肢体轨迹标签(可理解为marker类别)上的概率之和为1,第j列求和为1代表第j个肢体轨迹标签属于所有肢体标识点的概率之和为1,因此,可以在标识点分类模型中增加一个归一化网络层,用于生成满足上述概率约束条件的概率矩阵。具体的,计算机设备可以将第一概率矩阵输入标识点分类模型的归一化网络层,在归一化网络层中,可以对第一概率矩阵中的每一行分类概率以及每一列分类概率共同进行至少两次归一化处理,从而得到满足概率约束条件的第二概率矩阵。其中,归一化网络层可以采用SinkhornNormalizatio(可译为辛克霍恩归一化,是一种将矩阵通过简单迭代,交替归一化调整行、列,将一个方阵转变为接近的双随机矩阵的方法),迭代更新出符合概率约束的近似双随机矩阵作为第二概率矩阵,其中,双随机矩阵(Double Stochastic Matrix,DSM)是一个方阵,该矩阵中的每一项均为非负数,每行的和均为1,每列的和也为1,一个最简单的双随机矩阵例子是每项均为1/n的n×n矩阵。值得注意的是,此方法不一定保证得到严格的双随机矩阵,行或列的和与1相比会有一些偏差,因此最终得到的第二概率矩阵,它的每一行上的归一化分类概率之和均位于概率约束条件所指示的概率约束区间内,且每一列上的归一化分类概率之和均位于概率约束区间内即可。Sinkhorn Normalizatio的数学公式如下:

其中,i代表迭代次数,M代表第一概率矩阵,即待归一化矩阵。T

步骤S104,根据第二概率矩阵所包含的与肢体标识点相关联的至少两个归一化分类概率,在至少两个肢体轨迹标签中确定肢体标识点的最大匹配肢体轨迹标签,根据最大匹配肢体轨迹标签识别肢体标识点所属的肢体轨迹类型。

可以理解的是,即使步骤S103给出了满足概率约束条件的第二概率矩阵,也有可能在同一个姿态动作帧中,两个肢体标识点对应的标识点位置数据同时属于同一个肢体轨迹标签的概率最大,那如何无重复无遗漏地给出标记结果成为一个难题。为解决这个问题,获得整体概率最大的标记结果,本申请实施例可以将概率到确定标签看作二分图匹配问题,从而给出无重复无遗漏的标记结果。具体的,结合前面的步骤,假设肢体标识点的数量为N个,相应的,肢体轨迹标签的数量也为N个,则计算机设备可以N个肢体标识点作为第一顶点集、以N个肢体轨迹标签作为第二顶点集构建二分图,进而可以基于第二概率矩阵所包含的与N个肢体标识点相关联的N

请一并参见图5a-图5b,是本申请实施例提供的一种二分图的示意图。如图5a所示,由N个肢体标识点组成的第一顶点集可以包括肢体标识点M

假设上述N个肢体标识点包括肢体标识点M

请一并参见图5b,当N=5时,图5b是图5a中的二分图的其中一个匹配边集合,该匹配边集合包含5条连接线,且这5条连接线的顶点互不相同,当归一化分类概率P

进一步,因为上述方案仅对单个姿态动作帧中的肢体标识点做标记,但标识点分类模型可能会在一段连续帧上对同一个肢体标识点给出不同的标记,因此需要后处理解决轨迹多个标签冲突问题。本申请实施例将一段连续无空缺的标识点位置数据定义为肢体轨迹,换句话说,噪声的干扰对肢体轨迹进行了分隔。在一段肢体轨迹上,若出现多个标签冲突,现有方案中最直观的想法是采用少数服从多数的原则,即以数量多的肢体轨迹标签作为整段肢体轨迹的类别(即肢体轨迹类型),但这样很可能选择可信度低的结果。例如一段肢体轨迹有3帧姿态动作帧,其中有两帧标记为L

根据可信度确定肢体轨迹类型的方法可以有多种,可选的,计算机设备可以将相同的最大匹配肢体轨迹标签所关联的目标分类概率划分到同一个分类概率集合中,且一个最大匹配肢体轨迹标签对应一个分类概率集合,进而可以根据每个分类概率集合中的目标分类概率,生成该分类概率集合对应的最大匹配肢体轨迹标签的可信度,并将具有最大可信度的最大匹配肢体轨迹标签确定为肢体标识点M

其中,T

请一并参见图6,是本申请实施例提供的一种轨迹标记后处理的场景示意图。如图6所示,为便于说明,图中采用矩形框将每一段肢体轨迹框出,带有噪声的位置被填充为灰色,表示该位置上的标识点位置数据被噪声掩盖,数字则可以代表该位置对应的标识点位置数据被标记的肢体轨迹标签(例如数字“1”可表示肢体轨迹标签L

可选的,计算机设备也可以在上述T个第二概率矩阵中,分别获取数值最大的归一化分类概率作为最大分类概率,其中,一个目标分类概率关联一个最大分类概率,进一步,可以分别获取每个目标分类概率与所关联的最大分类概率之间的概率差值,得到T个概率差值,并将T个概率差值分别确定为关联的目标分类概率对应的最大匹配肢体轨迹标签的可信度,进而可以将具有最大可信度的最大匹配肢体轨迹标签确定为肢体标识点M

此外,计算机设备还需要对存在标签冲突的肢体轨迹上的最大匹配肢体轨迹标签进行更新,仍以肢体标识点M

本申请实施例通过采集运动对象的姿态动作帧序列,可以获取姿态动作帧序列中的肢体标识点的标识点位置数据,且标识点位置数据用于表征该运动对象的肢体在姿态动作帧序列中的位置,进一步,可以通过标识点分类模型对标识点位置数据进行标识点分类,得到第一概率矩阵,再对第一概率矩阵中的分类概率进行矩阵归一化处理,可以得到第二概率矩阵,进而可以根据第二概率矩阵所包含的与肢体标识点相关联的至少两个归一化分类概率,在至少两个肢体轨迹标签中确定肢体标识点的最大匹配肢体轨迹标签,最终可以根据最大匹配肢体轨迹标签识别肢体标识点所属的肢体轨迹类,并生成与运动对象相匹配的骨骼动画。由此可见,本申请实施例提供了一种基于深度学习的动捕数据标记方法,可以通过基于神经网络的标识点分类模型学习动捕数据规律来降低噪声和轨迹曲线复杂关系带来的干扰,且没有过多复杂计算过程,处理效率高,可做到实时响应,也就是说,本申请实施例可以自动化地高效输出每个姿态动作帧中的标识点位置数据对应的满足概率约束条件的归一化分类概率,后续根据归一化分类概率确定最大匹配肢体轨迹标签,可以得到整体概率最大的情况下不重复、不遗漏的标记结果,从而可以提高标记标识点位置数据的效率和准确率。

请参见图8,是本申请实施例提供的一种数据处理方法的流程示意图。该数据处理方法可以由计算机设备执行,计算机设备可以包括如图1所述的终端设备或服务器。该数据处理方法至少可以包括以下步骤S201-步骤S204:

步骤S201,获取姿态动作样本帧序列中的样本肢体标识点的初始标识点位置数据,基于随机排列矩阵对初始标识点位置数据进行数据预处理,得到样本标识点位置数据;姿态动作样本帧序列包括样本运动对象;初始标识点位置数据用于表征样本运动对象的肢体在姿态动作样本帧序列中的位置;

具体的,计算机设备需要进行数据预处理,主要包括对数据中心化,并进行统一化缩放:首先,可以采集包含多个样本运动对象的多个样本图像作为姿态动作样本帧序列,进而可以识别每个样本运动对象身上的多个样本肢体标识点,并将样本肢体标识点的二维原始位置数据重建为三维的初始标识点位置数据(包括样本肢体标识点在x轴、y轴、z轴上的空间坐标)。进一步,计算机设备可以获取初始标识点位置数据的中心位置,从而可以根据中心位置分别对每组初始标识点位置数据进行更新,得到第一中间位置数据。例如,可以计算初始标识点位置数据的坐标均值(包括x轴、y轴、z轴三个方向)作为中心位置,随后分别将每组初始标识点位置数据和该中心位置进行相减,可以得到第一中间位置数据,从而可以消除运动对象位置不同的影响。

进一步,计算机设备可以对第一中间位置数据进行坐标变换,得到第二中间位置数据。具体的,可以对第一中间位置数据进行主成分分析(Principal ComponentAnalysis,PCA,是一种被广泛使用的数据降维算法),得到第一主成分坐标轴和第二主成分坐标轴,进而可以根据第一主成分坐标轴和第二主成分坐标轴构建目标坐标系,其中,目标坐标系与第一中间位置数据所处的坐标系不相同,因此可以对第一中间位置数据进行坐标变换,得到位于目标坐标系的第二中间位置数据,从而消除运动对象身体转向不同的影响。在一种可选的实施方式中,第一主成分坐标轴为z轴,第二主成分坐标轴为x轴,根据z轴和x轴组成的平面可以确定y轴,并由此建立root坐标系作为目标坐标系。其中,在骨骼动画中,人物或角色的骨骼有父子层级结构,例如肩膀为父关节,手肘为子关节,手腕为手肘的子关节,从父关节位置进行对应平移,即是子关节位置,最顶层的根关节(一般是盆骨位置)常记为root,人体朝向的变换可以通过控制root旋转来实现,root关节上绑定的坐标系就称为root坐标系。

进一步,计算机设备可以获取样本运动对象的高度信息,根据高度信息(如运动对象的身高)对第二中间位置数据进行更新,具体的,将第二中间位置数据除以身高,得到第三中间位置数据,可以消除运动对象身材不同的影响。其中,高度信息可以通过动作捕捉软件获得。

进一步,为了模拟实际应用场景中未知次序且带有噪声的标识点位置数据,计算机设备可以根据预先生成的随机排列矩阵对第三中间位置数据进行随机排列,得到第四中间位置数据,这一步主要是为了模拟未知次序的数据。其中,随机排列是二元矩阵,由0和1组成,且随机排列中每行的和均为1,每列的和也为1。随后,为了模拟噪声(也可称为gap噪声),可以获取预先设置的噪声数据,然后在第四中间位置数据中随机选取一个或多个数据,并将其替换为噪声数据,从而可以得到样本标识点位置数据。

在一个可行的实施方式中,可以从干净的动捕数据集中选取包含23个演员的61万帧动作序列作为姿态动作样本帧序列,进而可以得到多组干净数据(即初始标识点位置数据),其中,干净数据指有明确标记且基本无噪声的数据,可以选取开源的数据集或人工手修累积的数据集,例如业界常用的KIT动捕数据库、CMU动捕数据库、ACCAD动捕数据库、SFU动捕数据库等。选取样本肢体标识点的数量为41个,针对同一份数据,随机排列矩阵的数量可以为16个,从而可以得到多份具有不同排列规则的样本标识点位置数据,即实现对数据的高效利用,以使模型训练过程中学习到更多规律。此外,可以在每个姿态动作样本帧中随机掩盖n个位置上的数据,并将这n个位置上的数据填为[0.5,0.5,0.5](即噪声数据,可根据实际情况设置)。其中,n的取值范围可以为{1,2,3,4,5}。

步骤S202,将样本标识点位置数据输入初始标识点分类模型,在初始标识点分类模型中,对样本标识点位置数据进行标识点分类,得到第一概率预测矩阵;第一概率预测矩阵包括样本肢体标识点在至少两个预测肢体轨迹标签上的分类概率;

具体的,计算机设备可以将样本标识点位置数据输入初始标识点分类模型,在初始标识点分类模型的分类网络层中,对样本标识点位置数据进行特征提取,可以得到类别特征。其中,分类网络层可以包括至少两个分类网络块,每个分类网络块均包括至少两个全连接层以及至少两个激活函数,假设至少两个分类网络块包括分类网络块S

步骤S203,对第一概率预测矩阵中的分类概率进行矩阵归一化处理,得到第二概率预测矩阵;第二概率预测矩阵的每一行上的归一化分类概率之和满足概率约束条件,第二概率预测矩阵的每一列上的归一化分类概率之和满足概率约束条件;

具体的,计算机设备可以将第一概率预测矩阵输入初始标识点分类模型中的归一化网络层,随后通过归一化网络层对第一概率预测矩阵中的分类概率进行矩阵归一化处理,从而得到第二概率预测矩阵,其中,第二概率预测矩阵的每一行上的归一化分类概率之和均位于概率约束条件所指示的概率约束区间内,且每一列上的归一化分类概率之和也位于该概率约束区间内,矩阵归一化处理的具体过程可以参见上述图3所对应实施例中的步骤S103,这里不再进行赘述。

步骤S204,根据第二概率预测矩阵和随机排列矩阵生成目标损失函数,根据目标损失函数对初始标识点分类模型中的模型参数进行调整,得到标识点分类模型;标识点分类模型用于生成姿态动作帧序列中的肢体标识点的标识点位置数据对应的第二概率矩阵;第二概率矩阵用于在至少两个肢体轨迹标签中确定肢体标识点的最大匹配肢体轨迹标签,最大匹配肢体轨迹标签用于识别肢体标识点所属的肢体轨迹类型。

具体的,计算机设备可以根据第二概率预测矩阵和随机排列矩阵生成目标损失函数,用于表示初始标识点分类模型预测的第二概率预测矩阵与满足概率约束条件的随机排列矩阵之间的差距,进而可以根据目标损失函数对初始标识点分类模型中的模型参数进行调整,从而得到训练好的标识点分类模型。其中,标识点分类模型用于生成姿态动作帧序列中的肢体标识点的标识点位置数据对应的第二概率矩阵,根据第二概率矩阵可以对标识点位置数据进行标记,具体过程可以参见上述图3对应的实施例。在一种可选的实施方式中,目标损失函数可以采用交叉熵损失函数(Cross Entropy Error Function),其数学公式为:

其中,loss即为目标损失函数,N表示样本肢体标识点的数量,P

请一并参见图9,是本申请实施例提供的一种模型训练的流程示意图。为简化表示,此处仅用4个样本肢体标识点示意,如图9所示,初始标识点位置数据首先要经过数据预处理阶段转变为样本标识点位置数据,数据预处理阶段除了基本的归一化等操作外,主要包含随机排列和增加噪声两部分:如可以通过Shuffle(洗牌算法)将初始标识点位置数据随机排列,然后给数据增加gap噪声,这两部分主要模拟实际应用场景里未知次序且带有噪声的标识点位置数据。如图9所示,使用中括号和数字代表对应序号的初始标识点位置数据,例如[1]可表示样本肢体标识点M

本申请实施例提供的方法可以自动矫正现有动捕软件标记错误结果。在一个可选的实施方式中,可以采集包含23个演员的3万帧样本标识点位置数据作为测试集,表1是本方案最终预测正确率(accuracy,也可称为精度或准确率)的结果,此处正确率是指正确预测样本占总样本数(即完全预测正确的帧占总帧数)的比例:

表1

根据上述表1中的数据绘制相关条形图,可一并参见图10,是本申请实施例提供的一种正确率比较的示意图。如图10所示,随着有噪声的样本肢体标识点数量的增加,即噪声干扰在加剧,现有动捕软件的预测正确率会下降得非常明显,而本方案的预测正确率仍能维持在一个较高的水平,也就是说,在面对噪声干扰时,本方案对数据标记的正确率要始终高于现有动捕软件。

请一并参见图11a-图11b,是本申请实施例提供的一种数据标记的场景示意图。图11a是采用现有动捕软件对一个姿态动作样本帧进行标记得到的结果,图11b是采用本方案对同一个姿态动作样本帧进行标记得到的不同结果,在该姿态动作样本帧中,样本运动对象实际是呈现出走路叉腰姿势。如图11a所示,现有动捕软件初始化就标记错误,可以看到区域300a中的腰部有若干样本肢体标识点是未标记的,且区域300b中的手部样本肢体标识点被标记到肩部,最终导致区域300b中的手肘翻转。对比来看,如图11b所示,采用本方案进行自动标记后,在区域300c中,样本运动对象的左手放在腰上,姿态正常。由此可知,本申请实施例可以提高标记标识点位置数据的准确率。

本申请实施例通过采集样本运动对象的姿态动作样本帧序列,可以获取姿态动作样本帧序列中的样本肢体标识点的初始标识点位置数据,进而可以基于随机排列矩阵对初始标识点位置数据进行数据预处理,得到与实际应用场景中的数据性质相似的样本标识点位置数据。进一步,可以将样本标识点位置数据输入初始标识点分类模型,通过初始标识点分类模型可以输出第二概率预测矩阵,进而可以根据第二概率预测矩阵和随机排列矩阵生成目标损失函数,再根据目标损失函数对初始标识点分类模型中的模型参数进行调整,得到训练好的标识点分类模型。本申请实施例可以通过基于神经网络的标识点分类模型学习动捕数据规律来降低噪声和轨迹曲线复杂关系带来的干扰,且没有过多复杂计算过程,处理效率高,可做到实时响应,也就是说,本申请实施例提供的标识点分类模型可以自动化地高效输出每个姿态动作帧中的标识点位置数据对应的满足概率约束条件的归一化分类概率,后续根据归一化分类概率确定最大匹配肢体轨迹标签,可以得到整体概率最大的情况下不重复、不遗漏的标记结果,从而可以提高标记标识点位置数据的效率和准确率。

请参见图12,是本申请实施例提供的一种数据处理装置的结构示意图。该数据处理装置可以是运行于计算机设备的一个计算机程序(包括程序代码),例如该数据处理装置为一个应用软件;该装置可以用于执行本申请实施例提供的数据处理方法中的相应步骤。如图12所示,该数据处理装置1可以包括:数据获取模块11、概率生成模块12、标签确定模块13;

数据获取模块11,用于获取姿态动作帧序列中的肢体标识点的标识点位置数据;姿态动作帧序列包括运动对象;标识点位置数据用于表征运动对象的肢体在姿态动作帧序列中的位置;

概率生成模块12,用于对标识点位置数据进行标识点分类,得到第一概率矩阵;第一概率矩阵包括肢体标识点在至少两个肢体轨迹标签上的分类概率;对第一概率矩阵中的分类概率进行矩阵归一化处理,得到第二概率矩阵;第二概率矩阵的每一行上的归一化分类概率之和满足概率约束条件,第二概率矩阵的每一列上的归一化分类概率之和满足概率约束条件;

标签确定模块13,用于根据第二概率矩阵所包含的与肢体标识点相关联的至少两个归一化分类概率,在至少两个肢体轨迹标签中确定肢体标识点的最大匹配肢体轨迹标签,根据最大匹配肢体轨迹标签识别肢体标识点所属的肢体轨迹类型。

其中,数据获取模块11的具体功能实现方式可以参见上述图3所对应实施例中的步骤S101,概率生成模块12的具体功能实现方式可以参见上述图3所对应实施例中的步骤S102-步骤S103,标签确定模块13的具体功能实现方式可以参见上述图3所对应实施例中的步骤S104,这里不再进行赘述。

请一并参见图12,该数据处理装置1还可以包括:动画生成模块14;

动画生成模块14,用于将T个最大匹配肢体轨迹标签中与肢体标识点M

其中,动画生成模块14的具体功能实现方式可以参见上述图3所对应实施例中的步骤S104,这里不再进行赘述。

请一并参见图12,上述概率生成模块12可以包括:第一概率生成单元121、第二概率生成单元122;

第一概率生成单元121,用于将标识点位置数据输入标识点分类模型,在标识点分类模型的分类网络层中,对标识点位置数据进行特征提取,得到类别特征;根据类别特征在分类网络层中输出第一概率矩阵;第一概率矩阵包括类别特征对应的分类概率;

第二概率生成单元122,用于将第一概率矩阵输入标识点分类模型的归一化网络层,在归一化网络层中,对第一概率矩阵中的每一行分类概率以及每一列分类概率共同进行至少两次归一化处理,得到第二概率矩阵;第二概率矩阵包括类别特征对应的归一化分类概率,第二概率矩阵的每一行上的归一化分类概率之和均位于概率约束条件所指示的概率约束区间内,且第二概率矩阵的每一列上的归一化分类概率之和均位于概率约束区间内。

其中,第一概率生成单元121的具体功能实现方式可以参见上述图3所对应实施例中的步骤S102,第二概率生成单元122的具体功能实现方式可以参见上述图3所对应实施例中的步骤S103,这里不再进行赘述。

在一种实施方式中,上述肢体标识点的数量为N个,至少两个肢体轨迹标签的数量为N个,N为大于1的整数;

请一并参见图12,上述标签确定模块13可以包括:构建单元131、确定单元132;

构建单元131,用于以N个肢体标识点作为第一顶点集、以N个肢体轨迹标签作为第二顶点集构建二分图,基于第二概率矩阵所包含的与N个肢体标识点相关联的N

确定单元132,用于从二分图中获取一个或多个匹配边集合;每个匹配边集合均包括一条或多条顶点互不相同的连接线;将所包含的连接线对应的归一化分类概率之和最大的匹配边集合,确定为第二概率矩阵的最大匹配边集合;在最大匹配边集合中,将肢体标识点M

其中,构建单元131、确定单元132的具体功能实现方式可以参见上述图3所对应实施例中的步骤S104,这里不再进行赘述。

在一种实施方式中,上述姿态动作帧序列包括T个姿态动作帧,T个姿态动作帧与T个第二概率矩阵一一对应;T为大于1的整数;

请一并参见图12,上述标签确定模块13可以包括:识别单元133;

识别单元133,用于在T个第二概率矩阵中,分别获取肢体标识点M

上述识别单元133,具体用于将相同的最大匹配肢体轨迹标签所关联的目标分类概率划分到同一个分类概率集合中;一个最大匹配肢体轨迹标签对应一个分类概率集合;根据分类概率集合中的目标分类概率,生成分类概率集合对应的最大匹配肢体轨迹标签的可信度,将具有最大可信度的最大匹配肢体轨迹标签确定为肢体标识点M

上述识别单元133,具体用于在T个第二概率矩阵中,分别获取数值最大的归一化分类概率作为最大分类概率;一个目标分类概率关联一个最大分类概率;分别获取每个目标分类概率与所关联的最大分类概率之间的概率差值,得到T个概率差值,将T个概率差值分别确定为所关联的目标分类概率对应的最大匹配肢体轨迹标签的可信度;将具有最大可信度的最大匹配肢体轨迹标签确定为肢体标识点M

其中,识别单元133的具体功能实现方式可以参见上述图3所对应实施例中的步骤S104,这里不再进行赘述。

本申请实施例通过采集运动对象的姿态动作帧序列,可以获取姿态动作帧序列中的肢体标识点的标识点位置数据,且标识点位置数据用于表征该运动对象的肢体在姿态动作帧序列中的位置,进一步,可以对标识点位置数据进行标识点分类,得到第一概率矩阵,再对第一概率矩阵中的分类概率进行矩阵归一化处理,可以得到第二概率矩阵,进而可以根据第二概率矩阵所包含的与肢体标识点相关联的至少两个归一化分类概率,在至少两个肢体轨迹标签中确定肢体标识点的最大匹配肢体轨迹标签,最终可以根据最大匹配肢体轨迹标签识别肢体标识点所属的肢体轨迹类型。由此可见,本申请实施例提供了一种基于深度学习的动捕数据标记方法,可以通过神经网络学习动捕数据规律来降低噪声和轨迹曲线复杂关系带来的干扰,且没有过多复杂计算过程,处理效率高,可做到实时响应,也就是说,本申请实施例可以自动化地高效输出每个姿态动作帧中的标识点位置数据对应的满足概率约束条件的归一化分类概率,后续根据归一化分类概率确定最大匹配肢体轨迹标签,可以得到整体概率最大的情况下不重复、不遗漏的标记结果,从而可以提高标记标识点位置数据的效率和准确率。

请参见图13,是本申请实施例提供的一种数据处理装置的结构示意图。该数据处理装置可以是运行于计算机设备的一个计算机程序(包括程序代码),例如该数据处理装置为一个应用软件;该装置可以用于执行本申请实施例提供的数据处理方法中的相应步骤。如图13所示,该数据处理装置2可以包括:数据获取模块21、第一概率生成模块22、第二概率生成模块23、调整模块24;

数据获取模块21,用于获取姿态动作样本帧序列中的样本肢体标识点的初始标识点位置数据,基于随机排列矩阵对初始标识点位置数据进行数据预处理,得到样本标识点位置数据;姿态动作样本帧序列包括样本运动对象;初始标识点位置数据用于表征样本运动对象的肢体在姿态动作样本帧序列中的位置;

第一概率生成模块22,用于将样本标识点位置数据输入初始标识点分类模型,在初始标识点分类模型中,对样本标识点位置数据进行标识点分类,得到第一概率预测矩阵;第一概率预测矩阵包括样本肢体标识点在至少两个预测肢体轨迹标签上的分类概率;

第二概率生成模块23,用于对第一概率预测矩阵中的分类概率进行矩阵归一化处理,得到第二概率预测矩阵;第二概率预测矩阵的每一行上的归一化分类概率之和满足概率约束条件,第二概率预测矩阵的每一列上的归一化分类概率之和满足概率约束条件;

调整模块24,用于根据第二概率预测矩阵和随机排列矩阵生成目标损失函数,根据目标损失函数对初始标识点分类模型中的模型参数进行调整,得到标识点分类模型;标识点分类模型用于生成姿态动作帧序列中的肢体标识点的标识点位置数据对应的第二概率矩阵;第二概率矩阵用于在至少两个肢体轨迹标签中确定肢体标识点的最大匹配肢体轨迹标签,最大匹配肢体轨迹标签用于识别肢体标识点所属的肢体轨迹类型。

其中,数据获取模块21的具体功能实现方式可以参见上述图8所对应实施例中的步骤S201,第一概率生成模块22的具体功能实现方式可以参见上述图8所对应实施例中的步骤S202,第二概率生成模块23的具体功能实现方式可以参见上述图8所对应实施例中的步骤S203,调整模块24的具体功能实现方式可以参见上述图8所对应实施例中的步骤S204,这里不再进行赘述。

请一并参见图13,上述数据获取模块21可以包括:位置更新单元211、坐标变换单元212、高度更新单元213、随机排列单元214、噪声添加单元215;

位置更新单元211,用于获取初始标识点位置数据的中心位置,根据中心位置对初始标识点位置数据进行更新,得到第一中间位置数据;

上述位置更新单元211,具体用于获取初始标识点位置数据的坐标均值,将坐标均值确定为中心位置;将初始标识点位置数据和中心位置进行相减,得到第一中间位置数据;

坐标变换单元212,用于对第一中间位置数据进行坐标变换,得到第二中间位置数据;

上述坐标变换单元212,具体用于对第一中间位置数据进行主成分分析,得到第一主成分坐标轴和第二主成分坐标轴,根据第一主成分坐标轴和第二主成分坐标轴构建目标坐标系;目标坐标系与第一中间位置数据所处的坐标系不相同;对第一中间位置数据进行坐标变换,得到位于目标坐标系的第二中间位置数据;

高度更新单元213,用于获取样本运动对象的高度信息,根据高度信息对第二中间位置数据进行更新,得到第三中间位置数据;

随机排列单元214,用于根据随机排列矩阵对第三中间位置数据进行随机排列,得到第四中间位置数据;

噪声添加单元215,用于获取噪声数据,将第四中间位置数据中的一个或多个数据替换为噪声数据,得到样本标识点位置数据。

其中,位置更新单元211、坐标变换单元212、高度更新单元213、随机排列单元214、噪声添加单元215的具体功能实现方式可以参见上述图8所对应实施例中的步骤S201,这里不再进行赘述。

请一并参见图13,上述第一概率生成模块22可以包括:特征提取单元221、概率输出单元222;

特征提取单元221,用于将样本标识点位置数据输入初始标识点分类模型,在初始标识点分类模型的分类网络层中,对样本标识点位置数据进行特征提取,得到类别特征;

在一种实施方式中,上述分类网络层包括至少两个分类网络块,每个分类网络块均包括至少两个全连接层以及至少两个激活函数;至少两个分类网络块包括分类网络块S

上述特征提取单元221,具体用于获取分类网络块S

概率输出单元222,用于根据类别特征在分类网络层中输出第一概率预测矩阵;第一概率预测矩阵包括类别特征对应的分类概率。

其中,特征提取单元221、概率输出单元222的具体功能实现方式可以参见上述图8所对应实施例中的步骤S202,这里不再进行赘述。

本申请实施例通过采集样本运动对象的姿态动作样本帧序列,可以获取姿态动作样本帧序列中的样本肢体标识点的初始标识点位置数据,进而可以基于随机排列矩阵对初始标识点位置数据进行数据预处理,得到与实际应用场景中的数据相似的样本标识点位置数据。进一步,可以将样本标识点位置数据输入初始标识点分类模型,通过初始标识点分类模型可以输出第二概率预测矩阵,进而可以根据第二概率预测矩阵和随机排列矩阵生成目标损失函数,再根据目标损失函数对初始标识点分类模型中的模型参数进行调整,得到训练好的标识点分类模型。本申请实施例可以通过基于神经网络的标识点分类模型学习动捕数据规律来降低噪声和轨迹曲线复杂关系带来的干扰,且没有过多复杂计算过程,处理效率高,可做到实时响应,也就是说,本申请实施例提供的标识点分类模型可以自动化地高效输出每个姿态动作帧中的标识点位置数据对应的满足概率约束条件的归一化分类概率,后续根据归一化分类概率确定最大匹配肢体轨迹标签,可以得到整体概率最大的情况下不重复、不遗漏的标记结果,从而可以提高标记标识点位置数据的效率和准确率。

请参见图14,是本申请实施例提供的一种计算机设备的结构示意图。如图14所示,该计算机设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,上述计算机设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1004可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图14所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。

在如图14所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:

获取姿态动作帧序列中的肢体标识点的标识点位置数据;姿态动作帧序列包括运动对象;标识点位置数据用于表征运动对象的肢体在姿态动作帧序列中的位置;

对标识点位置数据进行标识点分类,得到第一概率矩阵;第一概率矩阵包括肢体标识点在至少两个肢体轨迹标签上的分类概率;

对第一概率矩阵中的分类概率进行矩阵归一化处理,得到第二概率矩阵;第二概率矩阵的每一行上的归一化分类概率之和满足概率约束条件,第二概率矩阵的每一列上的归一化分类概率之和满足概率约束条件;

根据第二概率矩阵所包含的与肢体标识点相关联的至少两个归一化分类概率,在至少两个肢体轨迹标签中确定肢体标识点的最大匹配肢体轨迹标签,根据最大匹配肢体轨迹标签识别肢体标识点所属的肢体轨迹类型。

应当理解,本申请实施例中所描述的计算机设备1000可执行前文图3所对应实施例中对该数据处理方法的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。

请参见图15,是本申请实施例提供的一种计算机设备的结构示意图。如图15所示,该计算机设备2000可以包括:处理器2001,网络接口2004和存储器2005,此外,上述计算机设备2000还可以包括:用户接口2003,和至少一个通信总线2002。其中,通信总线2002用于实现这些组件之间的连接通信。其中,用户接口2003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口2003还可以包括标准的有线接口、无线接口。网络接口2004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器2004可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器2005可选的还可以是至少一个位于远离前述处理器2001的存储装置。如图15所示,作为一种计算机可读存储介质的存储器2005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。

在如图15所示的计算机设备2000中,网络接口2004可提供网络通讯功能;而用户接口2003主要用于为用户提供输入的接口;而处理器2001可以用于调用存储器2005中存储的设备控制应用程序,以实现:

获取姿态动作样本帧序列中的样本肢体标识点的初始标识点位置数据,基于随机排列矩阵对初始标识点位置数据进行数据预处理,得到样本标识点位置数据;姿态动作样本帧序列包括样本运动对象;初始标识点位置数据用于表征样本运动对象的肢体在姿态动作样本帧序列中的位置;

将样本标识点位置数据输入初始标识点分类模型,在初始标识点分类模型中,对样本标识点位置数据进行标识点分类,得到第一概率预测矩阵;第一概率预测矩阵包括样本肢体标识点在至少两个预测肢体轨迹标签上的分类概率;

对第一概率预测矩阵中的分类概率进行矩阵归一化处理,得到第二概率预测矩阵;第二概率预测矩阵的每一行上的归一化分类概率之和满足概率约束条件,第二概率预测矩阵的每一列上的归一化分类概率之和满足概率约束条件;

根据第二概率预测矩阵和随机排列矩阵生成目标损失函数,根据目标损失函数对初始标识点分类模型中的模型参数进行调整,得到标识点分类模型;标识点分类模型用于生成姿态动作帧序列中的肢体标识点的标识点位置数据对应的第二概率矩阵;第二概率矩阵用于在至少两个肢体轨迹标签中确定肢体标识点的最大匹配肢体轨迹标签,最大匹配肢体轨迹标签用于识别肢体标识点所属的肢体轨迹类型。

应当理解,本申请实施例中所描述的计算机设备2000可执行前文图8所对应实施例中对该数据处理方法的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。

此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且上述计算机可读存储介质中存储有前文提及的数据处理装置1和数据处理装置2所执行的计算机程序,且上述计算机程序包括程序指令,当上述处理器执行上述程序指令时,能够执行前文图3、图8任一个所对应实施例中对上述数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。

上述计算机可读存储介质可以是前述任一实施例提供的数据处理装置或者上述计算机设备的内部存储单元,例如计算机设备的硬盘或内存。该计算机可读存储介质也可以是该计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(smart media card,SMC),安全数字(secure digital, SD)卡,闪存卡(flash card)等。进一步地,该计算机可读存储介质还可以既包括该计算机设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该计算机设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。

此外,这里需要指出的是:本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前文图3、图8任一个所对应实施例提供的方法。

本申请实施例的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同对象,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括没有列出的步骤或模块,或可选地还包括对于这些过程、方法、装置、产品或设备固有的其他步骤单元。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。

相关技术
  • 一种数据处理方法、装置、计算机设备和计算机可读存储介质
  • 数据处理方法、装置、计算机设备和计算机可读存储介质
技术分类

06120112940395