论文部分内容阅读
随着电子计算机微型化、大规模集成电路的发展与计算机性能的提高,利用计算机处理图形、图像、三维动画、虚拟现实和增强现实等日常生活中无处不在的信息推动计算图形学迅速发展。构造生动逼真的虚拟人成为关键技术,而人物的头发作为虚拟人物的重要特征,在对人物形象衬托方面起着至关重要的作用。因此,虚拟三维头发建模及仿真成为目前计算机图形学的研究热点问题,有着十分广阔的应用前景。 现实世界是三维的,人们难以对三维以上的空间形成直观的几何概念,目前的计算机技术也无法将超过三维的物体在屏幕中显示出来。本论文的研究工作主要是在高维空间的三维子空间中,针对计算机三维空间中动画的虚拟人物塑造进行分析。虚拟人物整体形象是否生动逼真在很大程度上取决于三维头发的建模效果。现实中人物头部拥有数以十万计的头发丝,每根发丝均有各自的几何形状与色泽,构建虚拟三维头发模型必须综合考虑头发的几何外形、发丝的层次结构、计算机的性能限制以及手工操作复杂度等因素。 在研究高维仿生信息理论的基础上,结合B样条曲线函数,提出了一种具有随机发丝覆盖效果的虚拟三维头发自动建模方法,将给定的虚拟人物三维头型拟合成能够用参数方程描述的椭球体,作为后续三维空间操作的几何参考。通过计算出椭球体的三轴参数作为构建虚拟三维头发的范围,然后研究虚拟三维发型包络建模。从高维空间仿生的角度切入,将构成包络的关键头发看成是由毛囊出发的质点,受到重力和头皮表面吸引力的共同作用所产生的轨迹,具有贴合头皮和符合普通头发的生长特点。通过轨迹得到描述关键头发的型值点,采用B样条函数将这些三维型值点包络拟合成曲面片,并通过纹理映射之后得到初步单层发型;最后在初步发型外围生成了不同密度和不同生长方向的发丝簇,从而得到真实视觉效果的虚拟三维头发。 针对人物的二维正面照片重构虚拟三维发型,提出了一种将普通人物照片中的头发纹理图片三维化的算法。通过用户提供一张正面头发的照片,进行二维头发纹理信息三维化,采用Canny算子结合区域头发颜色来检测出纹理中头发的边缘特征,并且根据此边缘特征的最外层轮廓,计算出与之相适应的类椭球体头部模型的三轴参数,作为像素点三维坐标的几何参考,由头发纹理的边缘部分和内部设置点集构建了多三角网格;然后应用笛卡尔坐标系到三角形坐标系的变换,以及对边缘特征内部包含头发纹理信息中的每个像素点赋深度值来获得虚拟头发的初始三维外形。为了模拟出真实头发所具备的多层次发丝效果,文中还根据高维仿生信息学的相关理论,提出了一种标签图(label map)来模拟从给定的二维人物正面照片的边缘特征信息中,头发丝的生长过程,并且采用B样条函数来细化初始三维头发。实验结果表明,该算法能够充分利用给定的人物正面照片中所包含的头发二维纹理信息,在极少手工操作介入的情况下将其三维化成拥有多层次发丝细节以及具备全方位真实感视觉效果的虚拟三维头发。 最后针对虚拟三维发型改变需求,设计了虚拟三维发型的“水波纹”视觉效果算法。利用二维平面三角坐标系的几何定义,从几何向量的角度推导了二维平面三角坐标系与二维笛卡尔坐标系之间的转换关系。提出了一种基于二维三角坐标系拓扑几何变换的算法,该算法并不改变虚拟三维头发模型中的数据部分,只是通过将投影到观测平面下像素的二维坐标值映射到新的坐标空间,并对这个新的坐标空间内的每个像素点采用迭代三角函数方法得到随动画帧数改变的新三角形坐标值,再映射回观测平面,最后达到动态“水波纹”视觉效果。实验结果表明,该算法简单直观,能够很好地应用于计算机三维动画中。 进一步地研究工作可从高维空间中点的分布深入研究,针对虚拟三维头发自动建模和二维照片三维重构中训练多种三维头发数据,进行自动匹配合适的背面发型及构建更贴近真实人物的物理特性和视觉效果。