CN105678838A - 用于设计具有至少一件服装的化身的计算机实现的方法 - Google Patents
用于设计具有至少一件服装的化身的计算机实现的方法 Download PDFInfo
- Publication number
- CN105678838A CN105678838A CN201510885905.6A CN201510885905A CN105678838A CN 105678838 A CN105678838 A CN 105678838A CN 201510885905 A CN201510885905 A CN 201510885905A CN 105678838 A CN105678838 A CN 105678838A
- Authority
- CN
- China
- Prior art keywords
- summit
- clothes
- model
- incarnation
- grid
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
- G06T17/205—Re-meshing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/16—Cloth
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/21—Collision detection, intersection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/20—Indexing scheme for editing of 3D models
- G06T2219/2004—Aligning objects, relative positioning of parts
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Graphics (AREA)
- General Engineering & Computer Science (AREA)
- Architecture (AREA)
- Computer Hardware Design (AREA)
- Geometry (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Processing Or Creating Images (AREA)
- Human Computer Interaction (AREA)
Abstract
一种用于设计具有至少一件服装的化身的计算机实现的方法,所述方法包括以下步骤:S1)提供包括骨架(SN)和覆盖骨架的皮肤(SK)的化身的数字模型;S2)提供包括网格的服装(GT)的数字模型,所述网格具有由定义面的边所连接的多个顶点(vg1-vg7),每个顶点通过相应的加权系数而与化身的骨架的至少一块骨骼(B1、B2)相关联;S3)将位移方向(dd1-dd7)与服装的每个顶点相关联,所述位移方向取决于骨架和所述加权系数;以及S4)检测化身的皮肤与服装之间的冲突,并且每当检测到冲突时,使服装的顶点沿着所述位移方向而远离化身的骨架。用于执行这种方法的计算机程序产品、计算机可读数据存储装置和计算机辅助设计系统,以及适合通过这样的方法来设计的穿着至少一件服装的化身。
Description
技术领域
本发明涉及用于设计具有至少一件服装的化身(avatar)的计算机实现的方法。
背景技术
在下文中,将广泛地使用单词“化身”来指定计算机生成的人或动物体、人形的或动物形生物、或者甚至是植物或无生命物体的二维或(最经常的)三维表示。然而,最经常地,化身将是人或类人体的表示。优选地,但非必须的,化身可以是能够活动的。
单词“服装”将指的是衣服或其类似物,包括例如帽子等适合由化身穿戴的配件。
在下文中,“三维”(或“3D”)物体将是允许三维(3D)表示的物体(或其数字模型)。3D表示允许从各个角度来观察零件。例如,当对3D化身或服装进行3D表示时,可以围绕着其任何轴或其上显示有所述表示的屏幕中的任何轴来对所述3D化身或服装进行处理或旋转。
相反地,“二维”(或“2D”)物体将是仅允许二维(2D)表示(例如,在平面上)的物体(或其数字模型)。例如,2D化身或服装仅可以在其上显示有所述表示的屏幕的平面上进行平移,或围绕着垂直于所述屏幕的坐标轴进行旋转。
化身在许多应用中被使用。其中之一是计算机辅助设计:设计者需要化身来对建筑、物体、家具件、机器或其类似物与人的互动来进行仿真——例如,从而研究飞机座椅的人机工程学。其他应用是可视游戏和电影动画。因此,图形软件常常提供预定义的化身和工具的库来对化身进行配置,例如,通过改变其形态。
最经常地,化身穿着服装并且有时穿戴诸如帽子或珠宝等配件。需要这样做以获得真实的表示,并且有时也是出于功能的原因(例如,座椅的人机工程学可能根据用户所穿着的衣服而非常不同)。
化身和服装两者通常由存储在计算机图形系统的库中的数字模型来进行表示。
那么,需要允许使服装的数字模型适合于化身的形态和大小的工具。例如,必须使连衣裙的模型适合于不同大小和形态的穿着者。理想地,如果化身的形态或大小改变,那么服装应该快速调整自身并且需要最少的用户干预或不需要用户干预。特别地,这样的软件工具应该能够识别并解决“冲突”或“抵触”,即,服装的一些部分位于化身的身体内部的情况。
从现有技术中公知的几种方法满足该需要。
R.Brouet等人的论文“DesignPreservingGarmentTransfer”,ACMTransactionofGraphics(TOG)ProceedingsofACMSIGGRAPH2012Volume31Issue4,July2012描述了一种允许将被设计为适合于“参考”身体的服装转移至不同的“目标”身体的方法。该方法的主要缺点是需要已知参考身体:该方法不允许从库中提取服装并且使其适合于化身。此外,该方法是复杂的,并因此是缓慢的(可能需要几分钟的处理器时间来调整比较复杂的服装)。
在PengGuan等人的论文“DRAPE:DRessingAnyPErson”;ACMTrans.OnGraphics(Proc.SIGGRAPH),31(4):35:1-35:10,July2012中描述的DRAPE系统是一种用于在具有不同的形状和姿势的合成的身体上动画绘制衣服的完整系统。其使用从基于物理的仿真的数据库中学习到的服装模型。将该方法应用到本文所考虑的问题中将会过于复杂,在本文中,服装必须适合于不确定数量的不同的化身。此外,已经发现在一些情况下DRAPE可能会导致不切实际的结果。用于改进服装的合适度的DRAPE的子集不需要这样的基于物理的仿真的数据库,并且可以直接被应用到表示服装的任何网格中。然而,这只适用于对化身的小修改,并且其不能用于例如使连衣裙适合于孕妇。
本发明目标在于克服上述的现有技术的缺点。更加具体而言,其目标在于提供一种使服装适合于化身的简单并且快速实现的、全自动的并且在大多数情况下产生视觉上合理的结果的方法。
根据本发明,该目标是由在许多应用中在角色动画背后的技术的基于皮肤和骨架的动画的方法来实现的。根据该技术,化身由骨架和定义了其表面的网格的皮肤组成。将网格的每个顶点附连到骨架的一块或多块骨骼,每个连接利用不同的加权系数(“皮肤权重”)来影响所述顶点。当对骨架进行动画化时,皮肤的顶点跟随骨骼的运动,每个顶点获取与其初始位置相对应的修改位置,该修改位置通过顶点所附连的所有骨骼的运动的加权平均数来进行平移,加权由“皮肤权重”提供。
发明内容
本发明的目的则是一种用于设计具有至少一件服装的化身的计算机实现的方法,所述方法包括以下步骤:
S1)提供包括骨架和覆盖骨架的皮肤的化身的数字模型,所述骨架包括由相应的线段表示的多块骨骼,所述皮肤包括网格,其包括由定义面的边所连接的多个顶点,所述网格的每个顶点与骨架的至少一块骨骼相关联,并且所述网格定义包含骨架的内部容积。
S2)提供包括网格的服装的数字模型,所述网格具有由定义面的边所连接的多个顶点,每个顶点通过相应的加权系数而与化身的模型的骨架的至少一块骨骼相关联。
S3)将位移方向与服装的模型的网格的每个顶点相关联,所述位移方向取决于骨架和所述加权系数;以及
S4)检测化身的模型的皮肤与服装的模型的网格之间的冲突,并且每当检测到冲突时,使服装的模型的网格的顶点沿着所述位移方向远离化身的模型的骨架。
根据这种方法的特定的实施例:
所述步骤S3)可以包括将所述位移方向确定为将与所述顶点相关联的每块骨骼的最近点连接至该顶点本身的方向、或向量的加权平均,使用将顶点与骨骼相关联的加权系数来计算该加权平均。
所述步骤S4)可以包括以下子步骤:
S41)识别位于所述内部容积内的服装的模型的网格的顶点,并且使所述顶点沿着所述的位移方向移动足够将其置于外部空间的位移量。
在这种情况下,位于所述内部容积内的服装的模型的网格的顶点可以通过确定射线是否与化身的模型的皮肤的面相交,并且在肯定的情况下,确定所述面的顶点中的至少一个是否同还与服装的模型的网格的所述顶点相关联的骨骼相关联来识别位于所述内部容积的服装的模型的网格的顶点,其中,所述射线沿着所述顶点的位移区域,在该定点本身上具有其原点,并且朝向远离化身的模型的骨架的方向。
所述方法还可以包括在所述子步骤S41)之后执行的以下子步骤:
S42)识别在化身和服装之间由于服装的模型的网格的边与化身的模型的皮肤的面相交而产生的冲突,并且通过迭代地使服装的模型的网格的每个所述边的顶点沿着所述位移方向而远离骨架,来解决所述冲突。
此外,所述子步骤S42)可以包括,在与化身的模型的皮肤的面相交的服装的模型的网格的每条边的顶点之中,对已经被移动了最短的累积距离的顶点进行移动。
所述方法还可以包括在所述子步骤S42)之后执行的以下子步骤:
S43)识别服装和化身之间的由于服装的模型的网格的面与化身的模型的皮肤的边相交而产生的冲突,并且通过迭代地使模型的网格的每个所述面的顶点沿着所述位移方向而远离骨架,来解决所述冲突。
此外,所述子步骤S43)可以包括,在与化身的模型的皮肤的边相交的服装的模型的网格的每个面的顶点之中,对已经被移动了最短的累积距离的顶点进行移动。
可以在所述子步骤S42)之后执行所述子步骤S43)。
所述方法还可以包括被迭代执行的以下步骤:
S5)针对服装的模型的每个顶点,确定其累积位移是否小于相邻顶点的平均累积位移,并且在肯定的情况下,进一步对所述顶点进行移动,以使得其累积位移变为等于所述平均累积位移。
所述方法还可以包括以下步骤:
S6)通过包括服装的所述数字模型的网格作为其皮肤的一部分来更新化身的所述数字模型;
由此,可以迭代地执行所述方法以向所述的化身增加后续的服装。
本发明的另一个目的是一种存储在计算机可读数据存储介质上的计算机程序产品,其包括使得计算机系统执行这样的方法的计算机可执行指令。
本发明的另一个目的是一种包括计算机可执行指令的计算机可读数据存储介质,所述计算机可执行指令使得计算机系统执行这样的方法。
本发明的另一个目的是一种计算机辅助设计系统,其包括耦合至存储器的处理器和图形用户界面,所述存储器存储使得计算机辅助设计系统执行这种方法的计算机可执行指令。
本发明的另一个目的是一种化身,穿着适合通过这种方法进行设计的至少一件服装。
附图说明
本发明的额外的特征和优点将由于结合附图进行的随后的描述而变为显而易见,其中,
图1是根据本发明的实施例的化身和服装的数字模型的非常示意的表示;
图2A到图2D示出了根据本发明的实施例的被应用至图1的数字模型的方法的不同的步骤;
图3A到图3C示出了本发明的技术效果;
图4是根据本发明的实施例的方法的流程图;
图5是示出了应用根据本发明的实施例的方法以使多个分层的服装适合于相同的化身的流程图;并且
图6和图7是适合于执行根据本发明的实施例的方法的相应的计算机系统的框图。
具体实施方式
图1示出了示例性2D化身AV(具有简单的、几何形状)的数字模型和服装GT的数字模型。
化身的模型包括骨架SN和覆盖所述骨架的皮肤SK。骨架包括一组骨骼,由级联的直线段表示(在示例性实施例中,所述骨架由两块骨骼B1和B2组成)。皮肤通过包括由边连接的一组顶点(vs1到vs7)的网格来进行建模或表示。在三维表示中,边将对多边形的面进行定界,但在二维中,边和面之间没有区别。皮肤不一定是闭合的,但无论如何,其定义了包含骨架的化身的内部容积。皮肤的每个顶点通过相应的加权系数而与骨架的一块或多块骨骼相关联。尽管在图1上不是显而易见的,但顶点vs1、vs2和vs7仅与骨骼B1相关联(即,权重系数等于1);顶点vs4、vs5和vs6仅与骨骼B2相关联,并且顶点vs3与骨骼B1和B2两者相关联,加权系数分别等于0.3和0.7(通常取顶点的所有加权系数的总和等于1)。
通常而言,从库中选择化身,并且有可能在“穿上”添加的服装之前,通过改变其形态来对其进行修改。这可以通过改变骨骼的长度和朝向来实现。如上文所提及的,皮肤的顶点根据其加权系数,“跟随”骨架的改变。在图4和图5的流程图上提供化身被示出作为步骤S1)。
服装GT也由包括由边连接的一组顶点(vg1到vg7)的网格来表示。在三维表示中,边将对多边形的面进行定界,但在二维中,边和面之间没有区别。像在皮肤SK的情况中一样,服装的顶点通过相应的加权系数而与骨架的骨骼相关联;有利地,所述加权系数由服装设计者进行自由选择,并且是服装模型的一部分。尽管这在图1上不是显而易见的,但是顶点vg1、vg2和vg7仅与骨骼B1相关联(即,加权系数等于1);顶点vg3、vg4和vg5仅与骨骼B2相关联,并且顶点vg6以相等的加权系数(0.5)与骨骼B1和B2两者相关联。在图1上,将服装GT表示为闭合的多边形曲线,但最常见的,服装将定义开放曲线(在2D中)或开放表面(在3D中),而不像皮肤一样是闭合的。
通常而言,从库中选择服装并且其必须适合于化身(这是本发明的目标)。在图4和图5的流程图上提供所述服装被示出作为步骤S2)。
在图1上可以看出,化身的皮肤和服装“冲突”,即,服装的一些顶点、边和/或面至少部分地位于内部容积内。换言之,服装的一些边与皮肤的面相交,和/或皮肤的一些边与服装的面相交(在2D中这些情况很难区分)。图3B示出了更加真实的情况中冲突的影响。
应当注意的是,本文描述的实施例不允许“缩小”对于穿着其的化身而言过大的服装。在这种情况下,在检测并且解决冲突的步骤之前应该优选地实施额外的缩小步骤(本身已知)。根据本发明,使服装适合于化身是完全地、或至少基本上通过检测和解决冲突来执行的。相比之下,在由上文所引用的R.Brouet等人的论文“DesignPreservingGarmentTransfer”所公开的方法中,实现了更加复杂的“比例缩放”方法,并且解决冲突仅构成后期处理。
图3A示出了表示穿着裤子、腰带和内衣(这些被认为是其“皮肤”的一部分)的女人的化身。在图3B上,向化身增加服装(更精确而言是连衣裙)。能够看到,腰带和服装“冲突”,即,显然,这时腰带应该被连衣裙覆盖并且因此被连衣裙隐藏。图3C示出了在应用根据本发明的方法之后,穿着衣服的化身:连衣裙已经被增大,以使得其现在在覆盖着腰带的同时保留了自然并且真实的外观。根据本发明,这是以完全自动的方式实现的。现在将参考图2A-2D、图4和图5详细地描述由允许实现图3C的结果的本发明的方法所实现的算法。
如上文所提及的,根据图2A-2D、图4和图5的实施例的方法的前两个步骤在于提供化身和服装(或,更加准确而言,其数字模型);这些步骤被表示为图4和图5的流程图上的步骤S1)和S2)。
以下步骤(流程图上的“S3”)在于确定针对服装的模型的顶点中的每一个的位移方向。对于给定的顶点,其位移方向被计算如下:
-对于具有大于0的皮肤权重的每块骨骼,算法计算从该骨骼的最近点去往顶点本身的向量。
-然后对该向量进行标准化,并且然后乘以皮肤加权系数。
将针对顶点计算的所有向量加在一起以得到单个向量,然后将其除以所有的皮肤权重的总和(其通常是1)。
在图2A上,将与服装的第i个顶点相关联的位移方向标注为“ddi”。由于顶点vg1、vg2、vg3、vg4、vg5和vg7与单块骨骼相关联,所以相对应的位移方向dd1、dd2、dd3、dd4、dd5和dd7简单地从该相关联的骨骼(对于vg1、vg2和vg7而言是B1;对于vg3、vg4和vg5而言是B2)的最近的顶点出发。顶点vg6以相等的权重与骨骼B1和B2两者相关联;因此,位移方向dd6介于分别从B1和B2的最近点去往该顶点本身的向量dd6a、dd6b之间。重要的是要注意到,位移方向总是朝向从骨架向外的方向。
在方法的以下步骤(“S4”—包括子步骤“S41”、“S42”和“S43”;“S4”)中,对服装的顶点进行移动,以便于解决与化身的皮肤的冲突的同时保持服装的真实的外观。所有这些位移都是沿着在步骤S3)处识别的相应的位移方向来执行的,并且更精确地,是沿着位于沿着位移方向、朝向远离化身的方向并且在该顶点的初始位置处具有其原点的射线来执行的。那么,在对服装进行修改期间和之后,顶点的位置然后可以由沿着射线的表示其累积位移(即,所有的单独位移的总和)的浮点数来进行限定。为了避免使附图超载,在图2A-2D上的“位移方向”和“射线”之间没有进行区分。
在图2B中示出的子步骤S41)在于识别位于由皮肤进行定界的内部容积内的服装的顶点,并且将其沿着位移方向移动足够将其置于外部空间的位移量。
确定服装的顶点是否位于内部容积内要求确定与该顶点相关联的射线是否与化身的皮肤的面相交。在肯定的情况下,则还有必要确定所述面的顶点中的至少一个是否同还与所述服装的顶点相关联的骨骼相关联。否则,当射线与由服装覆盖的化身皮肤部分不同的化身皮肤部分相交时,可能发生“假阳性”(即,顶点可能被错误地认为位于内部空间)。例如,离开位于裤子的上部的顶点的射线可能与化身的手的皮肤相交。当裤子不与同手的皮肤相同的骨骼相关联时,可以容易地检测到这种情况。
子步骤S42)的目标在于识别并且解决服装的边与化身的皮肤的面之间的冲突。可以通过已知的算法来执行冲突检测,参见例如,MingC.Lin“EfficientCollisionDetectionforAnimationandRobotics”,PhDThesis,UniversityofCalifornia,Berkeley(1993)。
每次检测到相交,都将冲突的边的顶点沿着相对应的射线移动给定的偏移量(其累积位移增加)。优选地,在冲突的边的顶点当中,对具有最低的累积位移的一个顶点进行移动;如果多个边具有相同的累积位移,则选择可以是伪随机的。重复该子步骤直到检测不到冲突为止。如果该步骤被重复了多于预定数量的次数(例如,30次),则算法返回失败。
子步骤S43)的目标在于识别并且解决化身的皮肤的边和服装的面之间的冲突。这基本与之前的子步骤相同,但这一次移动的是服装的面的顶点(再一次,优选地,在冲突的面的顶点当中,移动的是具有最低累积位移的一个顶点)。该子步骤也被重复直到身体的边与服装的面之间的所有的冲突都被解决为止,或直到已经执行了预定的最大数量的迭代为止。
可以使子步骤《S42》和《S43》的顺序倒转;然而,已经发现,在《S43》之前执行《S42》会降低所要求的迭代数,并且因此降低计算成本。
图2C示出了子步骤《S42》和《S43》(在2D中,“边”和“面”之间没有区别,因此两种冲突之间的区别是无意义的)。服装的冲突的边是那些被包括在顶点vg1和vg7之间,以及vg4和vg5之间的边。为了解决这些冲突,将顶点vg7移动累积位移D7,并且将顶点vg4移动累积位移D4。
在图2C上可以看到,变形的服装没有冲突,但由于vg4和vg7形成了凸起(spike)而具有某种不自然的外观。因此,优选地,执行平滑步骤S5)。该步骤通过对每个顶点设置是其相邻顶点的累计位移平均值的累积位移来完成,假设所述平均累积位移大于顶点的“原始”累积位移。像之前的步骤一样,这确保了顶点仅向外移动,因此避免了新的冲突的产生。将该平滑迭代预定数量的次数(例如,100)。
图2D示出了在服装的一部分上实施的平滑步骤S5)。在步骤S4)的最后,顶点vg6的累积位移是0,和顶点vg5的累积位移类似;相反,顶点vg7的累积位移则不是0(参见图2C),并且其值由Dcum7来表示。在步骤S5)的第一迭代期间,使顶点vg6移动其相邻顶点vg5和vg7的累积位移的平均——即,(Dcum7+0)/2=Dcum7/2——以及等于0的其自身的累积位移。最后,使vg6移动D6=Dcum7/2。在后续的迭代中,将会使vg5移动D6和D4的平均等。
可以使用上文定义的算法来解决化身和一件服装之间的冲突。当这被完成时,可以将适合的服装合并至化身的模型中,并且更加精确而言,合并至化身的皮肤(图5的流程图上的步骤“S6”)中,这允许另一件服装的引入等。
总之,本发明的方法允许非常高效地执行多级服装适应并且不需要任何用户干预和除了加权系数之外的任何额外的信息。此外,由于服装包括皮肤权重信息,所以穿着衣服的化身可以直接被动画化,服装跟随骨架的移动。
本发明的方法可以由可能包括网络的被适当编程的通用计算机或计算机系统来执行,其将合适的程序以非易失性的形式存储在计算机可读介质(例如硬盘、固态磁盘或CD-ROM)上,并且使用其微处理器和存储器来执行所述程序。
参考图6描述了一种适用于执行根据本发明的示例性实施例的方法的计算机——更加精确而言是计算机辅助设计站。在图6中,计算机包括执行上文中描述的过程的中央处理单元(CPU)P。过程可以被存储为可执行程序,即,诸如RAMM1或ROMM2的存储器中、或硬盘驱动器(HDD)M3、DVD/CD驱动器M4上的一组计算机可读指令,或可以被远程存储。化身数据库和服装数据库-即,以适合于由根据本发明的可执行程序处理的形式的化身和服装的数字模型的组织化的集合-也被存储在存储器设备M1到M4中的一个或多个上,或被远程存储。
要求保护的发明不受限于其上存储有本发明的过程的计算机可读指令和/或化身和服装数据库的计算机可读介质的形式。例如,可以将指令和数据库存储在CD、DVD上,在闪速存储器、RAM、ROM、PROM、EPROM、EEPROM、硬盘或计算机辅助设计站与其进行通信的任何其他信息处理设备(例如,服务器或计算机)中。可以将程序和数据库存储在相同的存储器设备上或存储在不同的存储器设备上。
此外,可以将适用于执行本发明的方法的计算机程序提供作为实用型应用程序、后台守护进程、或操作系统的组件、或其组合,其结合CPU800和操作系统执行,所述操作系统例如是MicrosoftVISTA、MicrosoftWindows7、UNIX、Solaris、LINUX、AppleMAC-OS和本领域技术人员公知的其他系统。
CPUP可以是来自美国Intel的Xenon处理器或来自美国AMD的Opteron处理器,或者可以是其他处理器类型,例如,来自美国的Freescale公司的FreescaleColdFire、IMX、或ARM处理器。可替换地,如本领域的普通技术人员将意识到的,CPU可以是诸如来自美国Intel公司的Core2Duo的处理器,或者可以在FPGA、ASIC、PLD上实现或利用分立逻辑电路实现。此外,可以将CPU实现为协作地工作以执行上文所描述的发明的过程的计算机可读指令的多个处理器。
图6中的计算机辅助设计站还包括网络接口NI,例如,来自美国Intel公司的IntelEthernetPRO网络接口卡,以用于与诸如局域网(LAN)、广域网(WAN)、互联网及类似的网络进行连接。计算机辅助设计站还包括显示控制器DC,例如,来自美国NVIDIA公司的NVIDIAGeForceGTX图形适配器,以用于与诸如HewlettPackardHPL2445wLCD监示器的显示器DY来进行交互。通用I/O接口IF和键盘KB和诸如滚珠、鼠标、触摸板及类似物的定点设备PD进行连接。显示器、键盘和定点设备,连同显示控制器和I/O接口一起,形成了图形用户界面。
磁盘控制器DKC将HDDM3和DVD/CDM4与通信总线CBS(可以是ISA、EISA、VESA、PCI、或类似物)进行连接,以用于使计算机辅助设计站的所有部件进行互连。
为了简便起见,在本文中省略了对显示器、键盘、定点设备、以及显示控制器、磁盘控制器、网络接口和I/O接口的一般特征和功能的描述,这是因为这些特征是公知的。
图7是适用于执行根据本发明的不同的示例性实施例的方法的计算机系统的框图。
在图7中,将可执行的程序EXP、化身数据库ADB和服装数据库GDB存储在连接至服务器SC的存储器设备上。存储器设备和服务器的整体架构可以与上文参考图6所讨论的相同,除了在服务器中可以缺少显示控制器、显示器、键盘和/或定点设备。
然后,服务器SC经由网络NW连接至管理员系统ADS和终端用户计算机EUC。
管理员系统的整体架构以及终端用户计算机的整体架构可以与上文参考图6所讨论的相同,除了管理员系统和终端用户计算机的存储器设备不存储可执行程序EXP、化身数据库ADB和服装数据库GDB。然而,如将在下文中所讨论的,终端用户计算机存储客户端程序,以用于与服务器的可执行程序进行协作。
可以意识到的是,网络NW可以是公共网络,例如,互联网,或者私人网络,例如,LAN或WAN网络或其任何组合,并且也可以包括PSTN或ISDN子网络。网络NW也可以是有线的,例如,以太网,或者可以是无线的,例如,包括EDGE、3G和4G无线蜂窝系统的蜂窝网络。无线网络也可以是Wi-Fi、蓝牙、或任何其他已知的无线通信形式。因此,网络NW仅仅是示例性的并且绝不限制本进展的范围。
存储在终端用户计算机的存储器设备中并且由该终端用户计算机的CPU执行的客户端程序经由网络NW来访问服务器上的化身和服装数据库。这允许终端用户选择化身以及适合于所述化身的一件或多件服装。这也允许终端用户发送服务器指令以改变化身的形态并且使化身穿着按照特定顺序布置的所选择的服装。服务器执行上文参考图4和图5所描述的处理,并且再一次使用网络NW来将修改的并且穿着服装的化身的数字模型发送至终端用户计算机。
尽管仅示出了一个管理员系统ADS和一个终端用户系统EUX,但系统可以支持任何数量的管理员系统和/或终端用户系统而没有限制。类似地,也可以在系统中实现多个服务器、化身数据库和服装数据库,而不偏离本发明的范围。
本文中描述的流程图中的任何过程、描述或方框都应该被理解为表示包括用于实现过程中的特定的逻辑功能或步骤的一个或多个可执行指令的代码的模块、片段或部分,并且替代的实现被包括在本发明的示例性实施例的范围内。
Claims (15)
1.一种用于设计具有至少一件服装的化身的计算机实现的方法,所述方法包括以下步骤:
S1)提供包括骨架(SN)和覆盖所述骨架的皮肤(SN)的化身的数字模型,所述骨架包括由相应的线段表示的多块骨骼(B1、B2),所述皮肤包括网格,所述网格包括由定义面的边所连接的多个顶点(vs1-vs7),所述网格的每个顶点与所述骨架的至少一块骨骼相关联,并且所述网格定义包含所述骨架的内部容积;
S2)提供包括网格的服装(GT)的数字模型,所述网格具有由定义面的边所连接的多个顶点(vg1-vg7),每个顶点通过相应的加权系数来与所述化身的模型的骨架的至少一块骨骼相关联,并且将所述服装的数字模型添加到所述化身的数字模型中而不使其变形;
S3)使位移方向(dd1-dd7)与所述服装的未变形模型的网格的每个顶点相关联,所述位移方向取决于所述骨架和所述加权系数;以及
S4)检测所述化身的模型的皮肤与所述服装的未变形模型的网格之间的冲突,并且每当检测到冲突时,使所述服装的模型的网格的顶点沿着所述位移方向而远离所述化身的模型的骨架。
2.根据权利要求1所述的方法,其中,所述步骤S4)包括将所述位移方向确定为将与所述顶点相关联的每块骨骼的最近点连接至所述顶点本身的向量的加权平均,使用将所述顶点与所述骨骼相关联的加权系数来计算所述加权平均。
3.根据前述权利要求中的任意一项所述的方法,其中,所述步骤S4)包括以下子步骤:
S41)识别位于所述内部容积内的所述服装的模型的网格的顶点,并且使所述顶点沿着所述位移方向移动足够将所述顶点置于外部空间的位移量(D3)。
4.根据权利要求3所述的方法,其中,通过确定射线是否与所述化身的模型的皮肤的面相交,并且在肯定的情况下,确定所述面的顶点中的至少一个顶点是否同还与所述服装的模型的网格的所述顶点相关联的骨骼相关联来识别位于所述内部容积内的所述服装的模型的网格的顶点,其中,所述射线位于沿着所述顶点的所述位移区域,在所述顶点本身上具有其原点,并且朝向远离所述化身的模型的骨架的方向。
5.根据权利要求3或4中的任意一项所述的方法,还包括在所述子步骤S41)之后执行的以下子步骤:
S42)识别所述化身和所述服装之间的由于所述服装的模型的网格的边与所述化身的模型的皮肤的面相交而产生的冲突,并且通过迭代地使所述服装的模型的网格的每条所述边的顶点沿着所述位移方向而远离所述骨架,来解决所述冲突。
6.根据权利要求5所述的方法,其中,所述子步骤S42)包括在与所述化身的模型的皮肤的面相交的所述服装的模型的网格的每条边的顶点当中,对已经被移动了最短的累积距离的一个顶点进行移动。
7.根据权利要求3到6中的任意一项所述的方法,还包括在所述子步骤S42)之后执行的以下子步骤:
S43)识别所述化身与所述服装之间的由于所述服装的模型的网格的面与所述化身的模型的皮肤的边相交而产生的冲突,并且通过迭代地使所述模型的网格的每个所述面的顶点沿着所述位移方向而远离所述骨架,来解决所述冲突。
8.根据权利要求7所述的方法,其中,所述子步骤S43)包括在与所述化身的模型的皮肤的边相交的所述服装的模型的网格的每个面的顶点当中,对已经被移动了所述最短的累积距离的一个顶点进行移动。
9.根据权利要求7或8中的任意一项所述的方法,其中,所述子步骤S43)在所述子步骤S42)之后执行。
10.根据前述权利要求中的任意一项所述的方法,还包括被迭代地执行的以下步骤:
S5)针对所述服装的模型的每个顶点,(vg6)确定其累积位移是否小于相邻顶点(vg5、vg7)的平均累计位移(Dcum7),并且在肯定的情况下,进一步对所述顶点进行移动,以使得其累积位移(D6)变为等于所述平均累计位移。
11.根据前述权利要求中的任意一项所述的方法,还包括以下步骤:
S6)通过包括服装的所述数字模型的所述网格作为其皮肤的一部分来更新化身的所述数字模型;
由此,所述方法能够被迭代地执行以将后续的服装添加到所述化身。
12.一种存储在计算机可读数据存储介质上的计算机程序产品,包括使得计算机系统执行根据前述权利要求中的任意一项所述的方法的计算机可执行指令。
13.一种计算机可读数据存储介质,包括使得计算机系统执行根据权利要求1到11中的任意一项所述的方法的计算机可执行指令。
14.一种计算机辅助设计系统,包括耦合至存储器的处理器和图形化用户界面,所述存储器存储使得所述计算机辅助设计系统执行根据权利要求1到11中的任意一项所述的方法的计算机可执行指令。
15.一种化身,穿着通过根据权利要求1到11中的任意一项所述的方法获取的至少一件服装。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP14306954.0 | 2014-12-05 | ||
EP14306954.0A EP3029635B1 (en) | 2014-12-05 | 2014-12-05 | Computer-implemented method for designing an avatar with at least one garment |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105678838A true CN105678838A (zh) | 2016-06-15 |
CN105678838B CN105678838B (zh) | 2021-11-09 |
Family
ID=52282580
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510885905.6A Active CN105678838B (zh) | 2014-12-05 | 2015-12-04 | 用于设计具有至少一件服装的化身的计算机实现的方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US10430999B2 (zh) |
EP (1) | EP3029635B1 (zh) |
JP (1) | JP6762709B2 (zh) |
KR (1) | KR20160068691A (zh) |
CN (1) | CN105678838B (zh) |
CA (1) | CA2913981A1 (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107590302A (zh) * | 2016-07-08 | 2018-01-16 | 达索系统公司 | 用于围绕化身安置图样的计算机实现的方法 |
CN107644114A (zh) * | 2016-07-20 | 2018-01-30 | 达索系统公司 | 用于通过定义组装任务的序列来设计服装或家具装潢的计算机实现的方法 |
CN108090951A (zh) * | 2016-11-22 | 2018-05-29 | 达索系统公司 | 用于模拟采取姿势的身体的计算机实现的方法 |
WO2018150220A1 (en) * | 2017-02-15 | 2018-08-23 | StyleMe Limited | System and method for three-dimensional garment mesh deformation and layering for garment fit visualization |
US10242498B1 (en) | 2017-11-07 | 2019-03-26 | StyleMe Limited | Physics based garment simulation systems and methods |
US10373373B2 (en) | 2017-11-07 | 2019-08-06 | StyleMe Limited | Systems and methods for reducing the stimulation time of physics based garment simulations |
CN110827407A (zh) * | 2019-10-29 | 2020-02-21 | 广州西山居世游网络科技有限公司 | 一种自动输出网格资源三角形合适度的方法和系统 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019058500A1 (ja) * | 2017-09-22 | 2019-03-28 | 株式会社スクウェア・エニックス | プログラム、及びシステム |
KR102005492B1 (ko) * | 2017-10-31 | 2019-07-30 | 에스케이텔레콤 주식회사 | 3차원 메쉬 데이터 간소화 방법 및 장치 |
JP6487083B1 (ja) * | 2018-03-07 | 2019-03-20 | 株式会社スクウェア・エニックス | ウェイトマップの局所性を考慮したスキニング分解高速化方法及び同スキニング分解高速化プログラム |
US10762682B2 (en) * | 2018-03-21 | 2020-09-01 | Electronic Arts Inc. | Skinning weights and underlying object suppression of three-dimensional images |
US10776979B2 (en) | 2018-05-31 | 2020-09-15 | Microsoft Technology Licensing, Llc | Virtual skeleton based on computing device capability profile |
HK1253751A2 (zh) * | 2018-07-04 | 2019-06-28 | Bun Kwai | 用於將附屬物對象擬合到化身的方法和裝置 |
CN109395390B (zh) * | 2018-10-26 | 2021-12-21 | 网易(杭州)网络有限公司 | 游戏角色脸部模型的处理方法、装置、处理器及终端 |
CN111696184B (zh) * | 2020-06-10 | 2023-08-29 | 上海米哈游天命科技有限公司 | 骨骼蒙皮融合确定方法、装置、设备和存储介质 |
CN112184921B (zh) * | 2020-10-30 | 2024-02-06 | 北京百度网讯科技有限公司 | 虚拟形象驱动方法、装置、设备和介质 |
WO2023218861A1 (ja) * | 2022-05-12 | 2023-11-16 | 株式会社Nttドコモ | シミュレーション装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101473351A (zh) * | 2006-05-19 | 2009-07-01 | 索尼株式会社 | 肌肉与骨骼形状蒙皮 |
CN101719284A (zh) * | 2009-12-25 | 2010-06-02 | 北京航空航天大学 | 一种基于层次模型的虚拟人皮肤物理变形方法 |
US20110157306A1 (en) * | 2009-12-29 | 2011-06-30 | Industrial Technology Research Institute | Animation Generation Systems And Methods |
CN102332180A (zh) * | 2011-10-15 | 2012-01-25 | 杭州力孚信息科技有限公司 | 一种基于立体裁剪的三维服装造型与纸样设计方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5002103B2 (ja) * | 2001-09-28 | 2012-08-15 | 株式会社バンダイナムコゲームス | 画像生成システム、画像生成方法及びプログラム |
JP4473754B2 (ja) * | 2005-03-11 | 2010-06-02 | 株式会社東芝 | 仮想試着装置 |
-
2014
- 2014-12-05 EP EP14306954.0A patent/EP3029635B1/en active Active
-
2015
- 2015-11-18 US US14/945,106 patent/US10430999B2/en active Active
- 2015-12-01 CA CA2913981A patent/CA2913981A1/en not_active Abandoned
- 2015-12-04 CN CN201510885905.6A patent/CN105678838B/zh active Active
- 2015-12-04 KR KR1020150172715A patent/KR20160068691A/ko unknown
- 2015-12-07 JP JP2015238158A patent/JP6762709B2/ja active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101473351A (zh) * | 2006-05-19 | 2009-07-01 | 索尼株式会社 | 肌肉与骨骼形状蒙皮 |
CN101719284A (zh) * | 2009-12-25 | 2010-06-02 | 北京航空航天大学 | 一种基于层次模型的虚拟人皮肤物理变形方法 |
US20110157306A1 (en) * | 2009-12-29 | 2011-06-30 | Industrial Technology Research Institute | Animation Generation Systems And Methods |
CN102332180A (zh) * | 2011-10-15 | 2012-01-25 | 杭州力孚信息科技有限公司 | 一种基于立体裁剪的三维服装造型与纸样设计方法 |
Non-Patent Citations (7)
Title |
---|
DONGLIANG ZHANG 等: "Collision Detection for Clothed Human Animation", 《PROCEEDINGS OF THE 8TH PACIFIC CONFERENCE ON COMPUTER GRAPHICS AND APPLICATIONS》 * |
JULES BLOOMENTHAL: "Medial-based vertex deformation", 《PROC.ACM SIGGRAPH/EUROGRAPHICS SYMPOSIUM ON COMPUTER ANIMATION》 * |
LI J 等: "Fitting 3D garment models onto individual human models", 《COMPUTERS AND GRAPHICS》 * |
PENG GUAN 等: "DRAPE: DRessing Any PErson", 《ACM TRANSACTIONS ON GRAPHICS》 * |
REMI BROUET 等: "Design Preserving Garment Transfer", 《ACM TRANSACTIONS ON GRAPHICS》 * |
YONGJOON LEE 等: "Automatic pose一independent 3D garment fitting", 《COMPUTERS&GRAPHICS》 * |
李越: "基于特征点对应关系的人体变形技术研究", 《万方数据库》 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107590302A (zh) * | 2016-07-08 | 2018-01-16 | 达索系统公司 | 用于围绕化身安置图样的计算机实现的方法 |
CN107590302B (zh) * | 2016-07-08 | 2023-10-31 | 达索系统公司 | 用于围绕化身安置图样的计算机实现的方法 |
CN107644114B (zh) * | 2016-07-20 | 2023-08-15 | 达索系统公司 | 用于通过定义组装任务的序列来设计服装或家具装潢的计算机实现的方法 |
CN107644114A (zh) * | 2016-07-20 | 2018-01-30 | 达索系统公司 | 用于通过定义组装任务的序列来设计服装或家具装潢的计算机实现的方法 |
CN108090951A (zh) * | 2016-11-22 | 2018-05-29 | 达索系统公司 | 用于模拟采取姿势的身体的计算机实现的方法 |
CN108090951B (zh) * | 2016-11-22 | 2024-01-30 | 达索系统公司 | 用于模拟采取姿势的身体的计算机实现的方法 |
WO2018150220A1 (en) * | 2017-02-15 | 2018-08-23 | StyleMe Limited | System and method for three-dimensional garment mesh deformation and layering for garment fit visualization |
CN109196561B (zh) * | 2017-02-15 | 2022-10-28 | 唯衣時尚科技有限公司 | 用于针对试衣可视化进行三维衣服网格变形和分层的系统和方法 |
CN109196561A (zh) * | 2017-02-15 | 2019-01-11 | 斯戴尔米有限公司 | 用于针对试衣可视化进行三维衣服网格变形和分层的系统和方法 |
US10373373B2 (en) | 2017-11-07 | 2019-08-06 | StyleMe Limited | Systems and methods for reducing the stimulation time of physics based garment simulations |
US10242498B1 (en) | 2017-11-07 | 2019-03-26 | StyleMe Limited | Physics based garment simulation systems and methods |
CN110827407A (zh) * | 2019-10-29 | 2020-02-21 | 广州西山居世游网络科技有限公司 | 一种自动输出网格资源三角形合适度的方法和系统 |
CN110827407B (zh) * | 2019-10-29 | 2023-08-29 | 广州西山居网络科技有限公司 | 一种自动输出网格资源三角形合适度的方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
JP6762709B2 (ja) | 2020-09-30 |
US20160163103A1 (en) | 2016-06-09 |
CA2913981A1 (en) | 2016-06-05 |
JP2016110652A (ja) | 2016-06-20 |
US10430999B2 (en) | 2019-10-01 |
EP3029635B1 (en) | 2019-11-13 |
EP3029635A1 (en) | 2016-06-08 |
KR20160068691A (ko) | 2016-06-15 |
CN105678838B (zh) | 2021-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105678838A (zh) | 用于设计具有至少一件服装的化身的计算机实现的方法 | |
CN113785330B (zh) | 使用相异的目标动画数据来训练人物的强化学习 | |
US10297066B2 (en) | Animating a virtual object in a virtual world | |
US10394979B2 (en) | Method and device for elastic object deformation modeling | |
US11721114B2 (en) | Method, system, and device of generating a reduced-size volumetric dataset | |
CN106354249A (zh) | 行走模拟系统和方法 | |
US20170221251A1 (en) | Animating a virtual object in a virtual world | |
KR102543605B1 (ko) | 온라인 피팅 방법 및 장치 | |
JP2016526954A5 (zh) | ||
EP2810195A1 (en) | Semi-autonomous digital human posturing | |
US10410393B2 (en) | Animating a virtual object in a virtual world | |
US20230290100A1 (en) | Method And Apparatus For Providing Guide For Combining Pattern Pieces Of Clothing | |
US20110292053A1 (en) | Placement of animated elements using vector fields | |
JP2002117414A (ja) | 衣服衝突処理方法および衣服衝突処理プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
KR20220145203A (ko) | 시뮬레이션 방법 및 장치 | |
Jeon et al. | Enhanced FFD-AABB collision algorithm for deformable objects | |
EP3682380A1 (en) | Evolving computer-based reasoning systems | |
CN114913388B (zh) | 训练试衣模型的方法、生成试衣图像的方法及相关装置 | |
Simnett et al. | An Edge-based Approach to Adaptively Refining a Mesh for Cloth Deformation. | |
CN109542302A (zh) | 一种显示对象的数字模型化组件的子集的由计算机实施的方法 | |
WO2005038723A1 (ja) | 画像表示装置、画像表示方法、画像表示プログラム及び画像表示プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
CN116956524A (zh) | 一种智能服装的布线方法、装置、介质及智能服装 | |
Aguiar et al. | Monte Carlo Localization for RoboCup 3D Soccer Simulation League | |
CN115293018A (zh) | 柔性体的碰撞检测方法、装置、计算机设备及存储介质 | |
WO2018184758A1 (en) | System and method for an industrial simulation of an object using an indexed transition between visual object models of the object |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 |