● 摘要
利用计算机技术来逼真模拟复杂的自然现象是计算机图形学与虚拟现实领域中一个重要的研究方向。液体作为真实世界中广泛存在且常见的一种自然现象,与我们的工作和生活息息相关。因此,如何快速有效地完成对各种液体现象的真实感建模与绘制成为了一个困难而又极具吸引力的问题。逼真的液体现象建模能够为数字媒体、生物医疗、环境气候等相关科学研究领域提供重要的可视化方法,具有重要的理论意义和应用价值。目前,液体建模方法大体上可以分为两类:基于物理的液体建模方法和基于采集图像的液体建模方法。基于物理的方法一般利用流体力学、海洋学等学科的物理规律和运动模型,通过数值计算的方法,求解不同时刻液体的运动状态。基于采集图像的方法是利用采集设备直接获取液体不同时刻的几何形态,并利用图像间的关系恢复液体的几何模型。两类方法各具特点:基于物理的方法适用于模拟运动较为复杂且范围较广难以采集的液体运动;基于采集图像的方法因其简化了复杂的模型推导,因此更适用于运动相对简单且计算简便的液体运动。本文在国家自然科学基金项目“动态参与介质建模技术研究(61272348)”和北京市自然科学基金项目“物体表面复杂材质反射属性建模技术研究 (4102037)”资助下,以液体运动为研究对象,以真实模拟液体运动现象为目标,展开了动态液体数据采集与建模技术的研究工作。由于人的肉眼能直接观察到的液体运动现象主要反映在水面上,因此水面模拟效果是否真实是液体建模的一个重要判断标准。本文分别针对三种不同的典型应用场景研究了相应的建模方法,包括:适应于小规模简单水面运动场景的,能高效且准确地恢复水面三维模型的基于采集数据的水面重建方法;适应于小规模复杂水面运动场景的,基于流体控制方程的液体实时建模方法;适应于大规模球面海域场景的,基于海洋学经验模型的水面建模方法。本文主要研究成果如下:
(1) 研制了以多台高速相机为核心的动态水面数据采集系统,由硬件和软件两部分组成。硬件设备主要包括可同步的高速相机、高速数据存储设备、光源、棋盘格等。同时提出了相应的多相机同步、水面特征提取以及特殊情况下的数据处理等算法。其中,水面特征提取算法以真实采集的图像数据和相机参数作为输入,能够识别、追踪水面特征点并提取其共性与差异。采集数据处理是根据不同介质的光学传播特性以及采集结果中单帧图像内和多帧图像序列间的连续性,进行特征点检测、水面类型判断和未知特征点修复。
(2) 提出了一种基于采集数据的动态水面重建算法,通过采集的图像序列恢复水面各点的高度场和法向量信息,从而得到动态水面三维模型。提出了一种基于FFT的水面运动模型,该模型利用动态水面重建结果,实现了可交互的水面模型编辑。通过实验与实际应用表明,该研究中的采集系统设计和采集方案设计合理,提出的水面重建方法和水面编辑方法可以准确恢复水面模型且可以动态编辑水面。
(3) 提出了一种基于半拉格朗日的液体建模方法。该方法从流体动力学中经典的Navier-Stokes方程着手,通过求解构造的Poisson方程得到每一时间步长的数值解,进而精确驱动粒子运动以构建真实液体表面。之后,利用液体表面追踪及Marching Cubes方法对液体表面进行重建,生成了真实的液体表面模型。该方法是一种基于物理的方法,并结合了网格法与粒子法的各自优势,对于较复杂的水面建模能够得到较好的效果,其真实性与计算效率得到了实验的验证。
(4) 提出了一种基于球面的海面建模方法。该方法将传统的基于Perlin噪声的平面海面建模方法进行改进,结合了根据实测数据建立的与经纬度相关的海面基准面,利用高度场模型,构造了球面动态海面模型,以适用于大范围海域的模拟。在绘制过程中提出了一种基于投影的自适应网格采样算法,以满足球面海面的绘制需求,并结合海面光照模型,使得绘制结果更加逼真。同时,利用了GPU技术,大大加快了球面海面绘制的速度。实验表明,海面建模与绘制方法可以对球面海面正确模拟且绘制效果能够达到应用的基本要求。