logo资料库

基于图像的风景旅游模拟漫游系统.doc

第1页 / 共33页
第2页 / 共33页
第3页 / 共33页
第4页 / 共33页
第5页 / 共33页
第6页 / 共33页
第7页 / 共33页
第8页 / 共33页
资料共33页,剩余部分请下载后查看
目 录
1.绪论
1.1 引言
1.2 选题背景及意义
1.2.1 选题背景
1.2.2 选题意义
1.3 本文结构及主要内容
2 相关知识
2.1 OpenGL编程基础
2.1.1 OpenGL简介
2.1.2 OpenGL的主要功能
2.1.3 OpenGL体系结构及工作流程
2.2 MFC编程技术
2.3 虚拟场景建模技术
2.3.1 三维几何建模技术
2.3.2 基于图像建模技术
2.3.3 基于几何和图像的混合虚拟场景建模技术
3 全景漫游系统的设计
3.1 系统整体设计
3.1.1 系统功能概述
3.1.2 系统基本设计方案
3.1.3 系统基本框架
3.2 系统详细设计
3.2.1 全景图的生成
3.2.2 纹理贴图
4 系统实现与测试
4.1 主界面的实现
4.2 交互漫游的控制
4.3 系统相关测试
5 应用前景
结论
致谢
参考文献
全套设计,欢迎咨询 目 录 目录..............................................................................................................................1 1. 绪论.......................................................................................................................4 1.1 引言.......................................................................................................................4 1.2 选题背景及意义...................................................................................................4 1.2.1 选题背景....................................................................................................4 1.2.2 选题意义....................................................................................................5 1.3 本文结构及主要内容...........................................................................................5 2 相关知识..................................................................................................................6 2.1 OpenGL 编程基础.................................................................................................6 2.1.1 OpenGL 简介..............................................................................................6 2.1.2 OpenGL 的主要功能..................................................................................6 2.1.3 OpenGL 体系结构及工作流程..................................................................7 2.2 MFC 编程技术...................................................................................................... 9 2.3 虚拟场景建模技术.............................................................................................10 2.3.1 三维几何建模技术..................................................................................10 2.3.2 基于图像建模技术..................................................................................10 2.3.3 基于几何和图像的混合虚拟场景建模技术..........................................11 3 全景漫游系统的设计............................................................................................13 3.1 系统整体设计.....................................................................................................13 3.1.1 系统功能概述..........................................................................................13 3.1.2 系统基本设计方案..................................................................................13 3.1.3 系统基本框架..........................................................................................13 3.2 系统详细设计.....................................................................................................14 3.2.1 全景图的生成..........................................................................................14 3.2.2 纹理贴图..................................................................................................18 4 系统实现与测试....................................................................................................22 4.1 主界面的实现.....................................................................................................22 4.2 交互漫游的控制.................................................................................................22 4.3 系统相关测试.....................................................................................................26 5 应用前景................................................................................................................29 结论..............................................................................................................................2 致谢..............................................................................................................................3 参考文献......................................................................................................................4 扣扣 178308054
全套设计,欢迎咨询 基于图像的风景旅游模拟漫游系统 [摘要]虚拟现实技术能够逼真再现现实环境,用户在虚拟环境中通过自然的交互 式操作能获得与真实环境相似的感受和体验。全景漫游是虚拟现实技术的一种 典型应用。本文旨在设计和开发一个虚拟风景全景漫游系统,该系统不仅能以 三维形式逼真再现虚拟图像环境,同时支持用户交互地漫游。论文首先详细分 析了各种建模理论和技术,特别全景图像合成技术和三维环境贴图技术。在此 基础上,确定了全景漫游系统实现算法和系统框架。最后,利用 OpenGL 开放 图形库和 VC++编程工具开发了虚拟图像全景漫游原型系统,实验表明该系统 不仅能绘制视觉效果良好且逼真的旅游环境,而且支持用户流畅的交互式漫游 操作。此外,就该系统在景点再现,商品房展示等应用领域进行了尝试并取得 良好视觉效果。 [关键词]全景图;图像拼接;OpenGL;虚拟风景旅游;纹理映射 扣扣 178308054
全套设计,欢迎咨询 Design and Implementation of Virtual Campus Panorama Wander-through System [Abstract]Virtual reality technology can verisimilitude reproduce the realistic environment, in the virtual environment, users can get with a real environment similar feelings and experiences through the natural interactive operation. Panorama roaming is a typical application of the virtual reality technology. This paper aims to design and develop a virtual campus panoramic roaming system, this system not only can reappear in 3D virtual campus environment form lifelike, not only render good visual effect and verisimilitude reproduce campus environment, and support that the user In addition, applications, such as attractions reappear and commodity house's show, of the system have been tried and achieved good visual effect. [Key words]Panoramic Image;Image Mosaics;OpenGL;Virtual Campus; Texture Mapping interactive roaming operations. fluent 扣扣 178308054
全套设计,欢迎咨询 1. 绪论 1.1 引言 近年来,随着科技的发展,我们进入到一个新的信息时代。众所周知,计 算机已成为信息时代信息处理的主要工具,成为人类与信息空间交流的主要通 道。而在这其中,人机交互界面是一个主要的障碍。那如何突破这一障碍,如 何扩展人类的感知通道,提高人类对跨越时空事物和复杂动态事件的感知能力, 实现人与信息空间自然、和谐的交互。这些都己渐渐成为人类面临的新挑战, 而虚拟现实技术是解决这个挑战最有效的方法途径。 虚拟现实(Virtual Reality,简称 VR)是近年来出现的高新技术,也称灵境技 术或人工环境。它借助计算机构建出一个与现实环境十分逼真的交互环境,使 用户以自然的方式与虚拟环境中的对象交互,从而产生等同于真实环境的感受 和体验。虚拟现实技术己经成为计算机技术中研究、开发和应用的热点,广泛 应用于教育、军事、建筑、医疗、工业设计等各个领域。虚拟风景全景漫游是 虚拟现实技术在现代教育中的应用,它实现了对风景三维景观和教学环境的数 字化和虚拟化,在学校的教学资源管理、环境规划和学校发展等许多方面发挥 了重要的作用[1]。 1.2 选题背景及意义 1.2.1 选题背景 随着社会和科学技术的发展,基于图像绘制的虚拟现实技术已经成为计算 机视觉、图像处理、计算机图形学、人工智能研究的热点并得到广泛的应用, 可应用于全景漫游系统的实现。 虚拟现实(VR)技术最早在 20 世纪中期由美国 VPL 探索公司和它的创始 人 Jamn IJaIlier 提出这一概念,后来美国宇航局(NASA)的艾姆斯空间中心利用 流行的液晶显示电视和其它设备,开始研制低成本的虚拟现实系统,推动了该 技术硬件的进步。目前,虚拟现实技术已获得了长足的发展。在国内,20 世纪 80 年代末开始进行研究,目前还处于初级阶段[2]。 美国作为 VR 技术的发源地,其研究水平基本上就代表国际 VR 发展的水平。 目前美国在该领域的基础研究主要集中在感知、用户界面、后台软件和硬件四 个方面。北卡罗来纳大学(UNC)的计算机系是进行 VR 研究最早的大学,他们主 要研究分子建模、航空驾驶、外科手术仿真、建筑仿真等。Loma lAnda 大学医 学中心的DavidWarner 博士和他的研究小组成功地将计算机图形及VR 的设备用 于探讨与神经疾病相关的问题,首创了 VR 儿科治疗法。麻省理工学院(MIT)是 研究人工智能、机器人和计算机图形学及动画的先锋,这些技术都是 VR 技术 的基础,1985 年 M1T 成立了媒体实验室,进行虚拟环境的正规研究[3]。 我国 VR 技术研究起步较晚,与国外发达国家还有一定的差距,但现在已引起 扣扣 178308054
全套设计,欢迎咨询 国家有关部门和科学家们的高度重视,并根据我国的国情,制定了开展 VR 技 术的研究计划。九五规划、国家自然科学基金委、国家高技术研究发展计划等 都把 VR 列入研究项目。国内一些重点院校,已积极投入到了这一领域的研究 工作。北京航空航天大学计算机系是国内最早进行 VR 研究、最有权威的单位 之一,着重研究了虚拟环境中物体物理特性的表示与处理;实现了分布式虚拟 环境网络设计,虚拟现实应用系统的开发平台等。清华大学计算机系对虚拟现 实和临场感方面进行了研究,例如球面屏幕显示和 1.2.2 选题意义 VR 是一项综合集成技术,涉及计算机图形学、人机交互技术、传感技术、 人工智能等领域,它用计算机生成逼真的三维视、听、嗅觉等感觉,使人作为 参与者通过适当装置,自然地对虚拟世界进行体验和交互作用。现在,学校为 了展示自身风采,越来越重视宣传,需要一种更为直接的方式宣传自己。虚拟现实 技术应用于学校,就是虚拟风景旅游,能够全方位地展示学校的各方面环境。本 课题在对全景漫游技术探讨的基础上采用基于图像生成每个场景的全景图,从而 实现一个中等复杂程度的、具有一定人机交互能力的风景全景漫游系统。 本课题运用虚拟现实技术实现风景全景漫游系统,让我们更加逼真的认识了解 风景旅游,也能从中了解虚拟现实技术的神奇效果,掌握 2D 纹理贴图在全景漫 游系统中的运用。 1.3 本文结构及主要内容 在阅读了大量标准文献,对虚拟现实技术及虚拟漫游系统有了较深理解的 基础上,本文主要针对目前虚拟风景的特点和存在的问题,提出了基于 OpenGL 的虚拟风景漫游系统的功能设计架构和实现方法。而且,虚拟风景旅游漫游系 统真实地再现了风景旅游的三维景观,可以在三维的虚拟风景中进行自由的漫 游,可以实现真实感的交互操作。 针对本选题的具体内容,将分成六个部分来介绍。第一部分绪论,这部分主要 讲述引言、选题背景、选题意义和本文结构等几方面的内容。第二部分相关知 识,这部分主要介绍设计当中所涉及到的相关技术和知识,包括 OpenGL 图形 编程基础、MFC 编程技术、全景图生成和虚拟场景建模技术等。第三部分全景 漫游系统的设计,本选题的重点。这部分主要分析论述全景漫游系统的整体设 计和详细设计,同时给出部分设计思想及代码实现。第四部分,系统实现与测 试,这部分主要针对系统的具体实现与相关测试,并写出其核心代码。第五部 分应用前景,这部分主要通过具体的应用实例展示本选题的意义,并总结相关 技术应用的特点。第六部分结束语,对本设计进行了总结。 扣扣 178308054
全套设计,欢迎咨询 2 相关知识 2.1 OpenGL 编程基础 OpenGL被定义为“图形硬件的一种软件接口”。从本质上说,它是一个3D 图形和模型库,具有高度的可移植性.并且具有非常快的速度。OpenGL严格按照 计算机图形学原理设计而成,符合光学和视觉原理,可以创建极其逼真的3D图 像。许多三维演示系统都用OpenGL作为三维图形生成和控制的编程接口。 2.1.1 OpenGL 简介 OpenGL 是近几年发展起来的一个性能卓越的三维图形标准,它是在 SGI 等多家世界闻名的计算机公司的倡导下,以 SGI 的 GL 三维图形库为基础制定 的一个通用共享的开放式三维图形标准。目前,包括 Microsoft、SGI、IBM、 DEC、SUN、HP 等大公司都采用了 OpenGL 做为三维图形标准,许多软件厂商 也纷纷以 OpenGL 为基础开发出自己的产品,其中比较著名的产品包括动画制 作软件 Soft Image 和 3D Studio MAX、仿真软件 Open Inventor、VR 软件 World Tool Kit、CAM 软件 ProEngineer、GIS 软 ARC/INFO 等。值得一提的是,随着 Microsoft 公司在 Windows NT 和最新的 Windows 95 中提供了 OpenGL 标准及 OpenGL 三维图形加速卡的推出,OpenGL 将在微机中有广泛地应用,同时也为 广大用户提供了在微机上使用以前只能在高性能图形工作站上运行的各种软件 的机会。 OpenGL 是行业领域中最为广泛接纳的 2D/3D 图形 API,其自诞生至今已催生 了各种计算机平台及设备上的数千优秀应用程序。OpenGL 是独立于视窗操作系 统或其它操作系统的,亦是网络透明的。在包含 CAD、内容创作、能源、娱乐、 游戏开发、制造业、制药业及虚拟现实等行业领域中,OpenGL 帮助程序员实现 在 PC、工作站、超级计算机等硬件设备上的高性能、极具冲击力的高视觉表现 力图形处理软件的开发。OpenGL 的前身是 SGI 公司为其图形工作站开发的 IRIS GL。IRIS GL 是一个工业标准的 3D 图形软件接口,功能虽然强大但是移植性 不好,于是 SGI 公司便在 IRIS GL 的基础上开发了 OpenGL。OpenGL 的英文全 称是“Open Graphics Library”,顾名思义,OpenGL 便是“开放的图形程序接口”。 虽然 DirectX 在家用市场全面领先,但在专业高端绘图领域,OpenGL 是不能被 取代的主角。 2010 年 7 月 26 日 发 布 OpenGL 4.1 和 OpenGL Shading Language 4.10 。 OpenGL4.1 提高视觉密集型应用 OpenCL 的互操作性,并继续加速计算剖面为 核心的支持和兼容性第一次推出的 OpenGL 3.2,使开发人员能够使用一个简化 的 API 或保留向后兼容现有的 OpenGL 代码,这取决于他们的市场需求。 2.1.2 OpenGL 的主要功能 OpenGL 是一个开放的三维图形软件包,它独立于窗口系统和操作系统,以 扣扣 178308054
全套设计,欢迎咨询 它为基础开发的应用程序可以十分方便地在各种平台间移植;OpenGL 可以与 Visual C++紧密接口,便于实现设计的有关计算和图形算法,可保证算法的正确 性和可靠性;OpenGL 使用简便,效率高。概括起来,OpenGL 主要有以下功能: (1)建模功能。真实世界里的任何物体都可以在计算机中用简单的点、线、多 边形来描述.OpenGL 图形库除了提供基本的点、线、多边形的绘制函数外,还 提供了比较复杂的三维物体(如球、锥体、多面体、茶壶等)以及复杂曲线和曲面 (如 Bezier,Nurbs 等曲线或曲面)绘制函数,从而可以方便地构建虚拟三维世界。 (2)变换功能。可以说,无论多复杂的图形都是由基本图元组成并经过一系列 变换来实现的。OpenGL 图形库的模型变换有平移、旋转、比例缩放等多种变换。 (3)颜色模式设置。OpenGL 提供了两种物体着色模式,一种是 RGBA 颜色模 式,另一种是颜色索引模式(Color Index)。 (4)光照模型。要绘制逼真的三维物体,必须做光照处理。OpenGL 可以控制 光照与物体的关系,产生多种不同的视觉效果。 (5)凡走样。在 OpenGL 绘制图形过程中,由于使用的是位图,所以绘制出的 图像的边缘会出现锯齿形状,称为走样。为了消除这种缺陷,OpenGL 提供了点、 线、多边形的反走样技术。 (6)融合。为了使三维图形更加具有真实感,经常需要处理半透明或透明的物 体图像,这就需要用到融合技术。 (7)雾化。正如自然界中存在烟雾一样,OpenGL 提供了“fog”的基本操作来 达到对场景进行雾化的效果。 (8)位图显示和图像增强。在图形绘制过程中,位图和图像是非常重要的一个 方面。OpenGL 提供了一系列函数来实现位图和图像的操作。 (9)纹理映射。在计算机图形学中,把包含颜色、alpha 值、亮度等数据的矩 形数组称为纹理。而纹理映射可以理解为将纹理粘贴在所绘制的三维模型表面, 以使三维图形显得更生动。 (10)双缓存动画。出色的动画效果是 OpenGL 的一大特色,OpenGL 提供了双 缓存区技术来实现动画绘制。双缓存即前台缓存和后台缓存,后台缓存计算场 景、生成动画,前台缓存显示后台缓存己画好的画面。 2.1.3 OpenGL 体系结构及工作流程 OpenGL 的作用机制是客户(client)/服务器(sever)机制,即客户(用 OpenGL 绘制景物的应用程序)向服务器(即 OpenGL 内核)发布 OpenGL 命令, 服务器则解释这些命令。大多数情况下,客户和服务器在同一机器上运行。正 是 OpenGL 的这种客户/服务器机制,OpenGL 可以十分方便地在网络环境下使 用。因此 Windows NT 下的 OpenGL 是网络透明的。正象 Windows 的图形设备 接 口 ( GDI ) 把 图 形 函 数 库 封 装 在 一 个 动 态 链 接 库 ( Windows NT 下 的 GDI32.DLL ) 内 一 样 , OpenGL 图 形 库 也 被 封 装 在 一 个 动 态 链 接 库 内 扣扣 178308054
全套设计,欢迎咨询 ( OPENGL32.DLL )。 受 客 户 应 用 程 序 调 用 的 OpenGL 函 数 都 先 在 OPENGL32.DLL 中处理,然后传给服务器 WINSRV.DLL。OpenGL 的命令再次 得到处理并且直接传给 Win32 的设备驱动接口(Device Drive Interface,DDI), 这样就把经过处理的图形命令送给视频显示驱动程序。下图简要说明这个过程: OpenGL 被设计成独立于硬件,以流水线的方式工作,这样可以把 OpenGL 看成 一条生成流水线,原料是场景、物体的顶点、表面细节等信息,产品是看起来 有三维感觉的平面位图。在 OpenGL 中每个物体都是由一组平面构成的,这组 平面记录了该物体的表面,需要用户提供围绕平面边缘的线段的顶点参数、平 面内图案的位图两组信息,术语称为 Vertex(顶点)、(纹理)。显然这些平面越 小则绘画出的三维图形越逼真。工作的流程大致如下图所示: 工作流程的输入端可以是图象,也可以是几何图形,最终的结果是光栅化后的 图象,这些进入帧缓冲区后,由硬件显示在输出设备上。上图中的几何顶点数 据包括模型的顶点集、线集、多边形集.图象像素数据包括像素集、位图集等。 它们经过各自的操作,在进行光栅化、片元处理后写入帧缓存中。由此可见, OpenGL 是通过一些基元如顶点、像素集建模,这种方式易于操作,但建模较为 复杂。 此外,为增强真实感,OpenGL 还提供了光照、视点设置、物体材料特性、纹理 映射等其它功能,这就大大地丰富了建模的能力,为开发三维地形可视化应用 扣扣 178308054
分享到:
收藏