基于视频的姿态数据捕捉方法和系统与流程

文档序号:16504600发布日期:2019-01-05 08:57阅读:340来源:国知局
基于视频的姿态数据捕捉方法和系统与流程

本申请涉及机器视觉领域,尤其涉及一种基于视频的姿态数据捕捉方法和系统。



背景技术:

动作捕捉是指通过对物体在三维空间中的运动进行记录,并将其运动轨迹模拟到数字模型中。例如,通过检测、记录表演者的肢体在三维空间的运动轨迹,捕获表演者的姿态动作,将捕获的姿态动作转换为数字化的抽象动作,以控制软件应用中的虚拟模型做出和表演者相同的动作,生成动画序列。近年来,动作捕捉技术被广泛应用于虚拟现实、三维游戏、人体生物工程学等很多领域。

传统的动作捕捉技术主要有如下三种:

第一种,光学动作捕捉技术。这种技术需要专门的环境,要求周围无明显干扰,需要专门演员穿戴光学动捕设备捕捉动作。虽然光学动作捕捉技术的捕捉结果精度高,但需要有场地、设备和人员的要求,使用成本高。

第二种,惯性动作捕捉技术。这种技术需要专业表演者穿戴各种动作捕捉设备,由于这些动作捕捉设备绑在人体关节点上,能够采样人体运动的速度和加速度,以此推断出人体关节的位置和动作。但这种技术因设备的精度问题,捕捉效果比光学动作捕捉技术差,且无法解决虚拟角色脚跟紧贴地面的问题。同样,惯性动作捕捉技术也需要有设备和人员的要求。

第三种,端对端的3d姿态数据生成。这种方式需要获取真实环境下的3d人体数据,困难较大,且需要额外的设备。因此采用将图片作为网络输入来直接输出3d位置是很困难的。为了解决数据不足的问题,这种方案采用更换背景,更换人体衣服的方式进行训练,捕捉效果不是十分理想。

分析可知,现有技术中,基于视频的姿态数据捕捉方式需要借助场地、设备和人员的支持,影响工作效率,成本较高,捕捉效果较差。



技术实现要素:

为了解决上述问题,本申请提出了一种基于视频的姿态数据捕捉方法,该方法包括如下步骤:获取视频数据,其中,视频数据包含待捕捉对象运动的姿态动作数据;将视频数据分解为至少一张图片;其中,每张图片对应视频数据的一帧图像;基于第一神经网络模型,提取视频数据分解得到的每张图片中包含的待捕捉对象身上至少一个标记点的二维坐标数据;基于第二神经网络模型,根据视频数据分解得到的每张图片中包含的待捕捉对象身上每个标记点的二维坐标数据,确定每个标记点在局部坐标系中对应的三维坐标数据,其中,局部坐标系是以待捕捉对象的质心确定的坐标系;基于待捕捉对象身上每个标记点在至少一张图片上的位置数据,根据每个标记点在局部坐标系中对应的三维坐标数据,确定待捕捉对象身上每个标记点在预设三维空间内对应的三维坐标数据。

在一个示例中,基于第一神经网络模型,提取所述视频数据分解得到的每张图片中包含的待捕捉对象身上至少一个标记点的二维坐标数据,包括:将视频数据分解得到的每张图片输入第一神经网络模型,输出每张图片对应的至少一张置信图,其中,每张置信图中亮度最大的像素点的坐标对应待捕捉对象身上一个标记点的坐标;根据每张图片对应的至少一张置信图,确定每张图片中包含的待捕捉对象身上至少一个标记点在每张图片中的二维坐标数据。

在一个示例中,在将视频数据分解得到的每张图片输入第一神经网络模型,输出每张图片对应的至少一张置信图之前,方法还包括:获取图片样本库;其中,图片样本库包含多张样本图片;标注图片样本库中每张样本图片包含的待捕捉对象身上的至少一个标记点;使用图片样本库中的多张样本图片和样本图片上标注的至少一个标记点,通过机器学习训练得到第一神经网络模型。

可选地,标记点可以为待捕捉对象身上的关节点,关节点包括如下至少之一:头关节、颈关节、左肩关节、右肩关节、左肘关节、右肘关节、左肘关节、右肘关节、左盆骨关节、右盆骨关节、左膝盖节、右膝盖节、左踝骨关节、右踝骨关节。

在一个示例中,根据每张图片对应的至少一张置信图,确定每张图片中包含的待捕捉对象身上至少一个标记点在每张图片中的二维坐标数据,包括:通过如下高斯响应图公式,确定每张置信图对应的标记点的二维坐标:

其中,g(x,y)表示每张置信图上像素点的高斯分布;σ表示高斯分布的标准偏差,(x,y)表示每张置信图上每个像素点的坐标。

在一个示例中,使用图片样本库中的多张样本图片和样本图片上标注的至少一个标记点,通过机器学习训练得到第一神经网络模型,包括:基于如下目标函数训练第一神经网络模型:

其中,e表示目标函数,h'j(x,y)是预测的样本图片上每个标记点的坐标,hj(x,y)是样本图片标注的标记点的坐标,n表示训练样本的个数,j为自然数。

在一个示例中,在基于第二神经网络模型,根据视频数据分解得到的每张图片中包含的待捕捉对象身上每个标记点的二维坐标数据,确定每个标记点在预设三维空间的三维坐标数据之前,方法还包括:获取图片样本库;其中,图片样本库包含多张样本图片;标注图片样本库中每张样本图片包含的待捕捉对象身上的至少一个标记点;基于每张样本图片上标注的每个标记点的二维坐标,获取待捕捉对象身上的每个标记点在局部坐标系中的三维坐标数据,其中,局部坐标系统为以待捕捉对象的质心确定的坐标系;使用图片样本库中的每张样本图片上标注的至少一个标记点的二维坐标数据和局部坐标系中对应的三维坐标数据,通过机器学习训练得到第二神经网络模型。

在一个示例中,基于待捕捉对象身上每个标记点在至少一张图片上的位置,根据每个标记点在局部坐标系中对应的三维坐标数据,确定待捕捉对象身上每个标记点在预设三维空间内对应的三维坐标数据,包括:通过如下公式,基于待捕捉对象身上每个标记点在至少一张图片上的位置数据,根据每个标记点在局部坐标系中对应的三维坐标数据,确定待捕捉对象身上每个标记点在预设三维空间内对应的三维坐标数据:

其中,z是待捕捉对象在预设三维空间的近似深度,是第二神经网络模型输出的标记点坐标信息;是第二神经网络模型输出的所有标记点坐标信息的平均值;ki是第一神经网络模型输出的标记点坐标信息;是第一神经网络模型输出的所有标记点坐标信息的平均值。

在一个示例中,使用图片样本库中的每张样本图片上标注的至少一个标记点的二维坐标和对应的三维坐标,通过机器学习训练得到第二神经网络模型,包括:基于如下目标函数训练第二神经网络模型:

其中,e表示目标函数,h'j(x,y,z)是预测的样本图片上每个标记点的三维坐标,hj(x,y,z)是样本图片标注的标记点的三维坐标,n表示训练样本的个数,j为自然数。

在一个示例中,在根据视频数据分解得到的每张图片中包含的待捕捉对象身上每个标记点在预设三维空间的三维坐标数据,生成待捕捉对象运动的三维姿态数据之后,方法还包括:根据视频数据分解得到的每张图片中包含的待捕捉对象身上每个标记点在预设三维空间的三维坐标数据,生成第一预定格式的文件,其中,第一预定格式的文件存储了待捕捉对象做出视频数据中相应姿态动作的三维姿态数据。

在一个示例中,在根据视频数据分解得到的每张图片中包含的待捕捉对象身上每个标记点在预设三维空间的三维坐标数据,生成第一预定格式的文件之后,方法还包括:将第一预定格式的文件转换为第二预定格式的文件,其中,第二预定格式的文件用于制作三维动画。

在一个示例中,第一神经网络模型为基于残差网络建立的卷积神经网络模型,第二神经网络模型为深度神经网络模型。

另一方面,本申请还提出了一种基于视频的姿态数据捕捉系统,系统包括:摄像装置,用于采集视频数据,其中,视频数据包含待捕捉对象运动的姿态动作数据;图像处理设备,与摄像装置通信,用于获取视频数据,并将视频数据分解为至少一张图片,基于第一神经网络模型,提取视频数据分解得到的每张图片中包含的待捕捉对象身上至少一个标记点的二维坐标数据,基于第二神经网络模型,根据视频数据分解得到的每张图片中包含的待捕捉对象身上每个标记点的二维坐标数据,确定每个标记点在局部坐标系中对应的三维坐标数据,并基于待捕捉对象身上每个标记点在至少一张图片上的位置数据,根据每个标记点在局部坐标系中对应的三维坐标数据,确定待捕捉对象身上每个标记点在预设三维空间内对应的三维坐标数据;其中,每张图片对应视频数据的一帧图像,局部坐标系是以待捕捉对象的质心确定的坐标系。

另一方面,本申请还提出了一种基于视频的姿态数据捕捉系统,系统包括:客户端设备,用于获取并上传视频数据,其中,视频数据包含待捕捉对象运动的姿态动作数据;服务器,与客户端设备通信,用于接收客户端设备上传的视频数据,并将视频数据分解为至少一张图片,基于第一神经网络模型,提取视频数据分解得到的每张图片中包含的待捕捉对象身上至少一个标记点的二维坐标数据,基于第二神经网络模型,根据视频数据分解得到的每张图片中包含的待捕捉对象身上每个标记点的二维坐标数据,确定每个标记点在局部坐标系中对应的三维坐标数据,并基于待捕捉对象身上每个标记点在至少一张图片上的位置数据,根据每个标记点在局部坐标系中对应的三维坐标数据,确定待捕捉对象身上每个标记点在预设三维空间内对应的三维坐标数据;其中,每张图片对应视频数据的一帧图像,局部坐标系是以待捕捉对象的质心确定的坐标系。

通过本申请提出基于视频的姿态数据捕捉方式,在根据获取到的视频数据得到对应的至少一张图片后,通过第一神经网络模型提取每张图片中包含的待捕捉对象上至少一个标记点的二维坐标数据,并通过第二神经网络模型根据每张图片中包含的待捕捉对象上至少一个标记点的二维坐标数据确定每个标记点在预设三维空间的三维坐标,实现了根据视频提取三维姿态数据的目的,另外将人体关节的二维坐标数据和三维坐标数据的通过两个神经网络获取,有效的解决了3d人体姿态数据不足导致的3d训练效果差的问题。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1为本申请实施例提供的一种基于视频的姿态数据捕捉系统示意图;

图2为本申请实施例提供的一种可选的基于视频的姿态数据捕捉系统示意图;

图3(a)为本申请实施例提供的一种对视频截图得到图片示意图;

图3(b)为本申请实施例提供的一种提取图片中人体关节点的示意图;

图4(a)为本申请实施例提供的一种二维人体关节点示意图;

图4(b)为本申请实施例提供的一种三维人体关节点示意图;

图5为本申请实施例提供的一种基于视频的姿态数据捕捉方法流程图。

具体实施方式

为了更清楚的阐释本申请的整体构思,下面结合说明书附图以示例的方式进行详细说明。

为了解决现有的姿态数据捕捉系统需要借助各种传感器来获取运动目标在三维空间运动的姿态数据,导致操作繁琐、成本较高的问题,本申请提供了一种基于视频的姿态数据捕捉方案,可以根据运动目标的一段视频,动态捕捉该视频中该运动目标运动的姿态数据。

需要说明的是,本申请实施例提供的基于视频的姿态数据捕捉方案,可以应用于任意一种运动目标的姿态数据捕捉,可以是人体的姿态数据、也可以是移动物体的姿态数据,还可以是机器人的姿态数据。优选地,本申请各个实施例以捕捉人体的姿态数据为例来进行说明。容易注意的是,通过在待捕对象身上标记至少一个点的变化,可以确定待捕捉对象的运动时的姿态数据,在待捕捉对象为人体的情况下,标记点可以是人体的关节点。

作为第一种可选的实施例,本申请的实施例提供了一种基于视频的姿态数据捕捉系统,如图1所示,该系统包括:摄像装置1和图像处理设备2。其中,图像处理设备2通过与其连接的摄像装置1采集待捕捉对象(例如,人体)运动的视频数据,采集的视频数据中包含了人体运动时的多个姿态动作的数据。图像处理设备2在获取到人体运动的视频数据后,对视频数据进行帧分解处理,得到多张图片,每张图片对应视频数据的一帧图像。由于人体运动时的姿态动作不断发生变化,因此每张图片中人体的关节点(包括但不限于头关节、颈关节、左肩关节、右肩关节、左肘关节、右肘关节、左肘关节、右肘关节、左盆骨关节、右盆骨关节、左膝盖节、右膝盖节、左踝骨关节、右踝骨关节等关节位置)在图片上具有不同的位置。

需要说明的是,上述图像处理设备2与摄像装置1可以是同一设备上两个部件(例如,在室内通过手机等智能移动设备采集用户的姿态数据并进行图像处理),也可以是两台独立的设备。在图像处理设备2与摄像装置1是两台独立的设备的情况下,二者的通信方式可以是有线通信(例如,在室内采集表演者的姿态数据并通过计算机等图像处理设备进行图像处理),也可以是无线通信。在无线通信的情况下,可以是基于局域网的通信方式(例如,在室内通过手机等采集用户的姿态数据,并发送给计算机进行图像处理),也可以是基于互联网的通信方式(例如,通过手机采集用户的姿态数据后,基于客户端应用发送给应用服务器进行图像处理)。

例如,图2是本申请实施例提供的一种可选的基于视频的姿态数据捕捉系统示意图,如图2所示,服务器5获取到的视频数据可以是通过手机的摄像头等摄像装置实时采集到的待捕捉对象的运动的姿态动作数据,也可以是用户通过手机3或计算机4等设备上传包含了待捕捉对象的运动的姿态动作的视频数据。

无论通过上述哪种方式,当图像处理设备2获取通过摄像装置1采集到人体运动的视频数据,并将视频数据分解为多张图片后,图像处理设备2可以基于第一神经网络模型,提取视频数据分解得到的每张图片中包含的待捕捉对象身上每个关节点(例如,图3中所示的人体的左手腕关节点)的二维坐标数据,并基于第二神经网络模型,根据视频数据分解得到的每张图片中包含的待捕捉对象身上每个关节点的二维坐标数据,确定每个关节点在预设三维空间的三维坐标数据,最后根据视频数据分解得到的每张图片中包含的待捕捉对象身上每个关节点在预设三维空间的三维坐标数据,生成第一预定格式的文件,其中,第一预定格式的文件存储了待捕捉对象做出视频数据中相应姿态动作的三维姿态数据。

容易注意的是,上述第一神经网络模型和第二神经网络模型是采用人工智能算法预先训练得到的模型,其中,第一神经网络模型可以用于估计图片中人体的关节位置,以获得2d坐标数据;第二神经网络模型可以用于将2d关节坐标数据转换成相应的3d坐标数据。利用神经网络强大的学习和推导能力,将视频中的人体动作转换成3d动作数据。使用大量真实的视频和图片训练出来的神经网络,能有效的识别各种环境下的人体姿态。本发明实施例对人体的遮挡和自遮挡也有很好的处理,对使用环境及拍摄视频的相机机位没有限制,因此可以处理各种视频素材。

可选地,第一神经网络模型可以为基于残差网络建立的卷积神经网络模型,第二神经网络模型可以为深度神经网络模型。

容易注意的是,在使用第一神经网络模型提取每张图片中包含的待捕捉对象身上至少一个关节点的二维坐标数据之前,需要先训练第一神经网络模型。具体地,收集包含多张样本图片的图片样本库,标注图片样本库中每张样本图片包含的待捕捉对象身上的至少一个关节点(例如,头关节、颈关节、左肩关节、右肩关节、左肘关节、右肘关节、左肘关节、右肘关节、左盆骨关节、右盆骨关节、左膝盖节、右膝盖节、左踝骨关节、右踝骨关节),并使用图片样本库中的多张样本图片和样本图片上标注的至少一个关节点,通过机器学习训练得到第一神经网络模型。

在训练得到第一神经网络模型之后,可以使用第一神经网络模型提取每张图片中包含的待捕捉对象身上至少一个关节点的二维坐标数据,图像处理设备2将视频数据分解得到的每张图片输入至第一神经网络模型,以输出每张图片对应的至少一张置信图。并根据每张图片对应的至少一张置信图,确定每张图片中包含的待捕捉对象身上至少一个关节点在每张图片中的二维坐标数据,其中,每张置信图中亮度最大的像素点的坐标对应待捕捉对象身上一个关节点的坐标。

可选地,可以基于如下目标函数训练第一神经网络模型:

其中,e表示目标函数,h'j(x,y)是预测的样本图片上每个关节点的坐标,hj(x,y)是样本图片标注的关节点的坐标,n表示训练样本的个数,j为自然数。

其中,根据每张图片对应的至少一张置信图,确定每张图片中包含的待捕捉对象身上至少一个关节点在每张图片中的二维坐标数据的时候,可以通过如下高斯响应图公式,确定每张置信图对应的关节点的二维坐标:

其中,g(x,y)表示每张置信图上像素点的高斯分布;σ表示高斯分布的标准偏差,(x,y)表示每张置信图上每个像素点的坐标。

另外,还需要注意的是,在使用第二神经网络模型,根据视频数据分解得到的每张图片中包含的待捕捉对象身上每个关节点的二维坐标数据,确定每个关节点在预设三维空间的三维坐标数据之前,还需要先训练第二神经网络模型。训练过程为:收集包含多张样本图片的图片样本库,标注图片样本库中每张样本图片包含的待捕捉对象身上的至少一个关节点(例如,头关节、颈关节、左肩关节、右肩关节、左肘关节、右肘关节、左肘关节、右肘关节、左盆骨关节、右盆骨关节、左膝盖节、右膝盖节、左踝骨关节、右踝骨关节);并基于每张样本图片上标注的每个关节点的二维坐标,获取待捕捉对象身上的每个关节点在局部坐标系中的三维坐标数据,其中,局部坐标系统为以待捕捉对象的质心确定的坐标系;使用图片样本库中的每张样本图片上标注的至少一个关节点的二维坐标数据和局部坐标系中对应的三维坐标数据,通过机器学习训练得到第二神经网络模型。

可选地,可以基于如下目标函数训练第二神经网络模型:

其中,e表示目标函数,h'j(x,y,z)是预测的样本图片上每个关节点的三维坐标,hj(x,y,z)是样本图片标注的关节点的三维坐标,n表示训练样本的个数,j为自然数。

下面,结合图3(a)和图3(b)来具体说明本申请提供的基于视频的姿态数据捕捉方案。图3(a)所示为从跳高运动员跳高视频中分解得到的单张图片,可以使用卷积神经网络(convolutionalneuralnetwork,cnn)对图3(a)所示的图片进行推理,以获得该图片中人体的关节点位置,如图3(b)所示的头关节、颈关节、左肩关节、右肩关节、左肘关节、右肘关节、左肘关节、右肘关节、左盆骨关节、右盆骨关节、左膝盖节、右膝盖节、左踝骨关节、右踝骨关节。

图3(b)对应的2d人关节数据如图4(a)所示,使用深度网络(deepneuralnetwork,dnn)对2d人体关节数据进行推理,可以得到预设三维空间内人体关节的3d坐标数据,如图4(b)所示。

为了训练得到上述卷积神经网路,可以收集各种环境下的包含人体的图片作为样本,对图片中的人体关节点进行标注。标注的信息包括:头关节、颈关节、左肩关节、右肩关节、左肘关节、右肘关节、左肘关节、右肘关节、左盆骨关节、右盆骨关节、左膝盖节、右膝盖节、左踝骨关节、右踝骨关节,共14个关节点,并参照标准的残差网络搭建的卷积神经网络,该卷积网络输入的是图片样本,输出是样本中人体关节的置信度图。该置信度图一共有14张,每张图包含一个关节点在样本图片中对应的位置的高斯响应图。容易注意的是,置信图是一张2d的图片,和输入图片一样大或者等比例较小。其中每一个像素和输入图片对照,表示在像素所在位置对应输入图片的位置上,是人体关节的概率有多大。

作为一种可选的实施方式,可以采用10万张图片作为样本,训练200次。提取置信图中亮度最大点的坐标,即获得人体关节点的2d位置,以作为深度神经网络的训练输入。

为了训练得到上述神经网络,可以摄影棚中采用传统光学设备,聘请专业演员捕捉人体姿态,获得人体关节在3d空间中的位置数据。该数据为连续的动作数据。关节的数量和位置和2d一致。作为一种可选的实施方式,可以采用10台相机围绕着人体,镜头指向中间的演员。

需要说明的是,深度神经网络的输入是2d关节数据(x,y),输出是基于对应人体的三维关节位置(x,y,z)。由于深度神经网络有着强大的特征提取能力,首先对输入的2d数据进行扩维,通过隐藏层后输入成3d坐标。仍然采用l2loss函数进行训练,激活函数使用relu函数。因为正常人体为左右对称,因此还添加骨骼长度的约束,使左右骨骼长度尽量一致。使用该深度网络能获得人体的3d姿态,但是没有人体在3d空间中的位移数据,并且动作的连贯性不够,播放动作存在抖动。

由此,作为一种可选的实施方式,具体地,在基于待捕捉对象身上每个关节在至少一张图片上的位置数据,根据每个关节在局部坐标系中对应的三维坐标数据,确定待捕捉对象身上每个关节在预设三维空间内对应的三维坐标数据的时候,可以基于待捕捉对象身上每个关节在至少一张图片上的位置数据,根据每个关节在局部坐标系中对应的三维坐标数据,确定待捕捉对象身上每个关节在预设三维空间内对应的三维坐标数据:

其中,z是待捕捉对象在预设三维空间的近似深度,是第二神经网络模型输出的关节信息;是第二神经网络模型输出的所有关节信息的平均值;ki是第一神经网络模型输出的关节信息;是第一神经网络模型输出的所有关节信息的平均值。

可选地,在后处理阶段,使用迭代法对3d人体处理,让其动作更加平滑,消除脚踝部分的抖动,使其固定在地面。

进一步地,还可以将生成人体关节3d数据转换成游戏美术人员常使用的fbx文件(即filmbox软件格式的文件)。由于视频是连续的人体动作,因此保存到fbx中的信息包括了逐帧的动作信息。

优选地,还可以将fbx文件转换成人体动作文件bip文件(bip全称为bipedal,bip文件即3dsmaxcs特有格式的文件,用于制作动画和3d的文件)。

其中,fbx文件是autodesk公司出品的一款用于跨平台的免费三维创作与交换格式的软件,通过fbx用户能访问大多数三维供应商的三维文件。fbx文件格式支持所有主要的三维数据元素以及二维、音频和视频媒体元素。

bip文件是脚步控制器常用动作文件,是动画和3d制作常用的文件。bip是3dsmaxcs特有格式,用naturalmotionendorphin(动作捕捉模拟)打开,或者可以使用motionbuilder(3d角色动画软件之一)等软件打开。bip文件是游戏美术常使用的角色动画文件。

基于3dmax中的标准骨骼的样子,计算出了人体关节的旋转方向和长度。将这些数据导入到3dmax中可以得到正确的bip骨骼和动画效果。

作为一种可选的实施方式,本申请的开发过程使用tensorflow完成,运行环境为安装linux操作系统的pc。

本申请的实施例还提供了一种基于视频的姿态数据捕捉方法,如图5所示,包括如下步骤:

步骤s501,获取视频数据,其中,视频数据包含待捕捉对象运动的姿态动作数据。

具体地,上述视频数据可以是实时录制的包含待捕捉对象运动的姿态动作数据的视频,也可以是事先录制或制作的包含待捕捉对象运动的姿态动作数据的视频。上述待捕捉对象可以是视频中运动的人或物,本申请实施例以人为例进行说明。

步骤s502,将视频数据分解为至少一张图片;其中,每张图片对应视频数据的一帧图像。

具体地,在获取到包含了待捕捉对象运动的姿态动作数据的视频数据后,可以将该视频数据按帧分解为多张图片。其中,每张图片中包含待捕捉对象运动的一个姿态动作。

步骤s503,基于第一神经网络模型,提取视频数据分解得到的每张图片中包含的待捕捉对象身上至少一个标记点的二维坐标数据。

具体地,将视频数据分解得到的每张图片输入第一神经网络模型,输出每张图片对应的至少一张置信图,其中,每张置信图中亮度最大的像素点的坐标对应待捕捉对象身上一个标记点的坐标;根据每张图片对应的至少一张置信图,确定每张图片中包含的待捕捉对象身上至少一个标记点在每张图片中的二维坐标数据。

其中,在将视频数据分解得到的每张图片输入第一神经网络模型,输出每张图片对应的至少一张置信图之前,还需要训练第一神经网络模型,具体训练过程如上文已论述,此处不再赘述。

可选地,第一神经网络模型为卷积神经网络模型。

步骤s504,基于第二神经网络模型,根据视频数据分解得到的每张图片中包含的待捕捉对象身上每个标记点的二维坐标数据,确定每个标记点在局部坐标系中对应的三维坐标数据,其中,局部坐标系是以待捕捉对象的质心确定的坐标系。

可选地,第二神经网络模型为深度神经网络模型。其输入是2d关节数据(x,y),输出是局部坐标系中的三维数据。其中,训练第二神经网络模型的过程上文已论述,此处不再赘述。

步骤s505,基于待捕捉对象身上每个标记点在至少一张图片上的位置数据,根据每个标记点在局部坐标系中对应的三维坐标数据,确定待捕捉对象身上每个标记点在预设三维空间内对应的三维坐标数据。

具体地,为了得到待捕捉对象在3d空间的位移数据,可以通过如下公式,根据关节在2d图片上的位置推导待捕捉对象在3d空间的位置:

其中,其中,z是待捕捉对象在预设三维空间的近似深度,是第二神经网络模型输出的标记点坐标信息;是第二神经网络模型输出的所有标记点坐标信息的平均值;ki是第一神经网络模型输出的标记点坐标信息;是第一神经网络模型输出的所有标记点坐标信息的平均值。

通过上述公式可以根据每个关节在局部坐标系中的三维坐标数据计算得到每个关节在预设三维空间(例如,拍摄相机所在的三维空间)中的关节位置(x,y,z)。

步骤s506,根据视频数据分解得到的每张图片中包含的待捕捉对象身上每个标记点在预设三维空间的三维坐标数据,生成第一预定格式的文件,其中,第一预定格式的文件存储了待捕捉对象做出视频数据中相应姿态动作的三维姿态数据。

具体地,上述第一预定格式的文件可以是fbx文件,将生成人体关节3d数据转换成fbx文件,可以供游戏美术人员使用。

步骤s507,将第一预定格式的文件转换为第二预定格式的文件,其中,第二预定格式的文件用于制作三维动画。

具体地,上述第二预定格式的文件可以是bip文件,将fbx文件转换成bip文件,可以用于动画和3d制作。

通过本申请上述步骤s501至s507公开的方案,利用神经网络强大的学习和推导能力,将一段视频中的人体动作通过第一神经网络模型和第二神经网络模型转换成3d动作数据,最后将3d动作数据转换为fbx文件,可选地,还可以进一步将fbx文件转换为3d动作制作人员需要的bip文件,以便3d动作制作人员将捕捉的人体姿态数据用于3d动画和游戏制作等场景中。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

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

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1