CN102339475A - 基于表面网格的快速毛发建模方法 - Google Patents

基于表面网格的快速毛发建模方法 Download PDF

Info

Publication number
CN102339475A
CN102339475A CN2011103278867A CN201110327886A CN102339475A CN 102339475 A CN102339475 A CN 102339475A CN 2011103278867 A CN2011103278867 A CN 2011103278867A CN 201110327886 A CN201110327886 A CN 201110327886A CN 102339475 A CN102339475 A CN 102339475A
Authority
CN
China
Prior art keywords
hair
section
cross
grid
modeling
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
Application number
CN2011103278867A
Other languages
English (en)
Other versions
CN102339475B (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.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
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 Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN201110327886.7A priority Critical patent/CN102339475B/zh
Publication of CN102339475A publication Critical patent/CN102339475A/zh
Application granted granted Critical
Publication of CN102339475B publication Critical patent/CN102339475B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

本发明公开了一种基于表面网格的快速毛发建模方法,该方法通过将目标毛发形态由简单的表面形状网格控制,从而实现简化毛发的建模过程,并得到同样高质量建模结果的目标。本发明仅需要用户使用普通的网格建模方法创建大致表示毛发形状的粗糙表面网格,然后通过完全自动的轨迹线提取方法得到形状网格对应的稀疏毛发轨迹线,基于这些轨迹线与用户指定的毛发依附网格即可生成完全符合形状网格的毛发建模结果。在上述建模结果的基础上,通过用户易控的风格化方法可进一步得到保持建模形状下的风格化效果。本说明书中所指的毛发建模均为将目标毛发对象建模为大量极细发丝几何体的集合的过程。

Description

基于表面网格的快速毛发建模方法
技术领域
本发明涉及计算机动画的角色建模以及物理仿真领域,尤其涉及一种毛发对象的建模与仿真方法。
背景技术
毛发是体现角色个性的重要特征, 计算机动画及游戏等应用中的各类虚拟角色其毛发对象的建模是角色建模的关键步骤,一种准确高效方便易用的交互式毛发建模方法对于角色建模至关重要。但是,由于毛发极端复杂的几何结构与千变万化的风格效果,用户很难跳过繁琐抽象的交互手段直观控制最终的毛发形态,例如当前广泛采用的Maya、Blender等建模软件,虽然可借助梳理工具以及指导发丝等方法控制毛发外观,但仍无法直接预测到每一步操作对最终结果的影响。当前存在的各种毛发建模方法,用户通常需要较长的熟练过程才能够熟练掌握其使用技巧,这也正是至今仍没有任一毛发建模方法被业界广为接受的原因之一。
已有的毛发建模方法中,最为直观的是由用户通过某些方式直接指定最终的毛发形状。采用广义的圆柱体模型表示分簇的毛发集合,Chen(LH Chen, S Saeyor, H Dohi, M Ishizuka. A system of 3D hair style synthesis based on the wisp model. The Visual Computer. 1999, 15(4), 159-170)、Choe(B Choe, HS Ko. A statistical wisp model and pseudophysical approaches for interactive hairstyle generation. IEEE Transactions on Visualization and Computer Graphics. 2005, 160-170)等提出了各自的交互式毛发建模方法,允许用户以发束为单位控制最终毛发形态。在此基础上,Kim(TY Kim, U Neumann. Interactive multiresolution hair modeling and editing. ACM Transactions on Graphics (TOG). 2002, 21(3), 620-629)等通过层次化的圆柱结构来进行多分辨率的毛发建模。这些方法虽然允许直接控制毛发在各尺度上的形状,但由于需要指定所有发束位置,对较为复杂的毛发模型会使整过程十分繁杂而耗时。Yuksel(C Yuksel, S Schaefer, J Keyser. Hair meshes. ACM Transactions on Graphics (TOG). 2009, 28(5), 1-7)提出了利用表面网格指定毛发大致形态的方法,但是由于仅依靠网格结构并不足以确定对应的毛发模型,仍然需要大量的用户交互操作来辅助建模工作。
另一类方法则是基于某些物理规律模拟得到具体环境下具一定真实性的毛发形状。Anjyo(K Anjyo, Y Usami, T Kurihara. A simple method for extracting the natural beauty of hair. ACM SIGGRAPH Computer Graphics. 1992, 26(2), 111-120)利用悬梁臂模型来模拟重力下直发的静止形状。Hadap(S Hadap, N Magnenat-Thalmann. Modeling dynamic hair as a continuum. Computer Graphics Forum. 2001, 20(3), 329-338)通过放置流体出入口,使用流体运动形成的轨迹线来模拟静态的发型。Yu(Y Yu. Modeling realistic virtual hairstyles. Proceedings of the 9th Pacific Conference on Computer Graphics and Applications. 2001, 295-304)使用三维矢量场来表示一定空间范围内的发型,通过追踪矢量场来得到所有发丝的轨迹进而进行毛发的建模。这些方法虽然能够以较为方便的方式全局地模拟毛发结构,但是结果通常较为简单生硬,也无法直观控制毛发的最终形状。
由于现有的毛发建模方法或是需要大量繁琐的用户交互来达到所需毛发形态,或是仅可以自动得到简单且无法预测的建模结果,并且这些方法都仅仅针对毛发建模这个特例,难以重用其他的建模技巧,所以往往难以掌握与应用。而本发明将毛发建模与普遍的网格建模结合,能够很好地方便用户进行知识迁移并简化建模过程。
发明内容
本发明针对电影及游戏中广泛存在的人物角色、动物等的毛发对象,提出了一种基于表面网格的快速毛发建模方法。
本发明的目的是通过以下技术方案来实现的:一种基于表面网格的快速毛发建模方法,该方法包括以下步骤:
(1)形状网格的预处理:对输入的形状网格进行预处理以满足后续建模步骤对形状网格的需求规范,即通过自动或用户辅助的方式修正形状网格的参数坐标以标识局部位置内毛发的形态方向,以便在网格内自动提取毛发轨迹线;
(2)毛发轨迹线的提取:通过采样方式得到网格内均匀分布的毛发轨迹线,将表面的毛发形态方向定义依据网格的几何结构拓展至形状网格几何体内部,得到空间内的毛发形态的离散表示;
(3)基本毛发建模:为毛发对象额外指定依附网格对象,由依附网格来决定毛发的起始位置,以属性贴图方式定义在依附网格上的密度、长度等参数来进行毛发形态的局部控制,而步骤2中得到的毛发轨迹线集合用以改变空间中的毛发方向以拟合形状网格确定的毛发形态,并最终得到基本的毛发建模结果;
(4)毛发的风格化:基于基本的建模结果,通过过程式风格化方法来精细调整毛发几何以实现卷曲、弯曲、杂乱等风格化效果。
进一步地,所述步骤(2)具体包括以下子步骤:
(A)在参数坐标UV空间V轴上确定                                                
Figure 2011103278867100002DEST_PATH_IMAGE001
个等高线采样层,其
Figure 254763DEST_PATH_IMAGE002
值分别为
Figure 2011103278867100002DEST_PATH_IMAGE003
,每个采样层在得到的轨迹线上对应于其轨迹上一点;
(B)对采样层
Figure 267719DEST_PATH_IMAGE004
,将其在UV平面上的对应直线
Figure 2011103278867100002DEST_PATH_IMAGE005
与形状网格求交得到组空间线段,使其满足:不同组的线段均相互分离,而组内线段可互相串联成一空间曲线;第
Figure 2011103278867100002DEST_PATH_IMAGE007
组空间线段()与形状网格的边相交又可得到
Figure 2011103278867100002DEST_PATH_IMAGE009
Figure 632207DEST_PATH_IMAGE010
值从小到大排列的一组交点
Figure 2011103278867100002DEST_PATH_IMAGE011
,其
Figure 132459DEST_PATH_IMAGE002
值均为
Figure 880972DEST_PATH_IMAGE004
;将每组线段首尾相连可构成
Figure 87962DEST_PATH_IMAGE006
个封闭的空间多边形,将其作为对应于采样层
Figure 263728DEST_PATH_IMAGE004
的等高线多边形截面;
(C)在步骤(B)中,对于每个采样层
Figure 188959DEST_PATH_IMAGE004
我们可以得到
Figure 475584DEST_PATH_IMAGE006
个截面;从
Figure 802660DEST_PATH_IMAGE012
Figure 2011103278867100002DEST_PATH_IMAGE013
,截面数量的变化与形状网格的拓扑关系的变化有可能有无分支无汇聚的管状结构、分支结构或汇聚结构三种情况:我们可以将这种不同采样层子间截面的对应关系用截面关系图进行表示:图中的顶点用来表示某个截面,将
Figure 883749DEST_PATH_IMAGE014
中截面与
Figure 358592DEST_PATH_IMAGE004
中对应截面相互连接;
(D)求得每个截面的重心位置
Figure 2011103278867100002DEST_PATH_IMAGE015
(E)以
Figure 448908DEST_PATH_IMAGE016
的顺序对所有采样层进行遍历处理:对当前采样层
Figure 630491DEST_PATH_IMAGE004
)上的所有截面,比较其与步骤(C)的截面关系图中上一采样层
Figure 148060DEST_PATH_IMAGE014
上的所有对应截面的
Figure 906937DEST_PATH_IMAGE010
值范围,若有
Figure 473048DEST_PATH_IMAGE010
值区间不属于任一对应截面的
Figure 837033DEST_PATH_IMAGE010
值范围,则在这个
Figure 463186DEST_PATH_IMAGE010
值区间于形状网格上对应的空间线段与重心构成的多边形内部进行均匀采样得到新的轨迹线起始采样点;而对于所有基截面(
Figure 16845DEST_PATH_IMAGE018
),在其截面的所有多边形区域内采点;对于任一起始于
Figure 235336DEST_PATH_IMAGE004
的新采样点
Figure 2011103278867100002DEST_PATH_IMAGE019
,进行如下计算:连接重心
Figure 32391DEST_PATH_IMAGE015
Figure 703544DEST_PATH_IMAGE019
并延长使之与截面的边交于点
Figure 611457DEST_PATH_IMAGE020
,则
Figure 684455DEST_PATH_IMAGE020
的纹理坐标可以表示为;我们定义如下的采样点二元参数
Figure 714728DEST_PATH_IMAGE022
来确定采样点在截面内的相对位置:
Figure DEST_PATH_IMAGE023
其中,
Figure 873177DEST_PATH_IMAGE024
代表该采样点到形状网格表面投影点的纹理
Figure 584781DEST_PATH_IMAGE010
坐标,
Figure DEST_PATH_IMAGE025
则表示该采样点到截面重心的长度与形状网格表面投影点到截面重心的长度之比;对于上一采样层
Figure 512286DEST_PATH_IMAGE014
上的采样点
Figure 713460DEST_PATH_IMAGE026
,在当前采样层
Figure 296888DEST_PATH_IMAGE004
上利用采样点参数
Figure DEST_PATH_IMAGE027
定位采样点在这一层上的确切位置;首先在截面关系图上找到
Figure 656511DEST_PATH_IMAGE026
Figure 966270DEST_PATH_IMAGE014
上的截面于
Figure 99311DEST_PATH_IMAGE004
对应的(在关系图上有边直接相连)所有截面,然后判断采样点的
Figure 152717DEST_PATH_IMAGE010
值是否包含在这个截面的
Figure 54814DEST_PATH_IMAGE010
值范围()中,即判断是否满足
Figure 660108DEST_PATH_IMAGE030
,从而确定采样点是否在这个截面中存在对应点,若没有截面满足这个条件,则认为这条轨迹线终止于上一采样层
Figure 218128DEST_PATH_IMAGE014
;若有截面(假设存在个)满足这个条件,令截面
Figure 628567DEST_PATH_IMAGE032
)的面积为
Figure DEST_PATH_IMAGE033
,所有截面的面积之和为
Figure 608024DEST_PATH_IMAGE034
(截面面积按如下方式估算:将封闭截面的所有边与这个截面的重心
Figure DEST_PATH_IMAGE035
构成一组三角形,将所有三角形面积相加即为截面面积的估算),计算得到一个(0,1)之间独立均匀分布的随机数
Figure 574712DEST_PATH_IMAGE036
,若
Figure DEST_PATH_IMAGE037
,则将采样点在
Figure 32238DEST_PATH_IMAGE004
层上的对应点从这个截面上选取;选取对应截面后,通过参数
Figure 669073DEST_PATH_IMAGE027
可在截面上定位唯一的一点
Figure 998423DEST_PATH_IMAGE028
(F)对于每个采样点,连接其在所在的连续采样层上的所有对应采样点,即可得到一条对应的毛发方向轨迹线。
本发明的有益效果是,将复杂的毛发建模与简单常用的表面网格建模结合,通过用户创建的形状网格指定毛发对象的形态,随后由本方法自动进行毛发对象的建模过程,从而可以大大简化建模的工作量同时准确而方便地得到满足形状网格约束的毛发外观形状;同时,基于前述的建模结果可进一步对毛发几何进行易控的风格化以得到用户所需的毛发细节形态效果,进一步提高结果的质量与细节感。
附图说明
图1是本发明提出的方法流程图;
图2是太白金星模型毛发建模结果图,其中(a)显示了用于控制毛发形状的形状网格,(b)显示了最终的毛发建模结果;
图3是一个女性角色的毛发建模结果图,其中(a)(c)(e)分别从正面、背面和侧面显示了形状网格和参数化的方式,(b)(d)(f)显示了建模结果。
具体实施方式
本方法的具体实施过程与细节在这一节中进行阐述。
整个方法的流程如图1所示。首先由用户创建符合需求的毛发形状网格来表示毛发的大致外观,系统随后根据形状网格几何与UV参数信息自动在网格内部生成毛发生长轨迹线的稀疏分布,基于这些轨迹线即可控制临近毛发的生长方向从而得到满足形状网格约束的毛发建模结果;然后,根据用户需要将不同的风格化方法作用于建模结果得到所需的最终毛发几何形态。
我们可以将本方法的工作流程概括为1、形状网格的创建与预处理,2、毛发轨迹线的提取,3、基本毛发建模以及4、毛发的风格化等四个子步骤,所有的子步骤都是相对独立且顺序执行的。整体上,系统的输入为形状网格(控制建模毛发的大致空间形态)、依附网格及局部建模参数(可选,依附网格用于显式指定毛发对象的起始位置与分布区域,局部建模参数定义于依附网格上,用以控制毛发密度、长度以及其他参数的局部定义)、全局的风格化参数以及全局的运动仿真参数;系统的输出为建模得到的所有毛发的几何信息,我们采用一定数量(一般为20左右)均匀分布的离散毛发顶点的空间位置与宽度值来表示每一个发丝的几何结构,连续的发丝轨迹则可以基于这些顶点位置通过三次Hermite样条线插值得到重构。
本方法各子步骤的详细说明如下:
一、形状网格的创建与预处理
形状网格被用来确定毛发在局部空间中的生长方向。我们对网格本身的几何结构没有额外的限制,其可以为任意的多边形网格,且在垂直于生长方向上不要求封闭,即可以为片状或封闭环状结构。我们的约束主要体现在UV参数坐标上,它被用来辅助确定毛发方向。约束定义如下:在UV空间上确定一坐标轴为毛发的生长方向(由用户指定,本说明中假定为V轴正方向),UV平面上有定义区域内平行于该生长方向的线段到三维空间上形状网格的映射即为所有毛发方向在形状网格上的投影。而UV空间上垂直于该毛发方向的另一坐标轴(即U轴)则对应于毛发等高截面到网格上的投影。
当形状网格的几何形状被创建后,满足上述约束的UV参数坐标也可以由用户通过普通建模工具中的UV映射工具手工创建。而对于大多数的形状网格,可以采用自动UV映射的方法创建其UV空间坐标:由用户指定等方式确定形状网格对应毛发生长方向的起始与终止截面对应的网格上前后相连的一组边,将这两组边上顶点在UV空间内分别定位于
Figure 283078DEST_PATH_IMAGE038
Figure DEST_PATH_IMAGE039
,其中沿U轴方向的
Figure 14273DEST_PATH_IMAGE010
坐标(
Figure 69954DEST_PATH_IMAGE040
)按两边的遍历顺序赋值,并保证两边相同
Figure 824283DEST_PATH_IMAGE010
坐标的点互相对应,同时各边
Figure DEST_PATH_IMAGE041
Figure 623612DEST_PATH_IMAGE042
对应的顶点位置重合。然后形状网格上处于两组边间所有顶点的UV坐标可以通过插值方式基于这两组边得到。
二、毛发轨迹线的提取
对任一形状网格,经过第一步骤后其UV空间已经定义了网格内部的毛发生长方向。可以认为UV空间上平行于U轴的直线
Figure 146997DEST_PATH_IMAGE005
对应在网格表面上的一组前后连接的线段为形状网格上沿毛发方向的一条等高线。将等高线首尾相连,对应的封闭空间曲面即为垂直于内部经过的毛发方向的截面。我们可以通过在V轴上采样得到一组截面,对应着毛发模型从发根到发尖的不同位置。我们认为在这些截面上相同值的位置对应着同一条毛发轨迹,通过这个假设我们可以在形状网格表面找到截面之间的对应关系,将这种关系拓展到网格体的内部即可找到所有轨迹在截面上的位置。
基于此,重建形状网格空间轨迹线的方法如下所述:
1、在UV空间V轴上确定
Figure 880784DEST_PATH_IMAGE001
个等高线采样层,其
Figure 218225DEST_PATH_IMAGE002
值分别为
Figure 861695DEST_PATH_IMAGE003
,每个采样层在得到的轨迹线上对应于其轨迹上一点;
2、对采样层
Figure 196862DEST_PATH_IMAGE004
,将其在UV平面上的对应直线
Figure 988100DEST_PATH_IMAGE005
与形状网格求交得到组空间线段,使其满足:不同组的线段均相互分离,而组内线段可互相串联成一空间曲线。第
Figure 627209DEST_PATH_IMAGE007
组空间线段(
Figure 398856DEST_PATH_IMAGE008
)与形状网格的边相交又可得到
Figure 349495DEST_PATH_IMAGE009
值从小到大排列的一组交点,其
Figure 651666DEST_PATH_IMAGE002
值均为。将每组线段首尾相连可构成
Figure 572534DEST_PATH_IMAGE006
个封闭的空间多边形,将其作为对应于采样层
Figure 45104DEST_PATH_IMAGE004
的等高线多边形截面;
3、在第2步中,对于每个采样层我们可以得到个截面。不难发现,从
Figure 370409DEST_PATH_IMAGE012
Figure 494223DEST_PATH_IMAGE013
,截面数量的变化与形状网格的拓扑关系的变化有密切的关系:当
Figure 191100DEST_PATH_IMAGE004
之间的某截面对应于无分支无汇聚的管状结构时,这个截面在
Figure 281416DEST_PATH_IMAGE014
Figure 462999DEST_PATH_IMAGE004
上总能找到一一对应的关系;当
Figure 714989DEST_PATH_IMAGE014
Figure 614811DEST_PATH_IMAGE004
之间存在一个的分支结构时,
Figure 243239DEST_PATH_IMAGE014
的某一截面在分裂为
Figure 967798DEST_PATH_IMAGE031
个对应的子截面;同样,当
Figure 354917DEST_PATH_IMAGE014
Figure 724719DEST_PATH_IMAGE004
之间存在一个
Figure 677631DEST_PATH_IMAGE044
的汇聚结构时,
Figure 474686DEST_PATH_IMAGE014
Figure 145839DEST_PATH_IMAGE031
个子截面在
Figure 319331DEST_PATH_IMAGE004
汇聚为1个对应的截面。我们可以将这种不同采样层子间截面的对应关系用图的结构进行表示:图中的顶点用来表示某个截面,将
Figure 330013DEST_PATH_IMAGE014
中截面与
Figure 360285DEST_PATH_IMAGE004
中对应截面(管状:
Figure DEST_PATH_IMAGE045
,分支:
Figure 518734DEST_PATH_IMAGE043
,汇聚:)相互连接;
4、求得每个截面的重心位置
Figure 95526DEST_PATH_IMAGE015
以下步骤5、6以
Figure 296700DEST_PATH_IMAGE016
的顺序对所有采样层进行遍历处理:
5、对当前采样层
Figure 880128DEST_PATH_IMAGE004
Figure 192161DEST_PATH_IMAGE017
)上的所有截面,比较其与截面关系图(见步骤3)中上一采样层
Figure 177435DEST_PATH_IMAGE014
上的所有对应截面的值范围,若有
Figure 620234DEST_PATH_IMAGE010
值区间不属于任一对应截面的
Figure 673641DEST_PATH_IMAGE010
值范围,则在这个
Figure 575738DEST_PATH_IMAGE010
值区间于形状网格上对应的空间线段与重心
Figure 56398DEST_PATH_IMAGE015
构成的多边形内部进行均匀采样得到新的轨迹线起始采样点(将截面需采样区域对应的所有边与这个截面的重心
Figure 411156DEST_PATH_IMAGE035
构成一组三角形来表示采样区域,采样点在这些三角形上选取);而对于所有基截面(
Figure 268253DEST_PATH_IMAGE018
),在其截面的所有多边形区域内采点。对于任一起始于的新采样点,进行如下计算:连接重心
Figure 721734DEST_PATH_IMAGE015
Figure 179260DEST_PATH_IMAGE019
并延长使之与截面的边交于点
Figure 728054DEST_PATH_IMAGE020
,则
Figure 816095DEST_PATH_IMAGE020
的纹理坐标可以表示为。我们定义如下的采样点二元参数
Figure 344346DEST_PATH_IMAGE022
来确定采样点在截面内的相对位置:
Figure 809962DEST_PATH_IMAGE023
其中,
Figure 131222DEST_PATH_IMAGE024
代表该采样点到形状网格表面投影点的纹理
Figure 885551DEST_PATH_IMAGE010
坐标,
Figure 622563DEST_PATH_IMAGE025
则表示该采样点到截面重心的长度与形状网格表面投影点到截面重心的长度之比;
6、对于上一采样层
Figure 208265DEST_PATH_IMAGE014
上的采样点
Figure 638110DEST_PATH_IMAGE026
,在当前采样层
Figure 676473DEST_PATH_IMAGE004
上利用采样点参数
Figure 217175DEST_PATH_IMAGE027
定位采样点在这一层上的确切位置。首先在截面关系图(见步骤3)上找到
Figure 258130DEST_PATH_IMAGE026
Figure 987051DEST_PATH_IMAGE014
上的截面于
Figure 128183DEST_PATH_IMAGE004
对应的(在关系图上有边直接相连)所有截面,然后判断采样点的
Figure 626160DEST_PATH_IMAGE010
值是否包含在这个截面的
Figure 194545DEST_PATH_IMAGE010
值范围中,即判断是否满足
Figure 410762DEST_PATH_IMAGE030
从而确定采样点是否在这个截面中存在对应点,若没有截面满足这个条件,则认为这条轨迹线终止于上一采样层
Figure 293268DEST_PATH_IMAGE014
;若有截面(假设存在个)满足这个条件,令截面
Figure 650617DEST_PATH_IMAGE007
Figure 150868DEST_PATH_IMAGE032
)的面积为
Figure 571485DEST_PATH_IMAGE033
,所有截面的面积之和为
Figure 44055DEST_PATH_IMAGE034
(截面面积通过如下方式估算:将封闭截面的所有边与这个截面的重心
Figure 954242DEST_PATH_IMAGE035
构成一组三角形,将所有三角形的面积相加即为截面面积的估算),计算得到一个独立均匀分布的随机数
Figure 879473DEST_PATH_IMAGE046
,若
Figure 166098DEST_PATH_IMAGE037
,则将采样点在
Figure 493174DEST_PATH_IMAGE004
层上的对应点从这个截面
Figure 777525DEST_PATH_IMAGE007
上选取。当选取了对应截面后,可以容易地通过参数
Figure 252368DEST_PATH_IMAGE027
在截面上定位唯一的一点
Figure 14788DEST_PATH_IMAGE028
7、对于每个采样点,连接其在所在的连续采样层上的所有对应采样点,即可得到一条对应的毛发方向轨迹线。
三、基本毛发建模
基于步骤二中得到的形状网格空间毛发方向轨迹线,可以进行毛发几何体的建模。在仅依赖形状网格的毛发建模的模式下,毛发的起始位置均位于形状网格的起始截面,且毛发在形状网格内部是均匀分布的,相当于轨迹线的简单拓展。但是,为了与当前的多数毛发建模工具相兼容,我们又引入了可选的依附网格输入,当用户为毛发对象额外指定了一个依附网格后,毛发轨迹线仅仅用来改变毛发的方向,毛发的起始位置可以由依附网格来决定,同时,密度、长度等等参数都可以通过定义在依附网格上的属性贴图的方式来进行局部建模。必须注意的是,毛发轨迹线只位于形状网格内部,在外部没有轨迹线的定义,所以当使用了依附网格时,对于形状网格外部的毛发可以选择按照网格内最近轨迹线方向,或按照默认的风格化方向(见步骤四),甚至去除外部毛发来控制毛发方向。
基于轨迹线与依附网格的基本毛发建模方法如下所述:
1、在依附网格上依照局部区域的密度定义进行所有发丝的根部位置采样,同时依照依附网格上其它参数的局部定义确定该发丝的具体参数值;
2、对于每个发丝,起始于步骤1中确定的发根位置进行如下追踪步骤:对于当前发丝位置,查找与其距离最小的轨迹线,并以轨迹线上到发丝当前位置点的最近点的方向为发丝的当前延伸方向,沿该方向增大毛发长度
Figure 258687DEST_PATH_IMAGE048
(为了更精确地拟合轨迹线方向,
Figure 713940DEST_PATH_IMAGE048
需要小于最终毛发离散表示中的每段长度)。重复如上追踪步骤直到发丝长度达到需要的发丝长度。
四、毛发的风格化
通过步骤三的毛发基本建模,毛发已获得了全局的初始形态,但在局部的发丝尺度上,其几何结构依然非常简单。基于前面的建模结果,在这一步中通过过程式的风格化方法来精细地调整毛发几何以实现卷曲、弯曲、杂乱等风格化效果。具体方法在(Y Yu. Modeling realistic virtual hairstyles. Proceedings of the 9th Pacific Conference on Computer Graphics and Applications. 2001, 295-304)与(C Yuksel, S Schaefer, J Keyser. Hair meshes. ACM Transactions on Graphics (TOG). 2009, 28(5), 1-7)中有介绍。
通过上述步骤,发明人在一台配备了Intel Q8200处理器以及Nvidia 470图形处理器的计算机上实现了本发明的若干实施实例。
实施例一、发明人使用本方法制作了一个动画角色的胡子及眉毛毛发模型,如图2所示。从实施过程和结果来看,有一定表面建模基础建模人员可以在半小时内掌握本发明的建模方法,并在一小时内完成复杂的毛发建模,并很容易控制毛发的整体形状和风格化效果。
实施例二、发明人使用本方法制作了一女性角色的整个发型,包括刘海和马尾辫模型,并结合了物理仿真方法生成动画,如图3所示。从实施过程和结果来看,本发明方法可以用于具有不同外形特点的毛发建模,从很薄的刘海,到梳理整齐的紧贴头皮部分的头发,到后端自然下垂的马尾辫都能够很好的通过形状网格表现出来。同时,本方法可以和物理仿真方法结合起来,在运动真实感和可控性两方面取得很好的平衡。

Claims (2)

1.一种基于表面网格的快速毛发建模方法,其特征在于,该方法包括以下步骤:
(1)形状网格的预处理:对输入的形状网格进行预处理以满足后续建模步骤对形状网格的需求规范,即通过自动或用户辅助的方式修正形状网格的参数坐标以标识局部位置内毛发的形态方向,以便在网格内自动提取毛发轨迹线;
(2)毛发轨迹线的提取:通过采样方式得到网格内均匀分布的毛发轨迹线,将表面的毛发形态方向定义依据网格的几何结构拓展至形状网格几何体内部,得到空间内的毛发形态的离散表示;
(3)基本毛发建模:为毛发对象额外指定依附网格对象,由依附网格来决定毛发的起始位置,以属性贴图方式定义在依附网格上的密度、长度等参数来进行毛发形态的局部控制,而步骤2中得到的毛发轨迹线集合用以改变空间中的毛发方向以拟合形状网格确定的毛发形态,并最终得到基本的毛发建模结果;
(4)毛发的风格化:基于基本的建模结果,通过过程式风格化方法来精细调整毛发几何以实现卷曲、弯曲、杂乱等风格化效果。
2.根据权利要求1所述基于表面网格的快速毛发建模方法,其特征在于,所述步骤(2)具体包括以下子步骤:
(A)在参数坐标UV空间V轴上确定                                                
Figure 737053DEST_PATH_IMAGE001
个等高线采样层,其
Figure 365481DEST_PATH_IMAGE002
值分别为
Figure 401570DEST_PATH_IMAGE003
,每个采样层在得到的轨迹线上对应于其轨迹上一点;
(B)对采样层
Figure 90040DEST_PATH_IMAGE004
,将其在UV平面上的对应直线与形状网格求交得到
Figure 643698DEST_PATH_IMAGE006
组空间线段,使其满足:不同组的线段均相互分离,而组内线段可互相串联成一空间曲线;第组空间线段(
Figure 659245DEST_PATH_IMAGE008
)与形状网格的边相交又可得到
Figure 330398DEST_PATH_IMAGE009
Figure 503890DEST_PATH_IMAGE010
值从小到大排列的一组交点
Figure 576888DEST_PATH_IMAGE011
,其
Figure 544844DEST_PATH_IMAGE002
值均为
Figure 703293DEST_PATH_IMAGE004
;将每组线段首尾相连可构成
Figure 149318DEST_PATH_IMAGE006
个封闭的空间多边形,将其作为对应于采样层
Figure 342402DEST_PATH_IMAGE004
的等高线多边形截面;
(C)在步骤(B)中,对于每个采样层
Figure 481259DEST_PATH_IMAGE004
我们可以得到
Figure 127004DEST_PATH_IMAGE006
个截面;从,截面数量的变化与形状网格的拓扑关系的变化有可能有无分支无汇聚的管状结构、分支结构或汇聚结构三种情况:我们可以将这种不同采样层子间截面的对应关系用截面关系图进行表示:图中的顶点用来表示某个截面,将
Figure 796386DEST_PATH_IMAGE014
中截面与
Figure 867110DEST_PATH_IMAGE004
中对应截面相互连接;
(D)求得每个截面的重心位置
Figure 982834DEST_PATH_IMAGE015
(E)以
Figure 822614DEST_PATH_IMAGE016
的顺序对所有采样层进行遍历处理:对当前采样层
Figure 365590DEST_PATH_IMAGE004
Figure 658032DEST_PATH_IMAGE017
)上的所有截面,比较其与步骤(C)的截面关系图中上一采样层
Figure 577446DEST_PATH_IMAGE014
上的所有对应截面的
Figure 271733DEST_PATH_IMAGE010
值范围,若有
Figure 985611DEST_PATH_IMAGE010
值区间不属于任一对应截面的
Figure 30927DEST_PATH_IMAGE010
值范围,则在这个
Figure 488453DEST_PATH_IMAGE010
值区间于形状网格上对应的空间线段与重心
Figure 37246DEST_PATH_IMAGE015
构成的多边形内部进行均匀采样得到新的轨迹线起始采样点;而对于所有基截面(
Figure 187605DEST_PATH_IMAGE018
),在其截面的所有多边形区域内采点;对于任一起始于
Figure 454638DEST_PATH_IMAGE004
的新采样点,进行如下计算:连接重心
Figure 119155DEST_PATH_IMAGE015
Figure 440415DEST_PATH_IMAGE019
并延长使之与截面的边交于点
Figure 929165DEST_PATH_IMAGE020
,则
Figure 931756DEST_PATH_IMAGE020
的纹理坐标可以表示为
Figure 517458DEST_PATH_IMAGE021
;我们定义如下的采样点二元参数
Figure 681723DEST_PATH_IMAGE022
来确定采样点在截面内的相对位置:
Figure 985665DEST_PATH_IMAGE023
其中,
Figure 526368DEST_PATH_IMAGE024
代表该采样点到形状网格表面投影点的纹理
Figure 904260DEST_PATH_IMAGE010
坐标,
Figure 567322DEST_PATH_IMAGE025
则表示该采样点到截面重心的长度与形状网格表面投影点到截面重心的长度之比;对于上一采样层
Figure 30665DEST_PATH_IMAGE014
上的采样点
Figure 437375DEST_PATH_IMAGE026
,在当前采样层
Figure 935353DEST_PATH_IMAGE004
上利用采样点参数
Figure 441420DEST_PATH_IMAGE027
定位采样点在这一层上的确切位置
Figure 719955DEST_PATH_IMAGE028
;首先在截面关系图上找到
Figure 602460DEST_PATH_IMAGE026
Figure 17261DEST_PATH_IMAGE014
上的截面于
Figure 694230DEST_PATH_IMAGE004
对应的(在关系图上有边直接相连)所有截面,然后判断采样点的值是否包含在这个截面的
Figure 880678DEST_PATH_IMAGE010
值范围()中,即判断是否满足
Figure 263435DEST_PATH_IMAGE030
,从而确定采样点是否在这个截面中存在对应点,若没有截面满足这个条件,则认为这条轨迹线终止于上一采样层
Figure 188665DEST_PATH_IMAGE014
;若有截面(假设存在
Figure 475290DEST_PATH_IMAGE031
个)满足这个条件,令截面
Figure 802366DEST_PATH_IMAGE007
Figure 86717DEST_PATH_IMAGE032
)的面积为
Figure 358299DEST_PATH_IMAGE033
,所有截面的面积之和为
Figure 386297DEST_PATH_IMAGE034
(截面面积按如下方式估算:将封闭截面的所有边与这个截面的重心
Figure 630197DEST_PATH_IMAGE035
构成一组三角形,将所有三角形面积相加即为截面面积的估算),计算得到一个(0,1)之间独立均匀分布的随机数,若
Figure 47589DEST_PATH_IMAGE037
,则将采样点在
Figure 613699DEST_PATH_IMAGE004
层上的对应点从这个截面
Figure 649789DEST_PATH_IMAGE007
上选取;选取对应截面后,通过参数
Figure 338259DEST_PATH_IMAGE027
可在截面上定位唯一的一点
Figure 459799DEST_PATH_IMAGE028
(F)对于每个采样点,连接其在所在的连续采样层上的所有对应采样点,即可得到一条对应的毛发方向轨迹线。
CN201110327886.7A 2011-10-26 2011-10-26 基于表面网格的快速毛发建模方法 Active CN102339475B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110327886.7A CN102339475B (zh) 2011-10-26 2011-10-26 基于表面网格的快速毛发建模方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110327886.7A CN102339475B (zh) 2011-10-26 2011-10-26 基于表面网格的快速毛发建模方法

Publications (2)

Publication Number Publication Date
CN102339475A true CN102339475A (zh) 2012-02-01
CN102339475B CN102339475B (zh) 2014-01-29

Family

ID=45515187

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110327886.7A Active CN102339475B (zh) 2011-10-26 2011-10-26 基于表面网格的快速毛发建模方法

Country Status (1)

Country Link
CN (1) CN102339475B (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102800129A (zh) * 2012-06-20 2012-11-28 浙江大学 一种基于单幅图像的头发建模和肖像编辑方法
CN103035030A (zh) * 2012-12-10 2013-04-10 西北大学 头发模型建模方法
CN103530472A (zh) * 2013-10-24 2014-01-22 山东师范大学 基于重要性采样的三维模型自动化简化方法
CN104537704A (zh) * 2015-01-14 2015-04-22 北京科艺有容科技有限责任公司 一种鸟类躯干模型的羽毛实时动态生成方法
WO2016045016A1 (en) * 2014-09-24 2016-03-31 Intel Corporation Furry avatar animation
CN107204036A (zh) * 2016-03-16 2017-09-26 腾讯科技(深圳)有限公司 生成头发图像的方法和装置
CN107221024A (zh) * 2017-05-27 2017-09-29 网易(杭州)网络有限公司 虚拟对象毛发处理方法及装置、存储介质、电子设备
CN109559288A (zh) * 2018-11-30 2019-04-02 深圳市脸萌科技有限公司 图像处理方法、装置、电子设备及计算机可读存储介质
CN110766799A (zh) * 2018-07-27 2020-02-07 网易(杭州)网络有限公司 虚拟对象的毛发处理方法及装置、电子设备、存储介质
CN111524171A (zh) * 2020-04-26 2020-08-11 网易(杭州)网络有限公司 图像处理方法、装置和电子设备
CN113345098A (zh) * 2021-06-30 2021-09-03 广东时谛智能科技有限公司 一种可交互式编辑的实时毛发材质生成方法及系统
CN116152405A (zh) * 2023-04-23 2023-05-23 腾讯科技(深圳)有限公司 一种业务处理方法、装置及计算机设备、存储介质
CN116894917A (zh) * 2023-06-20 2023-10-17 北京百度网讯科技有限公司 虚拟形象的三维发丝模型的生成方法、装置、设备和介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004206329A (ja) * 2002-12-25 2004-07-22 Toshiba Corp シミュレーション装置、方法、並びに、プログラム
CN101281655A (zh) * 2008-05-27 2008-10-08 中国科学院软件研究所 Gpu加速的轮廓区毛发状图形绘制方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004206329A (ja) * 2002-12-25 2004-07-22 Toshiba Corp シミュレーション装置、方法、並びに、プログラム
CN101281655A (zh) * 2008-05-27 2008-10-08 中国科学院软件研究所 Gpu加速的轮廓区毛发状图形绘制方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DOO-WON LEE, HYEONG-SEOK KO: "Natural Hairstyle Modeling and Animation", 《GRAPHICAL MODELS》, vol. 63, no. 2, 31 March 2001 (2001-03-31), pages 67 - 85, XP001043732, DOI: doi:10.1006/gmod.2001.0547 *
金小进,马尧海: "一种三维头发的仿真方法", 《计算机仿真》, vol. 27, no. 7, 31 July 2010 (2010-07-31), pages 218 - 221 *

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102800129A (zh) * 2012-06-20 2012-11-28 浙江大学 一种基于单幅图像的头发建模和肖像编辑方法
CN102800129B (zh) * 2012-06-20 2015-09-30 浙江大学 一种基于单幅图像的头发建模和肖像编辑方法
US9367940B2 (en) 2012-06-20 2016-06-14 Zhejiang University Method for single-view hair modeling and portrait editing
CN103035030A (zh) * 2012-12-10 2013-04-10 西北大学 头发模型建模方法
CN103035030B (zh) * 2012-12-10 2015-06-17 西北大学 头发模型建模方法
CN103530472B (zh) * 2013-10-24 2016-05-11 山东师范大学 基于重要性采样的三维模型自动化简化方法
CN103530472A (zh) * 2013-10-24 2014-01-22 山东师范大学 基于重要性采样的三维模型自动化简化方法
US9691172B2 (en) 2014-09-24 2017-06-27 Intel Corporation Furry avatar animation
CN106575445A (zh) * 2014-09-24 2017-04-19 英特尔公司 毛皮虚拟化身动画
WO2016045016A1 (en) * 2014-09-24 2016-03-31 Intel Corporation Furry avatar animation
CN106575445B (zh) * 2014-09-24 2021-02-05 英特尔公司 毛皮虚拟化身动画
CN104537704B (zh) * 2015-01-14 2017-10-13 北京春天影视科技有限公司 一种鸟类躯干模型的羽毛实时动态生成方法
CN104537704A (zh) * 2015-01-14 2015-04-22 北京科艺有容科技有限责任公司 一种鸟类躯干模型的羽毛实时动态生成方法
CN107204036A (zh) * 2016-03-16 2017-09-26 腾讯科技(深圳)有限公司 生成头发图像的方法和装置
CN107221024A (zh) * 2017-05-27 2017-09-29 网易(杭州)网络有限公司 虚拟对象毛发处理方法及装置、存储介质、电子设备
CN107221024B (zh) * 2017-05-27 2022-03-04 网易(杭州)网络有限公司 虚拟对象毛发处理方法及装置、存储介质、电子设备
CN110766799A (zh) * 2018-07-27 2020-02-07 网易(杭州)网络有限公司 虚拟对象的毛发处理方法及装置、电子设备、存储介质
CN110766799B (zh) * 2018-07-27 2024-01-26 网易(杭州)网络有限公司 虚拟对象的毛发处理方法及装置、电子设备、存储介质
CN109559288A (zh) * 2018-11-30 2019-04-02 深圳市脸萌科技有限公司 图像处理方法、装置、电子设备及计算机可读存储介质
CN111524171A (zh) * 2020-04-26 2020-08-11 网易(杭州)网络有限公司 图像处理方法、装置和电子设备
CN113345098A (zh) * 2021-06-30 2021-09-03 广东时谛智能科技有限公司 一种可交互式编辑的实时毛发材质生成方法及系统
CN116152405A (zh) * 2023-04-23 2023-05-23 腾讯科技(深圳)有限公司 一种业务处理方法、装置及计算机设备、存储介质
CN116894917A (zh) * 2023-06-20 2023-10-17 北京百度网讯科技有限公司 虚拟形象的三维发丝模型的生成方法、装置、设备和介质

Also Published As

Publication number Publication date
CN102339475B (zh) 2014-01-29

Similar Documents

Publication Publication Date Title
CN102339475B (zh) 基于表面网格的快速毛发建模方法
Chen et al. A system of 3D hair style synthesis based on the wisp model
CN103035030B (zh) 头发模型建模方法
Bertails et al. Adaptive wisp tree-a multiresolution control structure for simulating dynamic clustering in hair motion
CA2772530C (en) Hair meshes
CN106067189B (zh) 海量三维电缆及通道模型自动化建模与渲染方法
CN105184843A (zh) 一种基于OpenSceneGraph的三维动画制作方法
Noble et al. Modelling and animating cartoon hair with nurbs surfaces
Orbay et al. Sketch-based surface design using malleable curve networks
Issa Virtual reality: A solution to seamless technology integration in the AEC industry
Yu et al. A hybrid image-cad based system for modeling realistic hairstyles
Mao et al. Sketchy hairstyles
Kong et al. Image Media Technology for Virtual Reality Applications. Generation of 3D Hair Model from Multiple Pictures.
Garcia et al. Interactive applications for sketch-based editable polycube map
Chen et al. Character animation creation using hand-drawn sketches
CN105046727A (zh) 一种产品效果图的生成方法
Zhang et al. Shrubbery-shell inspired 3D model stylization
CN104851125B (zh) 一种植物叶子三维模型建模方法及系统
Zhang et al. Procedural modeling of rivers from single image toward natural scene production
Zheng et al. Creating reference image of realistic cloth folded surface using sketch-based interactive modeling
Hui et al. Generating subdivision surfaces from profile curves
Gupta et al. Optimized framework for real time hair simulation
Ding et al. Flower solid modeling based on sketches
Liu et al. Body-structure-based cartoon character modeling from multi-view hand-drawings
Lin et al. Research on Industrial Product Modeling Design Method Based on Deep Learning

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant