基于反射率的多尺度水表面重建方法研究

来源 :中国科学院大学 | 被引量 : 0次 | 上传用户:underdog1234
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着人们生活水平的不断提高,对于电视、电影、三维游戏中的特效真实感的需求也不断增强,水的模拟在其中应用非常广泛,因此图形学中流体模拟领域一直都是研究的热点。但与此同时,水面波浪的产生受到各方面因素的影响,使得水面重建需要考虑到的因素非常多样和复杂。多年来,对于流体重建的研究也在不断的发展,从最早的基于经验模型建模,到基于流体物理方程的求解,到如今基于数据驱动方法的兴起,各种方法百花齐放,具有的优势和缺陷也各有不同,因此如何能够呈现出具有真实感的动画是一个非常具有挑战性的问题。  然而现有的基于数据采集的水面重建方法中,依然存在着一些问题。本文针对这些问题,对水面动画重建的方法进行了研究,提出了一种基于反射率的多尺度水面重建方法,主要取得了以下创新性研究成果:  (1)提出一种基于反射率的多尺度综合水面高度场重建方法  传统的SFS方法对水面高度场进行重建存在的两个问题,第一,假设物体的表面为朗伯体并不符合真实规律,第二,仅通过阴影难以恢复大尺度下的水面形态变化,可能造成大尺度下水面高度场的变化趋势的不准确。因此,本文提出了一种基于反射率的多尺度水面重建方法。首先利用拍摄的视频信息,对反射率进行重建,并结合反射率信息重建大尺度下水面全局的波浪趋势信息。然后针对复杂的水面波浪部分,利用局部优化算法在小尺度下对高度场进行再次的优化,获得更加准确的波浪形态。然后综合两种尺度下获得的高度场信息,完成水面高度场的重建。从实验结果可以看出,我们提出的方法能够更加准确重建出水面的高度场信息,能够很好的反应出水面波浪的状态,得到具有真实感的水面形态数据。  (2)提出一种在时序上对水面动画进行平滑并再现波浪翻滚的方法  在前文对于高度场的求解的算法中,主要针对于单帧进行计算,因此在帧与帧之间可能出现高度场的跳变,造成重建波浪动画有不够连贯的感觉。本文通过浅水方程对水面进行拟合,得到水面整体的速度信息,然后利用方程的约束对动画进行平滑,得到更加生动的波浪动画。  针对水面高度场数据无法再现波浪翻滚现象的问题,本文提出了一种高效的波浪翻滚重建算法。首先将高度场转化为三角网格来表示,然后利用分水岭算法定位波峰位置后,结合水面速度和高度梯度信息重现波浪翻滚效果,得到更具真实感的水面动画。实验表明,本文提出的方法能够更好的展现波浪表面的细节,得到波浪翻滚的效果,渲染得到更加生动的水面动画。  (3)搭建了一个水面动画重建原型系统  综合本文设计的基于反射率的多尺度水面重建框架,搭建了水面动画重建原型系统。该系统以单摄像头拍摄的水面视频作为输入数据,实现了视频数据的读取和逐帧分解为图片,并可根据实际的输入视频数据,设定相关的参数,利用设计好的基于反射率的多尺度重建算法进行水面高度场的重建以及三维模型文件的生成。并可根据设定好的批处理程序,在maya中进行最后的渲染,得到具有真实感的水面动画。该系统只需要设定少量的参数就可以根据输入的视频数据方便的生成重建动画,同时由于是原型系统,具有较强的扩展空间,可以为以后的水面动画重建研究提供基础的平台。
其他文献
随着计算机网络技术的迅速发展和其应用的日益广泛,XML已经成为网络上数据描述和数据交换的标准,得到越来越广泛的应用。如今,XML在越来越多得领域得到应用,XML数据量也日益增大,
学位
随着计算机技术、传感技术及通信技术的持续创新和发展,科学研究过程中产生的科学数据呈现爆发式增长。科学数据的共享对知识发现和科研创新具有重大的意义。为了实现科学数据
高校教务管理工作中一项非常重要的工作就是考试管理工作,每学期教师都会为了出一套或几套试卷而翻阅大量的书籍,或使用现成的试题,或自己编题。这种出卷方式不仅工作任务繁重而
随着计算机的应用的领域越来越广泛,计算机的软件的数量也以几何级数在增长。软件在带给人们快捷方便的生活的同时,也带来了大量的无法避免的软件安全漏洞。无论是Windows系
制造业是我国国民经济的支柱产业。入世之后,中国将成为世界的制造业生产基地面对日趋激烈的市场竞争制造企业急需提高生产效率改进生产现场管理策略于是一种面向企业车间层的
全过程计算机辅助动画自动生成技术是一种新的基于人工智能的动画生成技术,主要研究的是将人工智能技术引入动画生成的全过程,该技术从用自然语言书写的故事开始,直至最终生成动
行人重现识别是指在监控摄像网络中发现特定目标行人的任务,相关研究成果可用于安全监控和智能侦查等领域。该问题对于国家安全具有重要的意义,其研究具有较好的理论意义和应用
虚拟化技术的出现拯救了复杂多样的硬件平台与多种多样的操作系统之间、或者多种操作系统与基于系统的应用开发之间的复杂性。例如,随着高级语言虚拟机JAVA虚拟机的出现,JAVA
软件复用是提高软件开发效率和软件质量的一种有效手段。研究和实践表明,在特定领域内对软件资产和经验进行复用更易获得成功。特定领域内的软件复用包含领域工程和应用工程两