本发明涉及一种三维虚拟服装自适应着装方法,属于服装设计技术领域。
背景技术:
三维虚拟服装展示涉及众多学科领域的技术融合,致力于产生逼真而富有动感的展示效果。20世纪80年代中后期以来,虚拟三维服装仿真技术经历了从简单织物变形形态的静态模拟到三维复杂服装动态模拟的过程。对织物以及服装的模拟主要归结于建模技术与数值方法的结合,不同的织物服装有不同的建模技术,对于同种模型,不同的数值计算方法的计算效率也不尽相同。
现有的三维虚拟服装的着装效果的展示方法中,皆是将服装应用在特定的三维人体姿态上,为了更好的展示三维服装的着装效果,需要在保持三维虚拟服装几何特征和尺寸的前提下,对三维虚拟服装在不同人体表面再次着装,目前现有技术中还没有这种三维虚拟服装自适应着装方法。
技术实现要素:
本发明要解决的技术问题是如何在保持三维虚拟服装几何特征和尺寸的前提下,对服装进行重新穿着,以展示良好的着装效果。
为了解决上述技术问题,本发明的技术方案是提供一种三维服装自适应着装方法,其特征在于,该方法由以下6个步骤组成:
步骤1:将三维虚拟服装生成多个裁片;
步骤2:将三维人体对应所述三维虚拟服装的裁片进行分割;
步骤3:将三维虚拟服装裁片与三维人体进行姿态匹配;
步骤4:对三维虚拟服装裁片进行缝合,并保持缝合过程中三维虚拟服装裁片的几何特征;
步骤5:对三维虚拟服装与人体之间进行穿透补偿;
步骤6:对三维虚拟服装自身进行穿透补偿。
优选地,所述步骤1中,三维虚拟服装裁片的生成遵循以下原则:
原则一:对于左右衣袖,生成四个裁片,分别为:左衣袖前片、左衣袖后片、右衣袖前片、右衣袖后片;
原则二:对于衣身,生成前后两个裁片;
原则三:对于裤装,生成四个裁片,分别为:臀部左裁片、臀部右裁片、左裤腿裁片、右裤腿裁片;
原则四:对于连衣帽,生成两个裁片:连衣帽左裁片、连衣帽右裁片。
优选地,所述步骤2中,三维人体的分割遵循以下原则:
原则一:头部从躯干分离,并分为三部分,分别为:头部前部、头部后左部、头部后右部;
原则二:手臂从躯干分离,腿部从躯干分离;
原则三:对于上衣着装,躯干分为前后两部分;
原则四:对于裤装着装,臀部从躯干分离,并分为两部分:左臀部和右臀部。
优选地,所述步骤3包括以下两个步骤:
步骤3.1:根据三维虚拟服装和人体的关键点,将服装和人体位置重合;
步骤3.2:根据三维虚拟服装裁片和对应人体部位的点云特征进行姿态匹配;
通过求得源点云和目标点云最优化旋转、平移矩阵对裁片进行仿射变换,最优化旋转、平移矩阵的求解方程为:
其中,f(r,t)为源点云的仿射变换矩阵;xi为三维虚拟服装裁片中的顶点;yi是三维人体中的顶点;n为匹配顶点个数,i=1、2……、n;r为旋转矩阵;t为平移矩阵;当r、t使得f(r,t)为最小值时,为源点云的最优仿射变换矩阵。
优选地,所述步骤4中,使用公式
其中,vi为第i条缝合线中的网格顶点,t为第i条缝合线中顶点的个数,vsewn为vi被缝合后的最终位置;
通过拉普拉斯均值变换保持缝合过程中三维虚拟服装裁片的几何特征,vi邻居顶点的变换公式为
优选地,所述步骤5包括以下三个步骤:
步骤5.1:通过层切法,获得同一水平切面的三维虚拟服装网格和人体网格,使用服装网格顶点vi的法向量n向人体网格做射线,求得交点v′i;
步骤5.2:以vi为中心,分解vi所在的三角形,并移动vi到v′i;
步骤5.3:使用拉普拉斯均值变换算法保持vi邻居顶点的几何特征。
优选地,所述步骤6中,通过同步移动的方法来消除服装自身的穿透问题,具体如下:
步骤6.1:在步骤5.2中,移动vi时,使用经过vi、方向为n的射线,求与当前服装裁片网格的交点,如果有相交存在,设为
步骤6.2:以
步骤6.3:使用拉普拉斯均值变换算法保持
本发明提供的方法克服了现有技术的不足,通过对服装网格进行虚拟剪裁,将得到的服装裁片与人体对应部位进行点云特征姿态匹配,并对裁片进行几何缝合,来达到三维虚拟服装在不同人体穿着,并保持服装几何特征和尺寸的目的。
附图说明
图1为三维虚拟服装的自适应着装总体示意图;(a)源服装上衣;(b)源服装裤子;(c)源人体;(d)上衣裤子穿着前面;(e)上衣裤子穿着后面;
图2为服装分片;(a)上衣分片前面;(b)上衣分片后面;(c)裤子分片前面;(d)裤子分片后面;
图3为人体分割;(a)人体分割前面;(b)人体分割后面;
图4为服装姿态匹配;(a)上衣裁片初始位置匹配;(b)上衣裁片点云特征匹配;
图5为三维虚拟服装裁片缝合示意图;
图6为三维虚拟服装与人体穿透补偿结果示意图;
图7为服装自穿透补偿示意图;(a)自穿透补偿前;(b)自穿透补偿后。
具体实施方式
下面结合具体实施例,进一步阐述本发明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所附权利要求书所限定的范围。
本实施例提供了一种三维服装自适应着装方法,如图1所示,图1(a)表示源服装上衣,图1(b)表示源服装裤子,图1(c)表示源人体,将源服装上衣和源服装裤子在保持三维服装几何特征和尺寸的前提下,重新穿着在源人体上,上衣裤子穿着前面效果如图1(d)所示,上衣裤子穿着后面效果如图1(e)所示。
三维服装自适应着装方法的具体步骤如下:
步骤1:三维虚拟服装的裁片生成。如图2所示,三维虚拟服装的裁片的生成遵循以下原则:
原则一、对于左右衣袖,生成四个裁片,分别为:左衣袖前片、左衣袖后片、右衣袖前片、右衣袖后片。
原则二、对于衣身,生成前后两个裁片。
原则三、对于裤装,生成四个裁片,分别为:臀部左裁片、臀部右裁片、左裤腿裁片、右裤腿裁片。
原则四、对于连衣帽,生成两个裁片:连衣帽左裁片、连衣帽右裁片。
步骤2:三维人体的分割。如图3所示,三维人体的分割遵循以下原则:
原则一、头部从躯干分离,并分为三部分,分别为:头部前部、头部后左部、头部后右部。
原则二、手臂从躯干分离,腿部从躯干分离
原则三、对于上衣着装,躯干分为前后两部分。
原则四、对于裤装着装,臀部从躯干分离,并分为两部分:左臀部和右臀部。
步骤3:三维虚拟服装裁片与三维人体的姿态匹配。包括以下两个步骤:
步骤3.1:根据三维虚拟服装和人体的关键点,将服装和人体位置重合,如图4(a)。
步骤3.2:根据三维虚拟服装裁片和对应人体部位的点云特征进行姿态匹配,如图4(b)。
通过求得源点云和目标点云最优化旋转、平移矩阵对裁片进行仿射变换。最优化旋转、平移矩阵的求解方程为:
式中,f(r,t)为源点云的仿射变换矩阵;xi为三维虚拟服装裁片中的顶点;yi是三维人体中的顶点;n为匹配顶点个数,i=1、2……、n;r为旋转矩阵;t为平移矩阵。当r、t使得f(r,t)为最小值时,为源点云的最优仿射变换矩阵。
步骤4、三维裁片的缝合,如图5。
使用公式
步骤5:三维虚拟服装与人体的穿透补偿,如图6。
步骤5.1:通过层切法,获得同一水平切面的三维虚拟服装网格和人体网格,使用服装网格顶点vi的法向量n向人体网格做射线,求得交点v′i。
步骤5.2:以vi为中心,分解vi所在的三角形,并移动vi到v′i。
步骤5.3:使用拉普拉斯均值变换算法保持vi邻居顶点的几何特征。
步骤6:三维虚拟服装自身的穿透补偿,如图7。通过同步移动的方法,来消除服装自身的穿透问题。
步骤6.1:在步骤5.2中,移动vi时,使用经过vi、方向为n的射线,求与当前服装裁片网格的交点,如果有相交存在,设为
步骤6.2:以
步骤6.3:使用拉普拉斯均值变换算法保持
试验表明,本实施例提供的三维服装自适应着装方法可以实现三维虚拟服装在不同人体穿着,展示良好的着装效果,并保持服装几何特征和尺寸。