一种应用于实时头发运动仿真的碰撞修正方法

文档序号:6543521阅读:218来源:国知局
一种应用于实时头发运动仿真的碰撞修正方法
【专利摘要】本发明公开了一种应用于实时头发运动仿真的碰撞修正方法,该方法主要包括以下步骤:基于已有的头发运动数据对发丝几何关系与运动规律进行分析,将所有发丝的粒子分割为若干聚类,以提高碰撞修正的效率;对当前时刻头发几何形态来构建发丝粒子之间的碰撞联结关系,以决定粒子相互间的碰撞关系结构;基于前述得到的发丝粒子之间的碰撞关系来快速地修正粒子位置从而满足碰撞约束。本发明首次提出了针对实时头发运动仿真的后期碰撞处理方法,可以与现有的头发运动仿真方法集成,从而提高仿真效果的细节与质量,可应用于实时头发运动仿真应用中,并具有通用性强、效率高等优点。
【专利说明】一种应用于实时头发运动仿真的碰撞修正方法
【技术领域】
[0001]本发明涉及计算机运动仿真领域,尤其涉及对虚拟角色毛发实时运动仿真的方法。
【背景技术】
[0002]本发明相关的研究背景简述如下:
[0003]逼真的虚拟头发运动建模与仿真在计算机动画、虚拟现实等领域有非常重要的应用。从早期的完全不考虑发丝之间相互作用的工作(Rosenblum, R.E., Carlson, W.E., and Tripp,Ε.1991.Simulating the structure and dynamics of humanhair!modelling,rendering and animation.The Journal of Visualization andComputer Animation2,4,141 - 148.) (Anjyoj K.-1.,Usamij Y.,and Kuriharaj T.1992.A simple method for extracting the natural beauty of hair.1n ACM SIGGRAPHComputer Graphics,vol.26,ACM,111 - 120.)开始,头发运动仿真一直是一个热门的研究课题。
[0004]针对高质量的头发运动仿真,最常见的方法是对每个单独的发丝进行仿真,从而获得最为精细的运动细节。为了尽可能模拟真实世界中的发丝运动,许多研究工作针对单独发丝的运动提出不同的运动仿真模型,如(Bertails,F.,Audolyj B.,Canij Μ.-P.,Querleuxj B.,Leroy, F.,and Levequej J.-L.2006.Super-helices for predictingthe dynamics of natural hair.1n ACM Transactions on Graphics(TOG), vol.25,ACM,1180 - 1187.) (Sellej A., Lentinej M., and Fedkiwj R.2008.A mass spring modelfor hair simulation.ACM Trans.Graph.(SIGGRAPH2008)27, 3 (Aug.).) (Bergou, M.,WardetzkyjM.,Robinson,S.,AudolyjB.,and Grin-spun,E.2008.Discrete elasticrods.1n ACM Transactions on Graphics (TOG), vol.27,ACM,63.) (Casatij R., andBertails-DescoubesjF.2013.Super space clothoids.ACMTransaction on Graphics.)等。基于这些发丝运动模型,许多在单独发丝尺度上进行运动仿真并考虑复杂的头发相互作用的方法被证明可以得到较高真实度的结果。其中,(Selle, A.,Lentine, M.,andFedkiwj R.2008.A mass spring model for hair simulation.ACM Trans.Graph.(SIGGRAPH2008) 27, 3 (Aug.).)把头发的相互作用表示为发丝吸引力与几何碰撞两方面,从而实现发簇结构动态变化的效果;(Mcadams, A., Selle, A., Ward, K., Sifakis, E., and Teran, J.2009.Detail preserving continuum simulation of straight hair.ACMTransactions on Graphics-T0G28, 3, 62.)提出了一个鲁棒的头发相互作用的模拟方法,通过基于流体的碰撞松弛来使得大量发丝之间的几何碰撞变得更容易求解;(Daviet, G.,Bertails-Descoubes, F., and Boissieux, L.2011.A hybrid iterative solver forrobustly capturing coulomb friction in hair dynamics.1n ACM Transactions onGraphics (TOG), vol.30, ACM, 139.)提出了一个混合方法来鲁棒地模拟发丝之间的库仑摩擦力现象。但是,所有这些方法都专注于效果的质量并需要大量的离线运算时间,使得模拟过程非常缓慢,无法用于实时应用之中。

【发明内容】

[0005]本发明的目的在于针对现有技术的不足,提供一种应用于实时头发运动仿真的碰撞修正方法,该方法可基于已有的头发运动仿真数据序列,进行实时的后期修正来处理头发的相互碰撞从而增加运动的细节与真实感,具有很高的实用价值。
[0006]本发明的目的是通过以下技术方案来实现的:一种应用于实时头发运动仿真的碰撞修正方法,包括如下步骤:
[0007](I)头发聚类预处理:基于已有的头发运动数据对头发的几何信息与运动规律进行分析,将所有发丝粒子分割为若干聚类用于提高碰撞修正的效率;
[0008](2)头发相互碰撞联结关系的构建:对当前时刻头发的几何形态构建发丝粒子之间的联结关系结构,以决定粒子的碰撞关系;
[0009](3)发丝碰撞修正:基于前述得到的发丝粒子之间的碰撞关系,快速地修正粒子位置从而满足碰撞约束。
[0010]本发明的有益效果是:通过高效的后期头发碰撞关系的处理,可以实现对实时低质量的头发运动仿真结果的碰撞修正,在保持同等实时效率的同时获得类似于高精度仿真的效果质量,实验证明可对数量超过十万的虚拟人物发型实现实时的高质量运动仿真,效果优于现有方法,且具有通用性强、使用简便等优点。
【专利附图】

【附图说明】
[0011]图1为碰撞修正模式的示意图;
[0012]图2为对直发与卷发发型的修正结果。
【具体实施方式】
[0013]本发明的核心技术是对虚拟角色发型对象基于已有的低质量的头发运动仿真结果进行后期碰撞修正,以此实现高质量的实时头发运动仿真,本发明一种应用于实时头发运动仿真的碰撞修正方法,包括如下步骤:
[0014]1.头发聚类预处理:基于已有的头发运动数据对头发的几何信息与运动规律进行分析,将所有发丝粒子分割为若干聚类用于提高碰撞修正的效率;
[0015]1.1邻域关系分析
[0016]对目标头发模型对象的几何形状构建邻域关系图,图中每个顶点代表一个发丝粒子,边表示粒子之间的相邻关系,初始时没有边。对每个发丝粒子i,静态位置为Pi,搜索所有距离Pi小于距离阈值巧的其他发丝粒子j,即I IP1-PjI Iyr1,在邻域关系图中增加顶点i至IJj的边,并计算其权值Uij如下:
[0017]Uij=- P1-Pj 2+cw
[0018]其中Cw为一较大常数来保证Uij永远为正,本方法中令Cw=IV
[0019]1.2发丝聚类
[0020]对步骤1.1得到的邻域关系图将所有发丝粒子,也即图中所有顶点分割为k个聚类,本方法通常令k=100。使用κ-way图割方法对邻域关系图进行分割,最小化如下能量:[0021]
【权利要求】
1.一种应用于实时头发运动仿真的碰撞修正方法,其特征在于,包括如下步骤: (1)头发聚类预处理:基于已有的头发运动数据对头发的几何信息与运动规律进行分析,将所有发丝粒子分割为若干聚类用于提高碰撞修正的效率; (2)头发相互碰撞联结关系的构建:对当前时刻头发的几何形态构建发丝粒子之间的联结关系结构,以决定粒子的碰撞关系; (3)发丝碰撞修正:基于前述得到的发丝粒子之间的碰撞关系,快速地修正粒子位置从而满足碰撞约束。
2.根据权利要求1所述应用于实时头发运动仿真的碰撞修正方法,其特征在于,所述步骤I包括以下子步骤: (1.1)分析目标头发模型的发丝粒子相互之间的邻域关系,构建发丝粒子邻域关系图; (1.2)基于步骤1.1得到的发丝粒子邻域关系图,对发丝粒子进行分割,生成一组发丝粒子聚类。
3.根据权利要求2所述应用于实时头发运动仿真的碰撞修正方法,其特征在于,所述步骤2包括以下子步骤: (2.1)对每一帧的当前发丝粒子构建空间搜索加速结构; (2.2)对上一时刻的发丝关联信息进行合法性判断,计算当前时刻所需的邻域搜索数量; (2.3)依据步骤2.2计算得到的邻域搜索数量,依靠步骤2.1得到的空间搜索加速结构进行固定数量的最近邻搜索; (2.4)基于步骤2.3得到的邻域搜索结果更新发丝间碰撞关系。
4.根据权利要求3所述应用于实时头发运动仿真的碰撞修正方法,其特征在于,所述步骤3包括以下子步骤: (3.1)基于权利要求2得到的发丝粒子聚类结果以及权利要求3得到的发丝间碰撞关系进行系统矩阵的构建; (3.2)对步骤3.1构建得到的系统矩阵进行增量式的Cholesky分解计算; (3.3)基于步骤3.2得到的Cholesky分解计算结果进行迭代求解,得到碰撞修正后的发丝粒子位置。
【文档编号】G06F17/50GK103942376SQ201410145693
【公开日】2014年7月23日 申请日期:2014年4月11日 优先权日:2014年4月11日
【发明者】周昆, 柴蒙磊, 郑昌熙 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1