CN108572731A - 基于多Kinect和UE4的动捕数据表现方法及装置 - Google Patents
基于多Kinect和UE4的动捕数据表现方法及装置 Download PDFInfo
- Publication number
- CN108572731A CN108572731A CN201810217885.9A CN201810217885A CN108572731A CN 108572731 A CN108572731 A CN 108572731A CN 201810217885 A CN201810217885 A CN 201810217885A CN 108572731 A CN108572731 A CN 108572731A
- Authority
- CN
- China
- Prior art keywords
- skeleton
- data
- node
- coordinate
- kinect
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 239000011159 matrix material Substances 0.000 claims abstract description 39
- 238000013507 mapping Methods 0.000 claims abstract description 30
- 238000012545 processing Methods 0.000 claims abstract description 17
- 238000006243 chemical reaction Methods 0.000 claims abstract description 13
- 210000000988 bone and bone Anatomy 0.000 claims description 23
- 230000009466 transformation Effects 0.000 claims description 22
- 238000013480 data collection Methods 0.000 claims description 17
- 238000005457 optimization Methods 0.000 claims description 7
- 238000010606 normalization Methods 0.000 claims description 6
- 230000000153 supplemental effect Effects 0.000 claims description 5
- 241000208340 Araliaceae Species 0.000 claims description 4
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 claims description 4
- 235000003140 Panax quinquefolius Nutrition 0.000 claims description 4
- 235000008434 ginseng Nutrition 0.000 claims description 4
- 238000010276 construction Methods 0.000 claims description 2
- 230000033001 locomotion Effects 0.000 abstract description 9
- 238000007405 data analysis Methods 0.000 description 13
- 238000009877 rendering Methods 0.000 description 9
- 230000009471 action Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 241001269238 Data Species 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 210000003127 knee Anatomy 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000000386 athletic effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 210000003414 extremity Anatomy 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
Abstract
本发明涉及计算机图形处理领域,提出了一种基于多Kinect和UE4动捕数据表现方方法和装置,旨在解决kinect的动作捕捉数据的动画展现中出现的捕捉范围有限、模型骨架结构,关节点数量受限制的问题。该方法的具体实施方式包括:接收多台kinect捕捉的骨架数据,根据预设的坐标转换矩阵,对上述人体骨架数据进行校准,得到各人体骨架数据在参考坐标系下的坐标数据,并作为参考骨架数据;经加权平均处理得到人物的平均骨架;通过预设的映射关系将上述平均骨架转换为UE4图形程序中对应角色模型的角色模型数据;根据角色模型数据,使用UE4引擎进行骨骼动画的展示。本发明在对人体骨架动画展示过程中,扩大了捕捉范围,且对UE4中的3D模型的骨架结构,关节点数量等不做限制。
Description
技术领域
本发明涉及计算机图形视觉领域、计算机动画技术领域,特别涉及一种基于多Kinect和UE4的动捕数据表现方法及装置。
背景技术
动捕是动作捕捉,动捕数据是在运动物体或人物的关键部位设置跟踪器,或在周围设置摄像机拍摄运动物体或人体,跟踪器或摄像机所得到的数据经过计算机处理后得到三维空间坐标的数据。运动捕捉技术可以应用于在影视游戏、虚拟现实、机器人定位导航、产品展示等领域。基于微软Kinect传感器能够实时捕捉人体的图像信息,分析人体动作信息。例如,运用动作捕捉技术对舞蹈动作进行分类,对捕捉的人体动作和重心进行了可视化处理以指导体育训练。对于动画制作、游戏、人机交互、训练教学等应用场景,将动作捕捉数据实时进行生动形象地可视化,可以提高相应的提高应用质量。例如,动画师可快速理解动作在角色身上的效果,从而提高动画制作效率;训练、教学场景中,形象的角色动画也可帮助教练和学员更直观的分析和学习动作。
目前,动捕数据的处理需要动画师通过精细化的操作为骨骼动画制作合适的骨架,或通过一些方法自动生成匹配的骨架。微软Kinect传感器是微软游戏机Xbox深度传感器硬件外设,能够实时获取物体的深度和彩色图像信息。但是,Kinect对动捕数据的动画处理无法很好的融合多台kinect的捕捉数据,并且,对人物骨架的关节点的数量、骨架结构等都有限制,无法实时地通过直观形象的3D角色骨骼动画将Kinect人体动作数据展示出来。
发明内容
为了解决现有技术中的上述问题,即Kinect对动捕数据的动画处理无法很好的融合多台kinect的捕捉数据,并且,对人物骨架的关节点的数量、骨架结构等都有限制,无法实时地通过直观形象的3D角色骨骼动画将Kinect人体动作数据展示出来的问题,本发明采用以下技术方案以解决上述问题:
第一方面,本申请提供了基于多Kinect和UE4动捕数据表现方法,该方法包括:步骤1,接收基于数据采集区域的多个Kinect传感器采所集图像数据,获取的多组人体骨架节点坐标数据;步骤2,根据预设的坐标转换矩阵,对步骤1中所采集的多个上述多组人体骨架节点坐标数据分别进行校准坐标系归一化,得到各上述人体骨架数据在参考坐标系下的坐标数据,并作为多组对应的参考骨架节点坐标数据;步骤3,对各基于各组上述参考骨架节点坐标数据,对各骨架节点进行坐标数据的进行加权平均处理,并生成得到人物的平均骨架模型;步骤4,通过预设的映射关系将上述平均骨架模型转换为UE4图形程序中对应角色模型的角色模型数据;步骤5,根据上述角色模型数据,使用上述UE4引擎进行骨骼动画的展示。
在一些示例中,上述人体骨架节点坐标数据包括对应坐标的可信度,上述坐标的可信度为根据节点坐标数据所包含的跟踪状态为上述节点分配的参数数据;上述预设的坐标转换矩阵,其构建方法包括:从各Kinect传感器获取同一人体的多帧骨架数据;从上述多帧骨架数据中选出可信度最高的骨架数据所在的Kinect传感器坐标系为参考坐标系,确定其他Kinect传感器坐标系为非参考坐标系;根据上述多帧骨架数据中同一节点在上述参考坐标系与上述非参考坐标系下的坐标,确定出各Kinect传感器坐标系与上述参考坐标系的坐标变换矩阵。
在一些示例中,上述“根据上述多帧骨架数据中同一节点在上述参考坐标系与上述非参考坐标系的坐标,确定出各Kinect传感器坐标系与上述参考坐标系的坐标变换矩阵”,包括:利用最小优化方法计算出使D值最小时对应的坐标变换矩阵Mi:
其中,i=2,3,4…,表示用于采集人体骨架数据的Kinect传感器的数目,vij表示第i台Kinect传感器获取的骨架数据中骨架的第j个节点的坐标,v1j表示被作为参考坐标系的Kinect传感器获取的骨架数据的骨架的第j个节点的坐标,wij表示第i台Kinect传感器获取的骨架数据中骨架的第j个节点的权重,w1j表示参考坐标系的Kinect传感器获取的骨架数据的骨架的第j个节点的权重。
在一些示例中,上述“基于各组所述参考骨架节点坐标数据,对各骨架节点进行坐标数据的加权平均,并生成平均骨架模型”,包括:根据各组上述参考骨架数据中每个节点所包含的跟踪状态赋予各组上述参考骨架数据中各节点不同的权重;计算构成上述人体骨架中每个节点的平均节点坐标,生成上述平均骨架模型,其中,计算节点的平均节点坐标为:根据各组上述参考骨架数据中上述节点的权重,加权平均各组上述参考骨架数据中上述节点的节点坐标数据,计算得到上述节点的平均节点坐标。
在一些示例中,上述“通过预设的映射关系将所述平均骨架模型转换为UE4图形程序中对应角色模型数据”,包括:根据预设的映射关系通过节点名称进行匹配;按照节点匹配关系,将上述平均骨架数据转换为UE4图形程序中对应角色模型的角色模型数据。
在一些示例中,上述“根据所述角色模型数据,使用UE4引擎进行骨骼动画的展示”,包括:采用四元数混合的方式将上述角色模型数据通过UE4引擎赋值到3D模型;计算初始骨架变化到当前骨架的过程中每根骨骼的变化量;将各上述变化量附加对应骨骼的各节点,确定的骨骼动画中节点的变化。
第二方面,本申请提供了一种基于多Kinect和UE4动捕数据表现装置,该装置包括:接收单元,配置为基于接收数据采集区域的多个Kinect传感器采所集图像数据,获取多组的人体骨架节点坐标数据;校准单元,配置为根据预设的坐标转换矩阵,对接收单元中所采集的多组多个上述人体骨架节点坐标数据进行校准坐标系归一化,得到各上述人体骨架数据在参考坐标系下的坐标数据,并作为多组对应的参考骨架节点坐标数据;处理单元,配置为对各基于各组上述参考骨架节点坐标数据,对各骨架节点进行坐标数据进行加权平均处理,并生成得到人物的平均骨架模型;映射单元,通过预设的映射关系将上述平均骨架模型转换为UE4图形程序中对应角色模型的角色模型数据;动画展示单元,配置为根据上述角色模型数据,使用UE4引擎进行骨骼动画的展示。
在一些示例中,上述人体骨架数据包括可信度,上述坐标的可信度为根据节点坐标数据所包含的跟踪状态为该节点分配的参数数据;上述校准单元包括坐标变换矩阵模块,上述坐标变换矩阵模块配置为:从各Kinect传感器获取同一人体的多帧骨架数据;从上述多帧骨架数据中选出可信度最高的骨架数据所在的Kinect传感器坐标系为参考坐标系,确定其他Kinect传感器坐标系为非参考坐标系;根据上述多帧骨架数据中同一节点在上述参考坐标系与上述非参考坐标系的坐标,确定出各Kinect传感器坐标系与上述参考坐标系的坐标变换矩阵。
在一些示例中,上述坐标变换矩阵模块进一步配置为:利用最小优化方法计算出使D值最小时对应的坐标变换矩阵Mi:
其中,i=2,3,4…,表示用于采集人体骨架数据的Kinect传感器的数目,vij表示第i台Kinect传感器获取的骨架数据中骨架的第j个节点的坐标,v1j表示被作为参考坐标系的Kinect传感器获取的骨架数据的骨架的第j个节点的坐标,wij表示第i台Kinect传感器获取的骨架数据中骨架的第j个节点的权重,w1j表示参考坐标系的Kinect传感器获取的骨架数据的骨架的第j个节点的权重。
在一些示例中,上述处理单元进一步配置为:根据各组上述参考骨架数据中每个节点的跟踪状态赋予各各组上述参考骨架数据中各节点坐标数据不同的权重;计算构成上述人体骨架中每个节点的平均节点坐标,生成上述平均骨架模型,其中,计算节点的平均节点坐标为:根据各组上述参考骨架数据中上述节点坐标数据的权重,加权平均各组上述参考骨架数据中上述节点的节点坐标数据,计算得到上述节点的平均节点坐标。
在一些示例中,上述映射单元进一步配置为:根据预设的映射关系通过节点名称进行匹配;按照节点匹配关系,将上述平均骨架数据转换为UE4图形程序中对应角色模型的角色模型数据。
在一些示例中,上述展示单元进一步配置为:采用四元数混合的方式将上述角色模型数据通过UE4引擎赋值到3D模型;计算初始骨架变化到当前骨架的过程中每根骨骼的变化量;将各上述变化量附加对应骨骼的各节点,确定的骨骼动画中节点的变化。
本申请提供的基于多Kinect和UE4动捕数据表现方法和装置,通过将多台Kinect传感器所获取到的骨架数据变换到参考坐标系下,在参考坐标系下确定出人体的平均骨架,利用映射关系将上述平均骨架映射到3D模型后,使用UE4引擎确定出人体骨架的动画展示。从而实现对人体进行运动捕捉、实时动画展示。本申请融合多台Kinect传感器所采集的数据,可以对人体骨架进行运动捕捉、并实时地通过UE4图形程序进行动画展示;在动画展示中对于未处于映射关系中的关节点的姿态利用其父节点的变化来确定,使得角色的3D模型的骨架结构、关节点数量等不受限制,同时由于采用多台Kinect传感器采集数据扩大了捕捉范围。
附图说明
图1是本申请可以应用于其中的示例性系统架构图;
图2是根据本申请的基于多Kinect和UE4动捕数据表现方法的一个实施例的流程图;
图3是根据本申请的基于多Kinect和UE4动捕数据表现方法的示例性应用示意图;
图4是根据本申请的基于多Kinect和UE4动捕数据表现装置的一个实施例的流程图。
具体实施方式
下面参照附图来描述本发明的优选实施方式。本领域技术人员应当理解的是,这些实施方式仅仅用于解释本发明的技术原理,并非旨在限制本发明的保护范围。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的基于多Kinect和UE4动捕数据表现方法或基于多Kinect和UE4动捕数据表现处理设备的实施例的示例性系统架构。
如图1所示,系统架构可以包括数据采集层、数据处理层和渲染输出层。其中,数据采集层用于对人体运动信息进行采集;数据处理层用于接收来自数据采集层的多视角下的人体信息,并进行综合处理;渲染输出层用于将上述综合处理后的数据通过骨骼动画的形式展示。
数据采集层、数据处理层和渲染输出层之间通过网络进行连接,网络可以为各种连接类型,例如有线、无线通信链路或者光纤电缆等等、网络之间可以通过TCP/IP协议传输数据。
数据采集层包含多个客户端程序,每个客户端程序连接一台Kinect,通过KinectSDK读取Kinect数据流。在数据采集区域布设多个客户端程序,利用多个Kinect对人体运动信息或人体骨架数据进行采集。上述Kinect为Kinect传感器,其中,Kinect传感器是由微软在2014年发布的3D体感摄影机。
上述数据处理层对数据采集层所发送或提供的人体运动信息进行数据分析、图像处理,转换可供3D模型使用的数据格式。上述数据处理层可以为具有数据分析、图像处理能力的电子设备,例如,可以为但不限于智能手机、平板电脑、膝上型便携计算机、台式计算机和服务器等等。
上述渲染输出层对根据上述数据处理层处理后的数据,利用UE4程序进行渲染,通过骨骼动画的形式展示。上述渲染输出层可以为具有数据处理并可以安装各种应用程的电子设备,例如,可以安装UE4程序,对数据进行度化渲染的电子设备。上述电子设备可以为但不限于智能手机、平板电脑、膝上型便携计算机、台式计算机和服务器等等。
可以理解地是,上述数据处理层和上述渲染输出层的电子设备可以为同一个电子设备,如使用一台服务器实现上述数据处理层和上述渲染输出层的功能,还可以分别设置为不同的电子设备,例如使用多台服务器分别实现上述数据处理层和上述渲染输出层的功能。
继续参考图2,图2示出了根据本申请的基于多Kinect和UE4动捕数据表现方法的一个实施例的流程。该基于多Kinect和UE4动捕数据表现方法,包括以下步骤:
步骤1,基于数据采集区域的多个Kinect传感器采所集图像数据,获取多组人体骨架节点坐标数据。
在本实施例中,基于多Kinect和UE4动捕数据表现方法运行于其上的电子设备(例如图1所示的数据处理层和/或渲染输出层所在的服务器)可以通过有线连接方式或者无线连接方式接收数据采集区域中的多个Kinect传感器采所集的人体骨架数据。其中,上述安装于数据采集区域的多个Kinect传感器采集其所在区内人物的人体骨架的骨架数据,并将所采集的骨架数据通过网络发送到上述服务器以便后续的数据处理和动画展示。上述骨架数据是指Kinect传感器所检测到的人体骨骼的图像数据,上述Kinect传感器所检测到每帧图像数据可以是表述上述人体的躯干和各节点的数据,在具体示例中,上述各节点可以是构成人体的各关节点。上述骨架数据中包括上述人体骨架的节点坐标及上述人体骨架各节点的追踪状态,状态分别为追踪到的、推测的、未追踪到的,为三个状态的节点数据分配依次降低的可信度。
步骤2,根据预设的坐标转换矩阵,对步骤1中所采集的多组人体骨架节点坐标数据分别进行坐标系归一化,得到多组对应的参考骨架节点坐标数据。
在本实施例中,基于上述步骤中所接收到的人体的骨架数据,上述数据处理层对上述骨架数据进行坐标系的归一化处理,即将各个Kinect传感器所检测到图像数据转换到同一个参考坐标系下。这里,可以使用预设的坐标转换矩阵对各个Kinect传感器所检测到图像数据进行转换,使得各个Kinect传感器所检测到图像数据在同一坐标系。
具体地,上述坐标转换矩阵可以是预先设置好的转换矩阵,还可以是在对人体骨架数据处理之前,根据各个Kinect传感器所采集到的骨架数据的各节点坐标数据的属性状态确定。确定上述坐标转换矩阵的方法可以为:从各Kinect传感器获取同一人体的多帧骨架数据;从上述多帧骨架数据中选出可信度最高的骨架数据所在的Kinect传感器坐标系为参考坐标系,确定其他Kinect传感器坐标系为非参考坐标系;根据上述多帧骨架数据中同一节点在上述参考坐标系与上述非参考坐标系的坐标,确定出各Kinect传感器坐标系与上述参考坐标系的坐标变换矩阵。
在确定坐标转换矩阵时,确保数据采集区域中有且只有一个人体存在,设置于数据采集区域不同位置的各个Kinect传感器采集该人体的骨架数据,并传送给服务器的数据处理层。根据各个Kinect传感器采集的多帧骨架数据中节点状态,确定发送出可信度最高的一帧骨架数据的Kinect传感器为参考设备,其坐标系设为参考坐标系。通过匹配上述静止人体在参考坐标下的各节点坐标和在各个Kinect传感器坐标系下的节点坐标,确定出各终端设备的非参考坐标系与参考坐标系之间的变换矩阵。
在一些具体的示例中,可以利用最小优化方法计算出使D值最小时对应的坐标变换矩阵Mi:
其中,i=2,3,4…,表示用于采集人体骨架数据的Kinect传感器的数目,vij表示第i台Kinect传感器获取的骨架数据中骨架的第j个节点的坐标,v1j表示被作为参考坐标系的Kinect传感器获取的骨架数据的骨架的第j个节点的坐标,wij表示第i台Kinect传感器获取的骨架数据中骨架的第j个节点的权重,w1j表示参考坐标系的Kinect传感器获取的骨架数据的骨架的第j个节点的权重。这里,利用上述最小优化算法,当D最小时,所确定出的Mi为参考坐标系与第i台Kinect传感器坐标系之间的转换矩阵。本实施例中,上述人体骨架中包括25个节点,位于上述骨架的躯干及肢体上。
步骤3,基于各组上述述参考骨架节点坐标数据,对各骨架节点进行坐标数据的加权平均,并生成平均骨架模型。
在本实施例中,基于步骤2中各Kinect传感器经坐标变换后所得到的在参考坐标系下的参考骨架数据进行加权平均处理,得到任务的平均骨架。上述各Kinect传感器所采集的数据中,各个节点的可信度不同。在上述Kinect传感器速采集的每一帧数据中除了包括人体骨架的全部节点坐标外,还包括各个节点的追踪状态,状态分别为追踪到的、推测的、未追踪到的,系统为三个状态的节点数据分配依次降低的可信度。上述加权平均处理可以是对每个节点进行加权处理得到该节点的加权平均后的坐标作为该节点加权坐标,由人体骨架的全部加权处理后的节点构成任务的平均骨架。
具体地,根据各上述参考骨架数据中每个节点的跟踪状态赋予各上述参考骨架数据中各节点坐标数据不同的权重;加权计算骨架中每个节点加权后的加权平均节点坐标,得到人物的平均骨架。计算任一节点的平均节点坐标为:根据各组上述参考骨架数据中上述节点的权重,加权平均各组上述参考骨架数据中上述节点的节点坐标数据,计算得到上述节点的平均节点坐标。
步骤4,通过预设的映射关系将上述平均骨架模型转换为UE4图形程序中对应角色模型的骨架数据。
在本实施例中,在渲染输出层中预先设置UE4图形程序的应用。在UE4图形程序中使用的3D模型维护一份骨架映射,用于将Kinect的骨架动作数据转换为3D模型所需的形式。
具体地,可以是根据预设的映射关系通过节点名称进行匹配;根据匹配结果,对匹配不成功的节点进行手动匹配;按照节点匹配关系,将上述平均骨架数据转换为UE4引擎中对应角色模型的角色模型数据。
上述预设的映射关系可以为关系函数,还可以为列表,用于将Kinect传感器所采集的人体骨架数据的骨架节点对应到3D模型骨架节点,根据3D模型骨架结构与kinect传感器中骨架结构的相似性进行节点的一一对应映射。将表述Kinect传感器的骨架动作数据的上述平均骨架转换为3D角色模型所需的数据形式。
上述根据预设的映射关系通过节点名称进行匹配可以是将Kinect传感器所采集的人体骨架数据的骨架关节点对应到3D模型骨架关节点,根据3D模型骨架结构与kinect传感器中骨架结构的相似性进行一一对应匹配,若3D模型中有多余或缺失的关节点,转人工匹配处理。具体地,可通过关节点名称进行自动匹配,也可以进行手动绑定。UE4图形程序中3D模型骨架由一系列的关节点及其连接组成,每个关节点都有唯一的命名,因此可以通过对比Kinect传感器骨架关节点名称和UE4模型骨架关节点名称对两具骨架进行自动映射,无法自动映射的部分可以进行手动匹配。上述UE4图形程序通过骨架映射将上述平均骨架转换为UE4图形程序中的3D模型对应的骨架数据。
步骤5,根据上述角色模型数据,使用UE4引擎进行骨骼动画的展示。
在本实施例中,利用角色模型数据渲染3D模型得到骨骼动画。这里,采用四元数混合的方式将上述角色模型数据通过UE4引擎赋值到3D模型;计算出初始骨架变化到当前骨架的过程中每根骨骼的变化量;将各上述变化量附加对应骨骼的各节点,确定的骨骼动画中关节点的变化。
具体地,在UE4引擎中将转换后的角色模型数据赋值给3D模型,赋值采用四元数混合的方式,即:求出初始骨架变化到当前骨架的过程中每根骨骼的变化量(用四元数表示),之后将每个变化量附加到对应骨骼的各节点的父节点上,上述各节点的父节点为该节点在上一数据采集周期所确定出的节点坐标。对于映射关系中不存在的节点,其在骨骼动画中的位置朝向取决于父节点的变化,使得3D模型的骨架结构、关节点数量等不受Kinect传感器骨架的限制。
作为示例,参考图3a-图3d,图3a和图3c示出了多个Kinect传感器所获取到的骨架数据,以及融合后得到的平均骨架数据;图3b和图3d示出了对上述平均骨架数映射后,利用UE4图形程序生成的角色骨骼动画效果图。图3a与图3b对应,图3c与图3d对应。其中,在图3a和图3c中左边的单个骨架为融合后的平均骨架,右边的位置重叠的骨架为各个Kinect传感器所获取到的骨架数据转换到参考坐标系下未融合的骨架数据。
本申请上述实施例所提供的方法通过将各个Kinect传感器所获取到的骨架数据变换到参考坐标系下,在参考坐标系下确定出人体的平均骨架,利用映射关系将上述平均骨架映射到3D模型后,使用UE4引擎确定出人体骨架的动画展示。本申请融合多台Kinect传感器对人体进行运动捕捉、实时地通过UE4图形程序进行动画展示;对于未处于映射关系中的关节点的姿态利用其父节点的变化来确定,使得角色的3D模型的骨架结构、节点数量等不受限制。
进一步参考图4,作为对上述各图所示方法的实现,本申请提供了一种基于多Kinect和UE4的动捕数据表现装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图4所示,本实施例的基于多Kinect和UE4的动捕数据表现装置包括:接收单元、校准单元、处理单元、映射单元和动画展示单元。其中,接收单元,配置为基于接收数据采集区域的多个Kinect传感器采所集图像数据,获取多组的人体骨架节点坐标数据;校准单元,配置为根据预设的坐标转换矩阵,对接收单元中所采集的多组多个上述人体骨架节点坐标数据进行校准坐标系归一化,得到各上述人体骨架数据在参考坐标系下的坐标数据,并作为多组对应的参考骨架节点坐标数据;处理单元,配置为对各基于各组上述参考骨架节点坐标数据,对各骨架节点进行坐标数据进行加权平均处理,并生成得到人物的平均骨架模型;映射单元,通过预设的映射关系将上述平均骨架模型转换为UE4图形程序中对应角色模型的角色模型数据;动画展示单元,配置为根据上述角色模型数据,使用UE4引擎进行骨骼动画的展示。
在本实施例中,基于多Kinect和UE4动捕数据表现装置的接收单元可以通过网络接收数据采集区域的多个Kinect传感器采所集的人体骨架数据,上述网络可以为有线连接方式或者无线连接方式。上述骨架数据是指Kinect传感器所检测到的人体骨骼的图像数据,上述Kinect传感器所检测到每帧图像数据可以是表述上述人体的躯干和各节点的数据。
在本实施例中,上述校准单元基于接收单元所接收的人体的骨架数据,利用预先设置好的坐标转换矩阵对所接收到的骨架数据进行校准,即将各个Kinect传感器所检测到图像数据转换到同一个参考坐标系下。
上述校准单元包括坐标变换矩阵模块,上述坐标变换矩阵模块配置为:从各Kinect传感器获取同一人体的多帧骨架数据;从上述多帧骨架数据中选出可信度最高的骨架数据所在的Kinect传感器坐标系为参考坐标系,确定其他Kinect传感器坐标系为非参考坐标系;根据上述多帧骨架数据中同一节点在上述参考坐标系与上述非参考坐标系的坐标,确定出各Kinect传感器坐标系与上述参考坐标系的坐标变换矩阵。
上述坐标变换矩阵模块进一步配置为:
利用最小优化方法计算出使D值最小时对应的坐标变换矩阵Mi:
其中,i=2,3,4…,表示用于采集人体骨架数据的Kinect传感器的数目,vij表示第i台Kinect传感器获取的骨架数据中骨架的第j个节点的坐标,v1j表示被作为参考坐标系的Kinect传感器获取的骨架数据的骨架的第j个节点的坐标,wij表示第i台Kinect传感器获取的骨架数据中骨架的第j个节点的权重,w1j表示参考坐标系的Kinect传感器获取的骨架数据的骨架的第j个节点的权重。
在本实施例中,基于校准单元校准后所得的各Kinect传感器在参考坐标系下的参考骨架数据进行加权平均,得到人体的平均骨架。上述各Kinect传感器所采集的数据中,各个节点的可信度不同,坐标的可信度为根据节点坐标数据所包含的跟踪状态为上述节点分配的参数数据。根据骨架数据各节点的可信度,赋予该骨架数据相节点不同的权重,根据各节点权重计算各节点加权平均后的坐标。
具体地,上述处理单元进一步配置为根据各上述参考骨架数据中每个节点的跟踪状态属性赋予各上述参考骨架数据中各节点不同的权重;加权计算骨架中每个节点加权后的加权平均节点坐标,得到人物的平均骨架。
在本实施例中,映射单元预先设置UE4图形程序的应用。在UE4图形程序中使用的3D模型维护一份骨架映射,用于将Kinect的骨架动作数据转换为3D模型所需的形式。
具体地,可以是根据预设的映射关系通过关节点名称进行匹配;根据匹配结果,对匹配不成功的关节点进行手动匹配;按照关节点匹配关系,将上述平均骨架数据转换为UE4引擎中对应角色模型的角色模型数据。
在本实施例中,动画展示单元利用角色模型数据渲染3D模型得到骨骼动画。在UE4引擎中将转换后的角色模型数据赋值给3D模型,赋值采用四元数混合的方式,即:求出初始骨架变化到当前骨架的过程中每根骨骼的变化量(用四元数表示),之后将每个变化量附加到对应骨骼的父节点上。对于映射关系中不存在的节点,其在骨骼动画中的位置朝向取决于父节点的变化。
本申请上述实施例所提供的装置中接收单元接收设置于数据采集区域不同位置的多个Kinect传感器所获取到的骨架数据,并转换在同一参考坐标系下,对各个Kinect传感器所获取到的骨架数据根据骨架数据各个节点的可信度确定出人体的平均骨架模型,利用映射关系将平均骨架模型映射到3D模型,使用UE4引擎确定出人体骨架的动画展示。本申请融合多台Kinect传感器对人体进行运动捕捉、实时地通过UE4图形程序进行动画展示;对于未处于映射关系中的节点的姿态利用其父节点的变化来确定,使得角色的3D模型的骨架结构、节点数量等不受限制。
至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征作出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。
Claims (12)
1.一种基于多Kinect和UE4动捕数据表现方法,其特征在于,所述方法包括:
步骤1,基于数据采集区域的多个Kinect传感器采所集图像数据,获取多组人体骨架节点坐标数据;
步骤2,根据预设的坐标转换矩阵,对步骤1中所采集的多组人体骨架节点坐标数据分别进行坐标系归一化,得到多组对应的参考骨架节点坐标数据;
步骤3,基于各组所述参考骨架节点坐标数据,对各骨架节点进行坐标数据的加权平均,并生成平均骨架模型;
步骤4,通过预设的映射关系将所述平均骨架模型转换为UE4图形程序中对应角色模型的角色模型数据;
步骤5,根据所述角色模型数据,使用所述UE4引擎进行骨骼动画的展示。
2.根据权利要求1所述的基于多Kinect和UE4动捕数据表现方法,其特征在于,所述人体骨架节点坐标数据包括对应坐标的可信度,所述坐标的可信度为根据节点坐标数据所包含的跟踪状态为所述节点分配的参数数据;
所述预设的坐标转换矩阵,其构建方法包括:
从各Kinect传感器获取同一人体的多帧骨架数据;
从所述多帧骨架数据中选出可信度最高的骨架数据所在的Kinect传感器坐标系为参考坐标系,确定其他Kinect传感器坐标系为非参考坐标系;
根据所述多帧骨架数据中同一节点在所述参考坐标系与所述非参考坐标系的坐标,确定出各Kinect传感器坐标系与所述参考坐标系的坐标变换矩阵。
3.根据权利要求2所述的基于多Kinect和UE4动捕数据表现方法,其特征在于,“根据所述多帧骨架数据中同一节点在所述参考坐标系与所述非参考坐标系的坐标,确定出各Kinect传感器坐标系与所述参考坐标系的坐标变换矩阵”,包括:
利用最小优化方法计算出使D值最小时对应的坐标变换矩阵Mi:
其中,i=2,3,4…,表示用于采集人体骨架数据的Kinect传感器的数目,vij表示第i台Kinect传感器获取的骨架数据中骨架的第j个节点的坐标,v1j表示被作为参考坐标系的Kinect传感器获取的骨架数据的骨架的第j个节点的坐标,wij表示第i台Kinect传感器获取的骨架数据中骨架的第j个节点的权重,w1j表示参考坐标系的Kinect传感器获取的骨架数据的骨架的第j个节点的权重。
4.根据权利要求1所述的基于多Kinect和UE4动捕数据表现方法,其特征在于,“基于各组所述参考骨架节点坐标数据,对各骨架节点进行坐标数据的加权平均,并生成平均骨架模型”,包括:
根据各组所述参考骨架数据中每个节点所包含的跟踪状态赋予各组所述参考骨架数据中各节点不同的权重;
计算构成所述人体骨架中每个节点的平均节点坐标,生成所述平均骨架模型,其中,计算节点的平均节点坐标为:根据各组所述参考骨架数据中所述节点的权重,加权平均各组所述参考骨架数据中所述节点的节点坐标数据,计算得到所述节点的平均节点坐标。
5.根据权利要求1所述的基于多Kinect和UE4动捕数据表现方法,其特征在于,“通过预设的映射关系将所述平均骨架模型转换为UE4图形程序中对应角色模型数据”,包括:
根据预设的映射关系通过节点名称将所述平均骨架的节点与所述角色模型数据的节点进行匹配;
按照节点匹配关系,将所述平均骨架数据转换为UE4图形程序中对应角色模型的角色模型数据。
6.根据权利要求5所述的基于多Kinect和UE4动捕数据表现方法,其特征在于,“根据所述角色模型数据,使用UE4引擎进行骨骼动画的展示”,包括:
采用四元数混合的方式将所述角色模型数据通过UE4引擎赋值到3D模型;
计算初始骨架变化到当前骨架的过程中每根骨骼的变化量;
将各所述变化量附加对应骨骼的各节点,确定出骨骼动画中节点的变化。
7.一种基于多Kinect和UE4动捕数据表现装置,其特征在于,所述装置包括:
接收单元,配置为基于数据采集区域的多个Kinect传感器采所集图像数据,获取多组人体骨架节点坐标数据;
校准单元,配置为根据预设的坐标转换矩阵,对接收单元中所采集的多组人体骨架节点坐标数据进行坐标系归一化,得到多组对应的参考骨架节点坐标数据;
处理单元,配置为基于各组所述参考骨架节点坐标数据,对各骨架节点进行坐标数据加权平均,并生成平均骨架模型;
映射单元,通过预设的映射关系将所述平均骨架模型转换为UE4图形程序中对应角色模型的角色模型数据;
动画展示单元,配置为根据所述角色模型数据,使用UE4引擎进行骨骼动画的展示。
8.根据权利要求7所述的基于多Kinect和UE4动捕数据表现装置,其特征在于,所述人体骨架数据包括可信度,所述坐标的可信度为根据节点坐标数据所包含的跟踪状态为所述节点分配的参数数据;
所述校准单元包括坐标变换矩阵模块,所述坐标变换矩阵模块配置为:
从各Kinect传感器获取同一人体的多帧骨架数据;
从所述多帧骨架数据中选出可信度最高的骨架数据所在的Kinect传感器坐标系为参考坐标系,确定其他Kinect传感器坐标系为非参考坐标系;
根据所述多帧骨架数据中同一节点在所述参考坐标系与所述非参考坐标系的坐标,确定出各Kinect传感器坐标系与所述参考坐标系的坐标变换矩阵。
9.根据权利要求8所述的基于多Kinect和UE4动捕数据表现装置,其特征在于,所述坐标变换矩阵模块进一步配置为:
利用最小优化方法计算出使D值最小时对应的坐标变换矩阵Mi:
其中,i=2,3,4…,表示用于采集人体骨架数据的Kinect传感器的数目,vij表示第i台Kinect传感器获取的骨架数据中骨架的第j个节点的坐标,v1j表示被作为参考坐标系的Kinect传感器获取的骨架数据的骨架的第j个节点的坐标,wij表示第i台Kinect传感器获取的骨架数据中骨架的第j个节点的权重,w1j表示参考坐标系的Kinect传感器获取的骨架数据的骨架的第j个节点的权重。
10.根据权利要求7所述的基于多Kinect和UE4动捕数据表现装置,其特征在于,所述处理单元进一步配置为:
根据各组所述参考骨架数据中每个节点所包含的跟踪状态赋予各组所述参考骨架数据中各节点坐标数据不同的权重;
计算构成所述人体骨架中每个节点的平均节点坐标,生成所述平均骨架模型,其中,计算节点的平均节点坐标为:根据各组所述参考骨架数据中所述节点坐标数据的权重,加权平均各组所述参考骨架数据中所述节点的节点坐标数据,计算得到所述节点的平均节点坐标。
11.根据权利要求1所述的基于多Kinect和UE4动捕数据表现方法,其特征在于,所述映射单元进一步配置为:
根据预设的映射关系通过节点名称将所述平均骨架的节点与所述角色模型数据的节点进行匹配;
按照节点匹配关系,将所述平均骨架数据转换为UE4图形程序中对应角色模型的角色模型数据。
12.根据权利要求11所述的基于多Kinect和UE4动捕数据表现方法,其特征在于,所述展示单元进一步配置为:
采用四元数混合的方式将所述角色模型数据通过UE4引擎赋值到3D模型;
计算初始骨架变化到当前骨架的过程中每根骨骼的变化量;
将各所述变化量附加对应骨骼的各节点,确定出骨骼动画中节点的变化。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810217885.9A CN108572731A (zh) | 2018-03-16 | 2018-03-16 | 基于多Kinect和UE4的动捕数据表现方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810217885.9A CN108572731A (zh) | 2018-03-16 | 2018-03-16 | 基于多Kinect和UE4的动捕数据表现方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108572731A true CN108572731A (zh) | 2018-09-25 |
Family
ID=63574340
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810217885.9A Pending CN108572731A (zh) | 2018-03-16 | 2018-03-16 | 基于多Kinect和UE4的动捕数据表现方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108572731A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109753151A (zh) * | 2018-12-19 | 2019-05-14 | 武汉西山艺创文化有限公司 | 基于kincet和面部摄像头的动作捕捉方法和系统 |
CN110197531A (zh) * | 2019-05-14 | 2019-09-03 | 武汉奥贝赛维数码科技有限公司 | 基于深度学习的角色骨骼点映射技术 |
CN110515466A (zh) * | 2019-08-30 | 2019-11-29 | 贵州电网有限责任公司 | 一种基于虚拟现实场景的动作捕捉系统 |
CN111035393A (zh) * | 2019-12-13 | 2020-04-21 | 中国科学院深圳先进技术研究院 | 三维步态数据处理方法、系统、服务器及存储介质 |
CN111401340A (zh) * | 2020-06-02 | 2020-07-10 | 腾讯科技(深圳)有限公司 | 目标对象的运动检测方法和装置 |
CN111582081A (zh) * | 2020-04-24 | 2020-08-25 | 西安交通大学 | 一种多Kinect串联的步态数据时空合并方法与测量装置 |
CN112215928A (zh) * | 2020-09-28 | 2021-01-12 | 中国科学院计算技术研究所数字经济产业研究院 | 基于视觉图像的动作捕捉方法及数字动画制作方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106601062A (zh) * | 2016-11-22 | 2017-04-26 | 山东科技大学 | 一种用于模拟矿井灾害逃生训练的交互方法 |
US20170221251A1 (en) * | 2016-02-01 | 2017-08-03 | Naturalmotion Ltd. | Animating a virtual object in a virtual world |
CN107563295A (zh) * | 2017-08-03 | 2018-01-09 | 中国科学院自动化研究所 | 基于多Kinect的全方位人体追踪方法及处理设备 |
CN107577451A (zh) * | 2017-08-03 | 2018-01-12 | 中国科学院自动化研究所 | 多Kinect人体骨架坐标变换方法及处理设备、可读存储介质 |
-
2018
- 2018-03-16 CN CN201810217885.9A patent/CN108572731A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170221251A1 (en) * | 2016-02-01 | 2017-08-03 | Naturalmotion Ltd. | Animating a virtual object in a virtual world |
CN106601062A (zh) * | 2016-11-22 | 2017-04-26 | 山东科技大学 | 一种用于模拟矿井灾害逃生训练的交互方法 |
CN107563295A (zh) * | 2017-08-03 | 2018-01-09 | 中国科学院自动化研究所 | 基于多Kinect的全方位人体追踪方法及处理设备 |
CN107577451A (zh) * | 2017-08-03 | 2018-01-12 | 中国科学院自动化研究所 | 多Kinect人体骨架坐标变换方法及处理设备、可读存储介质 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109753151A (zh) * | 2018-12-19 | 2019-05-14 | 武汉西山艺创文化有限公司 | 基于kincet和面部摄像头的动作捕捉方法和系统 |
CN109753151B (zh) * | 2018-12-19 | 2022-05-24 | 武汉西山艺创文化有限公司 | 基于kincet和面部摄像头的动作捕捉方法和系统 |
CN110197531A (zh) * | 2019-05-14 | 2019-09-03 | 武汉奥贝赛维数码科技有限公司 | 基于深度学习的角色骨骼点映射技术 |
CN110515466A (zh) * | 2019-08-30 | 2019-11-29 | 贵州电网有限责任公司 | 一种基于虚拟现实场景的动作捕捉系统 |
CN110515466B (zh) * | 2019-08-30 | 2023-07-04 | 贵州电网有限责任公司 | 一种基于虚拟现实场景的动作捕捉系统 |
CN111035393A (zh) * | 2019-12-13 | 2020-04-21 | 中国科学院深圳先进技术研究院 | 三维步态数据处理方法、系统、服务器及存储介质 |
CN111035393B (zh) * | 2019-12-13 | 2022-08-09 | 中国科学院深圳先进技术研究院 | 三维步态数据处理方法、系统、服务器及存储介质 |
CN111582081A (zh) * | 2020-04-24 | 2020-08-25 | 西安交通大学 | 一种多Kinect串联的步态数据时空合并方法与测量装置 |
CN111401340A (zh) * | 2020-06-02 | 2020-07-10 | 腾讯科技(深圳)有限公司 | 目标对象的运动检测方法和装置 |
CN112215928A (zh) * | 2020-09-28 | 2021-01-12 | 中国科学院计算技术研究所数字经济产业研究院 | 基于视觉图像的动作捕捉方法及数字动画制作方法 |
CN112215928B (zh) * | 2020-09-28 | 2023-11-10 | 中国科学院计算技术研究所数字经济产业研究院 | 基于视觉图像的动作捕捉方法及数字动画制作方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108572731A (zh) | 基于多Kinect和UE4的动捕数据表现方法及装置 | |
CN108564642A (zh) | 基于ue引擎的无标记表演捕捉系统 | |
US9690376B2 (en) | Wireless wrist computing and control device and method for 3D imaging, mapping, networking and interfacing | |
KR101323966B1 (ko) | 이미지 프로세싱을 기반으로 한 3d 공간 차원용 시스템 및 방법 | |
CN107507243A (zh) | 一种摄像机参数调整方法、导播摄像机及系统 | |
CN108337915A (zh) | 三维建图方法、装置、系统、云端平台、电子设备和计算机程序产品 | |
CN106843507B (zh) | 一种虚拟现实多人互动的方法及系统 | |
CN104699247A (zh) | 一种基于机器视觉的虚拟现实交互系统及方法 | |
CN109145788A (zh) | 基于视频的姿态数据捕捉方法和系统 | |
US8724849B2 (en) | Information processing device, information processing method, program, and information storage medium | |
CN108564643A (zh) | 基于ue引擎的表演捕捉系统 | |
CN112198959A (zh) | 虚拟现实交互方法、装置及系统 | |
CN107930048B (zh) | 一种太空体感识别运动分析系统及运动分析方法 | |
CN110969905A (zh) | 混合现实的远程教学互动、教具互动系统及其互动方法 | |
CN103543827A (zh) | 基于单个摄像机的沉浸式户外活动交互平台的实现方法 | |
CN109523615B (zh) | 用于虚拟动画人物动作的数据处理方法及装置 | |
CN113181619A (zh) | 一种运动训练方法、装置和系统 | |
CN115933868B (zh) | 翻转讲台的立体综合教学场系统及其工作方法 | |
CN107256082B (zh) | 一种基于网络一体化和双目视觉技术的投掷物弹道轨迹测算系统 | |
CN109545003A (zh) | 一种显示方法、装置、终端设备及存储介质 | |
Yu et al. | Intelligent visual-IoT-enabled real-time 3D visualization for autonomous crowd management | |
CN102262705A (zh) | 实景虚拟现实方法 | |
Schönauer et al. | Wide area motion tracking using consumer hardware | |
CN108364340A (zh) | 同步空间扫描的方法及系统 | |
CN116485953A (zh) | 数据处理方法、装置、设备和可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180925 |