CN112802161B - 一种三维虚拟角色智能蒙皮方法 - Google Patents

一种三维虚拟角色智能蒙皮方法 Download PDF

Info

Publication number
CN112802161B
CN112802161B CN202110108440.9A CN202110108440A CN112802161B CN 112802161 B CN112802161 B CN 112802161B CN 202110108440 A CN202110108440 A CN 202110108440A CN 112802161 B CN112802161 B CN 112802161B
Authority
CN
China
Prior art keywords
vertex
dimensional virtual
grid
matrix
model
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.)
Active
Application number
CN202110108440.9A
Other languages
English (en)
Other versions
CN112802161A (zh
Inventor
纪刚
周亚敏
周萌萌
商胜楠
周粉粉
杨春霞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qingdao Lianhe Chuangzhi Technology Co ltd
Original Assignee
Qingdao Lianhe Chuangzhi Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Qingdao Lianhe Chuangzhi Technology Co ltd filed Critical Qingdao Lianhe Chuangzhi Technology Co ltd
Priority to CN202110108440.9A priority Critical patent/CN112802161B/zh
Publication of CN112802161A publication Critical patent/CN112802161A/zh
Application granted granted Critical
Publication of CN112802161B publication Critical patent/CN112802161B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明属于三维动态图形处理技术领域,具体涉及一种基于深度学习的三维虚拟角色智能蒙皮方法,具体工艺过程包括:生成骨骼(几何收缩、边缘折叠、骨骼优化)和蒙皮智能预测(特征提取、模型构建、模型训练、蒙皮预测),只需要三维虚拟角色的网格模型,就能够自动完成骨骼生成、绑定、蒙皮权重赋值工作,应用于不同复杂程度的网格模型时都能得到良好的效果,直接为构建的三维虚拟角色完成骨骼绑定和权重赋值,面对高精度、顶点数量、面片数量巨大的三维模型时,能够大大缩短骨骼蒙皮动画的制作时间,降低成本,动画制作的效果生动、自然,简化了三维动画制作的复杂度,可应用于骨骼蒙皮动画制作技术领域,前景广阔。

Description

一种三维虚拟角色智能蒙皮方法
技术领域:
本发明属于三维动态图形处理技术领域,具体涉及一种基于深度学习的三维虚拟角色智能蒙皮方法。
背景技术:
三维动画的制作主要是利用计算机图形学方法,在视觉上实现构建的虚拟角色在三维空间中运动的效果。骨骼蒙皮法,是目前使用最多的三维动画方法,应用这种方法的三维模型包括骨骼和蒙皮两部分:骨骼为骨骼层次树结构,有一个根骨骼和多个根骨骼的子孙骨骼;蒙皮为三维模型的每个顶点受控制的骨骼编号,以及其受控制的骨骼影响权重。骨骼蒙皮法原理简单,效果出色:将整个三维模型的蒙皮作为一个整体,在骨骼控制下,通过顶点混合动态计算不同运动姿态下蒙皮的顶点位置。在整个骨骼蒙皮三维动画制作中,蒙皮是影响三维虚拟角色运动效果的决定性因素。
在现有技术中,中国专利201811599856.X公开的一种基于高精度三维扫描模型的制作计算机蒙皮动画的方法,首先用三维扫描仪扫描的数字三维模型骨架线,利用骨骼的动作模板库,完成骨骼绑定,计算蒙皮权重,实时更新模型顶点坐标,完成计算机蒙皮动画,具体包括如下步骤:(1)提取高精度三维模型的骨架线;(2)将步骤(1)提取的三维模型骨架线与模板库中的骨骼做空间坐标的匹配;(3)计算三维模型骨架线的各顶点与步骤(2)匹配的模板库中骨骼的各骨骼节点的空间欧式距离,所述骨骼节点的空间欧式距离的倒数平方和即为与该骨骼节点相匹配的三维模型骨架线的顶点的权重;(4)重复步骤(3),计算三维模型骨架线的各顶点的权重,所述顶点的权重即为相匹配的骨骼节点的权重,作为最终的蒙皮权重;(5)通过骨骼的层级关系:pos=pos0*M0*W0+pos1*M1*W1+pos i*M i*W i计算顶点新的坐标值,其中pos为新的顶点坐标值,pos0为骨骼节点0的坐标值,pos1为骨骼节点1的坐标值,pos i为骨骼节点i的坐标值,M0为骨骼节点0的变换矩阵,M1为骨骼节点1的变换矩阵,Mi为骨骼节点i的变换矩阵,W0为骨骼节点0的权重,W1为骨骼节点1的权重,Wi为骨骼节点i的权重;(6)在一个连续的时间段内取每一帧的骨骼节点数据,重复步骤(5),计算每一帧三维模型骨架线的顶点坐标,即制作完成计算机蒙皮动画。中国专利201910281847.4公开的一种虚拟角色的蒙皮方法,包括:加载虚拟角色的三维模型以及与所述虚拟角色对应的骨骼数据,其中,所述三维模型对应有所述虚拟角色的多个顶点的网格数据,所述骨骼数据对应有多个关节点的数据;确定所述网格数据中每个所述顶点的顶点特征以及所述骨骼数据中每个所述顶点至各个关节点的距离特征;拟合所述顶点特征和所述距离特征,以得到所述虚拟角色各个顶点的绑定特征,其中,所述绑定特征用于确定每个关节点与顶点的绑定权值;利用所述绑定权值对所述虚拟角色执行蒙皮操作,将所述三维模型绑定到所述虚拟角色的骨骼上。其在对三维虚拟角色进行蒙皮的操作过程中,需要手动完成骨骼绑定,想要达到更为真实、自然的动作效果,严重依赖设计师的经验,需要大量的手工辅助,反复调整蒙皮权重,不断优化,工作量大。因此,研发设计一种三维虚拟角色智能蒙皮方法,摒除依靠手工辅助、经验累积的三维动画制作方式,十分必要且具有实际意义。
发明内容:
本发明的目的在于克服现有技术存在的缺点,寻求设计一种三维虚拟角色智能蒙皮方法,基于深度学习,实现简单的、高精度的三维虚拟角色的动画制作。
为了实现上述目的,本发明涉及的三维虚拟角色智能蒙皮方法的工艺过程为:
1、生成骨骼:采用网格塌缩方法获取三维虚拟角色的骨骼;
1.1几何收缩:
利用拉普拉斯平滑算法将网格的顶点沿其曲率法线方向移动,以模糊细节和收缩模型;通过3DS MAX建模软件构建三维虚拟角色,并按照固定格式输出,获得其网格数据G=(V,E,F),其中,V为经过归一化处理后的网格顶点坐标矩阵,E为网格边集合,F为网格面集合;
进行收缩迭代;
1.2边缘折叠
采用贪心算法合并顶点;
1.3骨骼优化
计算骨骼关节点i的形成过程中合并到点vi的所有点的平均位移,根据平均位移计算优化后的骨骼关节点
Figure BDA0002918407200000031
的位置,完成三维虚拟角色骨骼自动生成;
2蒙皮智能预测
2.1特征提取
计算任一网格顶点vi到任一邻域点vj的距离di,j,将距离按照升序进行排列,获得排列好的邻域点序号集合R=[r1,r2,…,rJ],J为vi的邻域点数量,取距离最短的前5个邻域点,当邻域点不足5个时,重复最后一个邻域点和距离;
采用基于热传播的测地距离计算方法,计算任一网格顶点vi到任一骨骼br的测地线距离li,r,将网格顶点vi到全部骨骼的测地线距离,将测地线距离按照升序进行排列,获得排列好的骨骼序列号集合S=[s1,s2,…,sK],取测地线距离最短的前5个骨骼;依次提取出三维虚拟角色的全部网格顶点特征向量;
2.2模型构建
依托于开源深度学习框架Caffe2,构建如图2所示的网络模型;
2.3模型训练
准备一组用于训练的三维虚拟角色网格模型,通过步骤1对每个模型完成骨骼自动生成,利用3DS MAX建模软件进行蒙皮权重手动赋值,得到每个模型的蒙皮权重;
按照步骤2.1完成输入数据准备,通过步骤2.2的网络模型进行训练,并采用交叉熵损失函数使生成的蒙皮权重能够尽可能匹配训练模型的蒙皮权重,训练过程中,一个训练周期的数据量为2个三维虚拟角色网格模型,学习率为10-4,训练完成后,保留训练后的模型参数;
2.4蒙皮预测
准备任意三维虚拟角色网格模型,通过步骤1完成骨骼自动生成,按照步骤2.1提取模型特征数据作为输入,构建网络结构,读取网络参数,最终输出三维虚拟角色的蒙皮权重,将三维虚拟角色网格模型的顶点、面片、蒙皮权重按照FBX标准格式保存,并导入3DSMAX建模软件中,通过拖动骨骼驱动网格发生自然形变和位移。
本发明步骤2.1提取的三维虚拟角色的全部网格顶点特征向量为输入,三维虚拟角色的蒙皮权重为输出。
本发明与现有技术相比,只需要三维虚拟角色的网格模型,就能够自动完成骨骼生成、绑定、蒙皮权重赋值工作,应用于不同复杂程度的网格模型时都能得到良好的效果,直接为构建的三维虚拟角色完成骨骼绑定和权重赋值,面对高精度、顶点数量、面片数量巨大的三维模型时,能够大大缩短骨骼蒙皮动画的制作时间,降低成本,动画制作的效果生动、自然,简化了三维动画制作的复杂度,可应用于骨骼蒙皮动画制作技术领域,前景广阔。
附图说明:
图1为本发明涉及的αij和βij的示意图。
图2为本发明涉及的模型架构示意图。
具体实施方式:
下面通过实施实例并结合附图对本发明做进一步描述。
实施例1:
本实施例涉及的三维虚拟角色智能蒙皮方法的工艺过程为:
1、生成骨骼:采用网格塌缩方法获取三维虚拟角色的骨骼;
1.1几何收缩:
利用拉普拉斯平滑算法将网格的顶点沿其曲率法线方向移动,以模糊细节和收缩模型;通过3DS MAX建模软件构建三维虚拟角色,并按照固定格式输出,获得其网格数据G=(V,E,F),其中,V为经过归一化处理后的网格顶点坐标矩阵,E为网格边集合,F为网格面集合;进行收缩迭代,收缩迭代过程如下:
1.1.1计算拉普拉斯平滑矩阵L:
构建大小为c×c的拉普拉斯平滑矩阵L,c为三维虚拟角色的网格顶点数,每个元素的数值由公式1:
Figure BDA0002918407200000051
表示,其中,N(i)为顶点vi的邻域顶点集合,αij为顶点vi、vj+1、vj形成的夹角,βij为vi、vj-1、vj形成的夹角,E为网格边集合;
1.1.2通过公式2:
Figure BDA0002918407200000052
计算第t次迭代后的网格顶点矩阵Vt+1,其中,
Figure BDA0002918407200000053
为第t次迭代时的收缩权重,Lt为第次迭代时的拉普拉斯平滑矩阵,
Figure BDA0002918407200000061
为第次迭代时的吸引权重,Vt为第t-1次迭代后的网格顶点矩阵,初始设置
Figure BDA0002918407200000062
为原始网格面的平均面积,初始设置
Figure BDA00029184072000000614
的元素值均为1.0,矩阵大小为1×n,V0为原始网格顶点坐标矩阵,矩阵大小为c×3,L0为原始网格计算的拉普拉斯平滑矩阵,t∈N,N为自然数;
1.1.3通过公式3:
Figure BDA0002918407200000063
计算第t次迭代后的三维虚拟角色的网格总面积At,其中,
Figure BDA0002918407200000064
表示第t次迭代后网格中第f个面片的面积,根据终止迭代条件公式4:
Figure BDA00029184072000000615
判断是否终止迭代;
1.1.4通过公式5:
Figure BDA0002918407200000066
更新收缩权重WL和吸引权重矩阵WH,其中,sL=2.0,
Figure BDA0002918407200000067
为更新后的收缩权重,
Figure BDA0002918407200000068
为第t次迭代时的收缩权重,
Figure BDA0002918407200000069
为更新后的吸引权重矩阵中第i个元素的值,
Figure BDA00029184072000000610
为初始吸引权重矩阵
Figure BDA00029184072000000611
中第i个元素的值,
Figure BDA00029184072000000612
为原始网格中第i个顶点的第f个邻域的面积,
Figure BDA00029184072000000613
F(i)为顶点i的邻域的面集合,i∈c;
1.1.5更新拉普拉斯平滑矩阵L:通过公式2计算获得收缩后的网格顶点坐标矩阵Vt+1,通过公式1重新计算获得新的拉普拉斯平滑矩阵Lt+1
1.1.6重复步骤1.1.2、1.1.3、1.1.4和1.1.5,直到满足1.1.3中的终止迭代条件,获得经过几何收缩后的网格顶点坐标矩阵
Figure BDA0002918407200000071
1.2边缘折叠
通过步骤1.1获得经过几何收缩后的网格总面积接近于0,视觉上是一个由线(边)构成的骨骼结构,实际上原网格的边和面仍然存在,需要将顶点合并,完成边和面的折叠,获得三维虚拟角色的骨骼B;采用贪心算法合并顶点,以保障保留下的骨骼拓扑结构为最优,贪心算法基本步骤为:
1.2.1任意选定一个初始边(i,j)∈E;
1.2.2借助邻域的顶点k,采用原则:
Figure BDA0002918407200000072
判断是否能够将顶点j合并到顶点i;
1.2.3当顶点j能够合并到顶点i时,计算合并后的形状损耗和采样损耗:
①通过公式6:
Figure BDA0002918407200000073
计算顶点j合并到顶点i后,即边(i,j)和边(j,k)折叠生成边(i,k),产生的形状损耗,其中,
Figure BDA0002918407200000074
mx、my、mz分别为边(i,j)归一化后的向量m在XYZ方向上的分量,向量
Figure BDA0002918407200000075
Figure BDA0002918407200000076
中的第i个顶点,nx、ny、nz分别为向量n在XYZ方向上的分量,px、py、pz分别为边(j,k)归一化后的向量p在XYZ方向上的分量,向量
Figure BDA0002918407200000081
Figure BDA0002918407200000082
中的第j个顶点,qx、qy、qz分别为向量q在XYZ方向上的分量,
Figure BDA0002918407200000083
Figure BDA0002918407200000084
的转置,Kij T为Kij的转置,Kjk T为Kjk的转置;
②通过公式7:
Figure BDA0002918407200000085
计算顶点j合并到顶点i后产生的采样损耗,其中,
Figure BDA0002918407200000086
为顶点合并后的网格边集合,
Figure BDA0002918407200000087
Figure BDA0002918407200000088
中的第k个顶点;
③通过公式8:G(i,j)=ωaGa(i,j)+ωbGb(i,j),计算顶点j合并到顶点i后的总损耗,根据经验设置ωa=1.0,ωb=0.1;
1.2.4统计与顶点vj共边的全部顶点,分别计算合并后的总损耗,确定总损耗最小的顶点(假设为顶点vk);
1.2.5重复步骤1.2.2、1.2.3和1.2.4,依次判断是否将后一个顶点合并到前一个顶点,将合并的顶点存入容器中,容器为Ri={vl}l∈(1,…,c),直至遍历完全部顶点后,折叠并删除多余的边和面,获得完整保留了三维虚拟角色的骨骼关节点和骨骼关节点连线;
1.3骨骼优化
经过步骤1.1和1.2后,无法保障全部骨骼关节点都在三维虚拟角色局部网格区域的中心位置,甚至有的骨骼关节点会在三维虚拟角色的模型网格之外,需要对这些点进行优化:
通过公式9:
Figure BDA0002918407200000089
计算骨骼关节点i的形成过程中合并到点vi的所有点的平均位移,其中,ci为骨骼关节点
Figure BDA00029184072000000810
的合并点容器Ri中点的总数;
通过公式10:
Figure BDA0002918407200000091
计算优化后的骨骼关节点
Figure BDA0002918407200000092
的位置,完成三维虚拟角色骨骼自动生成,骨骼B={br}r=1,…,K,其中,br为第r个骨骼,由两个骨骼关节点构成,
Figure BDA0002918407200000093
K为最后生成的骨骼数量,骨骼关节点数为K+1;
2蒙皮智能预测
2.1特征提取
三维虚拟角色的网格顶点的特征向量包括其自身、直线距离最短的前5个邻域点、最短的前5个直线距离的倒数、测地线距离最短的前5个骨骼和最短的前5个测地线距离的倒数;
计算任一网格顶点vi到任一邻域点vj的距离di,j,将距离按照升序进行排列,获得排列好的邻域点序号集合R=[r1,r2,…,rJ],J为vi的邻域点数量,取距离最短的前5个邻域点,当邻域点不足5个时,重复最后一个邻域点和距离;
采用基于热传播的测地距离计算方法(由Keenan Crane等于2013年提出),计算任一网格顶点vi到任一骨骼br的测地线距离li,r,将网格顶点vi到全部骨骼的测地线距离,将测地线距离按照升序进行排列,获得排列好的骨骼序列号集合S=[s1,s2,…,sK],取测地线距离最短的前5个骨骼;
网格顶点vi特征向量为:
Figure BDA0002918407200000094
依次提取出三维虚拟角色的全部网格顶点特征向量;其中,vi为第,i个网格顶点,
Figure BDA0002918407200000101
为vi的邻域点中距离第一近的顶点,依次,
Figure BDA0002918407200000102
为vi的邻域点中距离第五近的顶点,
Figure BDA0002918407200000103
Figure BDA0002918407200000104
与vi距离的
Figure BDA0002918407200000105
倒数,依次,
Figure BDA0002918407200000106
Figure BDA0002918407200000107
与vi距离的
Figure BDA0002918407200000108
倒数,
Figure BDA0002918407200000109
为到vi测地线距离第一近的骨骼,依次,
Figure BDA00029184072000001010
为到vi测地线距离第五近的骨骼,
Figure BDA00029184072000001011
Figure BDA00029184072000001012
到vi测地线距离
Figure BDA00029184072000001013
的倒数,依次,
Figure BDA00029184072000001014
Figure BDA00029184072000001015
到vi测地线距离
Figure BDA00029184072000001016
的倒数;
2.2模型构建
依托于Caffe2开源深度学习框架,按照图2所示的架构构建模型,其中,MLP为多层感知机(Multi Layer Perceptron),用于训练注意力权重,MLP均包含一个输入层、一个隐含层、一个输出层,MLP隐含层的激活函数为tanh;max pool为最大池化层,用于降低缩减模型大小,提升计算速度,同时提高提取特征的鲁棒性;concat为连接层,将按照顺序将特征表达串联为一个向量;
2.3模型训练
准备一组用于训练的三维虚拟角色网格模型,用于训练的三维虚拟角色为人物或动物,具有明显的骨骼结构,能够进行多种运动,通过步骤1对每个模型完成骨骼自动生成,利用3DS MAX建模软件进行蒙皮权重手动赋值,得到每个模型的蒙皮权重
Figure BDA00029184072000001017
其中,
Figure BDA00029184072000001018
按照步骤2.1完成输入数据准备,通过步骤2.2的网络模型进行训练,并采用交叉熵损失函数:
Figure BDA0002918407200000111
使生成的蒙皮权重能够尽可能匹配训练模型的蒙皮权重,其中,B={br}r=1,…,K,为三维虚拟角色的骨骼集合,
Figure BDA0002918407200000112
为通过3DS MAX建模软件设置的骨骼br对顶点vi的权重,
Figure BDA0002918407200000113
为模型计算获得的骨骼br对顶点vi的权重,一个训练周期的数据量为2个三维虚拟角色网格模型,学习率为10-4,训练完成后,保留训练后的模型参数;
2.4蒙皮预测
准备用于预测的三维虚拟角色网格模型,用于预测的三维虚拟角色为人物或动物,具有明显的骨骼结构,能够进行多种运动,通过步骤1完成骨骼自动生成,按照步骤2.1提取模型特征数据作为输入,构建网络结构,读取网络参数,最终输出三维虚拟角色的蒙皮权重,将三维虚拟角色网格模型的顶点、面片、蒙皮权重按照FBX标准格式保存,并导入3DSMAX建模软件中,通过拖动骨骼驱动网格发生自然形变和位移。
本实施例涉及的收缩迭代能够防止网格全部顶点被过度收缩到同一个位置,通过在迭代过程中调整收缩权重WL、吸引权重矩阵WH以及拉普拉斯平滑矩阵L,保障网格逐步收缩为骨骼结构。

Claims (7)

1.一种三维虚拟角色智能蒙皮方法,其特征在于:工艺过程包括:
S1生成骨骼:采用网格塌缩方法获取三维虚拟角色的骨骼;
1.1几何收缩:
利用拉普拉斯平滑算法将网格的顶点沿其曲率法线方向移动,以模糊细节和收缩模型;通过3DS MAX建模软件构建三维虚拟角色,并按照固定格式输出,获得其网格数据G=(V,E,F),其中,V为经过归一化处理后的网格顶点坐标矩阵,E为网格边集合,F为网格面集合;
进行收缩迭代;
1.2边缘折叠
采用贪心算法合并顶点;
1.3骨骼优化
计算骨骼关节点i的形成过程中合并到点vi的所有点的平均位移,根据平均位移计算优化后的骨骼关节点
Figure FDA0003827273460000011
的位置,完成三维虚拟角色骨骼自动生成;
S2蒙皮智能预测
2.1特征提取
计算任一网格顶点vi到任一邻域点vj的距离di,j,将距离按照升序进行排列,获得排列好的邻域点序号集合R=[r1,r2,Λ,rJ];
采用基于热传播的测地距离计算方法,计算任一网格顶点vi到任一骨骼br的测地线距离li,r,将网格顶点vi到全部骨骼的测地线距离,将测地线距离按照升序进行排列,获得排列好的骨骼序列号集合S=[s1,s2,Λ,sK],取测地线距离最短的前5个骨骼;依次提取出三维虚拟角色的全部网格顶点特征向量;
网格顶点vi特征向量为:
Figure FDA0003827273460000012
其中,vi为第i个网格顶点,
Figure FDA0003827273460000021
为vi的邻域点中距离第一近的顶点,依次,
Figure FDA0003827273460000022
为vi的邻域点中距离第五近的顶点,
Figure FDA0003827273460000023
Figure FDA0003827273460000024
与vi距离的
Figure FDA0003827273460000025
倒数,依次,
Figure FDA0003827273460000026
Figure FDA0003827273460000027
与vi距离的
Figure FDA0003827273460000028
倒数,
Figure FDA0003827273460000029
为到vi测地线距离第一近的骨骼,依次,
Figure FDA00038272734600000210
为到vi测地线距离第五近的骨骼,
Figure FDA00038272734600000211
Figure FDA00038272734600000212
到vi测地线距离
Figure FDA00038272734600000213
的倒数,依次,
Figure FDA00038272734600000214
Figure FDA00038272734600000215
到vi测地线距离
Figure FDA00038272734600000216
的倒数;
2.2模型构建
依托开源深度学习框架Caffe2构建网络模型;
2.3模型训练
准备一组用于训练的三维虚拟角色网格模型,通过步骤S1对每个模型完成骨骼自动生成,利用3DS MAX建模软件进行蒙皮权重手动赋值,得到每个模型的蒙皮权重;
按照步骤2.1完成输入数据准备,通过步骤2.2的网络模型进行训练,并采用交叉熵损失函数使生成的蒙皮权重能够尽可能匹配训练模型的蒙皮权重,训练过程中,一个训练周期的数据量为2个三维虚拟角色网格模型,学习率为10-4,训练完成后,保留训练后的模型参数;
每个模型的蒙皮权重
Figure FDA00038272734600000217
其中,
Figure FDA00038272734600000218
交叉熵损失函数为:
Figure FDA00038272734600000219
其中,B={br}r=1,Λ,K,为三维虚拟角色的骨骼集合,
Figure FDA00038272734600000220
为通过3DS MAX建模软件设置的骨骼br对顶点vi的权重,
Figure FDA00038272734600000221
为模型计算获得的骨骼br对顶点vi的权重;
2.4蒙皮预测
准备任意三维虚拟角色网格模型,通过步骤S1完成骨骼自动生成,按照步骤2.1提取模型特征数据作为输入,构建网络结构,读取网络参数,最终输出三维虚拟角色的蒙皮权重,将三维虚拟角色网格模型的顶点、面片、蒙皮权重按照FBX标准格式保存,并导入3DS MAX建模软件中,通过拖动骨骼驱动网格发生自然形变和位移。
2.根据权利要求1所述的三维虚拟角色智能蒙皮方法,其特征在于:步骤1.1所述的收缩迭代过程包括:
1.1.1计算拉普拉斯平滑矩阵L:
构建大小为c×c的拉普拉斯平滑矩阵L,c为三维虚拟角色的网格顶点数,每个元素的数值由公式1:
Figure FDA0003827273460000031
表示,其中,N(i)为顶点vi的邻域顶点集合,αij为顶点vi、vj+1、vj形成的夹角,βij为vi、vj-1、vj形成的夹角,E为网格边集合;
1.1.2通过公式2:
Figure FDA0003827273460000032
计算第t次迭代后的网格顶点矩阵Vt+1,其中,
Figure FDA0003827273460000033
为第t次迭代时的收缩权重,Lt为第次迭代时的拉普拉斯平滑矩阵,
Figure FDA0003827273460000034
为第次迭代时的吸引权重,Vt为第t-1次迭代后的网格顶点矩阵,初始设置
Figure FDA0003827273460000035
Figure FDA0003827273460000036
为原始网格面的平均面积,初始设置
Figure FDA0003827273460000037
的元素值均为1.0,矩阵大小为1×n,V0为原始网格顶点坐标矩阵,矩阵大小为c×3,L0为原始网格计算的拉普拉斯平滑矩阵,t∈N,N为自然数;
1.1.3通过公式3:
Figure FDA0003827273460000038
计算第t次迭代后的三维虚拟角色的网格总面积At,其中,
Figure FDA0003827273460000039
表示第t次迭代后网格中第f个面片的面积,根据终止迭代条件公式4:
Figure FDA00038272734600000310
判断是否终止迭代;
1.1.4通过公式5:
Figure FDA0003827273460000041
更新收缩权重WL和吸引权重矩阵WH,其中,sL=2.0,
Figure FDA0003827273460000042
为更新后的收缩权重,
Figure FDA0003827273460000043
为第t次迭代时的收缩权重,
Figure FDA0003827273460000044
为更新后的吸引权重矩阵中第i个元素的值,
Figure FDA0003827273460000045
为初始吸引权重矩阵
Figure FDA0003827273460000046
中第i个元素的值,
Figure FDA0003827273460000047
Figure FDA0003827273460000048
为原始网格中第i个顶点的第f个邻域的面积,
Figure FDA0003827273460000049
F(i)为顶点i的邻域的面集合,i∈c;
1.1.5更新拉普拉斯平滑矩阵L:通过公式2计算获得收缩后的网格顶点坐标矩阵Vt+1,通过公式1重新计算获得新的拉普拉斯平滑矩阵Lt+1
1.1.6重复步骤1.1.2、1.1.3、1.1.4和1.1.5,直到满足1.1.3中的终止迭代条件,获得经过几何收缩后的网格顶点坐标矩阵
Figure FDA00038272734600000410
3.根据权利要求1所述的三维虚拟角色智能蒙皮方法,其特征在于:步骤1.2所述的贪心算法基本步骤包括:
1.2.1任意选定一个初始边(i,j)∈E;
1.2.2借助邻域的顶点k,采用原则:
Figure FDA00038272734600000411
判断是否能够将顶点j合并到顶点i;
1.2.3当顶点j能够合并到顶点i时,计算合并后的形状损耗和采样损耗:
①通过公式6:
Figure FDA00038272734600000412
计算顶点j合并到顶点i后,即边(i,j)和边(j,k)折叠生成边(i,k),产生的形状损耗,其中,
Figure FDA00038272734600000413
mx、my、mz分别为边(i,j)归一化后的向量m在XYZ方向上的分量,向量
Figure FDA0003827273460000051
Figure FDA0003827273460000052
Figure FDA0003827273460000053
中的第i个顶点,nx、ny、nz分别为向量n在XYZ方向上的分量,px、py、pz分别为边(j,k)归一化后的向量p在XYZ方向上的分量,向量
Figure FDA0003827273460000054
Figure FDA0003827273460000055
Figure FDA0003827273460000056
中的第j个顶点,qx、qy、qz分别为向量q在XYZ方向上的分量,
Figure FDA0003827273460000057
Figure FDA0003827273460000058
的转置,Kij T为Kij的转置,Kjk T为Kjk的转置;
②通过公式7:
Figure FDA0003827273460000059
计算顶点j合并到顶点i后产生的采样损耗,其中,
Figure FDA00038272734600000510
为顶点合并后的网格边集合,
Figure FDA00038272734600000511
Figure FDA00038272734600000512
中的第k个顶点;
③通过公式8:G(i,j)=ωaGa(i,j)+ωbGb(i,j),计算顶点j合并到顶点i后的总损耗,根据经验设置ωa=1.0,ωb=0.1;
1.2.4统计与顶点vj共边的全部顶点,分别计算合并后的总损耗,确定总损耗最小的顶点;
1.2.5重复步骤1.2.2、1.2.3和1.2.4,依次判断是否将后一个顶点合并到前一个顶点,将合并的顶点存入容器中,容器为Ri={vl}l∈(1,Λ,c),直至遍历完全部顶点后,折叠并删除多余的边和面,获得完整保留了三维虚拟角色的骨骼关节点和骨骼关节点连线。
4.根据权利要求1所述的三维虚拟角色智能蒙皮方法,其特征在于:步骤1.3所述的骨骼优化的具体过程包括:
通过公式9:
Figure FDA00038272734600000513
计算骨骼关节点i的形成过程中合并到点vi的所有点的平均位移,其中,ci为骨骼关节点
Figure FDA00038272734600000514
的合并点容器Ri中点的总数;
通过公式10:
Figure FDA00038272734600000515
计算优化后的骨骼关节点
Figure FDA00038272734600000516
的位置,完成三维虚拟角色骨骼自动生成,骨骼B={br}r=1,Λ,K,其中,br为第r个骨骼,由两个骨骼关节点构成,
Figure FDA0003827273460000061
m,n∈(1,Λ,K+1),K为最后生成的骨骼数量,骨骼关节点数为K+1。
5.根据权利要求1所述的三维虚拟角色智能蒙皮方法,其特征在于:步骤2.2所述的模型中的MLP为多层感知机,用于训练注意力权重,MLP均包含一个输入层、一个隐含层、一个输出层,MLP隐含层的激活函数为tanh;max pool为最大池化层,用于降低缩减模型大小,提升计算速度,同时提高提取特征的鲁棒性;concat为连接层,将按照顺序将特征表达串联为一个向量。
6.根据权利要求2所述的三维虚拟角色智能蒙皮方法,其特征在于:收缩迭代能够防止网格全部顶点被过度收缩到同一个位置,通过在迭代过程中调整收缩权重WL、吸引权重矩阵WH以及拉普拉斯平滑矩阵L,保障网格逐步收缩为骨骼结构。
7.根据权利要求1所述的三维虚拟角色智能蒙皮方法,其特征在于:步骤2.1提取的三维虚拟角色的全部网格顶点特征向量为输入,三维虚拟角色的蒙皮权重为输出。
CN202110108440.9A 2021-01-27 2021-01-27 一种三维虚拟角色智能蒙皮方法 Active CN112802161B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110108440.9A CN112802161B (zh) 2021-01-27 2021-01-27 一种三维虚拟角色智能蒙皮方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110108440.9A CN112802161B (zh) 2021-01-27 2021-01-27 一种三维虚拟角色智能蒙皮方法

Publications (2)

Publication Number Publication Date
CN112802161A CN112802161A (zh) 2021-05-14
CN112802161B true CN112802161B (zh) 2022-11-15

Family

ID=75812030

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110108440.9A Active CN112802161B (zh) 2021-01-27 2021-01-27 一种三维虚拟角色智能蒙皮方法

Country Status (1)

Country Link
CN (1) CN112802161B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109993819B (zh) * 2019-04-09 2023-06-20 网易(杭州)网络有限公司 虚拟角色的蒙皮方法及装置、电子设备
CN113538643A (zh) * 2021-07-26 2021-10-22 广州虎牙科技有限公司 一种网格模型的处理方法、存储介质以及设备
CN117649500A (zh) * 2022-08-19 2024-03-05 深圳市腾讯网络信息技术有限公司 数据处理方法、装置、设备及存储介质
CN116310000B (zh) * 2023-03-16 2024-05-14 北京百度网讯科技有限公司 蒙皮数据生成方法、装置、电子设备及存储介质
CN116402989B (zh) * 2023-06-08 2023-08-08 腾讯科技(深圳)有限公司 数据处理方法、装置、设备以及介质
CN117576280B (zh) * 2023-07-12 2024-04-19 杭州雪爪文化科技有限公司 一种基于3d数字人的智能端云一体化生成方法及系统
CN117274449B (zh) * 2023-11-15 2024-02-09 唯物(杭州)科技有限公司 一种基于模型生成骨骼的方法和系统

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102254343A (zh) * 2011-07-01 2011-11-23 浙江理工大学 一种基于凸包与obb的三维网格模型骨架提取方法
CN105069777A (zh) * 2015-07-02 2015-11-18 广东工业大学 一种预备体网格模型的颈缘线自动提取方法
CN108510577A (zh) * 2018-01-31 2018-09-07 中国科学院软件研究所 一种基于已有动作数据的真实感动作迁移和生成方法及系统
CN109410332A (zh) * 2018-09-17 2019-03-01 广西大学 基于点线面的三维空间几何虚拟模型细节层次裁剪方法
CN109427007A (zh) * 2018-09-17 2019-03-05 叠境数字科技(上海)有限公司 基于多视角的虚拟试衣方法
CN109523635A (zh) * 2018-11-01 2019-03-26 深圳蒜泥科技投资管理合伙企业(有限合伙) 一种三维人体扫描非刚性重建和测量方法及装置
CN109859296A (zh) * 2019-02-01 2019-06-07 腾讯科技(深圳)有限公司 Smpl参数预测模型的训练方法、服务器及存储介质
CN109872375A (zh) * 2019-01-10 2019-06-11 珠海金山网络游戏科技有限公司 一种骨骼动画关键帧压缩方法及装置
CN109993819A (zh) * 2019-04-09 2019-07-09 网易(杭州)网络有限公司 虚拟角色的蒙皮方法及装置、电子设备
CN110349228A (zh) * 2019-07-05 2019-10-18 浙江理工大学 一种数据驱动最小二乘预测的三角网格压缩方法
CN111339903A (zh) * 2020-02-21 2020-06-26 河北工业大学 一种多人人体姿态估计方法
CN111598980A (zh) * 2020-05-14 2020-08-28 北京华严互娱科技有限公司 一种蒙皮权重自动计算方法及计算系统
CN112241731A (zh) * 2020-12-03 2021-01-19 北京沃东天骏信息技术有限公司 一种姿态确定方法、装置、设备及存储介质

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102254343A (zh) * 2011-07-01 2011-11-23 浙江理工大学 一种基于凸包与obb的三维网格模型骨架提取方法
CN105069777A (zh) * 2015-07-02 2015-11-18 广东工业大学 一种预备体网格模型的颈缘线自动提取方法
CN108510577A (zh) * 2018-01-31 2018-09-07 中国科学院软件研究所 一种基于已有动作数据的真实感动作迁移和生成方法及系统
CN109410332A (zh) * 2018-09-17 2019-03-01 广西大学 基于点线面的三维空间几何虚拟模型细节层次裁剪方法
CN109427007A (zh) * 2018-09-17 2019-03-05 叠境数字科技(上海)有限公司 基于多视角的虚拟试衣方法
CN109523635A (zh) * 2018-11-01 2019-03-26 深圳蒜泥科技投资管理合伙企业(有限合伙) 一种三维人体扫描非刚性重建和测量方法及装置
CN109872375A (zh) * 2019-01-10 2019-06-11 珠海金山网络游戏科技有限公司 一种骨骼动画关键帧压缩方法及装置
CN109859296A (zh) * 2019-02-01 2019-06-07 腾讯科技(深圳)有限公司 Smpl参数预测模型的训练方法、服务器及存储介质
CN109993819A (zh) * 2019-04-09 2019-07-09 网易(杭州)网络有限公司 虚拟角色的蒙皮方法及装置、电子设备
CN110349228A (zh) * 2019-07-05 2019-10-18 浙江理工大学 一种数据驱动最小二乘预测的三角网格压缩方法
CN111339903A (zh) * 2020-02-21 2020-06-26 河北工业大学 一种多人人体姿态估计方法
CN111598980A (zh) * 2020-05-14 2020-08-28 北京华严互娱科技有限公司 一种蒙皮权重自动计算方法及计算系统
CN112241731A (zh) * 2020-12-03 2021-01-19 北京沃东天骏信息技术有限公司 一种姿态确定方法、装置、设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Skeleton Extraction by Mesh Contraction ";O.K.C. Au etal;《Computer Graphics and Interactive Techniques》;20081231;全文 *

Also Published As

Publication number Publication date
CN112802161A (zh) 2021-05-14

Similar Documents

Publication Publication Date Title
CN112802161B (zh) 一种三维虚拟角色智能蒙皮方法
CN109711048B (zh) 一种考虑气动和结构多类型设计变量的机翼设计方法
CN112927357B (zh) 一种基于动态图网络的3d物体重建方法
CN102982578B (zh) 单幅人物图像中着装人体三维模型估计方法
Panozzo et al. Designing unreinforced masonry models
CN109829972B (zh) 一种面向连续帧点云的三维人体标准骨架提取方法
CN106971414A (zh) 一种基于深度循环神经网络算法的三维动画生成方法
CN111028335B (zh) 一种基于深度学习的点云数据的分块面片重建方法
CN110619681A (zh) 一种基于欧拉场形变约束的人体几何重建方法
JP2023524252A (ja) 生成的非線形人間形状モデル
CN103337085A (zh) 一种高效的人像面部变形方法
CN101356549B (zh) 用于生成对动画模型性态进行近似的膨化组件的方法
CN105261062A (zh) 一种人物分段建模方法
US11334690B2 (en) Method for transforming the computer-aided design model of an object
CN113129447A (zh) 基于单张手绘草图的三维模型生成方法、装置和电子设备
Yuan et al. The Fusion Method of Virtual Reality Technology and 3D Movie Animation Design.
Pang et al. An effective quad-dominant meshing method for unorganized point clouds
CN104851125A (zh) 一种植物叶子三维模型建模方法及系统
CN111768504B (zh) 一种模型处理的方法、形变控制方法及相关设备
Visutsak et al. Geodesic-based skeleton smoothing
Yu et al. Producing Physical Copies of the Digital Models via Generating 2D Patterns for “Origami 3D Printer” system
Visutsak et al. The smoothed 3D skeleton for animation
CN117974940A (zh) 一种三维模型处理方法、装置、设备及介质
CN116912433B (zh) 三维模型骨骼绑定方法、装置、设备及存储介质
Gladilin et al. Digital Technology in the Design of Nonlinear (Parametric) Objects Environmental Space

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
GR01 Patent grant
GR01 Patent grant