1、基于网络的三维浏览系统 I 摘 要 本文以国家自然科学基金重点项目“虚拟奥运博物馆关键技术研究”为背景, 实 践 了一种面向特征的三维模型简化 误差度量方法 及递进传输 显示 方法,主要完成了以下几方面的研究工作:( 1) 实 践 了 带能量函数的 保留特征的三维模型简化 误差度量 算法,在有效 简化几何模型 保留模型原有拓扑特征和属性特征的 同时 基于能量最小化的网格优化算法 对误差进行度量,增强了模型 真实感。( 2) 实 践 了利用递进网格对三维模型进行递进显示 的方法 , 解决 传统传输方法将模型完全下载之后绘制、响应时间长的问题。( 3)设计了 用户与 三维场景 交互功能。 基于上述
2、研究成果,本文开发了基于递进传输的 Web3D 展示平台。用户通过 Web浏览器请求模型,系统以递进传输方式将模型发送到客户端,并提供多种交互功能。 关键词 三维模型简化误差度量 递进网格 递进传输 Web3D 基于网络的三维浏览系统 II Abstract In this thesis, based on the key projects of National Natural Science Foundation “the Olympic Museum Virtual Key Technology”, a method of simplification and compressed tr
3、ansmission of 3D models with feature preservation is studied. We completed the following tasks: (1) A simplification algorithm of 3D models with feature preservation energy function. The original features of topology such as boundaries and holes and attributes such as color, texture are retained dur
4、ing the process of simplifying the geometry models, which expands the scope of application of the simplification algorithm and improved the realism of the model. (2) Studied on the use of compressed encode and progressive transmission of 3D models to short the response time of the traditional transm
5、ission mode of download-and-display. (3) Designed an object-oriented real-time rendering of 3D scenes Web3D platform. Based on the research, we developed the following tools: A progressive transmission based Web3D platform. Users request models over Internet, and the models can be sent to the client
6、 with progressive transmission. The platform provides a variety of interactive functions as well. Key words 3D model Simplification, Progressive Mesh, Progressive Transmission, Web3D 基于网络的三维浏览系统 3 目录 第一章 绪论 .7 1.1 课题背景和意 义 .7 1.2 国内外研究现状 .8 1.2.1 层次细节模型 . 8 1.2.2 简化三维模型 . 9 1.2.3 递进网格 . 13 1.3 论文的研究
7、工作及组织 .13 1.3.1 论文的研究工作 . 13 1.3.2 论文的结构 . 14 第二章 基于能量函数的三维模型简化算法 .15 2.1 引言 .15 2.2 基本概念 .16 2.3 设计思想 .18 2.4 简化原则和误差度量方法 .21 2.5 选择最小误差 .27 2.6 基于三角形折叠的网格简化方法 .28 2.7 实验结果 .29 经典模型的几何网格简化 . 29 带属性模型的特征保留简化 . 29 第三章 基于递进网格 /纹理的模型重构和压缩编码方法 .32 3.1 引言 .32 3.2 递进传输基本概念 .33 3.2.1 递进传输简介 . 33 3.2.2 递进网格
8、算法 . 34 3.3 基于三角形折叠的递进网格构造方法 .36 3.4 递进传输文件结构分析 .37 3.5 递进显示概要设计 .41 基于网络的三维浏览系统 4 3.5.1 递进网格的同步控制传输 . 41 3.5.2 整体传输框架设计 . 42 3.5.3 分析线程部分程序流程设计 . 43 3.6 递进数据的数据结构 .43 3.7 实验结果 .45 第四章 基于 Web 的三维展示平台 .50 4.1 引言 .50 4.2 总体框架 .52 4.3 功能设计 .53 4.4 实验结果 .56 第五章 总结与展望 .59 致谢 .62 参考文献 .63 基于网络的三维浏览系统 5 Co
9、ntents Chapter 1 Introduction . 错误 !未定义书签。 1.1 Background . 错误 !未定义书签。 1.2 Compared With Other Simplify Methods . 错误 !未定义书签。 1.2.1 LOD . 错误 !未定义书签。 1.2.2 Simplify 3D Models. 错误 !未定义书签。 1.2.3 Progressive Mesh . 错误 !未定义书签。 1.3 Introduction Of Paper. 错误 !未定义书签。 1.3.1 Contents Of This Paper. 错误 !未定义书签。
10、1.3.2 Structure . 错误 !未定义书签。 Chapter 2 Energy Function-Based 3D Models Simplify . 错误 !未定义书签。 2.1 Introduction . 错误 !未定义书签。 2.2 Basic Concepts . 错误 !未定义书签。 2.3 How To Achieve. 错误 !未定义书签。 2.4 New Way To Select Triangle Unifications . 错误 !未定义书签。 2.5 Choose Best Cost . 错误 !未定义书签。 2.6 Triangle Based Mesh
11、 Unification . 错误 !未定义书签。 2.7 Example And Result . 错误 !未定义书签。 Geometry Mesh Unification . 错误 !未定义书签。 Attribute Mesh Unification . 错误 !未定 义书签。 Chapter 3 Progressive Mesh-Based Model Refine Methods . 错误 !未定义书签。 3.1 Introduction . 错误 !未定义书签。 3.2 Concept Of Progressive Mesh . 错误 !未定义书签。 3.2.1 Introducti
12、on of Progressive Transmission . 错误 !未定义书签。 3.2.2 Introduction of Progressive Mesh . 错误 !未定义书签。 基于网络的三维浏览系统 6 3.3 Triangle Collapse Based Mesh Refine . 错误 !未定义书签。 3.4 Structure Of Progressive Transmissions Data. 错误 !未定义书签。 3.5 Progressive Transmissions Design. 错误 !未定义书签。 3.5.1 Progressive Mesh s syn
13、chro control . 错误 !未定义书签。 3.5.2 Transmission s Integrated Design . 错误 !未定义书签。 3.5.3 Analyze Thread s Detailed design . 错误 !未定义书签。 3.6 Detail Recordss Data Structure . 错误 !未定义书签。 3.7 Example And Result . 错误 !未定义书签。 Chapter 4 Web-Based 3D Viewer . 错误 !未定义书签。 4.1 Introduction . 错误 !未定义书签。 4.2 Integrate
14、d Design . 错误 !未定义书签。 4.3 Detailed design. 错误 !未定义书签。 4.4 Example And Result . 错误 !未定义书签。 Chapter 5 Conclusion And Future Work . 错误 !未定义书签。 Acknowledgements . 错误 !未定义书签。 References . 错误 !未定义书签。 基于网络的三维浏览系统 7 第一章 绪论 本章首先介绍了课题背景意义;然后对层次细节模型、简化三维模型、递进传输三个领域的国内外相关工作以及研究现状进行介绍,其中着重介绍了各种简化三维模型的方法以及各自的优缺点;
15、最后,介绍了本文的组织工作。 1.1 课题背景和意义 近十年来,计算机图形学取得了突飞猛进的发展,计算机生成的图像越来越逼真, 三维模型 被称为 自音频、视频、图像之后的第四种数字媒体形式 1,随着 Internet 的普及,使用三维交互技术展示三维模型对于增强用户体验的真实感、沉浸感具有重要作用。然而,随着三维数据采集和建模技 术的飞速发展, 以及在 医学图像系统、虚拟现实、计算机辅助技术、地理信息 系统等领域所 使用的模型越来越精细,越来越复杂, 使得模型数据量不断增长, 给 模型的数字存储、传输和绘制 带来许多困难 ;此外, 传统的网络传输方法需要将三维模型 的所有相关数据全部 下载到客
16、户端之后再进行显示, 导致 用户等待时间太长 。 为此需要研究如何针对模型特征对三维模型进行简化 并且 制定传输策略,以解决三维模型网络传输限制。 本论文 课题来源为国家教育部项目“大学数字博物馆”以及国家自然科学基金重点项目“虚拟奥运博物馆关键技术研究”。在数字博物馆的建设中,虚 拟展示、场景漫游等功能的实现都离不开三维模型。为了 给 用户提供 良好的三维模型 网络浏览,对三维模型的处理和传输方法进行研究 显得 至关重要。 基于网络的三维浏览系统 8 1.2 国内外研究现状 为了实现 复杂模型的 处理、 存储、传输和绘制,目前主要使用的方法 有:层次细节模型、 简化三维模型, 使用 递进 网
17、格进行传输 等,下面就这 三 方面对国内外 的研究现状进行简单介绍。 1.2.1 层次细节模型 层次细节模型( Level of Detail, LOD)是指为每个物体建立多个相似的模型, 其中的每个 不同的模型对物体精细度的描述不同。如图 1-1 中同一模型的一组 不同细节层次的表示。在传输 以及绘制的过程中 ,系统根据当前帧的需求,从这组离散模型中选择最合适的一个。 图 1-1 三维模型的 LOD 表示 传统的 LOD技术主要根据视点和物体对象之间的相对距离关系来确定选择何种精细程度的模型,这种离散的 LOD 虽然计算简单,使用方便,但由于层次有限,因而在很多场合下不能满足用户多样化的需求
18、。 一方面,由于不同 LOD 层次的逼近模型中三角形数目往往相差很大,因此在它们之间切换时就会产生“跳跃”的视觉效果,影响绘制质量 , 研究者们使用了一些不同的方法消除这种影响,例如在不同 LOD 层次 的模型间切换时使用透明通道进行混合,使之产生渐变效果 2; 或者在模型之间进行插值计算,使其平滑切换的几何变形( geo-morphing)技术 3,这些措施能够使绘制效果有所改善,但也使得绘制系统的负担大大增加; 另一方面,在大尺度的模型中,如果在距离视点较远和较近的区域使用相同的 LOD 层次,也会影响绘制的效果:如果全局的 LOD 很高,则远处的区域也 将 会包含大量的三角形, 大量冗余
19、的数据将 影响绘制速度;如果为了减少三角形数而降低 LOD 层次,则近处的三角形又会过于稀疏 影响基于网络的三维浏览系统 9 绘制效果 。 解决上述问题的方法是建立具 有连续分辨率的 LOD 模型( Continuous Level of Detail, CLOD),即允许同一个模型上的 LOD 层次连续变化。在这样的多分辨率模型中,随着视点的移动,模型上的 LOD 层次分布也将随之变化,因此这一方法也称为“基于视点( view-dependent)”的绘制方法。 建立 CLOD 多分辨率模型的方法有很多种。多数方法都是在网格简化的过程中生成某种记录结构,在传输绘制时根据用户(观察者)的需要,
20、快速地从这种结构中抽取出需要的多分辨率逼近模型。目前最常见的多分辨率结构主要有基于迭代收缩算法的顶点 层次树结构 45,以及基于顶点抽取算法的图结构 67等。 本文所 实现 的递进传输就是 顶点抽取算法 的一种,通过在 网格简化的过程中生成 递进数据的记录,建立 CLOD 多分辨率模型 ,从而改善模型、场景显示效果以及传输效率。 1.2.2 简化三维模型 建立 CLOD 多分辨率模型 首先需要简化三维模型, 网格简化算法 有多种分类方法, 根据网格简化过程是静态执行还是根据视点等因素动态 执行,可将算法分为静态和动态简化方法两类 。 1.2.2.1 静态网格简化方法 1) 顶点聚类法 1993
21、 年, Rossignac 8和 Borrel提出了一个简单明了的基于顶点聚类的模型简化算法 , 该方法的思想是根据网格模型几何上的相似性采用一定的方法将顶点聚类,再为每个聚类计算一个新点。 这种算法本质上是一种信号处理方法,相当于对原网格模型进行重新采样,然后再利用原模型的拓扑结构和得到的采样点建立新的摸型。它适用于任意类型的输入模型,甚至可以是一些不构成网格的多边形集合。是一种非常有效的快速简化方法。 但是 由于原网格模型上的点在空间的分布是未知的,这种方法对包围基于网络的三维浏览系统 10 盒进行等分,可能导致等分后某些区域的长方体内包含很多的顶点,而某些区域的长方体内没有或 只有很少的
22、顶点,这一方面造成空间和时间的浪费,另一方面造成模型的某些部分过分简化造成很大的变形。 2) 区域合并法 又称近平面合并 9, 算法的基本思想是把近似位于同一个平面上的相邻三角形进行合并,形成一个大多边形,再用数目较少的三角形网格来表示这个多边形。 该算法适用于任意多边形网格表示的复杂模型,简化速度也较快。另外它提供了一个较理想的手段来控制简化模型与原模型的误差 (全局误差 ),并且简化模型的顶点为原始模型顶点集的子集。 但该算法仅实用于流型表面模型,并且不能够改变模型的拓扑结构。到目前为止,基于区域 合并的算法不多,因而并不流行。 3) 小波分析法 EcK 等人提出的 一种解决方法 1011
23、1213,他们首先构造一个符合子分割连接约束的网格 M ,保证 M对原始网格 M 的逼近误差在给定范围内,然后再用 Lounsbery 方法构造多分辨率模型。 小波分析法非常适合于构造层次化模型, 但该算法要求有正则、分层变换的支持, 且 执行效率并不是最好。 4) 几何元素删除型算法 Schroeder 于 1992 年提出了顶点删除的网格简化方法,此后,基于边折叠、基于三角形删除等几何元素删除的方法被相继提出。这些方法的共同 特点是以几何元素的删除实现模型的简化,即根据原模型的几何拓扑信息,在保持一定的几何误差的前提下删除对模型几何特征影响相对较小的几何“图元” (点、边、面 )。 总的来说,这些算法易于实现,简化模型的质量很高,是目前最为常用的一类方法。下面分别介绍几何元素直接删除型、边折叠法。