一种对象模型的确定方法和相关装置与流程

文档序号:29621792发布日期:2022-04-13 13:29阅读:90来源:国知局
一种对象模型的确定方法和相关装置与流程

1.本技术涉及数据处理领域,特别是涉及一种对象模型的确定方法和相关装置。


背景技术:

2.基于激光和大规模相机阵列对三维对象进行扫描能够得到高精度的三维模型,该三维模型能够逼真表现出对象形状和纹理细节。但是扫描得到的三维模型不具备驱动参数,即不能通过处理逻辑对三维模型进行动作控制,属于非参数化模型。使得这类非参数化模型难以应用于各类产品场景(例如游戏交互场景、影视内容场景)中。
3.在相关技术中,针对前述扫描得到的非参数化模型,通过美工人员与模型设计师的模型调整、绑定、蒙皮,赋予材质等人工处理后,得到可驱动的三维模型,即得到被设置有驱动参数的参数化模型。从而才有可能应用于产品场景中。
4.通过人工方式将非参数化模型转化为参数化模型,不仅耗时耗力,且非常依赖人为经验,导致转化得到的参数化模型的精度不可控。


技术实现要素:

5.为了解决上述技术问题,本技术提供了一种对象模型的确定方法,实现对扫描得到的高精度非参数化模型向参数化模型的自动化转化,且避免了人为经验的影响,提高了高精度参数化模型的生成效率和精度。
6.本技术实施例公开了如下技术方案:
7.一方面,本技术实施例提供了一种对象模型的确定方法,所述方法包括:
8.获取针对目标三维对象扫描得到的非参数化模型;
9.根据所述非参数化模型的第一模型顶点数量对初始参数化模型的模型顶点进行扩充,得到具有第二模型顶点数量的注册三维模型;
10.将所述注册三维模型向所述非参数化模型进行姿态对齐,得到对齐三维模型;
11.确定所述对齐三维模型相对于所述非参数化模型的模型顶点偏移参数;
12.根据所述模型顶点偏移参数将所述对齐三维模型调整为对应所述目标三维对象的目标参数化模型。
13.另一方面,本技术实施例提供了一种对象模型的确定装置,所述装置包括获取单元、扩充单元、对齐单元、确定单元和调整单元:
14.所述获取单元,用于获取针对目标三维对象扫描得到的非参数化模型;
15.所述扩充单元,用于根据所述非参数化模型的第一模型顶点数量对初始参数化模型的模型顶点进行扩充,得到具有第二模型顶点数量的注册三维模型;
16.所述对齐单元,用于将所述注册三维模型向所述非参数化模型进行姿态对齐,得到对齐三维模型;
17.所述确定单元,用于确定所述对齐三维模型相对于所述非参数化模型的模型顶点偏移参数;
18.所述调整单元,用于根据所述模型顶点偏移参数将所述对齐三维模型调整为对应所述目标三维对象的目标参数化模型。
19.在一种可能的实现方式中,所述对齐单元还用于:
20.基于相同的关键点语义,在所述注册三维模型和所述非参数化模型分别标注目标数量的模型关键点;
21.根据所述模型关键点将所述注册三维模型向所述非参数化模型进行姿态对齐,得到所述对齐三维模型。
22.在一种可能的实现方式中,所述对齐单元还用于:
23.根据所述注册三维模型和所述非参数化模型的所述模型关键点,计算将所述注册三维模型相对于所述非参数化模型的对齐参数,所述对齐参数包括旋转信息、平移信息、缩放信息和位姿信息中的至少一种;
24.基于所述对齐参数将所述注册三维模型向所述非参数化模型进行姿态对齐,得到所述对齐三维模型。
25.在一种可能的实现方式中,所述确定单元还用于:
26.根据所述对齐三维模型中的模型顶点在所述非参数化模型中进行顶点匹配得到模型顶点对,所述模型顶点对包括所述对齐三维模型中的一个第一模型顶点和所述非参数化模型中的一个第二模型顶点,所述第二模型顶点为所述非参数化模型中与所述第一模型顶点距离最近的模型顶点;
27.根据所述模型顶点对确定所述对齐三维模型相对于所述非参数化模型的模型顶点偏移参数。
28.在一种可能的实现方式中,所述确定单元还用于:
29.确定所述模型顶点对象中的关键点对,所述关键点对中的第一模型顶点为所述对齐三维模型中的所述模型关键点;
30.根据所述关键点对确定的关键点偏移量以及所述模型顶点对确定的顶点偏移量,确定所述模型顶点偏移参数。
31.在一种可能的实现方式中,所述扩充单元还用于:
32.根据所述初始参数化模型的初始模型顶点数量和所述第一模型顶点数量,确定针对所述初始参数化模型的扩充模型顶点的待扩充数量;
33.基于法线插值参数,在所述初始参数化模型中通过模型顶点插值添加所述待扩充数量的扩充模型顶点,得到所述注册三维模型,所述法线插值参数用于标识所述扩充模型顶点在所述初始参数化模型中的顶点位置相对于所述非参数化模型的凹凸程度。
34.在一种可能的实现方式中,所述装置还包括生成单元和迁移单元:
35.所述生成单元,用于根据所述非参数化模型生成对应的纹理图像;
36.所述迁移单元,用于将所述纹理图像向所述目标参数化模型进行迁移,得到具有所述纹理图像的目标参数化模型。
37.在一种可能的实现方式中,所述装置还包括保存单元:
38.所述保存单元,用于通过将所述目标参数化模型基于树状结构进行保存,转换得到所述目标三维对象的模型格式文件,所述模型格式文件适用于游戏引擎。
39.又一方面,本技术实施例提供了一种计算机设备,所述计算机设备包括处理器以
及存储器:
40.所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
41.所述处理器用于根据所述程序代码中的指令上述方面所述的对象模型的确定方法。
42.又一方面,本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行上述方面所述的对象模型的确定方法。
43.由上述技术方案可以看出,在针对目标三维对象扫描得到非参数化模型后,确定与目标三维对象具有统一对象类型的初始参数化模型,使用具有驱动参数的该初始参数化模型进行模型顶点扩充,以得到具有和非参数化模型接近的模型顶点数量的注册三维模型。将注册三维模型向非参数化模型进行姿态对齐以得到对齐三维模型,使得对齐三维模型和非参数化模型处于同一姿态下,以此能够确定出标识对齐三维模型相对于非参数化模型的模型顶点偏移参数,通过基于模型顶点偏移参数对该对齐三维模型的调整,得到目标三维对象的目标参数化模型,该目标参数化模型不仅具有与非参数化模型接近的外形精度,而且还具有可用于驱动的驱动参数,从而实现对扫描得到的高精度非参数化模型向参数化模型的自动化转化,且避免了人为经验的影响,提高了高精度参数化模型的生成效率和精度。
附图说明
44.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
45.图1为本技术实施例提供的一种对象模型的确定方法的方法流程图;
46.图2为本技术实施例提供的一种基于法线方向的模型顶点插值示意图;
47.图3为本技术实施例提供的一种在注册三维模型和非参数化模型上标注模型关键点的示意图;
48.图4为本技术实施例提供的一种将注册三维模型向非参数化模型进行姿态对齐的示意图;
49.图5为本技术实施例提供的一种对齐三维模型向非参数化模型进行调整的示意图;
50.图6为本技术实施例提供的一种将纹理图像向目标参数化模型迁移的示意图;
51.图7为本技术实施例提供的一种针对目标人体的非参数化模型转化为fbx文件的示意图;
52.图8为本技术实施例提供的一种对象模型的确定装置的装置结构图;
53.图9为本技术实施例提供的一种终端设备的结构图;
54.图10为本技术实施例提供的一种服务器的结构图。
具体实施方式
55.下面结合附图,对本技术的实施例进行描述。
56.基于扫描得到的高精度三维模型,为了将其应用于各类产品场景,相关技术中主要采用人工方式对非参数化模型进行调整、设置后,才能得到对应的参数化模型,参数化模型的精度和与非参数化模型的相似程度与人为经验直接相关,不仅效率低下,且精度波动很大。
57.为此,本技术实施例提供了一种对象模型的确定方法,实现对扫描得到的高精度非参数化模型向参数化模型的自动化转化,且避免了人为经验的影响,提高了高精度参数化模型的生成效率和精度。
58.本技术实施例提供的对象模型的确定方法可以有计算机设备实施,该计算机设备可以是终端设备或服务器,其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。终端设备包括但不限于手机、电脑、智能语音交互设备、智能家电、车载终端等。终端设备以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本技术在此不做限制。
59.图1为本技术实施例提供的一种对象模型的确定方法的方法流程图,所述方法包括:
60.s101:获取针对目标三维对象扫描得到的非参数化模型。
61.该非参数化模型为不具有驱动参数的三维模型,即是未绑定的,不能通过驱动引擎对其进行行为、动作上的驱动的模型。但是,由于该非参数化模型是基于针对目标三维对象进行扫描得到的,其模型外形精度与目标三维对象非常接近,能够逼真表现出目标三维对象的实际形状和纹理细节,如果能够在非参数化模型的基础上得到具有驱动参数的模型,那么可以具有很高的应用价值。
62.本技术对目标三维对象的类型不进行限定,可以是各类物品、人物等,例如目标三维对象可以是一个具体的人体、动物、车辆、手机等。
63.本技术也不对针对目标三维对象的扫描方式进行限定,例如可以是采用激光和大规模相机阵列实现扫描。
64.s102:根据所述非参数化模型的第一模型顶点数量对初始参数化模型的模型顶点进行扩充,得到具有第二模型顶点数量的注册三维模型。
65.由于非参数化模型的模型顶点非常多,直接在非参数化模型中设置驱动参数的处理流程将会非常复杂,为此,本技术实施例采用了通过已经具有驱动参数的初始参数化模型得到目标三维对象的目标参数化模型的方式。
66.为此,首先根据目标三维对象的对象类型,确定同属该对象类型的初始参数化模型,例如目标三维对象为某一男性人体时,初始参数化模型也是对应男性人体的三维模型。由此确定出的初始参数化模型与非参数化模型的外形较为类似,有助于后续精细化调整为外形接近目标三维对象的参数化模型。
67.由于初始参数化模型的模型顶点数量一般远小于非参数化模型的模型顶点数量(即第一模型顶点数量),以目标三维对象为人体为例,非参数化模型由于精度很高,其的模型顶点数量一般有数十万个,而初始参数化模型的模型顶点数量一般仅为一万多个,以smpl-x模型(一种参数化人体模型)为例,该模型仅包括10475个顶点与20000个模型面片。
68.故为了让后续得到的目标参数化模型更接近非参数化模型或者说更接近目标三维对象的实际外形,需要扩充初始参数模型的模型顶点数量,使得得到的注册三维模型的模型顶点数量(即第二模型顶点数量)与非参数化模型的第一模型顶点数量之间的差异较小,从而根据初始参数化模型得到模型精度与非参数化模型接近的注册三维模型。即所述第一模型顶点数量与所述第二模型顶点数量的差值小于阈值,该阈值可以为零(此时第一模型顶点数量等于第二模型顶点数量),也可以为较小的整数。
69.s103:将所述注册三维模型向所述非参数化模型进行姿态对齐,得到对齐三维模型。
70.s104:确定所述对齐三维模型相对于所述非参数化模型的模型顶点偏移参数。
71.虽然得到的注册三维模型从模型顶点数量上与非参数化模型较为接近,但是还需要基于非参数化模型调整注册三维模型的模型外观,使得这个有驱动参数的模型能够体现出目标三维对象的实际外形或者说达到非参数化模型能够体现出的实际外形。
72.为此,需要将注册三维模型的姿态进行调整,达到与非参数化模型姿态对齐的状态,从而通过调整得到的对齐三维模型和非参数化模型处于同一个姿态下,在此情况下比对对齐三维模型和非参数化模型能够更为准确的得到模型顶点偏移量。该模型顶点偏移量是针对对齐三维模型和非参数化模型的模型间的顶点确定的,能够体现出这两个模型的模型顶点间的位置、凹凸程度上的差异。
73.s105:根据所述模型顶点偏移参数将所述对齐三维模型调整为对应所述目标三维对象的目标参数化模型。
74.通过基于模型顶点偏移参数的对该对齐三维模型进行调整,使得对齐三维模型的模型外形在调整过程中越来越与非参数化模型接近,从而最终得到的目标参数化模型能够尽可能还原目标三维对象的实际外形,且具有用于模型驱动的驱动参数。
75.由此可见,在针对目标三维对象扫描得到非参数化模型后,确定与目标三维对象具有统一对象类型的初始参数化模型,使用具有驱动参数的该初始参数化模型进行模型顶点扩充,以得到具有和非参数化模型接近的模型顶点数量的注册三维模型。将注册三维模型向非参数化模型进行姿态对齐以得到对齐三维模型,使得对齐三维模型和非参数化模型处于同一姿态下,以此能够确定出标识对齐三维模型相对于非参数化模型的模型顶点偏移参数,通过基于模型顶点偏移参数对该对齐三维模型的调整,得到目标三维对象的目标参数化模型,该目标参数化模型不仅具有与非参数化模型接近的外形精度,而且还具有可用于驱动的驱动参数,从而实现对扫描得到的高精度非参数化模型向参数化模型的自动化转化,且避免了人为经验的影响,提高了高精度参数化模型的生成效率和精度。
76.本技术实施例提供了一种可选的具体模型顶点插值方式,新生成的模型顶点沿已存在三角面的每条边分布,该模型顶点插值方式可以例如公式1所示:
77.v
n+e
=0.5(vi+vj),(i,j)∈εeꢀꢀꢀ
(1)
78.在公式1中,n为初始参数化模型的原模型顶点,e为扩充模型顶点,0.5为设置的参数,可以基于扩充模型顶点的待扩充数量的大小进行调整,i和j为初始参数化模型中构成一条边的两个模型顶点,εe为初始参数化模型中由两个模型顶点所构成边的集合,vi和vj为i和j在模型中的位置。
79.上述方式难以反映沿着三角面法线方向的顶点变化,因此本技术实施例引入了一
种基于法线方向的模型顶点插值的方式。
80.也就是说,除了通过上述方式实现通过模型顶点插值的方式扩充初始参数化模型的模型顶点外,在一种可能的实现方式中,s102包括:
81.s1021:根据所述初始参数化模型的初始模型顶点数量和所述第一模型顶点数量,确定针对所述初始参数化模型的扩充模型顶点的待扩充数量。
82.s1022:基于法线插值参数,在所述初始参数化模型中通过模型顶点插值添加所述待扩充数量的扩充模型顶点,得到所述注册三维模型,所述法线插值参数用于标识所述扩充模型顶点在所述初始参数化模型中的顶点位置相对于所述非参数化模型的凹凸程度。
83.具体可以参见图2所示,通过插值新生成的模型顶点(即扩充模型顶点)上标注的箭头用于体现对应的法线插值参数。
84.该方式可以通过公式2实现:
85.v
n+e
=0.5(vi+vj)+sene,(i,j)∈εeꢀꢀꢀ
(2)
86.其中,ne为法线的向量表示,sx为法线的方向表示,以及表示法线所体现凹凸程度的大小。
87.对于非参数化模型与初始参数化模型,当二者完整的三角面重合时,非参数化模型上较为细小的曲面上的顶点位于初始参数化模型对应曲面的上方或下方,此时调整图2中沿法向方向插入的新模型顶点即可表征非面片平面上的位移,从而能够更为精确的生成注册三维模型,即生成的注册三维模型与非参数化模型的模型外形差异相对更小。当目标三维对象为某个人体时,该注册三维模型也可以记为高质量人体模型(high quality body model,hqbm)。
88.在一种可能的实现方式中,s103:所述注册三维模型向所述非参数化模型进行姿态对齐,得到对齐三维模型,包括:
89.s1031:基于相同的关键点语义,在所述注册三维模型和所述非参数化模型分别标注目标数量的模型关键点。
90.s1032:根据所述模型关键点将所述注册三维模型向所述非参数化模型进行姿态对齐,得到所述对齐三维模型。
91.模型关键点为用于标识目标三维对象的形状特征的特征点,例如目标三维对象为人体时,模型关键点可以包括标识口、眼、鼻、手、脚等人体形状特征的特定点。例如图3所示的左侧模型为注册三维模型(target:hqbm),右侧模型为非参数化模型(template),其上的点为通过s1031标注的模型关键点。
92.在注册三维模型和非参数化模型上的标识的模型关键点的数量和关键点语义均相同,例如注册三维模型和非参数化模型上均标注口、左手、右手、左脚、右脚这五个模型关键点。以上只是为了便于举例,一般情况下,所标注的模型关键点数量在几十个到上百个之间。
93.由于注册三维模型和非参数化模型上标注了相同关键点语义的模型关键点,故可以基于这些模型关键点作为对齐的依据。通过姿态对齐,使得基于注册三维模型得到的对齐三维模型与非参数化模型的姿态达到一致,例如图3中示出的模型,通过对注册三维模型向非参数化模型进行姿态对齐(align),可以得到与非参数化模型姿态一致的对齐三维模型,例如图4所示,左侧为对齐三维模型,右侧为非参数化模型。
94.在一种可能的实现方式中,s1032包括:
95.根据所述注册三维模型和所述非参数化模型的所述模型关键点,计算将所述注册三维模型相对于所述非参数化模型的对齐参数,所述对齐参数包括旋转信息、平移信息、缩放信息和位姿信息中的至少一种。
96.基于所述对齐参数将所述注册三维模型向所述非参数化模型进行姿态对齐,得到所述对齐三维模型。
97.上述方式也可以属于刚性对齐的方式,具体如公式3所示:
98.s
*
,r
*
,t
*
,θ
*

99.argmin
s,r,t,θ
||k
tar get-k
template
(hqbm(s,r,t,θ))||2ꢀꢀꢀ
(3)
100.其中,s为放缩,r为旋转,t为平移,θ为位姿,k
target
为注册三维模型的模型关键点位置,k
template
为非参数化模型的模型关键点位置。
101.该公式3标识将注册三维模型通过姿态对齐到非参数化模型需要的放缩量、旋转量、平移量和位姿调整。
102.由此可以得到与非参数化模型处于相同姿态的对齐三维模型。
103.在一种可能的实现方式中,s104:确定所述对齐三维模型相对于所述非参数化模型的模型顶点偏移参数,包括:
104.s1041:根据所述对齐三维模型中的模型顶点在所述非参数化模型中进行顶点匹配得到模型顶点对,所述模型顶点对包括所述对齐三维模型中的一个第一模型顶点和所述非参数化模型中的一个第二模型顶点,所述第二模型顶点为所述非参数化模型中与所述第一模型顶点距离最近的模型顶点。
105.s1042:根据所述模型顶点对确定所述对齐三维模型相对于所述非参数化模型的模型顶点偏移参数。
106.完成刚体对齐后,对齐三维模型(也记为hqbm)与非参数化模型处于相同的位姿与朝向,使用近邻算法(k-nearest neighbor,knn)进行最近邻匹配,找到hqbm与非参数化模型的稠密最近匹配,最近匹配是一系列配对,可通过公式4实现:
107.s={vi,v
k(i)
}
i∈hqbm
ꢀꢀꢀ
(4)
108.其中,vi为对齐三维模型中的模型顶点,v
k(i)
为非参数化模型中与vi对应的模型顶点,hqbm为对齐三维模型中的模型顶点集合。
109.当确定出模型顶点对后,处于同一个模型顶点对的第一模型顶点和第二模型顶点间的位置差异可以通过对应的模型顶点偏移参数进行表示。基于各个模型顶点偏移参数所标识的位置差异,能够指示如何将对其三维模型向非参数化模型进行调整,使得调整得到的目标参数化模型更贴近目标三维模型的实际外形。
110.在一种可能的实现方式中,若所述对齐三维模型是根据所述模型关键点将所述注册三维模型向所述非参数化模型进行姿态对齐得到的,s1042包括:
111.确定所述模型顶点对象中的关键点对,所述关键点对中的第一模型顶点为所述对齐三维模型中的所述模型关键点。
112.根据所述关键点对确定的关键点偏移量以及所述模型顶点对确定的顶点偏移量,确定所述模型顶点偏移参数。
113.其中,关键点对可以从细化的角度,以模型中较为关键的位置:模型关键点为基
础,作为调整对齐三维模型的依据。而模型顶点对以整体为优化目标,从整体层面作为调整对齐三维模型的依据。从而在调整对齐三维模型的过程中,从多个维度进行参考,提高了调整得到的目标参数化模型的形状精度。
114.具体可以通过公式5计算对齐三维模型至非参数化模型的模型顶点偏移参数:
[0115][0116]
其中,n
sparse
为关键点对,n
dense
为模型顶点对,为对齐三维模型中第i个模型顶点的位置,为非参数化模型中第i个模型顶点的位置,d为初始化的d空间(一般每个元素设为0),α、β和γ为权重系数。
[0117]
确定出的d为细节学习模块d,为一个可学习的顶点偏移矩阵,此矩阵用于预测非参数化模型与对齐三维模型间每个模型顶点的相对偏移,即模型顶点偏移参数。其中,为实数空间,v为行数,3为列数。
[0118]
最终s105:根据所述模型顶点偏移参数将所述对齐三维模型调整为对应所述目标三维对象的目标参数化模型的方式可以参见公式6:
[0119]
m=m
hqbm
+d
ꢀꢀꢀꢀꢀꢀ
(6)
[0120]
其中,m为目标参数化模型,m
hqbm
为对齐三维模型。目标参数化模型可以如图5的左图所示,右图为非参数化模型。
[0121]
在确定出目标参数化模型后,还可以进一步的为目标参数化模型增加纹理图像,以便后续在驱动过程中的可视化展示。
[0122]
在一种可能的实现方式中,在s105之后,所述方法还包括:
[0123]
根据所述非参数化模型生成对应的纹理图像;
[0124]
将所述纹理图像向所述目标参数化模型进行迁移,得到具有所述纹理图像的目标参数化模型。
[0125]
使用纹理空间迁移算法将非参数化模型的纹理图像迁移到目标参数化模型的纹理图像空间上。此流程使用基于重心坐标插值的纹素表征方法,完成一个纹素面内由目标参数化模型至非参数化模型的rgb(红绿蓝)像素插值,最终的输出为目标参数化模型上的完整纹理图像,得到的uv图(为三维模型表面的平面表示,u和v指的是2d空间的水平轴和垂直轴)与通过标准渲染引擎的可得到带有纹理图像的目标参数化模型。如图6所示,图6左上角为非参数化模型,左下角为纹理图像,右侧为具有纹理图像的目标参数化模型。
[0126]
在一种可能的实现方式中,所述方法还包括:通过将所述目标参数化模型基于树状结构进行保存,转换得到所述目标三维对象的模型格式文件,所述模型格式文件适用于游戏引擎。
[0127]
通过树状结构进行保存,可以将目标参数化模型的模型mesh、材质以及还可能包括的纹理图像均保存在树状结构中,以此得到的模型格式文件可以被游戏引擎直接调用,例如模型格式文件可以是fbx文件,是主流的游戏渲染引擎例如unity,unreal通用的cg模型格式。由此完成了由非参数化模型向目标参数化模型的全部自动化绑定与驱动流程。
[0128]
接下来以目标三维对象为人体为例进行说明,如图7所示,包括:
[0129]
s701:smpl-x模型转换为hqbm(高质量人体模型)。
[0130]
可通过基于法线方向的模型顶点插值方式将具有较少模型顶点的smpl-x模型转换为具有较多模型顶点的hqbm。
[0131]
s702:标记稀疏3d关键点,完成由hqbm-非参数化模型的刚性配准。
[0132]
通过刚性配准,将hqbm向非参数化模型进行姿态对齐,使得hqbm和非参数化模型处于相同的位姿和朝向。
[0133]
s703:knn稠密顶点匹配,优化hqbm几何细节空间d,恢复目标模板几何细节。
[0134]
通过优化d空间,使得hqbm的模型外形与非参数化模型接近。
[0135]
s704:纹理迁移算法,输入非参数化模型的纹理图像,得到hqbm空间下的纹理图像。
[0136]
s705:fbx结构化,将hqbm中的融合变形(blendshape),骨骼位置与蒙皮信息写入fbx文件中。
[0137]
在前述图1-图7所对应实施例的基础上,图8为本技术实施例提供的一种对象模型的确定装置的装置结构图,所述对象模型的确定装置800包括获取单元801、扩充单元802、对齐单元803、确定单元804和调整单元805:
[0138]
所述获取单元801,用于获取针对目标三维对象扫描得到的非参数化模型;
[0139]
所述扩充单元802,用于根据所述非参数化模型的第一模型顶点数量对初始参数化模型的模型顶点进行扩充,得到具有第二模型顶点数量的注册三维模型;
[0140]
所述对齐单元803,用于将所述注册三维模型向所述非参数化模型进行姿态对齐,得到对齐三维模型;
[0141]
所述确定单元804,用于确定所述对齐三维模型相对于所述非参数化模型的模型顶点偏移参数;
[0142]
所述调整单元805,用于根据所述模型顶点偏移参数将所述对齐三维模型调整为对应所述目标三维对象的目标参数化模型。
[0143]
在一种可能的实现方式中,所述对齐单元还用于:
[0144]
基于相同的关键点语义,在所述注册三维模型和所述非参数化模型分别标注目标数量的模型关键点;
[0145]
根据所述模型关键点将所述注册三维模型向所述非参数化模型进行姿态对齐,得到所述对齐三维模型。
[0146]
在一种可能的实现方式中,所述对齐单元还用于:
[0147]
根据所述注册三维模型和所述非参数化模型的所述模型关键点,计算将所述注册三维模型相对于所述非参数化模型的对齐参数,所述对齐参数包括旋转信息、平移信息、缩放信息和位姿信息中的至少一种;
[0148]
基于所述对齐参数将所述注册三维模型向所述非参数化模型进行姿态对齐,得到所述对齐三维模型。
[0149]
在一种可能的实现方式中,所述确定单元还用于:
[0150]
根据所述对齐三维模型中的模型顶点在所述非参数化模型中进行顶点匹配得到模型顶点对,所述模型顶点对包括所述对齐三维模型中的一个第一模型顶点和所述非参数
化模型中的一个第二模型顶点,所述第二模型顶点为所述非参数化模型中与所述第一模型顶点距离最近的模型顶点;
[0151]
根据所述模型顶点对确定所述对齐三维模型相对于所述非参数化模型的模型顶点偏移参数。
[0152]
在一种可能的实现方式中,所述确定单元还用于:
[0153]
确定所述模型顶点对象中的关键点对,所述关键点对中的第一模型顶点为所述对齐三维模型中的所述模型关键点;
[0154]
根据所述关键点对确定的关键点偏移量以及所述模型顶点对确定的顶点偏移量,确定所述模型顶点偏移参数。
[0155]
在一种可能的实现方式中,所述扩充单元还用于:
[0156]
根据所述初始参数化模型的初始模型顶点数量和所述第一模型顶点数量,确定针对所述初始参数化模型的扩充模型顶点的待扩充数量;
[0157]
基于法线插值参数,在所述初始参数化模型中通过模型顶点插值添加所述待扩充数量的扩充模型顶点,得到所述注册三维模型,所述法线插值参数用于标识所述扩充模型顶点在所述初始参数化模型中的顶点位置相对于所述非参数化模型的凹凸程度。
[0158]
在一种可能的实现方式中,所述装置还包括生成单元和迁移单元:
[0159]
所述生成单元,用于根据所述非参数化模型生成对应的纹理图像;
[0160]
所述迁移单元,用于将所述纹理图像向所述目标参数化模型进行迁移,得到具有所述纹理图像的目标参数化模型。
[0161]
在一种可能的实现方式中,所述装置还包括保存单元:
[0162]
所述保存单元,用于通过将所述目标参数化模型基于树状结构进行保存,转换得到所述目标三维对象的模型格式文件,所述模型格式文件适用于游戏引擎。
[0163]
由此可见,在针对目标三维对象扫描得到非参数化模型后,确定与目标三维对象具有统一对象类型的初始参数化模型,使用具有驱动参数的该初始参数化模型进行模型顶点扩充,以得到具有和非参数化模型接近的模型顶点数量的注册三维模型。将注册三维模型向非参数化模型进行姿态对齐以得到对齐三维模型,使得对齐三维模型和非参数化模型处于同一姿态下,以此能够确定出标识对齐三维模型相对于非参数化模型的模型顶点偏移参数,通过基于模型顶点偏移参数对该对齐三维模型的调整,得到目标三维对象的目标参数化模型,该目标参数化模型不仅具有与非参数化模型接近的外形精度,而且还具有可用于驱动的驱动参数,从而实现对扫描得到的高精度非参数化模型向参数化模型的自动化转化,且避免了人为经验的影响,提高了高精度参数化模型的生成效率和精度。
[0164]
本技术实施例还提供了一种计算机设备,该计算机设备为前述介绍的计算机设备,可以包括终端设备或服务器,前述的对象模型的确定装置可以配置在该计算机设备中。下面结合附图对该计算机设备进行介绍。
[0165]
若该计算机设备为终端设备,请参见图9所示,本技术实施例提供了一种终端设备,以终端设备为手机为例:
[0166]
图9示出的是与本技术实施例提供的终端设备相关的手机的部分结构的框图。参考图9,手机包括:射频(radio frequency,简称rf)电路1410、存储器1420、输入单元1430、显示单元1440、传感器1450、音频电路1460、无线保真(wireless fidelity,简称wifi)模块
1470、处理器1480、以及电源1490等部件。本领域技术人员可以理解,图9中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0167]
下面结合图9对手机的各个构成部件进行具体的介绍:
[0168]
rf电路1410可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器1480处理。
[0169]
存储器1420可用于存储软件程序以及模块,处理器1480通过运行存储在存储器1420的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。
[0170]
输入单元1430可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元1430可包括触控面板1431以及其他输入设备1432。
[0171]
显示单元1440可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元1440可包括显示面板1441,可选的,可以采用液晶显示器(liquid crystal display,简称lcd)、有机发光二极管(organic light-emitting diode,简称oled)等形式来配置显示面板1441。
[0172]
手机还可包括至少一种传感器1450,比如光传感器、运动传感器以及其他传感器。
[0173]
音频电路1460、扬声器1461,传声器1462可提供用户与手机之间的音频接口。
[0174]
处理器1480是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1420内的软件程序和/或模块,以及调用存储在存储器1420内的数据,执行手机的各种功能和处理数据。
[0175]
手机还包括给各个部件供电的电源1490(比如电池),优选的,电源可以通过电源管理系统与处理器1480逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
[0176]
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
[0177]
在本实施例中,该终端设备所包括的处理器1480还具有以下功能:
[0178]
获取针对目标三维对象扫描得到的非参数化模型;
[0179]
根据所述非参数化模型的第一模型顶点数量对初始参数化模型的模型顶点进行扩充,得到具有第二模型顶点数量的注册三维模型;
[0180]
将所述注册三维模型向所述非参数化模型进行姿态对齐,得到对齐三维模型;
[0181]
确定所述对齐三维模型相对于所述非参数化模型的模型顶点偏移参数;
[0182]
根据所述模型顶点偏移参数将所述对齐三维模型调整为对应所述目标三维对象的目标参数化模型。
[0183]
若计算机设备为服务器,本技术实施例还提供一种服务器,请参见图10所示,图10为本技术实施例提供的服务器1500的结构图,服务器1500可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,简称cpu)1522(例如,一个或一个以上处理器)和存储器1532,一个或一个以上存储应用程序1542或数据1544的存储介质1530(例如一个或一个以上海量存储设备)。其中,存储器1532和存储介质1530可以是短暂存储或持久存储。存储在存储介质1530的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央
处理器1522可以设置为与存储介质1530通信,在服务器1500上执行存储介质1530中的一系列指令操作。
[0184]
服务器1500还可以包括一个或一个以上电源1526,一个或一个以上有线或无线网络接口1550,一个或一个以上输入输出接口1558,和/或,一个或一个以上操作系统1541,例如windows server
tm
,mac os x
tm
,unix
tm
,linux
tm
,freebsd
tm
等等。
[0185]
上述实施例中由服务器所执行的步骤可以基于图10所示的服务器结构。
[0186]
另外,本技术实施例还提供了一种存储介质,所述存储介质用于存储计算机程序,所述计算机程序用于执行上述实施例提供的方法。
[0187]
本技术实施例还提供了一种包括指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例提供的方法。
[0188]
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质可以是下述介质中的至少一种:只读存储器(英文:read-only memory,缩写:rom)、ram、磁碟或者光盘等各种可以存储程序代码的介质。
[0189]
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备及系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备及系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0190]
以上所述,仅为本技术的一种具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本技术的保护范围之内。而且本技术在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。因此,本技术的保护范围应该以权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1