一种三维头部数据获取方法、装置和电子设备与流程

文档序号:18415646发布日期:2019-08-13 19:22阅读:191来源:国知局
一种三维头部数据获取方法、装置和电子设备与流程

本发明涉及数据处理技术,具体涉及一种三维头部数据获取方法、装置和电子设备。



背景技术:

三维模型数据可通过三维(3d)软件的驱动重现三维模型,并且可实现三维模型的运动或不同姿态,在游戏动漫、虚拟现实等领域具有极大的应用领域。而表情模拟类应用仅需要制作头部的三维模型数据。如何从完整的三维模型数据中获得头部的三维模型数据,而无需重新制作头部的三维模型数据,目前尚无有效解决方案。



技术实现要素:

为解决现有存在的技术问题,本发明实施例提供一种三维头部数据获取方法、装置和电子设备。

为达到上述目的,本发明实施例的技术方案是这样实现的:

本发明实施例提供了一种三维头部数据获取方法,所述方法包括:

获得对象的三维模型数据,所述对象至少包括头部和躯体;

获得参考头部顶点标识集合;

基于所述参考头部顶点标识集合和所述三维模型数据确定目标头部顶点标识集合;

基于所述目标头部顶点标识集合和所述三维模型数据确定三维头部模型数据。

上述方案中,所述三维模型数据包括第一三维模型数据;所述第一三维模型数据包括第一顶点数据集合;所述第一顶点数据集合包括多组顶点标识及其对应的第一顶点数据;所述第一顶点数据至少包括顶点坐标数据;

所述基于所述参考头部顶点标识集合和所述三维模型数据确定目标头部顶点标识集合,包括:

基于所述参考头部顶点标识集合遍历所述第一顶点数据集合,获得与所述参考头部顶点标识集合中的头部顶点标识匹配的第一顶点标识,确定所述第一顶点标识对应的顶点坐标数据,基于所述顶点坐标数据确定目标头部三维区域;

基于所述目标头部三维区域、所述参考头部顶点标识集合和所述第一顶点数据集合,确定目标头部顶点标识集合。

上述方案中,所述基于所述目标头部三维区域、所述参考头部顶点标识集合和所述第一顶点数据集合,确定目标头部顶点标识集合,包括:

在所述三维模型数据对应的姿态为特定姿态的情况下,从所述第一顶点数据集合包括的顶点标识中确定在所述目标头部三维区域内且不在所述参考头部顶点标识集合内的第二顶点标识;

基于所述第二顶点标识和所述参考头部顶点标识集合确定目标头部顶点标识集合。

上述方案中,所述三维模型数据包括顶点数据集合;所述顶点数据集合包括多组顶点标识及其对应的顶点数据;所述基于所述目标头部顶点标识集合和所述三维模型数据确定三维头部模型数据,包括:

基于所述目标头部顶点标识集合中的目标头部顶点标识遍历所述三维模型数据,确定与所述目标头部顶点标识匹配的顶点标识,获得所述顶点标识对应的顶点数据,基于所述顶点数据确定三维头部模型数据。

上述方案中,所述三维模型数据还包括骨骼权重数据集合;所述骨骼权重数据集合包括多组顶点标识及其对应的骨骼权重数据;所述三维头部模型数据包括头部骨骼权重数据集合;

所述基于所述目标头部顶点标识集合和所述三维模型数据确定三维头部模型数据,包括:基于所述目标头部顶点标识集合遍历所述骨骼权重数据集合,获得与所述目标头部顶点标识集合中的目标头部顶点标识匹配的第二顶点标识,确定所述第二顶点标识对应的骨骼权重数据,基于所述骨骼权重数据确定头部骨骼权重数据集合。

上述方案中,所述三维模型数据还包括三角面片标识集合;所述三角面片标识集合包括多组三角面片标识及其对应的顶点标识;所述三维头部模型数据包括头部三角面片标识集合;

所述基于所述目标头部顶点标识集合和所述三维模型数据确定三维头部模型数据,包括:基于所述目标头部顶点标识集合遍历所述三角面片标识集合,获得与所述目标头部顶点标识集合中的目标头部顶点标识匹配的第三顶点标识,确定所述第三顶点标识对应的三角面片标识,基于所述三角面片标识确定头部三角面片标识集合。

上述方案中,所述基于所述三角面片标识确定头部三角面片标识集合,包括:在确定的所述三角面片标识对应的三个所述第三顶点标识均与所述目标头部顶点标识集合中的目标头部顶点标识匹配的情况下,基于所述三角面片标识确定头部三角面片标识集合。

上述方案中,所述三维模型数据包括第一三维模型数据,所述第一三维模型数据为不携带表情相关数据的基础三维模型数据;所述第一三维模型数据包括第一顶点数据集合;所述第一顶点数据集合包括多组顶点标识及其对应的第一顶点数据;所述三维头部模型数据包括头部表情相关数据集合;

所述基于所述目标头部顶点标识集合和所述三维模型数据确定三维头部模型数据,包括:基于所述目标头部顶点标识集合遍历所述第一三维模型数据,获得与所述目标头部顶点标识集合中的目标头部顶点标识匹配的第一顶点数据,基于所述第一顶点数据以及预设的偏移参数确定头部表情相关数据集合。

上述方案中,所述三维模型数据还包括第二三维模型数据;所述第二三维模型数据为携带有表情相关数据的三维模型数据;所述第二三维模型数据包括表情相关数据集合;所述表情相关数据集合包括多组顶点标识及其对应的表情相关数据;所述三维头部模型数据包括头部表情相关数据集合;

所述基于所述目标头部顶点标识集合和所述三维模型数据确定三维头部模型数据,包括:基于所述目标头部顶点标识集合遍历所述表情相关数据集合,获得与所述目标头部顶点标识集合中的目标头部顶点标识匹配的第三顶点标识,确定所述第三顶点标识对应的表情相关数据,基于所述表情相关数据确定头部表情相关数据集合。

本发明实施例还提供了一种数据获取装置,所述装置包括:获取单元、第一确定单元和第二确定单元;其中,

所述获取单元,用于获得对象的三维模型数据,所述对象至少包括头部和躯体;还用于获得参考头部顶点标识集合;

所述第一确定单元,用于基于所述参考头部顶点标识集合和所述三维模型数据确定目标头部顶点标识集合;

所述第二确定单元,用于基于所述第一确定单元确定的所述目标头部顶点标识集合和所述三维模型数据确定三维头部模型数据。

上述方案中,所述三维模型数据包括第一三维模型数据;所述第一三维模型数据包括第一顶点数据集合;所述第一顶点数据集合包括多组顶点标识及其对应的第一顶点数据;所述第一顶点数据至少包括顶点坐标数据;

所述第一确定单元,用于基于所述参考头部顶点标识集合遍历所述第一顶点数据集合,获得与所述参考头部顶点标识集合中的头部顶点标识匹配的第一顶点标识,确定所述第一顶点标识对应的顶点坐标数据,基于所述顶点坐标数据确定目标头部三维区域;基于所述目标头部三维区域、所述参考头部顶点标识集合和所述第一顶点数据集合,确定目标头部顶点标识集合。

上述方案中,所述第一确定单元,用于在所述三维模型数据对应的姿态为特定姿态的情况下,从所述第一顶点数据集合包括的顶点标识中确定在所述目标头部三维区域内且不在所述参考头部顶点标识集合内的第二顶点标识;基于所述第二顶点标识和所述参考头部顶点标识集合确定目标头部顶点标识集合。

上述方案中,所述三维模型数据包括顶点数据集合;所述顶点数据集合包括多组顶点标识及其对应的顶点数据;所述第二确定单元,用于基于所述目标头部顶点标识集合中的目标头部顶点标识遍历所述三维模型数据,确定与所述目标头部顶点标识匹配的顶点标识,获得所述顶点标识对应的顶点数据,基于所述顶点数据确定三维头部模型数据。

上述方案中,所述三维模型数据还包括骨骼权重数据集合;所述骨骼权重数据集合包括多组顶点标识及其对应的骨骼权重数据;所述三维头部模型数据包括头部骨骼权重数据集合;

所述第二确定单元,用于基于所述目标头部顶点标识集合遍历所述骨骼权重数据集合,获得与所述目标头部顶点标识集合中的目标头部顶点标识匹配的第二顶点标识,确定所述第二顶点标识对应的骨骼权重数据,基于所述骨骼权重数据确定头部骨骼权重数据集合。

上述方案中,所述三维模型数据还包括三角面片标识集合;所述三角面片标识集合包括多组三角面片标识及其对应的顶点标识;所述三维头部模型数据包括头部三角面片标识集合;

所述第二确定单元,用于基于所述目标头部顶点标识集合遍历所述三角面片标识集合,获得与所述目标头部顶点标识集合中的目标头部顶点标识匹配的第三顶点标识,确定所述第三顶点标识对应的三角面片标识,基于所述三角面片标识确定头部三角面片标识集合。

上述方案中,所述第二确定单元,用于在确定的所述三角面片标识对应的三个所述第三顶点标识均与所述目标头部顶点标识集合中的目标头部顶点标识匹配的情况下,基于所述三角面片标识确定头部三角面片标识集合。

上述方案中,所述三维模型数据包括第一三维模型数据,所述第一三维模型数据为不携带表情相关数据的基础三维模型数据;所述第一三维模型数据包括第一顶点数据集合;所述第一顶点数据集合包括多组顶点标识及其对应的第一顶点数据;所述三维头部模型数据包括头部表情相关数据集合;

所述第二确定单元,用于基于所述目标头部顶点标识集合遍历所述第一三维模型数据,获得与所述目标头部顶点标识集合中的目标头部顶点标识匹配的第一顶点数据,基于所述第一顶点数据以及预设的偏移参数确定头部表情相关数据集合。

上述方案中,所述三维模型数据还包括第二三维模型数据;所述第二三维模型数据为携带有表情相关数据的三维模型数据;所述第二三维模型数据包括表情相关数据集合;所述表情相关数据集合包括多组顶点标识及其对应的表情相关数据;所述三维头部模型数据包括头部表情相关数据集合;

所述第二确定单元,用于基于所述目标头部顶点标识集合遍历所述表情相关数据集合,获得与所述目标头部顶点标识集合中的目标头部顶点标识匹配的第三顶点标识,确定所述第三顶点标识对应的表情相关数据,基于所述表情相关数据确定头部表情相关数据集合。

本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明实施例所述方法的步骤。

本发明实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现本发明实施例所述方法的步骤。

本发明实施例提供的三维头部数据获取方法、装置和电子设备,所述方法包括:获得对象的三维模型数据,所述对象至少包括头部和躯体;获得参考头部顶点标识集合;基于所述参考头部顶点标识集合和所述三维模型数据确定目标头部顶点标识集合;基于所述目标头部顶点标识集合和所述三维模型数据确定三维头部模型数据。采用本发明实施例的技术方案,通过参考头部顶点标识集合以及至少包括头部和躯体的完整的三维模型数据从而确定目标头部顶点标识集合,在通过目标头部顶点标识集合从完整的三维模型数据将三维头部模型数据分离出来,实现了三维头部模型数据的获取,而无需重新制作三维头部模型数据,大大提升了三维头部模型数据的获取效率,给用户提供了极大的便利。

附图说明

图1为本发明实施例的三维头部数据获取方法的流程示意图一;

图2为本发明实施例的三维头部数据获取方法的流程示意图二;

图3为本发明实施例的三维头部数据获取装置的组成结构示意图;

图4为本发明实施例的电子设备的硬件组成结构示意图。

具体实施方式

下面结合附图及具体实施例对本发明作进一步详细的说明。

本发明实施例提供了一种三维头部数据获取方法。图1为本发明实施例的三维头部数据获取方法的流程示意图一;如图1所示,所述方法包括:

步骤101:获得对象的三维模型数据,所述对象至少包括头部和躯体;

步骤102:获得参考头部顶点标识集合;

步骤103:基于所述参考头部顶点标识集合和所述三维模型数据确定目标头部顶点标识集合;

步骤104:基于所述目标头部顶点标识集合和所述三维模型数据确定三维头部模型数据。

本实施例步骤101中,所述三维模型数据为对应于对象的三维数据,可以理解,将所述三维模型数据输入至三维软件中,可通过三维软件的驱动重现对应的对象。作为一种实施方式,所述三维模型数据可以是三维人体模型数据,即将所述三维人体模型数据输入至三维软件中,可通过三维软件的驱动重现对应的人体模型。实际应用中,所述三维软件例如可以是3dstudiomax(简称为3dsmax,是discreet公司开发的(后被autodesk公司合并)三维动画渲染和制作软件)、unity3d等软件。其中,所述三维模型数据可包括顶点数据集合、骨骼权重数据集合、三角面片标识集合。

本实施例中,所述三维模型数据包括第一三维模型数据和第二三维模型数据。所述第一三维模型数据为不携带表情相关数据的基础三维模型数据;所述第二三维模型数据即为带有表情相关数据的三维模型数据。

其中,所述三维模型数据(包括第一三维模型数据和第二三维模型数据)中包括多个顶点数据,所述多个顶点数据对应的顶点为三维模型中的顶点。其中,顶点可以为三维模型建立的关键点。作为一种实施方式,顶点可以是驱动三维模型肢体动作的骨骼的关键点。作为另一种实施方式,顶点也可以是驱动三维模型表情变化的关键点。

本实施例步骤102中,所述参考头部顶点标识集合可以是预先配置的对应于头部的顶点标识集合。实际应用中,各种对象的头部的形状大致相似,均为球形或近似球形,而不同的对象的头部却是各有各的不同。基于此,本实施例中,通过预先配置的参考头部顶点标识集合作为基础,再基于三维模型数据从而获得对应于所述对象的头部的目标头部顶点标识集合。

作为一种实施方式,对于不同类型的对象,可分别设置不同的参考头部顶点标识集合。例如对于对象为人体,则可设置对应于人体模型的参考头部顶点标识集合。又例如对应于对象为某类动物,则可设置对应于该动物模型的参考头部顶点标识集合。

本实施例步骤103中,作为一种实施方式,所述第一三维模型数据包括第一顶点数据集合;所述第一顶点数据集合包括多组顶点标识及其对应的第一顶点数据;所述第一顶点数据至少包括顶点坐标数据;所述基于所述参考头部顶点标识集合和所述三维模型数据确定目标头部顶点标识集合,包括:基于所述参考头部顶点标识集合遍历所述第一顶点数据集合,获得与所述参考头部顶点标识集合中的头部顶点标识匹配的第一顶点标识,确定所述第一顶点标识对应的顶点坐标数据,基于所述顶点坐标数据确定目标头部三维区域;基于所述目标头部三维区域、所述参考头部顶点标识集合和所述第一顶点数据集合,确定目标头部顶点标识集合。

本实施方式中,通过参考头部顶点标识集合遍历第一三维模型数据中包括的第一顶点数据集合,具体是通过参考头部顶点标识集合遍历三维模型数据中的第一三维模型数据(即不带有表情的基础三维模型数据)中包括的第一顶点数据集合。所述第一顶点数据集合为完整的顶点数据集合,以三维模型数据为三维人体模型数据为例,则所述第一顶点数据集合对应于不携带有表情相关数据的、完整的三维人体模型的顶点。获得的与所述参考头部顶点标识集合中的头部顶点标识匹配的第一顶点标识,所述第一顶点标识为既在所述参考头部顶点标识集合中的顶点标识,也在所述第一顶点数据集合中的顶点标识。其中,获得的所述第一顶点标识为多个,则根据多个第一顶点标识对应的第一顶点坐标数据确定目标头部三维区域。

其中,确定的所述第一顶点标识对应的第一顶点中的部分第一顶点在所述目标头部三维区域内,部分第一顶点在所述目标头部三维区域边缘。可以理解,基于所述第一顶点标识对应的第一顶点坐标数据可确定初始头部区域,则所述初始头部区域的部分曲面与所述目标头部三维区域相切,也即所述目标头部三维区域为恰好能够包围所述初始头部区域的三维区域。作为一种实施方式,所述目标头部三维区域可以为三维矩形区域。

作为一种实施方式,所述基于所述目标头部三维区域、所述参考头部顶点标识集合和所述第一顶点数据集合,确定目标头部顶点标识集合,包括:在所述三维模型数据对应的姿态为预设姿态的情况下,从所述第一顶点数据集合包括的顶点标识中确定在所述目标头部三维区域内且不在所述参考头部顶点标识集合内的第二顶点标识;基于所述第二顶点标识和所述参考头部顶点标识集合确定目标头部顶点标识集合。

本实施方式的场景在所述三维模型数据对应的姿态为预设姿态的。其中,在所述三维模型数据对应的姿态为预设姿态的情况下,所述目标头部三维区域内仅包括头部相关数据而不包括躯体相关数据(例如手部、胳膊相关数据等),以保证确定的顶点标识均为对应于头部区域的顶点标识,也即获得的目标头部顶点标识集合内的顶点标识均为头部的顶点标识。作为一种实施方式,所述预设姿态可以为“t”型姿态,以所述三维模型数据为三维人体模型数据为例,所述“t”型姿态可以为人体的双臂平伸、双腿并拢形成的类似“t”型的姿态。当然,在其他实施方式中,所述预设姿态也可是其他姿态,本实施例中不做赘述。

本实施方式中,由于不同的三维软件对三维模型数据的解析可能会导致获得的顶点数量的差异,因此本实施例中需要通过所述目标头部三维区域寻找不在所述参考头部顶点标识集合内、但也属于头部区域的顶点。具体的,将所述第一顶点数据集合中在所述目标头部三维区域内的顶点标识而不在所述参考头部顶点标识集合内的顶点标识记为第二顶点标识,也即将所述第二顶点标识补充至所述参考头部顶点标识集合中,生成目标头部顶点标识集合。

本实施例步骤104中,所述三维模型数据包括顶点数据集合;所述顶点数据集合包括多组顶点标识及其对应的顶点数据;则所述基于所述目标头部顶点标识集合和所述三维模型数据确定三维头部模型数据,包括:基于所述目标头部顶点标识集合中的目标头部顶点标识遍历所述三维模型数据,确定与所述目标头部顶点标识匹配的顶点标识,获得所述顶点标识对应的顶点数据,基于所述顶点数据确定三维头部模型数据。

本实施例中,作为一种实施方式,所述三维模型数据包括第二三维模型数据,所述第二三维模型数据可以为携带有表情相关数据的三维模型数据,可以理解,所述第二三维模型数据中携带有用于驱动三维模型的所有数据。则通过确定的目标头部顶点标识遍历所述第二三维模型数据,获得对应于驱动头部区域的三维头部模型数据,所述三维头部模型数据包含有表情相关数据。

在其他实施方式中,所述三维模型数据包括第一三维模型数据,即基本三维模型数据,可以理解,所述基本三维模型数据为不携带有表情相关数据的三维模型数据。则通过确定的目标头部顶点标识遍历所述第二三维模型数据,获得对应于驱动头部区域的三维头部模型数据,所述三维头部模型数据不包含表情相关数据。

采用本发明实施例的技术方案,通过参考头部顶点标识集合以及至少包括头部和躯体的完整的三维模型数据从而确定目标头部顶点标识集合,在通过目标头部顶点标识集合从完整的三维模型数据将三维头部模型数据分离出来,实现了三维头部模型数据的获取,而无需重新制作三维头部模型数据,大大提升了三维头部模型数据的获取效率,给用户提供了极大的便利。

基于前述实施例,本发明实施例还提供了一种三维头部数据获取方法。图2为本发明实施例的三维头部数据获取方法的流程示意图二;如图2所示,所述方法包括:

步骤201:获得对象的三维模型数据,所述对象至少包括头部和躯体;

步骤202:获得参考头部顶点标识集合;

步骤203:基于所述参考头部顶点标识集合和所述三维模型数据确定目标头部顶点标识集合。

步骤204:基于所述目标头部顶点标识集合和三维模型数据确定头部骨骼权重数据集合;

步骤205:基于所述目标头部顶点标识集合和三维模型数据确定头部三角面片标识集合;

步骤206:基于所述目标头部顶点标识集合和三维模型数据确定头部表情相关数据集合。

本实施例中步骤201至步骤203的详细阐述具体可参照前述实施例中步骤101至步骤103的详细阐述,这里不再赘述。

本实施例中,所述三维模型数据包括顶点数据集合,所述顶点数据集合包括多组顶点标识及其对应的顶点数据;所述顶点数据至少包括顶点坐标数据;所述三维模型数据还包括骨骼权重数据集合、三角面片标识集合、表情相关数据集合中的至少一种数据;其中,所述骨骼权重数据集合包括多组顶点标识及其对应的骨骼权重数据;所述三角面片标识集合包括多组三角面片标识及其对应的顶点标识;所述表情相关数据集合包括多组顶点标识及其对应的表情相关数据。其中,所述骨骼权重数据集合中包含与骨骼相关的数据,比如三角网格的每个顶点受到哪几个骨骼的影响以及受到的骨骼影响的系数。骨骼权重数据集合包含了为驱动三角网格做骨骼动画所需要的数据。三角面片标识集合包含了组成三角网格的顶点的索引序列,例如,三维模型中的多个顶点中的每三个顶点组成一个三角面片,所有的三角面片组成三角网格。三角面片标识集合的作用在于将离散的顶点组织为三维物体并最终显示出来。表情相关数据集合主要包含了表情驱动相关的数据。作为一种示例,所述表情相关数据集合具体可以为blendshape数据集合;其中,不同的表情可对应不同的blendshape数据。

其中,所述顶点数据可包括顶点坐标数据、纹理坐标数据、法线数据、切线数据中的至少一种数据;其中,顶点坐标数据也可称为顶点坐标数组,表示顶点所在的三维空间位置;纹理坐标数据也可称为纹理坐标数组,表示该顶点对应的纹理特征,所述纹理特征也可以理解为三维模型驱动显示后、顶点对应的显示特征。所述法线数据也可称为法线数组,表示顶点所在的曲面对应的法线特征。所述切线数据也可称为切线数组,表示顶点所在曲面对应的切线特征。

本实施例中,所述三维模型数据包括第一三维模型数据和第二三维模型数据。所述第一三维模型数据为不携带表情相关数据的基础三维模型数据;所述第二三维模型数据即为带有表情相关数据的三维模型数据。可以理解,前述有关于三维模型数据的描述中适用于所述第二三维模型数据。所述第一三维模型数据的相关描述为前述第二三维模型数据的相关描述中取出表情相关数据的相关描述。

相应的,获得的三维头部模型数据可以包括头部骨骼权重数据集合、头部三角面片标识集合、头部表情相关数据集合中的至少一种数据。所述头部骨骼权重数据集合、头部三角面片标识集合、头部表情相关数据集合的详细描述具体可参照前述骨骼权重数据集合、三角面片标识集合、表情相关数据集合的描述,这里不再赘述。

本实施例步骤204中,具体的,所述三维模型数据还包括骨骼权重数据集合;所述骨骼权重数据集合包括多组顶点标识及其对应的骨骼权重数据;所述三维头部模型数据包括头部骨骼权重数据集合;所述基于所述目标头部顶点标识集合和三维模型数据确定头部骨骼权重数据集合,包括:基于所述目标头部顶点标识集合遍历所述骨骼权重数据集合,获得与所述目标头部顶点标识集合中的目标头部顶点标识匹配的第二顶点标识,确定所述第二顶点标识对应的骨骼权重数据,基于所述骨骼权重数据确定头部骨骼权重数据集合;

本实施例步骤205中,具体的,所述三维模型数据还包括三角面片标识集合;所述三角面片标识集合包括多组三角面片标识及其对应的顶点标识;所述三维头部模型数据包括头部三角面片标识集合;所述基于所述目标头部顶点标识集合和三维模型数据确定头部三角面片标识集合,包括:基于所述目标头部顶点标识集合遍历所述三角面片标识集合,获得与所述目标头部顶点标识集合中的目标头部顶点标识匹配的第三顶点标识,确定所述第三顶点标识对应的三角面片标识,基于所述三角面片标识确定头部三角面片标识集合;

其中,所述基于所述三角面片标识确定头部三角面片标识集合,包括:在确定的所述三角面片标识对应的三个所述第三顶点标识均与所述目标头部顶点标识集合中的目标头部顶点标识匹配的情况下,基于所述三角面片标识确定头部三角面片标识集合。

本实施例步骤204至步骤205中,所述三维模型数据具体可以为所述第一三维模型数据或第二三维模型数据,即可通过所述目标头部顶点标识遍历所述第一三维模型数据或第二三维模型数据,获得对应的头部骨骼权重数据集合以及头部三角面片标识集合。

本实施例步骤206中,具体的,所述三维模型数据还包括第二三维模型数据;所述第二三维模型数据为携带有表情相关数据的三维模型数据;所述第二三维模型数据包括表情相关数据集合;所述表情相关数据集合包括多组顶点标识及其对应的表情相关数据;所述三维头部模型数据包括头部表情相关数据集合;所述基于所述目标头部顶点标识集合和三维模型数据确定头部表情相关数据集合,包括:基于所述目标头部顶点标识集合遍历所述表情相关数据集合,获得与所述目标头部顶点标识集合中的目标头部顶点标识匹配的第三顶点标识,确定所述第三顶点标识对应的表情相关数据,基于所述表情相关数据确定头部表情相关数据集合。可以理解,所述第二三维模型数据中包括完整的携带有表情相关数据的三维模型数据;通过所述目标头部顶点标识在所述第二三维模型数据进行遍历查找,获得头部表情相关数据集合。

其中,所述表情相关数据包括以下数据的至少之一:顶点偏移数据、纹理偏移数据、法线偏移数据、切线偏移数据;所述头部表情相关数据集合还包括以下数据的至少之一:头部顶点偏移数据、头部纹理偏移数据、头部法线偏移数据、头部切线偏移数据。

本实施例中,可通过所述目标头部顶点标识集合中的目标头部顶点标识遍历所述第二三维模型数据,获得与所述目标头部顶点标识对应的表情相关数据,生成头部表情相关数据集合。

作为另一种实施方式,所述三维模型数据还包括第一三维模型数据;所述第一三维模型数据为不携带表情相关数据的基础三维模型数据;所述第一三维模型数据包括第一顶点数据集合;所述第一顶点数据集合包括多组顶点标识及其对应的第一顶点数据;所述第一顶点数据包括顶点坐标数据、纹理坐标数据、法线数据、切线数据中的至少一种数据。所述基于所述目标头部顶点标识集合和三维模型数据确定头部表情相关数据集合,包括:基于所述目标头部顶点标识集合遍历所述第一三维模型数据,获得与所述目标头部顶点标识集合中的目标头部顶点标识匹配的第一顶点数据,基于所述第一顶点数据以及预设的偏移参数确定头部表情相关数据集合。

本实施例中,由于所述第一三维模型数据中的顶点数据均为与表情无关的数据,可以理解,顶点坐标数据、纹理坐标数据、法线数据、切线数据中的至少一种顶点数据均是与表情无关的数据。而表情相关数据可以是在所述表情无关的数据的基础上进行了相应偏移参数的处理。基于此,本实施例可在获得的第一顶点数据(即表情无关的数据)的基础上,通过相应的偏移参数的处理,获得头部表情相关数据集合。可以理解,对应于头部区域的顶点坐标数据通过相应偏移参数的处理,获得头部顶点偏移数据;对应于头部区域的纹理坐标数据通过相应偏移参数的处理,获得头部纹理偏移数据;对应于头部区域的法线数据通过相应偏移参数的处理,获得头部法线偏移数据;对应于头部区域的切线数据通过相应偏移参数的处理,获得头部切线偏移数据。

本实施例步骤204至步骤206的执行顺序可不参照本实施例所述,步骤204至步骤206的执行顺序可以按照任意顺序,本实施例中不对此进行限定。

采用本发明实施例的技术方案,通过参考头部顶点标识集合以及至少包括头部和躯体的完整的三维模型数据从而确定目标头部顶点标识集合,在通过目标头部顶点标识集合从完整的三维模型数据将三维头部模型数据分离出来,实现了三维头部模型数据的获取,而无需重新制作三维头部模型数据,大大提升了三维头部模型数据的获取效率,给用户提供了极大的便利。

本发明实施例还提供了一种三维头部数据获取装置。图3为本发明实施例的三维头部数据获取装置的组成结构示意图;如图3所示,所述装置包括:获取单元31、第一确定单元32和第二确定单元33;其中,

所述获取单元31,用于获得对象的三维模型数据,所述对象至少包括头部和躯体;还用于获得参考头部顶点标识集合;

所述第一确定单元32,用于基于所述参考头部顶点标识集合和所述三维模型数据确定目标头部顶点标识集合;

所述第二确定单元33,用于基于所述第一确定单元32确定的所述目标头部顶点标识集合和所述三维模型数据确定三维头部模型数据。

在本发明的一种可选实施例中,所述三维模型数据包括第一三维模型数据;所述第一三维模型数据包括第一顶点数据集合;所述第一顶点数据集合包括多组顶点标识及其对应的第一顶点数据;所述第一顶点数据至少包括顶点坐标数据;

所述第一确定单元32,用于基于所述参考头部顶点标识集合遍历所述第一顶点数据集合,获得与所述参考头部顶点标识集合中的头部顶点标识匹配的第一顶点标识,确定所述第一顶点标识对应的顶点坐标数据,基于所述顶点坐标数据确定目标头部三维区域;基于所述目标头部三维区域、所述参考头部顶点标识集合和所述第一顶点数据集合,确定目标头部顶点标识集合。

其中,作为一种实施方式,所述第一确定单元32,用于在所述三维模型数据对应的姿态为预设姿态的情况下,从所述第一顶点数据集合包括的顶点标识中确定在所述目标头部三维区域内且不在所述参考头部顶点标识集合内的第二顶点标识;基于所述第二顶点标识和所述参考头部顶点标识集合确定目标头部顶点标识集合。

在本发明的一种可选实施例中,所述三维模型数据包括顶点数据集合;所述顶点数据集合包括多组顶点标识及其对应的顶点数据;所述第二确定单元33,用于基于所述目标头部顶点标识集合中的目标头部顶点标识遍历所述三维模型数据,确定与所述目标头部顶点标识匹配的顶点标识,获得所述顶点标识对应的顶点数据,基于所述顶点数据确定三维头部模型数据。

在本发明的一种可选实施例中,所述三维模型数据还包括骨骼权重数据集合;所述骨骼权重数据集合包括多组顶点标识及其对应的骨骼权重数据;所述三维头部模型数据包括头部骨骼权重数据集合;

所述第二确定单元33,用于基于所述目标头部顶点标识集合遍历所述骨骼权重数据集合,获得与所述目标头部顶点标识集合中的目标头部顶点标识匹配的第二顶点标识,确定所述第二顶点标识对应的骨骼权重数据,基于所述骨骼权重数据确定头部骨骼权重数据集合。

在本发明的一种可选实施例中,所述三维模型数据还包括三角面片标识集合;所述三角面片标识集合包括多组三角面片标识及其对应的顶点标识;所述三维头部模型数据包括头部三角面片标识集合;

所述第二确定单元33,用于基于所述目标头部顶点标识集合遍历所述三角面片标识集合,获得与所述目标头部顶点标识集合中的目标头部顶点标识匹配的第三顶点标识,确定所述第三顶点标识对应的三角面片标识,基于所述三角面片标识确定头部三角面片标识集合。

其中,作为一种实施方式,所述第二确定单元33,用于在确定的所述三角面片标识对应的三个所述第三顶点标识均与所述目标头部顶点标识集合中的目标头部顶点标识匹配的情况下,基于所述三角面片标识确定头部三角面片标识集合。

在本发明的一种可选实施例中,所述三维模型数据包括第一三维模型数据,所述第一三维模型数据为不携带表情相关数据的基础三维模型数据;所述第一三维模型数据包括第一顶点数据集合;所述第一顶点数据集合包括多组顶点标识及其对应的第一顶点数据;所述三维头部模型数据包括头部表情相关数据集合;

所述第二确定单元33,用于基于所述目标头部顶点标识集合遍历所述第一三维模型数据,获得与所述目标头部顶点标识集合中的目标头部顶点标识匹配的第一顶点数据,基于所述第一顶点数据以及预设的偏移参数确定头部表情相关数据集合。

在本发明的一种可选实施例中,所述三维模型数据还包括第二三维模型数据;所述第二三维模型数据为携带有表情相关数据的三维模型数据;所述第二三维模型数据包括表情相关数据集合;所述表情相关数据集合包括多组顶点标识及其对应的表情相关数据;所述三维头部模型数据包括头部表情相关数据集合;

所述第二确定单元33,用于基于所述目标头部顶点标识集合遍历所述表情相关数据集合,获得与所述目标头部顶点标识集合中的目标头部顶点标识匹配的第三顶点标识,确定所述第三顶点标识对应的表情相关数据,基于所述表情相关数据确定头部表情相关数据集合。

本发明实施例中,所述数据获取装置中的获取单元31、第一确定单元32和第二确定单元33,在实际应用中均可由中央处理器(cpu,centralprocessingunit)、数字信号处理器(dsp,digitalsignalprocessor)、微控制单元(mcu,microcontrollerunit)或可编程门阵列(fpga,field-programmablegatearray)实现。

需要说明的是:上述实施例提供的数据获取装置在进行数据获取时,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的数据获取装置与数据获取方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

本发明实施例还提供了一种电子设备,图4为本发明实施例的电子设备的硬件组成结构示意图,如图4所述,所述电子设备包括存储器42、处理器41及存储在存储器42上并可在处理器41上运行的计算机程序,所述处理器41执行所述程序时实现本发明实施例所述方法的步骤。

可以理解,电子设备中的各个组件可通过总线系统43耦合在一起。可理解,总线系统43用于实现这些组件之间的连接通信。总线系统43除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图4中将各种总线都标为总线系统43。

可以理解,存储器42可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,readonlymemory)、可编程只读存储器(prom,programmableread-onlymemory)、可擦除可编程只读存储器(eprom,erasableprogrammableread-onlymemory)、电可擦除可编程只读存储器(eeprom,electricallyerasableprogrammableread-onlymemory)、磁性随机存取存储器(fram,ferromagneticrandomaccessmemory)、快闪存储器(flashmemory)、磁表面存储器、光盘、或只读光盘(cd-rom,compactdiscread-onlymemory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(ram,randomaccessmemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(sram,staticrandomaccessmemory)、同步静态随机存取存储器(ssram,synchronousstaticrandomaccessmemory)、动态随机存取存储器(dram,dynamicrandomaccessmemory)、同步动态随机存取存储器(sdram,synchronousdynamicrandomaccessmemory)、双倍数据速率同步动态随机存取存储器(ddrsdram,doubledataratesynchronousdynamicrandomaccessmemory)、增强型同步动态随机存取存储器(esdram,enhancedsynchronousdynamicrandomaccessmemory)、同步连接动态随机存取存储器(sldram,synclinkdynamicrandomaccessmemory)、直接内存总线随机存取存储器(drram,directrambusrandomaccessmemory)。本发明实施例描述的存储器42旨在包括但不限于这些和任意其它适合类型的存储器。

上述本发明实施例揭示的方法可以应用于处理器41中,或者由处理器41实现。处理器41可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器41中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器41可以是通用处理器、dsp,或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器41可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器42,处理器41读取存储器42中的信息,结合其硬件完成前述方法的步骤。

在示例性实施例中,电子设备可以被一个或多个应用专用集成电路(asic,applicationspecificintegratedcircuit)、dsp、可编程逻辑器件(pld,programmablelogicdevice)、复杂可编程逻辑器件(cpld,complexprogrammablelogicdevice)、fpga、通用处理器、控制器、mcu、微处理器(microprocessor)、或其他电子元件实现,用于执行前述方法。

本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现本发明实施例所述方法的步骤。

在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。

上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。

另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

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