(计算机应用技术专业论文)支持360度立体高分辨率投影显示的绘制系统.pdf_第1页
(计算机应用技术专业论文)支持360度立体高分辨率投影显示的绘制系统.pdf_第2页
(计算机应用技术专业论文)支持360度立体高分辨率投影显示的绘制系统.pdf_第3页
(计算机应用技术专业论文)支持360度立体高分辨率投影显示的绘制系统.pdf_第4页
(计算机应用技术专业论文)支持360度立体高分辨率投影显示的绘制系统.pdf_第5页
已阅读5页,还剩80页未读 继续免费阅读

(计算机应用技术专业论文)支持360度立体高分辨率投影显示的绘制系统.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

浙江大学硕士学位论文摘要 摘要 立体显示技术是实现虚拟现实系统的重要技术之一,其中的关键是正确的产 生物体的左右眼图像。根据计算机视觉的相关算法与理论,可以通过对初始视点 进行平移的方式来得到左右视点,并进而产生左右眼图像,再通过专用的设备来 同步显示这些图像来实现立体视觉。在基于多通道投影显示的虚拟现实系统中一 般是通过金属屏幕、具有偏振片的投影仪以及偏光眼镜来实现立体视觉。 本文所实现的支持3 6 0 度立体高分辨投影显示的并行绘制系统以及在该系统 上所开发的相关应用是整个分布式虚拟现实系统中的一部分。如何通过已有的三 维绘制引擎在3 6 0 度环幕投影系统中实现三维场景的全景绘制,实现3 6 0 度立体 投影以及在此基础上开展进一步的应用,是本文研究的重点。 本文针对3 6 0 度环幕投影系统的特点,提出并实现了基于柱面投影的绘制方 式及在该方式下摄像机参数的计算方法。通过将整个柱面投影分成平面投影及柱 面映射两个过程,使得每个过程都可以在当前的条件下完成。在3 6 0 度立体投影 显示问题上,成功的将单机下的多视口显示技术应用到并行绘制系统中,以多个 窗口的方式实现了3 6 0 度的立体投影显示。 在解决了前面的3 6 0 度立体投影显示问题之后,本文使用v i s i o n i x e n g i n e 三 维绘制引擎成功搭建了一个城市规划仿真系统,并根据不同的应用场合实现了摄 像机自动漫游、g u i 显示、多用户协同设计及自适应方案对比等常见的功能,添 加了数据手套、触摸屏、语音控制等多种交互方式。 关键词:立体显示,柱面投影,城市仿真 a b s t r ac t s t e r e o s c o p i cd i s p l a yt e c h n o l o g yi so n eo ft h em o s ti m p o r t a n tt e c h n o l o g i e si n v i r t u a lr e a l i t y s y s t e m a c c o r d i n g t ot h e t h e o r yo fc o m p u t e rv i s i o n ,t h el e f t v i e w p o i n ta n dr i g h tv i e w p o i n tc a nb ea c h i e v e db yt r a n s l a t i n gb o t ht h e o r i g i n a l v i e w p o i n ta n dv i e wd i r e c t i o nf o rac e r t a i nd i s t a n c e u s et h e s et w ov i e w p o i n t st o g e n e r a t et w oi m a g e s ,a n dd i s p l a y e db yt w op r o j e c t o r st h a te q u i p p e dw i t hs p e c i a lg l a s s , t h e nw ea c h i e v es t e r e ov i s i o ni fw e a rt h e s p e c i a ls p e c t a c l e s t h ep a r a l l e l r e n d e r i n gs y s t e mt h a ts u p p o r tf o r3 6 0d e g r e eh i g hr e s o l u t i o n s t e r e o s c o p i cd i s p l a ya n di t sa p p l i c a t i o n st h a tw ew i l ld i s c u s si nt h i sp a p e ri sa p a r to f t h ew h o l ed i s t r i b u t e dv i r t u a lr e a l i t ys y s t e m h o wt ou s ee x i s t i n gr e n d e r i n ge n g i n et o r e n d e rt h r e e - d i m e n s i o ns c e n ew i t hf u l l v i s i o no nt h e3 6 0d e g r e em u l t i - p r o j e c t o r d i s p l a ys y s t e ma n dh o wt oa c h i e v et h es t e r e op a n o r a m aa n df u r t h e ra p p l i c a t i o n sa r et h e m a i nr e s e a r c hw o r ki nt h i sp a p e r i nt h i sp a p e r , w ep r o p o s ea n di m p l e m e n tt h e c y l i n d r i c a lp r o j e c t i o nm e t h o d a c c o r d i n gt ot h ec h a r a c t e r i s t i co f3 6 0d e g r e em u l t i p r o j e c t o rs y s t e m ,a n dg i v et h e m e t h o dt oc a l c u l a t et h ep a r a m e t e r so ft h ec a m e r a w ed i v i d et h ew h o l em e t h o di n t o t w 0p r o c e d u r e st om a k ei te a s yt oi m p l e m e n t i nt h ei s s u eo f 3 6 0 d e g r e es t e r e o s c o p i c p r o j e c t i o nd i s p l a y , w ea p p l yt h em u l t i p l ev i e w p o r td i s p l a yt e c h n o l o g yt op a r a l l e l r e n d e r i n gs y s t e m b yd i v i d i n gt h ew h o l ec y l i n d r i c a ls u r f a c et os o m es u br e g i o n s w e r e s o l v et h ep r o b l e m i nt l l ef i n a lp a r to ft h i sp a p e rw e s u c c e s s f u l l yu s et h et e c h n o l o g i e st h a td i s c u s s e d a b o v e ,a n dv i s i o n i x e n g i n er e n d e r i n gs y s t e mt ob u i l da nu r b a np l a n n i n ga n ds i m u l a t i o n s y s t e m w ei m p l e m e n tt h ea u t o m a t i cc a m e r an a v i g a t i o nm o d u l e ,g u id i s p l a ym o d u l e m u l t i 。u s e rc o l l a b o r a t i v ed e s i g na n do p e r a t i o n ,a d a p t i v es o l u t i o nc o m p a r ef u n c t i o n a v a r i e t yo fi n t e r a c t i o nf u n c t i o n ss u c ha sd a t ag l o v e ,t o u c hs c r e e n , v o i c ec o n t r 0 1 a i l de t c k e y w o r d s : s t e r e o s c o p i cp r o j e c t i o n ,c y l i n d r i c a lp r o j e c t i o n , u r b a ns i m u l a t i o n 浙江大学硕士学位论文图目录 图目录 图1 1s o r t f i r s t ,s o r t m i d d l e ,s o r t 1 a s t 示意图3 图1 2c l i e n t s e v e r 模式和m a s t e r - s l a v e 模式4 图1 4 左右眼视点的求法7 图2 1 系统硬件拓扑结构1 1 图2 2p c 集群1 2 图2 3 两种环形幕1 3 图2 4 环幕投影系统1 3 图2 55 d td a t ag l o v e5 数据手套示意图1 4 图2 6 数据手套与三维跟踪器15 图2 7 软件部署图。l7 图2 8 系统流程图18 图2 8 绘制同步过程。2 9 图3 1 三通道立体投影左右眼视域3 2 图3 23 6 0 度立体投影示意图3 3 图3 33 6 0 度柱面投影示意图3 4 图3 4 摄像机成像原理3 5 图3 5 柱面切分俯视图3 6 图3 6 垂直视域求解示意图3 8 图3 7 参考视线求解示意图3 9 图3 8 重叠区域对比4 l 图3 9 柱面映射示意图4 2 图3 1 0 柱面映射示意图4 4 图3 1 1 柱面映射前后对比图4 4 图3 1 2 柱面映射后截图l 4 5 图3 1 3 柱面映射后截图2 4 5 图3 1 4 一次绘制完整流程4 6 图3 15 视口剖分示意图4 6 图3 1 6 多个窗口示意图4 7 图3 1 7 窗口空间、局部空间、全局空间4 9 图3 18 窗口与绘制端相交5 0 图3 19 窗口产生流程5 4 图3 2 0 立体投影下视线的求法5 7 图3 2 1 立体与非立体对比5 8 图3 2 23 6 0 度立体效果5 8 图4 1 城市规划仿真系统6 1 i i i 浙江大学硕士学位论文图目录 图4 2 摄像机路径6 3 图4 3 四个方案对比6 5 图4 4 协同操作功能截图6 7 图4 5 数据手套漫游功能6 9 图4 6 触摸屏程序。7 0 i v 浙江大学硕士学位论文 表目录 表目录 表2 1 统一的消息头2 2 表2 2 绘制节点回复消息格式2 3 表2 3 控制端回复消息格式2 4 表2 4 应用端回复消息格式。2 6 表a 、钢始化1s 表a 2 打开场景7 5 表a 3 场景绘制7 5 表a 4 刷新7 6 表a 5 关闭场景7 6 表a 6 绘制端退出消息7 6 表a 7 图层控制7 7 表a 8 景点切换7 7 表a 9 视差调整7 7 表a 1 0 属性查看7 7 表a 1 1 物体编辑7 8 表a 1 2 方案对比模式切换7 8 表a 1 3 方案切换7 8 表a 1 4 摄像机环绕7 9 表a 1 5 景点切换。7 9 表a 1 6 漫游参数调整7 9 表a 17 摄像机漫游8 0 v 浙江大学硕士学位论文 第1 章绪论 第1 章绪论 虚拟现实( v i m m lr e a l i t y ,v r ) 技术是利用计算机技术创造出一个逼真的 三维虚拟环境,模拟其中的听觉、视觉及触觉,使得用户在该环境中具有身临其 境的感觉。用户可以通过语音、数据手套、跟踪器、传感器等各种虚拟现实交互 设备与这个虚拟环境中的物体相互作用或控制这个环境。同其他现代高新科技一 样,虚拟现实技术是许多相关学科领域相互交叉、相互集成的产物。其研究内容 包含了人工智能、计算机图形学、传感器技术及心理学等方面。 本章将简要的介绍虚拟现实技术中的一个分支分布式虚拟现实技术及 其应用背景、前景和基本组成。作为分布式虚拟现实技术的重要组成部分,我们 将对并行绘制技术做一个相关的概述并分析几个开源绘制系统,最后描述了目前 基于投影的虚拟现实系统的立体投影技术,在本章的第二部分将介绍我们的研究 动机与系统的设计目标,在本章的最后将介绍本文的总体结构。 1 1 课题背景 分布式虚拟现实n 3 ( d i s t r i b u t e dv r ,d v r ) 技术是虚拟现实技术与计算机网 络技术相结合的产物,拥有可以突破时空限制的显著特点,为人们分析问题、解 决问题、以及协同工作提供了崭新的手段。 分布式虚拟现实系统是一种基于网络的虚拟环境,在这个环境中,位于不同 物理位置的用户通过网络相连接,或者是通过共同参加一个虚拟现实环境,通过 计算机与其他用户进行交互。在这种虚拟现实系统中,多个用户可以通过网络对 同一个虚拟世界进行观察和操作,以达到协同工作的目的。 目前分布式虚拟现实技术已经成功的应用到了许多的领域,如工程技术、建 筑、设计、交互式娱乐、电子商务、数据可视化、军事、航天、医疗等领域。利 用该技术可以开发网络社区、网络游戏、网络虚拟购物等应用系统。 分布式虚拟现实系统一般运行在两类网络平台上,一是互联网,如上述的各 应用系统均是在互联网的基础上开发的;二是专用网,代表性的就是美国军方的 1 浙江大学硕士学位论文第1 章绪论 国防仿真互联网,本文所实现的分布式虚拟现实系统是在高速局域网上开发的。 基于投影的分布式虚拟现实系统与一般的虚拟现实系统不同,它主要是运行 在投影显示系统中,类似与c a v e 系统。因此这类的系统大致由以下的几个部分 所组成: ( 1 ) 投影显示系统:包含了投影仪,投影屏幕( 直幕,环幕等) : ( 2 ) 分布式并行绘制系统:主要是绘制集群,一般是高性能的p c 集群; ( 3 ) 交互系统:包含了常见的虚拟现实交互设备,如数据手套、传感器、 语音设备等 ( 4 ) 网络设备:交换机、路由器等。 在这类系统中需要解决多个技术难题,包括投影显示系统中投影仪之间的几 何拼接校正、颜色校正,并行绘制系统中的同步技术、立体投影技术、各个交互 手段的管理及实现、以及系统中的网络通信协议等。 由于分布式的并行绘制系统是分布式虚拟现实系统中的重要组成部分,当前 一般采用基于集群的并行绘制技术来实现,因此下面将简要的介绍一下并行绘制 技术。 1 1 1 并行绘制技术概述 并行绘制技术是一种可用于改进应用系统绘制性能的关键技术。特别是在医 疗图像、等值面生成以及c a d 应用和光线跟踪等系统中,绘制一帧内容往往需 要涉及到大量数据的计算,而在一些需要将绘制结果共同显示在多个显示设备上 的虚拟现实系统与视觉仿真系统中,也广泛的应用了该技术,使得整个绘制任务 被分成多个逻辑部分在多个处理单元中并行的进行,极大地加快了处理效率。 目前对并行绘制技术的研究大多将重点放在如何将几何图元分发到绘制节 点。m o l n a r 乜1 等人根据几何图元归属判断的时间,将并行绘制技术分为以下的三 类:( 1 ) s o r t f i r s t :( 2 ) s o r t m i d d l e ( 3 ) s o r t 1 a s t 图1 1 描述了这三类的区别: 2 浙江大学硕士学位论文第1 章绪论 几何模型数据 n 舸模型数据 显示 s o r t - f i r s t 显示 s o r t 啦搬 显示 s o r t - l a e t 图1 is o r t - f i r s t ,s o r t m i d d l e ,s o r t - l a s t 示意图 几何处理 光栅化 组合 图1 1 中g 代表几何处理,r 代表光栅处理。在基于s o r t f i r s t 体系的结构的 并行绘制系统中,几何图元的归属判断放在了绘制流水线的几何处理之前。显示 屏幕被分成了多个区域,并分配给不同的绘制节点。每个绘制节点负责绘制自己 区域中的图元,在绘制之前会根据几何图元在显示屏幕的投影来确定由哪个绘制 节点来绘制,然后将该几何图元只发送相应的绘制节点,由于每帧都要发送大量 的几何图元,因此需要很高的带宽。同时当绘制节点增加时,会导致s o r t f i r s t 的 绘制效率下降,因为整个显示屏幕被分成了更多的区域,使得每个区域变的更小, 导致物体处于边界处的概率增加。由于一些图形a p i 如o p e n g l 会将位于视域之 外的图元裁剪掉,而且这个裁剪过程发生的很早,因此运用这个体系的系统能极 大的提高绘制的效率, 在s o r t - m i d d l e 体系中,几何图元的归属判断放在了几何处理之后、光栅化处 理之前。在这类的并行绘制系统中,首先要分配几何图元到一个几何处理器进行 几何变换,以便将这些图元坐标转换到屏幕坐标,并根据这个屏幕坐标分配几何 处理后的图元到光栅化处理器,然后将光栅化后的结果拼接成最终的图像。在这 种体系结构中由于几何处理器和光栅化处理器紧密的耦合在一起,因此在一般的 集群中很难实现。 在s o r t 1 a s t 体系中,几何图元归属判断在绘制流水线的光栅化处理之后,在 这种并行绘制系统中,直接分配几何图元到绘制节点,每个绘制节点负责整个显 3 浙江大学硕士学位论文第1 章绪论 示屏幕大小的图像的绘制,然后根据他们的深度信息进行全屏幕深度合成得到最 终的显示图像。 1 1 2 基于集群的并行绘制系统 基于集群的并行绘制系统一般采用上述的s o r t - f i r s t 结构去开发。y c h e n d 儿4 等人根据应用在集群节点中的分布,将并行绘制系统分成了两种模型: c l i e n t s e r v e r 模型和m a s t e r - s l a v e 模型。在c l i e n t s e r v e r 中,c l i e n t 负责与用户的 交互,负责产生几何图元并将图元发送到s e r v e r 端进行绘制。在这种模型中根据 绘制模式又分为了立即模式和保留模式。立即模式中,在每帧绘制之前将数据通 过网络发送到s e r v e r 端进行绘制,而在保留模式中,s e r v e r 端将保留之前的数据, c l i e n t 只负责将有改动的几何图元发送过去。在这种模式下,网络带宽要求很高, 因为每帧都有大量的数据在发送,特别是在s e r v e r 节点增多的时候,因此扩展性 不是很好。 在m a s t e r - s l a v e 模式中,集群被分成了m a s t e r 节点和s l a v e 节点,所有的应 用与绘制都发生在所有的节点中。m a s t e r 节点需要同步所有节点的状态改变并负 责与用户的交互。由于这种模式中只有同步过程需要网络开销,因此系统运行比 较快,绘制效率比较高,但由于数据在所有的节点上都有副本,导致数据冗余度 比较高,但是扩展性很高,节点的增加对性能的影响比较小。 图1 2c l i e n t s e v e r 模式和m a s t e r - s l a v e 模式 下面将简要的介绍几种常见的支持集群的并行绘制开源系统。 1 1 2 1c h r o m i u m 4 浙江大学硕士学位论文第l 章绪论 c h r o m i u m 商1 是晰r e g l 嘲的后续版本,通过替换系统中的o p e n g l 库来达到 直接操作o p e n g l 命令流的目的。c h r o m i u m 提出了流处理单元( s t r e a mp r o c e s s u n i t s ,s p u ) 的概念,每个s p u 拥有一串图形命令流,通过自身处理之后传送到 下一个s p u 。通过将s p u 串联起来可以实现一些复合的操作。一些基本的s p u 会包含了以下的三部分:( 1 ) r e n d e r :绘制器,负责将流发送到系统的本地实现; ( 2 ) p a c k :整编器,将这些流整编到一个缓冲区中以便发送到集群节点中;( 3 ) p r i n t :输出器,将这些流以可度的实现输出。由于c h r o m i u m 是将o p e n g l 库替 换成了自己的库,因此理论上所有使用o p e n g l 的程序也可以用c h r o m i u m 来实 现,但由于o p e n g l 一直在发展,因此c h r o m i u m 都必须保持更新并实现一些扩 展的a p i ,这在维护上会存在一定的问题。 用户可以用不同大小的矩形区域来剖分显示屏幕,指定s p u 的显示区域来达 到支持拼接显示的目的。在绘制的时候c h r o m i u m 会将所有的几何数据进行预变 换并维持一个与屏幕大小一致的包围盒以包含所有需要显示的几何数据,当这些 数据准备好的时候,c h r o m i u m 会求得与每个显示区域相交的几何数据并将这些 数据发送到集群的相关节点中。当几何图元覆盖整个显示屏幕的时候,这些图元 将会发送到每个节点中,由于每帧都需要发送大量的数据,因此网络带宽要求比 较高。 在视觉仿真、医疗图像生成等系统中,采用c h r o m i u m 进行开发可能是一个 比较好的选择,但如果是绘制大规模的复杂场景,由于包含了大量的数据,预变 换、数据发送等均需要比较多的时间,而且网络带宽要求太高,因而采用场景图 的方式来开发可能会更好。 1 1 2 20 p e n s g o p e n s g 聃3 是一种类似与o p e ni n v e n t o r 和o p e n g lp e r f o r m e r 的场景图a p i , 支持在场景图中同时运行多个线程。任何线程对场景图的修改都必须显式的做一 标记以确定有哪些节点或区域被改变了,然后每个线程可以根据这个信息来更新 本地的场景图。o p e n s g 提供了一个s o r t f i r s t 的算法以便在集群中运行,同时采 5 浙江大学硕士学位论文第l 章绪论 用c l i e n t s e r v e r 模型,并且在每个节点中都保存了场景图的一个副本。用户与 c l i e n t 进行交互,对c l i e n t 中场景图的修改都会保存到一个列表中,然后将这个 列表广播到所有的s e r v e r 节点。o p e n s g 通过将显示屏幕均匀分割成m * n 块,然 后将每个节点与这些块一一对应来支持拼接显示,虽然也支持每块子屏幕为梯形 或者其他的形状,但却必须满足一个s e r v e r 节点对应一块子屏幕这个条件,否则 用o p e n s g 就比较难实现,因此其适用范围就不是很大。 同时,由于o p e n s g 将场景图保存在所有的节点中,每个s e r v e r 节点需要调 整平截体以便在s e r v e r 节点中进行视域裁剪,因此当全部的场景数据保存在场景 图中的一个节点的时候,每个s e r v e r 都需要将所有的数据传入渲染管线,依赖 o p e n g l 本身进行裁剪,因而将导致巨大的性能损失。由于只是将场景图中改动 过的部分进行广播,因此当场景是静态的时候所需要的带宽很小,但对动态场景 网络的压力就很大。 1 1 2 3v r j u g g l e r v r j u g g l e r 侧是一个虚拟现实应用程序框架,提供了窗口及视口的管理,并支 持多种设备的交互并使用m a s t e r - s l a v e 模型对集群绘制提供支持。用户可以与集 群中的任何节点进行交互,并将所有的交互数据发送到所有的节点来保持集群各 节点的状态一致性。由于所有的节点都可以进行交互,因此使得各种交互手段之 间冲突无法解决。并且v r j u g g l e r 并不进行视截体的裁剪,因此需要将所有的场 景数据都传入渲染管线,由o p e n g l 渲染本身来进行裁剪,使得当场景数据巨大 时绘制效率会很低。 同时上述的这些系统都不是基于屏幕投影的并行绘制系统,因此在那些需要 通过投影显示系统来显示的虚拟现实系统的来说并不是很好的选择。 1 1 3 立体投影技术概述 人眼观察物体时,由于人双眼4 - 6 c m 的距离,因此每个眼睛所看到的物体的 像会有一定的偏差,当不同的两个图像传送到人脑进行处理的时候就合成了一个 完整的物体,而且物体间的距离、深度、凹凸都能分辨出来。 6 浙江大学硕士学位论文 第1 章绪论 计算机中采用的立体投影技术,按照一定的算法求得左右眼视点并求得左右 眼图像,然后使用两台不同的投影仪,分别同步投影左右眼图像,将两台投影仪 前的偏光片的偏振方向互相垂直,让产生的两束偏振光的偏振方向也相互垂直, 而偏振光投射到专用的投影屏幕上再反射到观众时,偏振光方向不改变,然后通 过使用偏光眼镜使得每只眼睛只能看到从相应的投影仪投出来的图像,然后经过 大脑的处理,就形成了立体的视觉。 根据计算机视觉的相关理论与算法n 叼n ,在计算机实现中通过如下的方式来 平移初始视点而得到左右眼视点。见图1 4 : 取弘力 ? ,霉 , 图1 3 左右眼视点的求法 在上图中,0 为三维场景中的摄像机视点,z 轴为摄像机的视线方向,y 轴 为摄像机的向上方向。通过对整个摄像机左右平移一定的距离b ,可以得到左眼 视点口和右眼视点d ,且视线方向也平移了b 距离,因此投影平面也平移b 距离, 从图中可以清楚的看到空间中的点e ( x ,y ,z ) 在两个投影平面上的位置并不重合, 而是有了一定的偏差。这种产生左右眼图像的方法其中的一个好处是轴距b 可以 通过交互的方式来实时调整,以便控制投影时的视差。 7 浙江大学硕士学位论文第1 章绪论 1 2 研究动机及系统设计目标 通过我们前面的介绍知道,目前的一些支持集群的开源并行绘制系统由于特 点无法很好的支持大规模的城市场景绘制,或者无法支持软件拼接且无法作二次 应用开发,而达不到我们的要求;目前的一些3 6 0 度全景虚拟现实系统大多采用 基于图像的绘制技术来并采用专门的播放器播放出来,工作量大、应用场合比较 少,与我们基于多通道投影显示的系统在实现原理上具有较大的差异。得益于国 家8 6 3 项目的基金支持,我们有能力去开发一个符合我们要求的基于3 6 0 度立体 投影显示虚拟现实系统,并以该系统为支撑平台开展更多虚拟现实方面的应用研 究。因此有了本文的成果。 整个系统的设计目标如下: ( 1 ) 能适用于任何弧度的曲面环幕,包括3 6 0 度的环幕; ( 2 )能具备立体显示的功能,特别是3 6 0 度环境下的被动立体效果; ( 3 ) 针对虚拟现实系统常见的应用领域,必须提供相应的功能支持,包括 城市规划中的方案对比功能,距离测量、面积测量及自动飞行漫游功 能; ( 4 ) 能处理大规模场景的绘制、编辑处理,允许多用户进行协同操作; ( 5 ) 能提供二次开发的接口,使得不同的应用能方便的接入到该系统中, 完成不同的应用扩展。 1 3 论文结构 本文其余内容的结构如下: 第二章,我们介绍了系统的硬件拓扑结构及各种硬件和软件部署图,以及各 软件的通信协议。 第三章,我们介绍了适用于任意弧度环形柱幕的并行绘制方法,该方法能真 实的还原空间的几何关系,使得在环幕投影显示的时候不会发生几何变形并且独 立于所采用的绘制引擎。我们详细介绍在该方法中各个参数的求解方法,以及使 8 浙江大学硕士学位论文第l 章绪论 用g p u 来进行柱面映射时的计算方法。此外为了解决3 6 0 度的立体投影技术, 我们实现了并行绘制下的多视口显示技术,并对该技术做了进一步的扩展,使之 具备更多的应用场合。在这章的最后,我们对3 6 0 度立体投影技术的实现做了具 体的描述。 第四章,我们应用前面两章的内容并利用v i s i o n i x e n g i n e 引擎实现了基于3 6 0 度环幕立体投影的城市仿真系统,实现了其中的摄像机自动漫游模块、城市规划 中的自适应多方案对比模块、g u i 及其他的功能模块。 第五章,我们对系统的实现做了总结,并指出了其中的不足之处及为了努力 的方向。 9 浙江大学硕士学位论文第2 章系统组成与通信协议 第2 章系统组成与通信协议 本文所设计的分布式并行绘制系统是整个分布式虚拟现实系统中的一部分, 支持多通道3 6 0 度环幕立体投影显示,支持多种的交互手段。在当前的设计中, 我们将系统分成了应用端、各种控制端及相应的集群系统,系统的各个部分通过 网络来进行通信。因此为了系统内各个部分的通信以及相关集群内部的同步控 制,我们设计并实现了系统的网络通信协议,该协议是开放的,有利于扩展及进 一步的应用。 本章将主要从三个方面来介绍这个系统:( 1 ) 系统的硬件结构和网络拓扑结 构;( 2 ) 软件系统组成及其在硬件上的部署方式;( 3 ) 底层网络通信协议。 2 1 系统硬件拓扑结构 本系统的硬件拓扑结构主要从硬件的可扩展性进行考虑,同时实现各个子系 统的松耦合,系统分层三个层次:( 1 ) 应用层;( 2 ) 服务控制端;( 3 ) 服务集群; 各个层次通过网络连接。 在本系统的设计中,将集群提供的每一种功能成为一种服务,例如:绘制、 外设都可以当作一种服务,这就产生了绘制控制端和绘制端集群,外设控制端和 外设集群。服务控制端和服务集群之间采用了m a s t e r - s l a v e 的模式,服务控制端 主要是进行命令转发、协同等计算量较小的操作,具体的任务则分配给相应的集 群进行,这种结构下可以很容易的扩展集群的性能。各服务之间采用松耦合,通 过消息机制协同,系统可以通过配置选择不同的服务。 应用层主用是利用服务控制端和服务集群提供的功能来对系统进行功能扩 展和二次开发,例如基于3 6 0 度立体高分辨率投影显示系统开发一个飞行仿真系 统,开发轮船驾驶仿真系统等等。 整个系统的硬件拓扑结构如下图: 1 0 渐大学碾学位论文第2 章系绕组成与通信梆议 圈2 1 系统硬件拓扑结构 在这个系统中,我们目前主要实现了其中的并行绘制系统,包括绘制端和控 制端,以及交互设备的控制端。下面将简要的介绍并行绘制系统的硬件组成。 2 1 1 绘制集群硬件组成 当前的一些p c 集群系统大致分成了两类:高可用性集群系统和高性能集群 系统。前者主要是为了提供不间断的服务,后者则是为了集成多台计算机来共同 处理复杂的计算闾题图形绘制也是计算中的一种。我们使用高性能的p c 集群 来处理整个系统的场景绘制。 由于集群系统中各节点通过网络相连接,节点之问会有大量的网络数据通 信,因此各节点应当具备高效的网络处理能力。我们认为使用独立的千兆网卡及 高性能的网络交换机是一个比较好的选择,可以提供带宽高、延时小的特性,极 大的降低由网络质量引起的网络堵塞现象,满足了实时绘制的需要。 i l 回国 浙大学顽学位论文 第2 章系统组成与通信排波 目前所用的高性能集群中各节点均是一般的个人计算机配簧,具有较高的性 价比。目前拥有1 8 个节点,并可以根据需要方便的增减,如下圈所示: 刿2l 2p c 集群 2 1 2 多通道环幕立体投影系统 多通道环幕投影系统是一种视觉听觉高度沉浸的虚拟仿真显示系统,采用多 台投影仪及环形幕组合而成,环形幕通常在1 0 0 3 6 0 弧度不等。与普通的投影 系统相比,这种投影系统具有显示尺寸更大、显示内容更多、视野更宽、分辨率 更高以及视觉效果更加冲击力和沉没感等优势,因而应用越来越广泛。 环幕投影系统的主要应用在影院、展览厅、城市规划馆等场合。根据幕的特 点可以分为有折弧形环幕系统和无折柱面环幕系统。图2 3 展示了这两种系统分 别使用的环幕。 r l i 大顼i 学位论文 第2 章系统组成与透信 图2 , 3 两种环形幕 圈23 中,左边是一个有折弧形环幕,整个环幕由多块显示屏所组成。 可以看出每两块显示屏幕之间具有比较明显的界限。右边是一个金属的柱f - ,幕上有金届涂层。这种幕一般用在正投影,光亮度衰竭比较小,投影效! 好。在本文的并行绘制系统中,采用的是七通道立体投影显示系统其投 是3 6 0 度的圆柱形金属幕,见图2 4 。 幽2 4 七通道环幕立体投影系统 浙江太学碗l 学位论文 第2 章系统组成与通信协* 2 1 3 交互设备 系统支持多种交互手段,包括语音,触摸屏数据手套等。系统对这些外设 提供了统一的管理,井能在不改变系统总体结构的情况下添加更多的交互设备。 下面将简单的介绍系统所用到的交互设备。 2 13 1 数据手套 系统所使用的数据手套是5 d t d a l a g l o v e5 ,如图2 5 所示,该手套有7 个传 感器,其中五个是手指弯曲传感鞋,即图中的a - e ,另外两个分别是倾斜角度传 感器( f ) 和旋转角度传感嚣( g ) 。7 个传感器通过扁平电缆与交互盒相连交 互盒通过i l s 2 3 2 接口与计算机的串口相连。 ,一窆膏、, t 图2 55 d t d a l a g l o v e5 数据手套示意图 由于每个人的手指在粗细、长短等方面都会有细微的差异,因此为了保证输 出数据的精度,一般在使用数据手套之前需要进行校准。该数据手套提供了两种 的校准方式:自动校准和软件校准。 2 i 3 2 三维跟踪器 数据手套只能识别出不同的手势,为了能对场景进行漫游还需要知道手套的 方位。系统使用了三维跟踪器f o b ( f l o c ko f b i r d s ) 来感知手套的方位。通过识 * 江¥顿 位* i第2 $ 系统m 与a 信协* 别出来的手势结合手套的方位数据实现了对场景的漫游操作。 圈2 6 中左边是数据手套,右边是三维跟踪器。 图2 6 数据手套与三维熙踪器 2 1 3 3 语音设备 语音识别程序一般使用微软提供的语音丌发包来开发,语音识别率比较高而 且开发容易。系统所用的语音设备主要是话筒和信号放大器,使用信号放大器的 目的是用来调整输入信号的增益,使得只有在话简周围一定距离内的语音信号能 够输出,很好的过滤掉了周围环境的噪声,提高了语音识别的准确性。 2 1 3 4 触摸屏 使用触摸屏的好处在于摆脱了对鼠标的依赖,在各种办公大厅及展厅中经常 会见到,是一个很常见的交互工具。 触摸屏设备见图2 4 。 2 2 系统软件组成 我们采用基于s o r t f i r s t 的体系的m 鹅t e r - s l a v e 模式来设计分却式并行绘制系 统。与传统的m a s t e r - s l a v e 模式不同,整个分布式虚拟现实系统的各个服务是由 用户应用统一控制的,因此在并行绘制系统中m a s t e r 节点不直接处理用户的交 互,而是由外设控制端来统一管理并将处理结果发送到用户应用端,再由应用 端根据外设的处理结果来决定是否需要绘制系统作进一步处理。困此在这个模型 浙江大学硕士学位论文第2 章系统组成与通信协议 中扩展性比较好,增加不同的外设对绘制系统不会有任何的影响,保持了绘制系 统的相对独立性。 在当前的绘制系统中,每个节点( m a s t e r 和s l a v e ) 都保存了场景图的一个 副本,对场景图的所有操作都会在所有节点上完成。m a s t e r 节点需要同步这些节 点之间的状态及相应操作。在当前的设计中,所有的操作都会以网络消息的形式 发送到各个节点( 见2 3 节) ,由于只是传输操作的本身而不是操作的结果,不需 要将场景图中所修改的数据进行广播,因而网络带宽要求比较低。但这也使得每 个节点都需要处理所有的场景图操作,并且都需要保存一份相关的应用数据,造 成数据冗余比较大。 本文的并行绘制系统从软件组成上分成了两个程序,一是控制端程序( 图2 8 中的并行控制器) ,运行在集群的m a s t e r 节点上,另一个是绘制端程序( 图2 8 中的分布式绘制器) ,运行在集群的每一个s l a v e 上。此外在以这个并行绘制系统 为平台开发的所有应用系统中,还将会运行一个或多个的应用端程序。在包含了 应用端及各种外设的系统中,各个程序在硬件上的部署如图2 7 所示: 1 6 堂里查兰堡主兰竺丝苎 里! 兰墨竺丝些皇望堕堡垫 用户 l 魈序 i 殳拿一一; 应用协议及交互协贲j 应用崭议置交互协谋 l 一! j v l j 图27 软件部署捌 图28 描述了当前系统韵控制及数据流图。 浙大学砸士学位论文 第2 章系统组成与通信掷议 井设控制器1f 用户应用 _ ! 擎! j i 滁习li 匝悸己 一 匣巫一如三。号 l 一 阿丽斗_ 一! ! 塑嚆孑塑坚卜1 i 多媒体管理绘制引擎i 培制# 面程控制 :( 声音括放l。t 下 l 【目: 。山j : 税颤赫艘j j 刹降u i * 2 :r t 一 工薯 i 摄像机路径1亍i i 菁剖 i 赢 j 盘分裳式 f 曲饯高散化l 一_ 鄯l h :。三; 二 二二 = , l 二_ 佩:i 【墅坚j 【竺! 竺! ) 翟 【束路径长虚j 。隶扁智唑标幕l n 蔽酬 坐标转换 三= r = :;= i = = 童垂弭垂) , r 1 控崩点计算j 【距膏计葬j j 。 + r _ i 场景管理 垣量鱼堡重差璺 i 强利l 擎 章爵 场景斑潭j 型堕塑型。物件洲管理嚣 牵型 意盂矿一 l ! 墅剖 璧理 l 上生墨l j 着色晕量理嚣 _ 叫# # 】一劂厂i 吝订 呼嘲 _ l ! ! 壁j i 盛蔗爿 ,( = 豆i j 3 l 鲤i ”l r l _ i 甑订 | r i 雨 图28 系统流程幽 在圈28 中,左下角部分是当前系统所使用的三维实时绘制引擎,该引擎主 要包含了图中所示的场景管理、绘制、窗口管理、多媒体管理等模块。图的右下 角所示的方框是拼接校正模块,该模块分成了几何校正、颜色校正及柱面投影三 部分。该模块的操作数据来自于绘制引擎的绘制结果即帧缓存中的内容。图中其 浙江大学硕士学位论文第2 章系统组成与通信协议 余的部分从左到右,从上到下依次为:( 1 ) 外设控制器:负责交互设备数据的采 集及转换;( 2 ) 用户应用,根据不同的应用可能会有不同的用户界面,负责对绘 制引擎相关功能的调用并向并行控制器发送各种应用的请求;( 3 ) 并行控制器: 集群绘制系统的控制模块,负责接收用户应用的应用操作请求,在处理之后发送 相应的网络消息到各分布式绘制器。该控制器还负责处理各分布式绘制器之前的 状态同步。出于简化的目的,在当前的实现中我们将用户应用与并行控制器组合 成了一个应用程序,而不是单独的程序。 通过如下的几个例子来理解图2 8 中整个流程。假设外设控制器中采集到了 触摸屏程序的输入数据,在做相应的处理之后会发送相应的网络消息( 景点切换 的交互消息) 到应用端,应用端接收该消息之后,在交互处理模块中处理该消息, 并根据消息的类型来决定是否发送回复消息到外设控制器;之后在应用请求模块 中会发送相应的应用消息到并行控制器,并行控制器在应用处理模块中会调用绘 制引擎中摄像机漫游模块的相应功能来计算相应的摄像机路径并发送相应的回 复

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论