论文部分内容阅读
随着虚拟人在虚拟现实、娱乐、外科手术模拟等方面越来越广泛的应用,实时逼真地显示虚拟人越来越重要。在过去的30年间,研究人员在虚拟人皮肤的建模和变形方面做了大量的研究工作,已经取得了一系列研究成果,但仍然面临许多问题。其中一个主要的挑战就是如何快速、逼真地实现虚拟人的皮肤变形。本文针对实时性要求较高的系统,深入研究了逼真的表面模型虚拟人皮肤变形方法,并取得了如下主要研究成果:1)基于交叉截面方法实现了有缝虚拟人模型的无缝建模与皮肤变形在三维游戏等实时动画系统中,为了获得实时的人体动画,通常采用有缝刚体表面模型虚拟人。这种模型没有皮肤变形效果,在运动幅度较大时关节处会发生断裂失真。为了解决这些问题,本文采用交叉截面的概念实现了有缝模型的无缝皮肤建模,并在有缝刚体表面模型虚拟人动画驱动框架下,实现了基于交叉截面的无缝皮肤变形。在保证人体动画实时性的前提下,提高了虚拟人的逼真性。2)提出并实现了一种基于广义交叉截面的皮肤变形方法交叉截面模型是一种近乎规则的多边形网格模型,对于人体皮肤这样复杂,而且复杂度极不均匀的表面来说,表示的效率很低,难以表示出皮肤表面的细节信息。基于此,本文了提出了基于广义交叉截面的皮肤变形方法。该方法将任意皮肤网格模型的顶点进行分组,即建立广义交叉截面,从而通过对广义交叉截面的处理实现皮肤的变形驱动。这样就实现了在不改变顶点结构的前提下驱动任意皮肤网格模型,很好的保持了原模型的细节,从而获得了更精细的皮肤变形特征,取得了更加逼真的效果。该方法借鉴了交叉截面分组变形的原理,可以根据需要灵活选择分组划分原则及分组粒度,从而满足不同应用的实时性和逼真性要求。3)提出并实现了基于真实采集数据的皮肤变形方法通过经验设定皮肤网格点的分组和变形规则来实现广义交叉截面皮肤变形,通常可以获得较好的效果。但在具有复杂运动且逼真性要求又较高的系统中,对于肩关节附近皮肤的变形模拟效果不是很理想。一方面无法精确模拟肌肉收缩引起的皮肤变形,另一方面也很难克服肩部的失真。针对这个问题,本文提出并实现了基于真实采集数据的皮肤变形方法。该方法借助运动捕获设备获得真实的人体运动和皮肤变形数据,利用机器学习的方法将运动过程中人体皮肤的变形特性与关节角度之间的关系提炼出来,从而间接地获得了真实人体皮肤的变形特性。然后,将得到的规律直接应用到骨架驱动的人体动画系统中,即可实现在简单的表面模型基础上,获得比较真实的皮肤变形。该方法保持了表面模型动画驱动系统的快速性和易用性,同时在肩部失真克服和肩部肌肉变形效果模拟方面取得了较好的效果。