




已阅读5页,还剩63页未读, 继续免费阅读
(计算机应用技术专业论文)三维地质体建模可视计算及并行化的研究与应用.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘 要 i 三维地质体建模可视计算及并行化的研究与应用 作者简介:洪振刚,男,1986 年 12 月出生,师从成都理工大学罗省贤教 授, 2010 年 7 月毕业于成都理工大学计算机应用技术专业, 获得工学硕士学位。 摘摘 要要 可视计算可概括为以计算机图形形式展现数据的计算过程,涉及到计算机 图形学、计算机视觉、人工智能、程序设计以及软件工程等学科。可视计算可 以帮助人们从海量数据中解放出来,并发现隐藏在数据背后的规律和本质,以 便更好地认识和利用这些数据。随着城市建设与野外工程的不断发展,地质勘 探相关部门已经积累了大量的地质资料信息,采用合适的数据结构产生具有地 质特征的数字模型, 并运用科学可视化技术对地质体进行三维再现和交互操作, 可以帮助地质专业人员对勘探数据做出正确解释和分析,从而提高地质分析的 准确率和可靠性。 地质体模型的绘制一般采用面绘制技术和体绘制技术。面绘制技术可以产 生比较清晰的等值面图像,适用于绘制表面特征明显的地层。但是该技术不能 反映整个数据场内部细节。体绘制技术可以很好地弥补这个不足,能产生三维 数据场的整体图像。但它涉及的数据量较多且计算量较大,因而绘制时间较长, 随着并行处理体系结构的完善与并行处理算法的成熟,再加上图像处理具有内 在的并行性,并行处理技术成为提高体绘制速度的主要研究方向。 本文首先研究了三维地质体的建模体系与建模方法,从地质应用的需求出 发,以地质勘探数据为研究对象,研究地层数据的组织、空间建模与数学表达, 在综合分析和比较目前比较流行的建模方法(面模型、体模型和面体结合模型) 的基础上,提出了一种适合工程地质的地层数据模型。该模型基于面向对象的 设计思想,并综合利用了不规则三角网(tin)和广义三棱柱(gtp)模型。 在研究和总结体绘制的发展历程与关键技术基础之上,本文着重研究了体 绘制中的光线投射算法,结合多核处理器机群系统,提出并实现了一种基于多 层次并行编程模型的并行光线投射体绘制算法,并成功地将该算法应用于三维 城市浅层地质模型,取得了良好的可视化效果。本文在研究过程中,分别对 mpi 环境和多层次并行编程 mpi+openmp 环境下的光线投射算法进行了不同 计算规模的性能比较实验。实验和分析表明,多层次并行光线投射体绘制算法 加快了体绘制的速度, 同时结果还表明 mpi+openmp 多层次并行编程模型性能 高于纯 mpi 编程模型的性能。此外,本文对 vtk 并行机制进行了详细的研究, 采用实际数据对任务并行模型进程验证并取得了良好的加速效果。 成都理工大学硕士学位论文 ii 基于地质体建模算法与可视化算法,本文设计并实现了一套三维地质体可 视化系统(geological visualization system) ,包括数据预处理、数据建模、三 维地质体显示等功能。 该系统是在开源平台 qt 与开源可视化工具包 vtk 的基 础上, 采用面向对象的设计思路, 借助 visual studio 2005 开发环境设计和实现。 系统提供了三维显示和常用的用户交互操作,包括模型图像旋转、缩放、剖切、 动态演化和等值面提取等。本文应用该系统对理论模型数据、实际钻孔数据和 实际地震勘探数据三套资料进行了处理和分析,并取得了良好应用的效果。 关键词:可视计算 地质体建模 体绘制 并行算法 vtk abstract i research and application of 3d geological modeling visual computing and its parallelism introduction of the author: hong zhengang, male, was born in december, 1986, whose tutor was professor luo shengxian. he graduated from chengdu university of technology in computer application major and was granted the master degree in july, 2010. abstract visual computing can be concluded as the computing procedure which expresses data in computer graphical way, it involves multiple disciplines such as computer graphics, computer vision, artificial intelligence, programming design and software engineering. visual computing can help people relieve from sea level data and discover the pattern behind it. as the development of the city construction and field engineering, a lot of geological information has been accumulated. adopting proper data structure to built geological digital model and using scientific visualization technology to represent and interact with the model, geological profession can make precise explanation and analysis about the data, so as to improve the accuracy and reliability of geological analysis. surface rendering and volume rendering are common techniques when rendering geological model. surface rendering technique can help produce clear isosurface image, it is suitable for rendering the stratum which has obvious surface feature. but this technique could not reflect the inner detail of the whole data field. on the contrary, volume rendering can fix up this defect. this method is time consuming because of the large scale data and computation. as the development of parallel process architecture and parallel algorithm, plusing the inner parallelism of imaging processing, parallel visualization has became an important research area of improving the speed of volume rendering. this thesis studied modeling architecture and modeling method of 3d geological data. on the background of the need of geological application and geological exploration data, this thesis delved deeper about the organization of stratum data, the mathematic expression of space modeling. after analyzing and comparing recent popular modeling like surface model, volume model and surface-volume model, a stratum model which fits engineering geology has been 成都理工大学硕士学位论文 ii proposed. this model is based on object-oriented-design. it makes full use of triangulated irregular net (tin) and general tri-prism (gtp) model. on the basis of researching and concluding the development procedure of volume rendering and its key technology, combined with multi-core cluster, a parallel ray casting volume rendering algorithm based on multi-hierarchical parallel programming model has been proposed in this thesis. this multi-hierarchical parallel algorithm has been used in 3d city shallow geological model successfully. according to the comparative experiments and the analysis of different computation scale on ray casting algorithm between the pure mpi programming model and the multi-hierarchical parallel mpi + openmp programming model, the results show that the multi-hierarchical parallel ray casting algorithm accelerates the volume rendering speed, the results also show the multi-hierarchical parallel mpi + openmp programming model has better performance than pure mpi programming model. in addition, this thesis researched the parallel mechanism supported by vtk and adopted real data to test the task parallism method and get good accelerating effect. based on geological modeling and visualization algorithms, this thesis designed and realized the geological visualization system which includes four parts (data processing, data modeling, 3d geological visualization, user interactive). to develop this system, this thesis used open source platform qt and visualization tool kit, integrate visual studio 2005 and adopt object-oriented method. this system can provide display and user interactive function such as rotation, zoom in/out, clip, color bar, slice animation and isosurface extracting etc. this thesis processed and analyzed the theoretical model data, real bore-hole data and real seismic exploration data and get good results. key words: visual computing, geological modeling, volume rendering, parallel algorithm, vtk 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的 研究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其 他人已经发表或撰写过的研究成果, 也不包含为获得 成都理工大学 或其他教 育机构的学位或证书而使用过的材料。 与我一同工作的同志对本研究所做的任何 贡献均已在论文中作了明确的说明并表示谢意。 学位论文作者签名: 年 月 日 学位论文版权使用授权书 本学位论文作者完全了解 成都理工大学 有关保留、 使用学位论文的规定, 有权保留并向国家有关部门或机构送交论文的复印件和磁盘, 允许论文被查阅和 借阅。本人授权 成都理工大学 可以将学位论文的全部或部分内容编入有关数 据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。 (保密的学位论文在解密后适用本授权书) 学位论文作者签名: 学位论文作者导师签名: 年 月 日 第章 前言 1 第第 1 章章 前前言言 随着社会的进步与科学技术的不断发展,人们逐渐被时刻都在产生的新信 息所淹没而表现得手足无措,因此如何从海量数据中发掘并提取出对我们有用 的信息显得尤为重要。可视化作为数据挖掘的重要步骤应运而生,它指的是将 抽象的数据变换成直观的图形图像形式以便于人们理解。科学计算可视化、信 息可视化与可视分析是可视化领域的三个重要分支。其中,科学计算可视化是 上个世纪八十年代后期提出的一个新的研究领域,指的是运用计算机图形与图 像处理技术,将科学实验过程中产生的数据与计算结果以图像的形式展现在计 算机屏幕上,并提供一系列的交互操作1。 1.1 研究背景及意义 “数字地球” 是 19 世纪末美国前副总统戈尔提出的一个具有里程碑意义的 概念2,随后“数字城市” 、 “数字社区” 、 “数字地质”等概念也相继被提出。 这些概念在国际上引起了巨大的反响并深刻影响着科学技术、经济、国防建设 以及人们的日常生活。近些年来,以“3s” (gis 地理信息系统、gps 全球卫星 定位系统、rs 遥感)为代表的技术手段日益趋于成熟与完善,为实现“数字地 球”的构想奠定了坚实的基础3。但是,现有的地理信息系统(gis)主要表达 二维的地表图形和属性信息,对于包含地下地质结构信息的真三维地质信息系 统的研究尚处于起步阶段。三维地学模拟是一门运用现代空间信息理论来研究 地层及其环境的信息处理、数据组织、空间建模与数学表达,并运用科学可视 化技术对地层及环境信息进行真三维再现和可视化交互的科学与技术 4,5。目 前,真三维地学模拟、地面与地下空间的统一表达、3d 拓扑描述、3d 空间分 析、3d 动态地学过程模拟等已成为地学与信息科学的交叉技术前沿与攻关热 点。然而含拓扑关系的三维地质模拟数据模型和数据结构都处于理论研究和试 验阶段,还没有一个成熟健全的三维数据模型和数据结构,这严重制约了三维 地理信息系统(3dgis) 、三维地学模拟信息系统(3dgmis)的发展和应用6。 随着城市岩土工程、水利水电工程、道路桥梁隧道工程和地质灾害防治等 工程活动的开展与深入,相关部门己经积累了大量的地质地层资料信息7,这 些工程地质勘察所获取的资料信息具有很高的重复利用价值。三维地质建模及 可视化可将有限的数据综合起来并通过可视化技术将系统建模的结果表现出 来,帮助地质人员对勘探数据做出正确解释和分析,得到地层中地质特征等重 要信息。因此,三维地质建模及可视化己经成为地质勘探开发一体化中的重要 环节,同时也是可视化应用研究中一个重要领域。 成都理工大学硕士学位论文 2 目前三维地质模型的可视化一般采用面绘制技术和体绘制技术1,其中面 绘制技术可以产生比较清晰的等值面图像,而且可以利用现有的图形硬件实现 绘制功能,使图像生成及变换的速度加快,适用于绘制表面特征明显的地层。 但是面绘制技术对数据分割要求高且物体内部信息无法保留,不能反映整个原 始数据场的全貌和细节。 体绘制(volume rendering)技术1是可视化研究中最为活跃、应用领域最 广的技术之一,是科学计算可视化的一种重要方法。体绘制技术研究的是如何 表示、维护和绘制体数据集,从而提供观察数据内部结构和理解物质复杂特性 的机制。体绘制技术能产生三维数据场的整体图像,包含数据场的大量细节, 绘制高质量的图像,但它涉及的数据量较多且计算量较大,因而绘制时间较长, 难以利用传统的图形硬件实现绘制。虽然研究工作者在串行体绘制算法的优化 方面做了很多工作,但是随着应用领域不断拓展,数据规模急剧扩大,绘制精 度需求急剧增加,仅仅依靠对串行算法本身的优化已经无法满足对绘制速度的 需求。如果采用图像质量为代价换取速度会牺牲图像的质量,损失部分有用信 息。而依赖特定硬件的加速方法往往针对特定环境,算法缺少灵活性。随着并 行处理机与并行算法的快速发展,以及图像处理本身具有的内在并行性,采用 并行绘制技术可使算法的加速性能显著提高,而且并行绘制技术可突破孤立图 形系统的局限。高性能的图形并行绘制系统可以为海量数据场景绘制、大规模 虚拟现实和仿真、超高分辨率科学计算可视化等高端应用提供所需的图形绘制 能力,因此并行处理技术成为提高体绘制算法绘制速度的主要研究方向。 并行技术和并行系统的发展给体绘制技术带来机遇的同时也带来了挑战。 在近十多年中,无论在算法还是在体系结构方面,经研究工作者的共同努力, 并行体绘制技术的研究已经取得了很大的进展。 1.2 研究现状 三维地质体建模与可视化技术的研究在国外开展得较早,到目前已经形成 了相当的规模,而国内在这方面的研究进行得较晚,很多工作才刚刚起步。在 三维地质模型的构建过程中, 其核心内容就是选择合适的数据模型和数据结构, 这是计算机三维建模的关键,任何实体建模都离不开它。地质建模的主要成果 就体现在三维地质体可视化软件开发与应用上。 1.2.1 三维地质体可视化软件研究现状 上个世纪 80 年代以来, 三维地学可视化系统在国外已经非常普遍地应用于 地质建模,以美国、法国、加拿大、澳大利亚、英国为代表的西方国家相继推 第章 前言 3 出了多种具有代表性的地学可视化建模软件。目前已经出现了一些成熟的商业 化软件。比较著名的有法国 t-surf 公司研制的 gocad,它是以工作流程为核 心的新一代地质建模软件,基于表面内插技术,可以考虑不确定数据且能够对 地质褶皱现象进行处理8。美国 gdi 公司研开发的 earth vision 空间地质建模 软件,在建立复杂地质构造的三维实体地质模型方面颇有优势,可用于识别目 的层,描述储油层特征,优化油田开发与计算石油储量。澳大利亚 surpac 国际 软件公司开发的一套基于 windows 操作系统的大型矿山工程软件 surpac vision,在勘探、地质建模、采矿设计、钻孔编录、生产计划和开采进度计划 等方面功能突出。加拿大阿波罗科技集团公司推出的三维建模与分析软件 micro lynx,采用三棱柱体元表示法建模,可以对钻孔、测井记录、tin 模型 等进行综合管理,通过对离散点采样、钻探采样和探槽采样等空间数据的处理, 产生剖面、块和面等模型,确定矿藏分布和等级变化并计算矿藏储量5。 我国对三维地学可视化的研究起步较晚,但也做了大量有益的探索工作, 如:陈昌彦、张菊明等于 1997 年研制了“边坡工程地质信息的三维可视化”系 统9;柴贺军、黄地龙、黄润秋等于 2001 年结合水电工程研制了岩体结构三维 模型软件10,11,12;西北大学体视化研究所研制了“地质地层模型系统” ;中国地 质大学数学地质与遥感地质研究所研制了“地质岩层真三维分析系统” 。此外, 国内有些软件公司也己经开发出了具有自主知识产权的三维可视化软件,如适 普软件公司利用 idl 开发出来的 imagis 三维可视地理信息系统,东方泰坦的 titanvrmap 和 titan 3dm13,武汉地质大学的 geoview 等。所有这些软件或 系统己经初步具有地质体三维可视化的功能,但要商品化还需要功能进一步完 善和标准化的过程。 1.2.2 并行体绘制算法研究现状 科学计算可视化的核心是三维数据场的可视化,三维数据场的可视化主要 有两种方法:面绘制和直接体绘制1。面绘制技术是从三维数据场中抽取有意 义的直观信息的一种重要方法,其基本思想是首先提取物体的表面信息,把三 维体数据转换为由一系列多边形表面片拟合的等值面,然后再根据光照模型, 用传统的面绘制算法进行隐面消除并绘制得到显示图形。面绘制技术包含的典 型算法主要有:w. e. lorenson 和 h. e. cline 提出的 mc 方法14(marching cubes) 、a. doi 提出的 mt 方法(marching tetrahedral) 、h. e. cline 和 w. e. lorenson 提出的剖分立方体法 15(dividing cubes)等。 体绘制方法通常分为以图像空间为序的体绘制方法和以物体空间为序的体 绘制方法。以图像空间为序的体绘制方法主要有光线投射算法(ray casting) 和最大强度投影算法(mip) ,以物体空间为序的体绘制方法主要有足迹算法16 成都理工大学硕士学位论文 4 (footprint/splatting) 、g. g. cameron 和 p. lacroute 提出的错切变形算法17、 体元投影法18和纹理映射法1等。 并行体绘制算法的发展历程可以分为四个阶段:基于机群系统的阶段、基 于专用图形工作站的阶段、基于高性能显卡的阶段和基于多核处理器的阶段。 第一阶段(1989-1994) :在机群等通用并行计算机上,对串行的光线投射体绘 制算法并行化及优化。这个阶段的主要贡献是在算法层次上对光线投射体绘制 算法的并行进行了探索。j. nieh 和 m. levoy 提出了第一个并行光线投射体绘 制算法19。k. ma 等人提出了另外一种光线投射并行体绘制算法 20。第二阶段 (1994-2002) :针对专用图形工作站,对光线投射体绘制算法进行并行化及优 化。这个阶段的特点是根据体绘制等图形学算法的特点来设计专用的硬件,因 而能最大限度发挥硬件性能,挖掘算法潜力。第三阶段(2004-) :针对高性能 显卡(gpu) ,对光线投射体绘制算法进行并行化及优化,尽最大可能发挥显卡 的高性能计算能力。w. leung 等人提出了一种充分利用了 gpu 硬件的循环控 制等特性的并行光线投射面绘制算法。第四阶段(2006-) :针对多核处理器, 特别是异构多核处理器,对光线投射体绘制算法进行并行化及优化,尽最大可 能发挥多核处理器的强大计算能力。 1.3 研究内容 通过对当前国内外三维地质体建模与可视化研究现状的分析,本文研究基 于钻孔数据和地震勘探数据的三维地层模型构建方法与可视化交互技术,实现 快捷有效地建立地质体模型,提供模型三维可视化显示和简便的交互操作,并 通过对体绘制过程中影响绘制速度因素的研究,采用并行处理的思想对算法进 行改进,以期缩短绘制时间提高可视计算效率。主要研究内容有如下: (1)在对地质对象的特征、认识过程分析的基础上设计地质数据结构; (2)研究并提出一种适应工程地质特点的地层数据模型基于钻孔数据 和地震勘探数据的地层模型,在模型设计中充分利用面向对象的思想 和技术; (3)以开源软件工具包 qt 和可视化工具包 vtk 为开发平台,研究基于钻 孔数据和地震勘探数据的三维地质体可视化系统的设计与实现方法; (4)以体绘制中的光线投射算法作为切入点,对影响大规模数据体绘制效 率的关键因素进行研究,发掘算法中的可并行性; (5)研究 vtk 可视化工具开发包中的三种并行处理机制并使用实际数据 进行分析和验证。 第章 前言 5 1.4 论文结构 第 1 章 前言。介绍研究背景,国内外三维地质建模与可视化研究现状以及 可视化软件开发现状,本文研究内容与研究目标。 第 2 章 三维地质体建模与可视化基础。讨论三维地质体建模的基本概念、 计算机图形学与可视化技术基本原理、vtk 可视化机制与原理。 第 3 章 三维地质体建模与可视化系统的设计与实现。 本章是全文的核心之 一,从用户和实际的需求出发,设计适合地震勘探数据和钻孔数据的三维地质 体数据结构和建模方法。讨论了不规则三角网模型与三棱柱模型的构建算法, 并详细讨论了三维地质体可视化软件的设计思路与系统开发中的关键技术。 第 4 章 geovis 系统功能及应用实例。介绍 geovis 系统所具有的功能,并 用实际的地质数据对系统进行验证。 第 5 章 多层次并行体绘制算法与 vtk 并行处理的研究与应用。本章是全 文的另一个核心。从光线投射体绘制算法出发,分析影响体绘制算法速度的各 种因素,提出一种多层次并行体绘制算法并进行验证。此外,本章还对 vtk 并行处理机制进行了全面的研究并用实际数据进行验证。 成都理工大学硕士学位论文 6 第第 2 章章 三维地质体建模与可视化基础三维地质体建模与可视化基础 2.1 三维地质建模基本概念 地质体可视化是科学计算可视化与地球科学相结合的产物,主要是满足地 球物理、矿业工程和油藏工程等应用领域的模拟需求。具体来说,地质体三维 可视化是指采用合适的数据结构产生具有地质特征的数字模型,并利用计算机 图形学原理将这种数学描述以三维图像的形式展现出来,同时也可以满足用户 的实时交互操作需求21。主要包括两个部分,三维地质建模与可视化,其中前 者是后者的基础,后者是前者的表现。 建立一个客观准确的三维地质模型必须获得足够的原始采样地质数据,同 时还需要设计出能够真实反映复杂地下空间关系的数据结构。目前三维地质建 模还面临着巨大的困难,诸如原始地质数据获取难度大,地下地质体空间的复 杂度高,地质体属性的未知性和不确定性等。这些因素都使得三维地质建模的 研究成为当前地质学中具有挑战性的前沿课题之一。随着近些年地质建模理论 与计算机科学技术的不断发展与逐渐成熟,三维地质体的建模体系与建模方法 也趋于统一。其中地质体建模体系可归纳为以空间数据处理为基础,以实体建 模技术为核心以及以模型应用为目的。其总体流程图可用图 2-1 表示22。 钻孔、地震等 属性数据库 地形图、地质图 等图形数据库 辅助信息库/专 家知识库 2d/2.5d/3d多源数据耦合(cad/gid/其它) 数据解析处理与数据转换 曲面表示法 几何模型 属性模型 拓扑模型体元表示法 整体区域三维地质模型构建 地质分析其它应用工程分析 地 质 数 据 处 理 地 质 体 建 模 模型 应用 图图 2-1 三维地质建模体系结构图 第章 三维地质体建模与可视化基础 7 2.2 三维数据模型 地质体建模过程中数据模型是地质模型的数字表示形式与基础。三维数据 模型是描述三维空间数据组织的概念集合,反映了现实世界中空间实体的几何 形态及实体间的相互关系,是现实世界到信息世界的抽象。它包括数据内容的 描述和各类实体数据之间关系的描述。三维数据模型是三维地层建模研究和开 发的基础,是研制三维地层模拟软件和地学信息系统的核心,常见的数据模型 有面模型、体元模型和面体混合数据模型23。 面模型侧重于表达三维空间物体的表面,如地形表面、地质层面等,它通 过表面表示形成三维空间目标。常用的面模型有表面模型、断面模型、线框模 型、多层 dem 模型和边界表示模型等。表面模型有时也称为数字地面模型 (digital terrain models, dtm) ,是目前应用比较广泛的模型之一。表面数据模 型又分为网格模型(grid) 、形状模型(shape model) 、面片模型(face model) 和三角网模型等。 其中三角网模型, 即不规则三角网模型 (triangulated irregular network, tin) ,主要利用不规则的三角形面片来表达空间物体,是一种使用广 泛且算法成熟的模型。 体元模型是目前研究比较广泛也是最有发展前途的一种数据模型,其中心 思想是将三维空间物体离散为三维体元的集合。体元本身不仅仅代表形态上的 意义,而且还具有属性、体积、质量等特征含义,是物体的一个离散单元。体 元模型本身也包含很多分类, 如三维栅格模型 (3d array) 、 八叉树模型 (octree) 、 三棱柱模型(tp) 、类三棱柱模型(atp) 、广义三棱柱模型(gtp) 、不规则四 面体模型(ten)和在 cad 系统中常用的结构实体几何(constructive solid geometry, csg)模型等。郭达志、陈云浩和韩国建探讨了利用八叉树模型表达 矿山地下物体的模型24;simon w. houlding 首先提出三棱柱模型;张煜和白世 伟论述了三棱柱模型并实现了它在数字地层模型中的相关应用 25;齐安文和吴 立新提出了基于类三棱柱模型来构建地质体,并进行了三维拓扑研究 26。 混合模型是针对具体的问题或为达到特定的目标而对两种或两种以上的数 据模型进行优势整合所形成的折衷模型。常见的混合模型有 tin 模型加栅格模 型,ten 模型加 csg 模型,ten 模型加 octree 模型等。龚健雅、夏宗国提出 了矢量与栅格集成的面向对象的三维数据模型27;李清泉和李德仁针对城市、 地质、海洋等领域的具体应用,提出了三种模型集成的方式:一种是针对城市 三维建模的基于 tin 与 csg 的集成模型;另一种是针对地质、海洋领域的基 于 octree 与 ten 的集成模型;第三种是矢量与栅格集成的数据模型。混合模 型能够充分利用不同的单一模型在表示空间实体时的优点,实现了对三维地质 成都理工大学硕士学位论文 8 现象有效和完整地描述28。但混合模型数据量大,并且存在必须在两种方法之 间不断进行转换以保持一致性的问题。地质体建模方法可由表 2-1 所示23。 表表 2-1 3d 空间建模方法分类 体模型 面模型 混合模型 规则体元 不规则体元 结构实体几何(csg) 实体(solid) 不规则三角网(tin) tin-csg 体素(voxel) 四面体(ten) 网格(grid) tin-octree 八叉树(octree) 金字塔(pyramid) 边界表示模型 (b-rep) wireframe-block 规则体块 (regular block) 三棱柱(tp) 线框(wireframe) octree-ten 针体(needle) 地质细胞 断面(section) gtp-ten 不规则体块 断面-三角网混合 广义三棱柱 多层(dem) 2.3 计算机图形学基础与 opengl 三维可视化技术是将大量数据或处理结果以图形图像的方式展现出来,使 抽象复杂的数据变得形象与简单,以此便于人们更好地掌握和理解数据所表示 的信息。opengl 作为一个高性能三维图形处理系统在可视化技术的研究与实 现中发挥了重要的作用。 2.3.1 计算机图形学基础 可视化系统的开发基于计算机图形学的基本理论29,涉及到图形变换、平 面几何投影、光照、纹理技术和图形生成等技术。其中,基本的几何变换研究 的是物理坐标在直角坐标系内的平移、旋转和比例变换的规律,便于用户多方 位观察和操作图形。 (1)变换矩阵 用 m 表示三维空间中物体的几何变换矩阵, 与物理空间元素坐标相乘可产 生不同的变换效果,其表示公式如下: 44434241 34333231 24232221 14131211 | | | | | aaaa aaaa aaaa aaaa m (2-1) 第章 三维地质体建模与可视化基础 9 m 矩阵可以划分为四个功能区,其中子矩阵 333231 232221 131211 aaa aaa aaa m a 用于产生 比例、旋转、错切等变化; 34 24 14 a a a mb 用于产生投影变化; 434241 aaamc 用 于产生平移变化; 44 amd用于产生整体比例变化。 (2)实现将坐标1zyx平移 1 zyx ddd 的变换如下: 1 1 0100 0010 0001 11 zyx zyx dzdydx ddd zyxzyx (2-2) 其中,dx、dy、dz 分别为三个方向的平移量。 (3)旋转变换 旋转变换的算法相对于平移变换更复杂,选择不同的旋转轴而有不同的变 换矩阵。旋转轴可以是坐标轴,也可以是任意定义的一条直线。在右手坐标系 下相对坐标系原点绕坐标轴旋转 角的变换公式分别如下: 绕 x 轴旋转: 1000 0cossin0 0sincos0 0001 11 zyxzyx (2-3) 绕 y 轴旋转: 1000 0cos0sin 0010 0sin0cos 11 zyxzyx (2-4) 绕 z 轴旋转: 1000 0100 00cossin 00sincos 11 zyxzyx (2-5) (4)投影变换 计算机绘图是在屏幕上产生三维物体的二维图像,在屏幕上绘制图像时, 必须根据立体空间来考虑画法。通过物理坐标来确定物体在空间中的位置,并 选择一个观察模型的视角。因此,需要通过投影变换将三维物理空间和屏幕空 成都理工大学硕士学位论文 10 间联系起来。根据投影中心到投影面的距离可将投影分为两大类,平行投影 (parallel projection)和透视投影(perspective projection) 。平行投影包括正交 投影和斜交投影。最常见的正交投影是正视投影、顶视投影和侧视投影,它们 的投影变换矩阵分别为: 1000 0100 0010 0000 正 m, 1000 0000 0010 0001 顶 m, 1000 0100 0000 0001 侧 m (2-6) 斜交投影的变换矩阵是: 1000 00sincos 0010 0000 ll m斜,l和表示投影方向。 (2-7) 透视投影的变换矩阵是: 0000 1 100 0010 0001 d m透 (2-8) 透视投影具有比例变换效应,这样产生的视觉效果十分类似于照相系统和 人的视觉系统,使得产生的图像具有很强的深度感,看上去更加真实。因为物 体透视投影的大小与物体到投影中心的距离成反比,造成透视投影不能真实地 反映物体的精确尺寸和形状。相反,平行投影不具有透视缩小性,能精确地反 映物体的实际尺寸,但因此也不具有深度感。 2.3.2 opengl 简介 opengl (open graphics library) 是一种应用程序编程接口 (api application programming interface) ,是图形硬件的软件界面。opengl 是专业的 3d 程序接 口,是一个开放的、功能强大、调用方便的底层 3d 图形库,使用 opengl 可 以极大地减少用户开发三维图形的难度。opengl 是 sgi 公司对之前开发的 3d 图形软件接口 iris gl 的进一步发展与完善的产品,它克服了 iris gl 移植性 不好的缺陷,同时具有较好的网络功能。由于 opengl 在三维真实感图形制作 中具有的优秀性能,目前已经成为三维图形设计的工业标准,诸如 sgi, microsoft, sun, ibm, hp 等在计算机市场中占主导地位的大公司都将 opengl 作为自己的图形标准30。关于 opengl 的文章与资料已经非常详尽,本文就不 再对 opengl 的原理与具体操作进行讨论。 第章 三维地质体建模与可视化基础 11 2.4 vtk 可视化机制与原理 vtk(visualization tool kit)可视化工具包是针对计算机图形、可视化以 及图像处理而推出的开源和面向对象的软件系统。虽然 vtk 非常的庞大与复 杂,但是掌握了其基本的面向对象设计与实现方法后,使用 vtk 开发程序将 会变得异常简单31,32,33。 2.4.1 vtk 系统构架 vtk 可视化工具包包含两个基本的子系统:一个是编译好的 c+类库;另 一个是经过解释的包装层。 通过这个包装层用户可以使用 java、 tcl 或者 python 语言来操控这些经过编译的类库。vtk 的系统构架如图 2-2 所示。 compiled core 包含一些基本操作,如对象属性 设置、场景设置、矩阵变换、可 视化流水线等。 interpreted wrapper (tcl、java、python) 实现高级功能,如三维旋转、 剖切、等值面提取等。 图图 2-2 vtk 可视化工具包构架图 2.4.2 vtk 对象模型 vtk 可视化工具包由两个基本的对象模型组成(图形模型与可视化模型) 。 (1)图形模型 vtk 图形模型包括如表 2-2 所列的一些重要对象。将表 2-2 中各对象组合 起来就可以产生一个完整的场景。实体对象(props)表示可以在场景中看到的 实体。如果用三维空间表示和操作这些实体(例如采用一个 4*4 的变换矩阵) , 那么这个实体对象就是 vtkprop3d。如果实体对象(props)被定格在二维空间 中且表示 2d 数据(如图像数据)则是实体对象 vtkactor2d。实体对象(props) 并不需要直接展现实体的几何构造, 而是由映射对象 (mappers) 负责表示数据, 此时只需要将实体对象(props)指向映射对象(mappers) 。同时,实体对象 (props)也可以指向属性对象(property) 。属性对象(property)主要负责设 置实体对象(props)的外观属性(诸如颜色、环境反射照明效果、渲染效果、 线框模型或者表面模型等) 。绘制对象(actors)和体对象(volume)同样具有 内部的产生变形的对象(vtktransform) ,此对象封装了一个 4*4 的变换矩阵, 成都理工大学硕士学位论文 12 用来控制实体对象(props)的位置,包括旋转和比例变化。 表表 2-2 vtk 图形模型中常用的对象 对象名 功能描述 父类 vtkactor, vtkactor2d, vtkvolume 绘制对象 vtkprop, vtkprop3d vtklight 光照对象 vtkcamera 相机对象 vtkproperty, vtkproperty2d 属性对象 vtkmapper, vtkmapper2d 映射对象 vtkabstracmapper vtktransform 变换对象 vtklookuptable,vtkcolortransferfunction 查找表对象 vtkscalartocalss vtkrenderer 绘制控制对象 vtkrenderwindow 绘制窗口对象 vtkrenderwindowinteractor 交互操作对象 光照对象(vtklight)用于展现和控制场景的光线效果。光照只用在三维场 景中,二维场景则不需要。 相机对象(vtkcamera)用于控制在绘制过程中如何将三维实体投影在二维 空间中。camera 类提供了设置相机的位置、焦点以及角度。另外还可以选择透 视投影方式和立体观测方式。二维图像数据则不需要设置 camera。 映射对象(mapper)对象用于对几何实体进行变形和绘制,常和查找表对 象(vtklookuptable)联合使用。映射对象(mapper)提供了连接可视化流水 线 与 图 形 模 型 的 接 口 。 类vtklookuptable 是 类vtkscalartocolors 和 类 vtkcolortransferfunction 的子类, 主要用于将不同的数据值映射成不同的颜色。 绘制控制对象(vtkrenderer)和绘制窗口对象(vtkrenderwindow)是用 于控制图像引擎和计算机窗口系统的接口。绘制
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 会议承办服务协议书8篇
- 国家事业单位招聘2025中国国土勘测规划院招聘应届毕业生拟聘人员笔试历年参考题库附带答案详解
- 奔驰车辆无偿赠与协议9篇
- 南京市2025江苏城乡建设职业学院招聘工作人员26人(第一批)笔试历年参考题库附带答案详解
- 临夏回族自治州2025年甘肃临夏某部招聘民兵教练员笔试历年参考题库附带答案详解
- 2025陕西陕建瑞高科技园有限公司招聘(25人)笔试参考题库附带答案详解
- 2025广东湛江经济技术开发区建设投资发展集团有限公司招聘1人笔试参考题库附带答案详解
- 2025年萍乡市工程咨询管理顾问有限责任公司招聘第一批外聘人员23人笔试参考题库附带答案详解
- 2025年烟台莱州市财金投资有限公司招聘(10人)笔试参考题库附带答案详解
- 2025年江苏昆山创业控股集团有限公司第一批人才招聘15人笔试参考题库附带答案详解
- 2025年陕西省中考数学试题卷(含答案详解)
- 2025年中小学生国防知识竞赛题库及答案
- 机械制图选择题试题库及答案
- 湖南省科技创新惠企助企政策汇编 2025
- DB45∕T 2746-2023 国家储备林培育技术规程
- 医保基金监管培训课件
- 药厂变更管理培训
- 技术部工作汇报与未来规划
- 体育安全与急救知识培训
- 小区装修工具管理制度
- 2026年日历表(带农历 每月一张可打印)
评论
0/150
提交评论