1、第 49卷 第 4期2023年 4月Computer Engineering 计算机工程基于子图卷积神经网络的多精度服装建模方法陈治旭,靳雁霞,芦烨,杨晶,刘亚变,史志儒(中北大学 大数据学院,太原 030051)摘要:现有融合机器学习的服装仿真方法大多在单一精度网格上进行仿真,导致在变形较小的区域内进行不必要的计算。提出一种基于子图卷积神经网络的多精度服装建模方法。采用基于物理模拟的方法进行服装仿真,利用瑞利熵曲率计算服装各区域的平均变形度,依据平均变形度对服装网格阈值进行划分,构建与原始网格相对应的多精度服装网格。结合人体结构化模型,从多精度服装网格中提取基于时空的多精度服装图结构。在此基
2、础上,利用子图卷积神经网络为给定顶点采样邻居节点,通过聚合给定顶点和邻居节点的特征,以更新顶点特征数据。实验结果表明,与 TailorNet方法相比,该方法的布料计算效率提升 25.3%,不仅保留了从物理模拟中学习的褶皱,而且具有更加真实的模拟效果,并提高了计算效率。关键词:服装建模;机器学习;多精度网格;图卷积神经网络;子图训练开放科学(资源服务)标志码(OSID):中文引用格式:陈治旭,靳雁霞,芦烨,等.基于子图卷积神经网络的多精度服装建模方法 J.计算机工程,2023,49(4):174-181.英文引用格式:CHEN Z X,JIN Y X,LU Y,et al.Multi-preci
3、sion clothing modeling method based on subgraph convolutional neural network J.Computer Engineering,2023,49(4):174-181.Multi-Precision Clothing Modeling Method Based on Subgraph Convolutional Neural NetworkCHEN Zhixu,JIN Yanxia,LU Ye,YANG Jing,LIU Yabian,SHI Zhiru(School of Big Data,North University
4、 of China,Taiyuan 030051,China)【Abstract】Exsiting clothing simulation methods combining machine learning are simulated on a single precision grid,resulting in unnecessary calculation in the area with small deformation.Therefore,a multi-precision clothing modeling method based on a subgraph Convoluti
5、onal Neural Network(CNN)is proposed for the physical simulation of clothes.The average deformation degree of each area of clothing is calculated using Rayleigh entropy curvature or continuous probability distribution.The threshold value of the clothing grid is divided according to the average deform
6、ation degree,and a multi-precision clothing grid corresponding to the original grid is constructed.Combined with the structural model of the human body,a multi-precision clothing graph structure based on time-space is extracted from the multi-precision clothing grid.The subgraph CNN is used to sampl
7、e the neighbor nodes for a given vertex,and the vertex feature data are updated by aggregating the features of the given vertex and neighbor nodes.The experimental results show that with the use of the proposed method,the cloth computational efficiency improved by 25.3%compared with that of the Tail
8、orNet methods.The proposed method can not only retain the wrinkles learned from the physical simulation but also has a more realistic simulation effect and improves the computational efficiency.【Key words】clothing modeling;machine learning;multi-precision grid;graph Convolutional Neural Network(CNN)
9、;subgraph trainingDOI:10.19678/j.issn.1000-3428.00641940概述主流的布料模拟一般采用弹簧-质点模型1-2,该模型通过离散服装得到一系列规则排列的粒子,并将数学和物理规律应用到粒子上。为反映布料的物理特性,需要大量的粒子来确保真实感,通过大量的粒子和显式积分或隐式积分求解,导致计算时间延基金项目:国家自然科学基金(62071281);山西省重点研发计划(201803D421012);山西省自然科学基金(202103021224218)。作者简介:陈治旭(1997),男,硕士研究生,主研方向为虚拟仿真、图形图像处理;靳雁霞,副教授、博士;芦烨、
10、杨晶、刘亚变、史志儒,硕士研究生。收稿日期:2022-03-16 修回日期:2022-05-04 Email:图形图像处理文章编号:1000-3428(2023)04-0174-08 文献标志码:A 中图分类号:TP391第 49卷 第 4期陈治旭,靳雁霞,芦烨,等:基于子图卷积神经网络的多精度服装建模方法长。为兼顾服装模拟的精度与速度,NARAIN 等3使用动态张量场对边进行分割、翻转和塌陷三种基本操作,从而动态地对服装网格进行细化和粗化,该方法较完整地保留了服装的褶皱,但是在服装运动过程中,速度差会导致网格过度细化,增大了计算复杂度。HAN 等4提出一种基于细分三角形网格的多精度服装建模方
11、法,采用邻边翻转策略使得未细分区域与已细分区域之间不会有 T 型的节点,但是因邻边的翻转,导致在运动过程中出现不可逆的局部失真。钟李涛等5通过对低精度布料实例运动数据进行采样,获取布料平均变形度,在依据平均变形度划分高、中、低变形区域后,对不同区域进行不同程度的细分,但其布料模拟过程仍然需要计算迭代积分和非线性物理方程。在服装模拟领域中,研究人员将机器学习的思想 与 服 装 建 模 的 优 化 相 联 系,GUAN 等6构 建DRAPE 模型,该模型将服装变形划分为仅由姿势变化与仅由身体形状引起的服装变形,将变形表示为一系列的非线性变化,通过训练学习非线性变化,将两种服装变形相整合,获得最终的
12、 DRAPE 模型。DENG 等7在文献 6 研究的基础上,提取影响服装变形的 11 个人体关节节点,采用 BP 神经网络初步寻找人体运动与服装变形的关系。石敏等8进一步定义了每个关节的特征表达式,使用四种不同的机器学习模型从实例中学习人体运动与服装变形的关系。OH 等9将传统基于物理的布料建模方式与深度神经网络(Deep Neural Network,DNN)相结合,在物理模拟的布料网格上通过 DNN 模型来推算分层布料中更加精细的节点。SANTESTEBAN 等10训练一个多层感知机(Multi-Layer Perceptron,MLP)和一 个 循 环 神 经 网 络(Recurrent
13、 Neural Network,RNN),通过将服装变形分解为静态和动态褶皱来模拟 网 络。文 献11提 出 一 种 双 流 结 构 的 网 络GarNet,身体流将 3D 点云表示的身体作为输入,服装流将 3D 三角网格表示的服装作为输入,两个流的输出被反馈到一组由 MLP 构成的融合模块,从而对服装与人体的相互作用进行建模。TailorNet12模型将服装变形分解成高频和低频分量,低频分量是利用 MLP 从姿态、形状和风格参数三个方面进行预测,而高频分量是利用形状风格特定的混合姿态模型来预测。JIN 等13提出一种基于像素的数据驱动服装框架,将三角网格数据重组为基于图像的数据,给 定 输
14、入 人 体 姿 势 参 数,训 练 卷 积 神 经 网 络(Convolutional Neural Network,CNN)来预测布料图像,最后从布料图像中恢复出 3D 服装形状。以上方法均使用单精度布料网格,这类网格在不同变形区域内的顶点密度大致相同,对于变形程度较低的区域,顶点个数不需太多,而这些顶点的计算增加了计算时间。图卷积神经网络14的研究最早起源于2009年,将图中的节点映射成向量,将节点的状态迭代到均衡状态,随后根据其状态为每个节点生成输出。BRUNA等15使用图拉普拉斯矩阵引入来自谱域的图卷积,起到与信号处理的傅里叶基相似的作用。DEFFERRARD等16提出ChebNet网
15、络,使用切比雪夫多项式,定义局部卷积过滤器,并通过二叉树进行高效池化操作来定义图上的操作。KIPF等17将残差连接添加到现有GCN中,以跳过某些层,并证明添加残差连接可以增加网络的深度,即GCN 中的卷积层数。由于图中节点遵循幂律分布,因此邻居节点的扩展增长迅速。为解决此问题,HAMILTON等18提出GraphSAGE,在训练期间使每个节点统一采样固定数量的邻居节点。PETAR等19提出GAT,通过注意力机制来定义聚合函数,从而学习具有权重的邻域信息。现有融合机器学习的服装建模方法主要使用单一精度的网格,对于变形程度较低的区域,不需要太多的顶点个数,但是对这些顶点的计算延长了计算时间。为此,
16、本文提出基于子图卷积神经网络的多精度服装建模方法。从多精度服装网格结构中结合人体结构化模型,提取基于时空的多精度服装图结构,将子图卷积神经网络运用在多精度服装图结构上,为给定顶点采样邻居节点的特征,通过聚合给定顶点和邻居节点的特征来预测服装顶点在下一时刻的位置,生成高效逼真的服装动画。1相关工作1.1瑞利熵曲率度量高斯曲率是衡量三角形网格面片间弯曲程度的方式,MEYER等20定义了离散高斯曲率,如式(1)所示:KiGC=1Ai()2-k NFiK(1)其中:K表示第K个三角形面片的角度;NFi表示第i个顶点的F个相邻三角形面片组成的邻域;Ai表示第i个顶点周围的三角形面片邻域总面积。高斯曲率表
17、示两个主曲率的乘积,其在低形变服装区域和中形变服装区域中表示曲面弯曲程度,但是在高形变服装区域内,一个较大的主曲率乘以一个较小的主曲率,结果有可能还是一个较小的主曲率,这样不能较好地呈现褶皱的变形趋势。因此,GUNDOGDU等21引入特征曲率,计算每个顶点的协方差矩阵Ki,并将其定义为:Ki=1Ki NKi(Gj-G?i)(Gj-G?i)T(2)其中:Gi表示顶点i的3D位置;Gj表示与顶点i共享边的顶点j的3D位置;NKi表示与顶点i共享一条边的一组顶点;G?i表示NKi中所有点的平均值。之后,计算协方差矩阵Ki最小特征值imin和最大特征值imax。对于低形变服装区域,最大特征值imax明
18、显大于最小特征值imin。对于中形变服装区域,最大特征值imax与最小特1752023年 4月 15日Computer Engineering 计算机工程征值imin接近。对于高形变服装区域,最大特征值imax略大于最小特征值imin。因此,这三种不同褶皱区域的特征值分布是不同的。由于低形变服装区域的协方差矩阵在特征值求解中不稳定,因此采用局部邻域瑞利熵代替特征值求解,并将其表示为:RQ()Ki,Gj=GTjKiGjGTjGj(3)其中:imin RQ()Ki,Gj imax。GUNDOGDU 等21使用RQ()Ki,Gj的最小值和最大值作为曲率的估计,并将其表示为:RQimin=minj N
19、KiRQ()Ki,GjRQimax=maxj NKiRQ()Ki,Gj(4)1.2服装网格细分与粗化本文采用的细分规则是基于平均变形度的LOOP细分规则22,对高形变服装区域进行一次细分,其细分规则如图 1所示。图 1(a)中空心顶点为网格顶点,黑色实线为构成网格三角形面片的边,图1(b)中实心顶点与虚线为构成的三角形网格一次 LOOP 细分后的结果。本 文 采 用 的 粗 化 规 则 是 基 于 平 均 变 形 度 的QEM 简化规则23,对低形变服装区域进行 QEM 简化,其简化规则如图 2 所示。图 2(a)中实心顶点为网格中最小 Q 值的顶点对,将vi和vj进行收缩,简化为图 2(b)
20、中实心顶点v。2本文方法2.1多精度服装网格划分虽然布料在外力作用下变形程度复杂,但是在同一运动趋势且没有瞬时较大外力下,其变形区域分布情况相似,褶皱的产生及变形也相对稳定。为了有效且快速地获取服装网格在某一运动趋势下的变形度,本文通过对某一运动趋势下服装的变形度进行采样分析,获得服装网格在该运动趋势中各区域的平均变形度,确定平均变形度阈值,根据平均变形度阈值对服装网格进行划分。直观上,曲面法向量的变化程度与弯曲程度呈正相关。因此,本文有针对性地将服装划分为低、中、高形变区域。其中,低形变区域描述为曲面法向量基本不发生变化的平缓区域,中形变区域描述为曲面法向量平缓变化的半球状区域,高形变区域描
21、述为曲面法向量激烈变化的山脊状区域。对于网格的顶点 i,本文将 i 点的瑞利熵曲率度量定义为:RQiC=RQiminRQimax(5)对于低形变区域,瑞利熵曲率度量接近 0;对于中形变区域,瑞利熵曲率度量接近 1;对于高形变区域,瑞利熵曲率度量高于低形变区域和中形变区域。因此,通过阈值划分可以分割服装网格的低、中、高形变区域。高斯曲率度量与瑞利熵曲率度量对比效果如图 3所示。从图 3可以看出,瑞利熵曲率度量相对于高斯曲率度量不仅能更明显地区分出平坦和弯曲区域,而且更加准确地识别褶皱细节,展现了瑞利熵曲率度量的优越性。本文通过对瑞利熵曲率的度量分析,将瑞利熵曲率度量RQiC作为顶点 i的变形度,
22、通过对每个顶点的变形度进行 P 次采样,以缩短数据处理和采样时间,提高计算效率。根据在服装模拟过程中的变形程度确定采样次数 P。如果服装变形剧烈,则采样次数 P 取较大值,否则取较小值。由于在服装模拟过程中,每两帧之间并不会都出现大幅变形,因此本文每隔一段时间对每个顶点进行一次采样。在服装变形较为剧烈的时间段降低采样间隔,在变形较为平缓的时间段增加采样间隔。因此,选取的采样次数 P 远小于服装模拟的总帧数。顶点 i 在 P 次采样后得到的平均变形度如式(6)所示:图 1基于平均变形度的 LOOP细分规则Fig.1LOOP subdivision rules based on average d
23、eformation degree图 2基于平均变形度的 QEM 简化规则Fig.2QEM simplified rules based on average deformation degree图 3高斯曲率度量与瑞利熵曲率度量对比Fig.3Comparison of Gaussian curvature measure and Rayleigh entropy curvature measure176第 49卷 第 4期陈治旭,靳雁霞,芦烨,等:基于子图卷积神经网络的多精度服装建模方法Fi=p=1PFp(RQiC)P(6)其中:Fp(RQiC)为顶点 i 在第 P 次采样时的变形度。本文将
24、顶点平均变形度Fi提取为服装顶点 i在整个服装模拟过程中的变形度特征,随后设置合适的变形度阈值,将服装划分为高、中、低三种不同的形变区域。低形变区域使用 QEM 简化规则对网格进行粗化,中形变区域保持不变,高形变区域使用 LOOP细分方法对网格进行细分。本文通过瑞利熵曲率度量提取服装的平均变形度,将服装划分为高、中、低形变区域,使用 LOOP细分和 QEM 简化方法,对不同区域进行细分和粗化,最终获得多精度服装网格。2.2多精度服装图结构构建为避免计算迭代积分和非线性方程浪费大量的计算资源和计算时间,本文使用机器学习的方法预测下一时间节点的服装顶点位置。由于在多精度服装结构中服装顶点的邻居顶点
25、数并不固定,因此无法使用规则卷积。然而图卷积神经网络能够有效解决这个问题。因此,本文从多精度服装网格结构中抽象多精度服装图结构,并使用子图卷积神经网络来预测服装顶点在下一时刻的位置。人体运动驱动服装运动,使服装产生不同程度的褶皱变形。学习人体运动与服装变形之间的关系,需要提取人体运动特征和与其对应的服装变形特征数据。2.2.1人体运动特征提取SMPL模型24将人体Mb(,)表示为姿态和形状的参数函数,本文从 SMPL中提取的姿态模型作为参数化人体模型,如式(7)所示:Mb()=W(Tb(),J(),Wb)Tb()=B+Bp()(7)其中:在线性函数Tb(,)中,B为 T-POSE 下的人体蒙皮
26、顶点数据;Bp()增加了依赖于姿态的变形;W为关节点J()对顶点的影响权重。2.2.2服装变形特征提取由于服装随人体模型的变化而改变,因此本文根据 SMPL 人体模型的顶点函数对每个服装顶点进行变形。D为蒙皮算法下服装模型与Tb()的位移。针对不同的服装类型,D的取值也各不相同。服装顶点变形如式(8)所示:Tg(,D)=Tb()+DMg(,D)=W(Tg(,D),J(),Wg)(8)当身体网格出现变形时,这些服装顶点随身体网格发生形变。本文将模拟的服装顶点位置写成Dg=D+d,其中d对应于D,从Dg到D的服装顶点位置偏移。对于任意,D由 SMPL 的蒙皮算法确定,因此,机器学习从(,d)中学习
27、服装顶点偏移值d,减少了非线性变化,如式(9)所示:Mg(,d)=Wd(Mg(,D),d,Wd)(9)本 文 构 建 基 于 SMPL 产 生 的 粗 糙 服 装 模 型Mg(,D)和在Mg(,D)上添加精细褶皱的服装模型Mg(,d)。2.2.3时空多精度图结构构建从 SMPL 中提取 24个关节构建时空关节图Gb=(Vb,Eb),其中,Vb表示关节节点集合,Eb表示边集合。节点集Vb=Vtmb|t=1,2,T;m=1,2,24,包括SMPL人体模型中的24个关节节点,其中m表示关节节点个数,T表示帧数。边集Eb中含有两个子集:一个子集为每帧相邻的两个关节节点通过连接形成的边,表示ESb=Vt
28、mbVtnb,即为空间域上的边;另一个子集为相邻两帧之间同一关节节点通过连接形成的边,表示EFb=VtmbV(t+1)mb,即为时间域上的边。由于每一时刻服装网格结构的位置均基于上一时刻的位置发生改变,因此本文构建时空上的服装图结构Gg=(Vg,Eg),其中,Vg表示服装顶点集合,Eg表示边集合。节点集Vg=Vtig|t=1,2,T;g=2,k包括服装模型中所有服装的顶点,其中,k表示服装顶点个数,T表示帧数。边集Eg含有两个子集:一个子集为每帧相 邻 的 两 个 服 装 顶 点 连 接 形 成 的 边,表 示ESg=VtigVtjg,即为空间域上的边;另一个子集为相邻两帧之间同一服装顶点连接
29、形成的边,表示EFg=VtigV(t+1)ig,即为时间域上的边。将时空服装图结构Gg=(Vg,Eg)的Vg服装顶点和时空关节图结构Gb=(Vb,Eb)中距离Vg最近的四个关节节点相连接构成多精度服装图结构G=(V,E)。以服装顶点V(t+1)ig为例,基于时空的多精度服装图结构如图4所示(彩色效果见 计算机工程 官网HTML版),其中,红色线段为时间边,绿色线段为空间边,黄色顶点为服装顶点,蓝色顶点为关节节点。本文提取人体运动特征和服装变形特征,在时间域和空间域上将两者相连接,最终提取出适合图卷 积 神 经 网 络 训 练 的 基 于 时 空 的 多 精 度 服 装 图结构。2.3子图卷积神
30、经网络算法图卷积神经网络的核心是定义节点之间的聚合图 4基于时空的多精度服装图结构Fig.4Structure of multi-precision clothing graph based on space-time1772023年 4月 15日Computer Engineering 计算机工程函数。通过聚合函数将每个服装顶点表示为邻居节点和自身节点信息的叠加。因此,服装顶点的更新分为两个步骤:1)将聚合函数作用在服装顶点及其邻近节点上,得到服装顶点的局部结构表达;2)将更新函数作用在自身和局部结构表达上,得到当前服装顶点的新表达。通过将图卷积神经网络的每一层设计成上述的聚合函数和更新函数
31、,每个服装顶点可以不断以自身和邻近节点为源信息更新自身,进而得到依赖于服装顶点局部结构的新表达。上述方法使得图卷积神经网络应用于多精度服装图结构,然而在图卷积神经网络训练期间,将所有节点的特征向量以及整个图的邻接矩阵作为输入。对于多精度服装图结构这种大规模的图结构,图卷积神经网络的训练会消耗过多的内存和计算资源,从而限制了图卷积神经网络在多精度服装图结构上的应用。为减少计算复杂度并降低计算资源需求,本文使用子图卷积神经网络进行模型训练。基于图卷积神经网络,子图卷积神经网络聚合函数被定义成循环递归函数的形式,每个节点以周围节点和连边作为来源信息更新自身的表达,分层传播规则的表达如式(10)所示:
32、V?l=g(Vl,A,p)Vl+1=c(V?l)(10)其中:A为多精度服装图结构G=(V,E)的邻接矩阵;Vl=Vnl|l=1,2,L;n=1,2,N,L表 示 卷 积 的 层数,N表示节点数;g()为聚合函数;c()为更新函数;p为子图规模大小,表示子图卷积神经网络的视野范围。每个节点Vnl都有 3个特征。在邻接矩阵A中通过简单查找操作获得Vnl相邻节点的索引,本文以Vnl为目标节点,按各节点到Vnl的边数划分为 T阶邻居,剔除每层节点重复出现的节点。在该邻居节点序列上给不同阶的邻居节点按 1T 阶赋予不同的优先级,每一阶关节节点相比服装顶点具有更高的优先级,关节节点和服装顶点距离目标顶点
33、越近,优先级越高。对于短路径赋予较大的权重,而长路径赋予较小的权重,长路径相对于短路径的衰减值设置为(1)。对于关节节点赋予较大的权重,而服装顶点赋予较小的权重,服装顶点相对于关节节点的衰减值设置为(1)。将每个邻居节点存储到树形结构中,根节点存储Vnl顶点,按照各节点优先级的大小,存储为 t阶树形结构,在该树形结构中采样出尺寸为p的子图。在每次采样节点的过程中,都根据节点优先级进行排序,使用树形结构减少排序消耗的计算资源,权重表示如式(11)所示:egb=Tegbegg=Tegb(11)其中:egb表示关节节点Vb对服装顶点Vg的重要性;egg表示服装顶点Vg的邻居服装顶点对服装顶点Vg的重
34、要性;T为第 T阶邻居节点。在时空关系中,服装顶点在 t时刻,使用Mg(,d)服装模型,服装顶点在 t+1 时刻,使用Mg(,D)服装模型。在该序列上,采样p个节点,并将采样到的节点作为相关节点输入到子图卷积神经网络后,将聚合函数g()作用在服装顶点的特征表达上,并利用聚合结果更新服装顶点的特征表达,直到在 t+1时刻产生满意的Mg(,d)服装模型。由此,产生了与时间相关的连续平滑动画。损失函数的选择在子图卷积神经网络的训练中起着重要的作用。本文的损失函数如式(12)所示:L(dP,dG)=1ni=1ndP-dG2(12)其中:dP为子图卷积神经网络的预测值;dG为物理方法模拟服装的真实值。本
35、文在多精度服装图结构上,使用子图卷积神经网络为不同类型的邻居节点赋予不同的权重,实现了多精度服装的机器学习算法。3实验结果与分析本文实验在 Linux 系统下使用 Python 语言在PyCharm 平台环境下实现。本文的所有实验均在一台 Intel Core i7 9700,82 GB 双通道内存,显卡型号是 NVIDIA GeForce RTX 2070 Super的 PC 机上实现,选择长袖、短袖和长裤三种基本款式,分别在男模型和女模型上进行实验。3.1多精度服装的构建本文实验对 6 种服饰进行瑞利熵曲率计算,并在指定的采样次数中,通过阈值将采样结果分为低、中、高形变区域。表 1 所示为
36、在不同服装模型中面片的数量、顶点数及采样次数。依据瑞利熵曲率,本文实验在划分过程中针对不同的服装模型设置不同的划分阈值。将长袖的划分阈值设置为 0.671 和 0.629,短袖的划分阈值设置为 0.714 和 0.686,长裤的划分阈值设置为 0.732 和0.656。通 过 对 本 文 设 置 的 高 形 变 区 域 进 行 一 次LOOP 细分,中形变区域保持不变,低形变区域粗化率设置为 0.2。利用不同的细分阈值控制高精度网格占整个多精度网格的比重,以满足不同应用场景对模拟效果和效率的需求。图 5 所示为不同服装模型瑞利熵曲率划分的结果。图 5(a)所示为在女士前伸手臂动作下,长袖服装模
37、型瑞利熵曲率划分的结果,服装变形主要集中在胸肩部、腹腰部及手肘关节处。图 5(b)所示为在表 1服装模型仿真数据 Table 1Simulation data of clothing model服装模型长袖短袖长裤三角面片数/个19 22115 1809 283顶点数/个9 7237 7024 718采样次数/次383223178第 49卷 第 4期陈治旭,靳雁霞,芦烨,等:基于子图卷积神经网络的多精度服装建模方法女士双手举起动作下,短袖服装模型瑞利熵曲率划分 的 结 果,服 装 变 形 主 要 集 中 在 胸 肩 部 及 背 部。图 5(c)所示为在女士下蹲动作的长裤服装模型瑞利熵曲率划分的
38、结果,服装变形主要集中在髋关节和膝关节处。图 5(d)所示为在男士弯腰碰触脚面动作下,长袖服装模型瑞利熵曲率划分的结果,服装变形主要集中在腹腰部及手肘关节处。图 5(e)所示为男士低头平行举起双臂动作下,短袖服装模型瑞利熵曲率划分的结果,服装变形主要集中在胸肩部及背部。图 5(f)所示为男士前后曲腿动作下,长裤服装模型瑞利熵曲率划分的结果,服装变形主要集中在髋关节和膝关节处。从图 5 可以看出:瑞利熵曲率能够有效地衡量网格的变形程度,并通过阈值将服装网格划分为低形变、中形变、高形变区域。对高形变区域细分,对低形变区域进行粗化,中形变区域保持不变,由此生成多精度服装模型。3.2子图规模选择在多精
39、度服装模型构建完成后,本文提取多精度服装图结构,并对多精度服装图结构进行数据处理。在多精度服装图结构中,对于一个服装顶点,其一阶邻居节点为与服装顶点相连的相邻服装顶点、关节节点以及上一时刻的服装顶点,二阶邻居节点为相邻服装顶点的一阶邻居顶点、关节节点的一阶邻居节点与上一时刻服装顶点的一阶邻居节点。与服装顶点的邻居节点相似,关节节点的邻居节点包含了服装顶点、其他关节节点以及上一时刻的关节节点。由于本文选择与服装顶点相连的关节节点作为最近的四个关节节点,因此与关节节点相连的邻居节点也是服装顶点的邻居节点。子图规模对平均误差的影响如图 6所示。在一定范围内,子图规模p越大,视野范围越大,采样数目越多
40、,误差越小,耗费时间越多。p在超过 445 之后,误差值趋于平缓,对于当前的机器性能,p的最大值可取到 2 000。3.3仿真效果与算法对比本文在 TailorNet12提供的数据集上进一步处理得到多精度服装数据集,并在该数据集上进行模型训练,实现基于多精度服装网格的机器学习算法。目前,融合机器学习的服装建模方法大多使用单一精度网格,本文对不同方法的实验结果进行对比。3.3.1本文方法与多精度物理建模方法的对比本文方法的预测结果与真实结果的对比如图 7所示(彩色效果见 计算机工程 官网 HTML 版)。图 7(a)图 7(f)分别展示三种基本款式(短袖、长袖和长裤)在女模型和男模型上的仿真结果
41、,其中蓝色服装为本文方法预测的结果,黄色服装为物理模拟的结果,蓝黄混合色服装是本文预测结果和物理模拟结果叠放一起的结果。从图 7 可以看出,本文方法保留了物理模拟的实际褶皱,服装在关节附近产生的形变具有非常逼真的效果。而对于距离关节较远处服装产生的变形,如图 7(d)中圆圈所示,预测得到的服装相对平滑。本文将预测的服装与物理模拟的服装叠放在一起,以更形象地展示两者模拟结果的对比误差。3.3.2不同方法的对比多精度布料网格建模方法(如文献 5、文献 25等)均为从一段布料运动仿真实例中获取布料变形程图 7本文方法的预测结果与真实结果的对比Fig.7Comparison between the p
42、redicted results of the proposed method and the real results图 5服装模型瑞利熵曲率划分结果Fig.5Division results of Rayleigh entropy curvature of clothing model图 6子图规模对平均误差的影响Fig.6Influence of subgraph scale on mean error1792023年 4月 15日Computer Engineering 计算机工程度,以变形程度为依据对低精度网格进行细分,得到多精度网格几何模型。针对该几何模型构建对应的多精度网格物理模
43、型,在模拟过程中使用传统的物理方法迭代求解。该类方法虽然在一定程度上提高了仿真效率,但是耗时较久。从数据预处理方面对本文方法与该类方法进行对比。在数据预处理阶段不同方法的数据处理方式对比如表2所示,其中包括对网格变形度的采样特征、采样数据处理方法、采样方法和多精度网格的构建方法。文献 25 方法的曲率计算方法仅适用于四边形网格,无法用于建模使用更广泛的三角形网格的曲率计算。相比文献 5 方法的法向量夹角计算方法,本文方法使用瑞利熵曲率衡量服装变形度,具有较优的鲁棒性,在各种情况下都能衡量曲面的弯曲程度。在采样数据处理方面,本文使用数据平均的方法,简单高效。本文的采样方法在服装变形剧烈的时间段内
44、能够采样更多的帧,在变形平缓的时间段内采样较少的帧,因此总的采样次数远少于文献 5 所提的方法,与文献 25使用的方法相似,再结合平均算法进行处理,可以更好地反映出服装在一段运动中的变形程度。此外,采用细分+粗化的方式构建多精度服装网格,进一步减少网格顶点个数。因此,本文方法在预处理过程中的耗时介于两者之间,但构建的多精度网格顶点数量最少,并且对原始网格的划分更准确。3.3.3本文方法与 TailorNet方法的对比本文方法与TailorNet方法的平均误差与最大误差对比如图8所示。本文方法的平均误差为8.56 mm,最大 误 差 为 13.29 mm,TailorNet 方 法 的 平 均
45、误 差 为10.34 mm,最大误差为 14.51 mm,本文方法略优于TailorNet方法。本文方法与 TailorNet方法的三角面片数对比如表 3所示。本文方法大幅地减少了服装网格中的三角面片数,但仍然能实现逼真的模拟效果。不同方法在各服装网格上的平均每帧耗时对比如表 4 所示。相比物理模拟,本文的模拟效率加快了 44 倍,相比 TailorNet 方法,本文方法的模拟效率平均提高了 25.3%。因此,本文方法在保留基于物理模拟服装褶皱的前提下,加快了模拟的速度。本文方法的优越性还展现在针对运动趋势不明显的服装模拟,由于 TailorNet方法仅依赖于 SMPL人体运动关节的变形,因此
46、对于一些不依赖运动驱动的服装变形,预测效果较差。本文方法不仅考虑到关节运动带来的服装变形,同时也考虑了周围顶点和时空特性,在针对不完全由运动驱动的服装变形时,虽然相比物理模拟的结果较差,但是对比 TailorNet方法具有更加明显的褶皱。不同方法的仿真模拟效果如图9所示(彩色效果见 计算机工程 官网HTML版),图9(a)中的黄色为物理模拟的服装,图9(b)蓝色为本文方法预测的服装,图 9(c)红色为 TailorNet方法预测的服装。4结束语为平衡服装动态仿真的效率和逼真度,本文提出表 2不同方法的数据处理方式对比 Table 2Data processing methods compari
47、son among different methods方法文献5文献25本文方法采样特征法向量夹角曲率瑞利熵曲率采样数据处理方法数据平均数据聚类数据平均采样方法间隔采样逐帧采样动态采样多精度网格构建方法细分细分细分+粗化图 8不同方法的平均误差与最大误差对比Fig.8Mean error and maximum error comparison among different methods表 3本文方法与 TailorNet方法的三角面片数对比 Table 3Number of triangular patches comparison of the proposed method and
48、TailorNet method 单位:个服装模型长袖短袖长裤本文方法11 1647 7015 821TailorNet方法19 22115 1809 283表 4不同方法的平均每帧耗时对比 Table 4Average time consumption per frame comparison among different methods 单位:ms服装模型长袖短袖长裤方法本文方法TailorNet物理模拟本文方法TailorNet物理模拟本文方法TailorNet物理模拟平均每帧耗时1.72.374.41.01.447.30.70.931.6图 9不同方法的仿真结果对比Fig.9Simu
49、lation results comparison among different methods180第 49卷 第 4期陈治旭,靳雁霞,芦烨,等:基于子图卷积神经网络的多精度服装建模方法一种基于子图卷积神经网络的多精度服装建模方法。构建服装的时空模型,结合人体模型与服装模型提取基于时空的多精度服装图结构,并利用子图卷积神经网络进行训练。实验结果表明,相比 TailorNet现有方法,本文方法模拟的服装不仅具有更真实的效果,而且模拟效率平均提高25.3%,实现在多精度服装网格上进行仿真的机器学习算法。下一步将通过改变SMPL模型参数,模拟与多种体态(高、矮、胖、瘦)人体模型相对应的服装动画,
50、并学习参数与服装模型之间的关系,提高本文方法的灵活性,并将其应用在不同体态的模型上。参考文献 1 朱淮冰,金小刚,冯结青,等.布料动画模拟综述 J.计算机辅助设计与图形学学报,2004,16(5):613-618.ZHU H B,JIN X G,FENG J Q,et al.Survey on cloth animation J.Journal of Computer Aided Design Computer Graphics,2004,16(5):613-618.(in Chinese)2 梁秀霞,韩慧健,张彩明.基于物理仿真的布料动画研究综述 J.计算机研究与发展,2014,51(1):