第三章虚拟现实系统的相关技术与软件1.环境建模技术虚拟环境建模的目的是获取实际环境的三维数据,并根据应用的需要,利用获取的三维数据建立相应的虚拟环境模型。VR系统中环境的建模技术与其图形建模技术相比,主要特点表现在以下3个方面:①虚拟环境中可以有很多物体,往往需要建造大量完全不同类型的物体模型。②虚拟环境中有些物体有自己的行为,而其他图形建模系统中一般只有构造静态的物体,或是物体简单的运动。③虚拟环境中的物体必须有良好的操纵性能,当用户与物体进行交互时,物体必须以某种适当的方式来作出反应。VR系统包括三维视觉和三维听觉建模等。在当前应用中,环境建模一般主要是三维视觉建模。三维视觉建模又是可分为几何建模、物理建模、行为建模等。(1)几何建模技术几何建模技术主要研究对象是对物体几何信息的表示与处理,它是涉及表示几何信息数据结构,以及相关的构造与操纵数据结构的算法建模方法。几何建模通常采用以下4种方法:①利用VR工具软件来进行建模。②直接从某些商品图形库中选购所需的几何图形。③利用常用建模软件来进行建模。④直接利用VR编辑器。(2)物理建模技术典型的物理建模技术有分形技术和粒子系统。①分形技术分形技术是指可以描述具有自相似特征的数据集。分形技术的优点是用简单的操作就可以完成复杂的不规则物体建模,缺点是计算量太大,不利于实时性。因此,在VR系统中一般仅用于静态远景的建模。②粒子系统粒子系统是一种典型的物理建模系统,粒子系统是用简单的体素完成复杂的运动建模。(3)行为建模技术行为建模负责物体的运动和行为的描述。如果说几何建模是VR建模的基础,行为建模则真正体现出VR的特征。在虚拟环境行为建模中,建模方法主要有以下两种:①运动学方法运动学方法是通过几何变换,如物体的平移或旋转等来描述运动。②动力学仿真运动力学仿真运用物理定律而非几何变换来描述物体的行为。2.实时三维图形绘制技术实时三维图形绘制技术指利用计算机为用户提供一个能从任意视点及方向实时观察三维场的手段,它要求当用户的视点改变时,图形显示速度也必须跟上视点的改变速度,否则就会产生迟滞现象。(1)基于几何图形的实时绘制技术目前,用于降低场景的复杂度,以提高三维场景的动态显示速度的常用方法有以下几种:①预测计算。②脱机计算。③场景分块。④可见消隐。⑤细节层次模型。(2)基于图像的绘制技术基于图像的绘制技术(ImageBasedRending,IBR)是采用一些预先生成的场景画面,对接近于视点或视线议程的画面进行交换、插值与变形,从而快速得到当前视点处的场景画面。与基于几何的传统绘制技术相比,基于图像的实时绘制技术的优势在于:①图形绘制技术与场景复杂性无关,仅与所要生成画面的分辨率有关。②预先存储的图像(或环境映照)既可以是计算机生成的,也可以是用相机实际拍摄的画面,也可以两者混合生成。③对计算机的资源要求不高,可以在普通工作站和个人计算机上实现复杂场景的实时显示。基于图像的绘制技术主要有以下两种:①全景技术全景技术是指在一个场景中的一个观察点用相机每旋转一下角度拍摄得到一组照片,再在计算机采用各种工具软件拼接成一个全景图像。②图像的插值及视图变换技术根据在不同观察点所拍摄的图像,交互地给出或自动得到相邻两个图像之间对应,采用插值或视图变换的方法,求出对应于其他点的图像,生成新的视图。3.三维虚拟声音的显示技术把在虚拟场景中的能使用户准确地判断出声源的精确位置、符合人们在真实境界中听觉方式的声音系统称为三维虚拟声音系统。(1)三维虚拟声音的特征①全向三维定位特性全向三维定位特性(3DSteering)指在三种虚拟空间中,使用户能准确地判断出声源的精确位置,符合人们在真实境界中的听觉方式,如同在现实世界中。②三维实时跟踪特性三维实时跟踪特性(3DRealTimeLocalization)是指在三维虚拟空间中,实时跟踪虚拟声源位置变化或景象变化的能力。③沉浸感与交互性三维虚拟声音的沉浸感就是指加入三维虚拟声音后,能使用户产生身临其境的感觉,这可以更进一步使人沉浸在虚拟环境之中,有助于增强临场效果。而三维声音的交互特性则是指随着用户的临场反应和实时响应的能力。虚拟声音技术存在的问题:①听觉定位的混淆问题。②虚拟声音环境的可视化问题。③听觉心理学和听觉生理学的限制。(2)人类的听觉模型与头相关转移函数①人的听觉模型人类听觉系统用于确定声源位置和方向信息,它不仅与混响时间差和混响强度有关,更取决于对进入耳朵的声音产生频谱的耳廓。②头相关转移函数通过测量外界声音及鼓膜上的声音的频谱差异,得出相关的转移函数,并确定出双耳的信号传播延迟的特点,以此对声源进行定位。(3)语音识别与合成技术语音识别技术(AutomaticSpeechRecognition,ASR),是指将人说话的语音信号转换为可被计算机程序所识别的文字信息,从而识别出说话人的语音指令以及文字内容的技术。语音合成技术(TextToSpeech,TTS),是指将文本信息转变为语音数据,以语音的方式播放出来的技术。4.触摸和力量反馈技术触觉感知包括触摸反馈和力量反馈所产生的感知信息。触摸感知是指人与物体对象接触所得到的全部感觉,是触摸觉、压觉、振动觉、刺痛觉等皮肤感觉的统称。触摸反馈代表了作用在人皮肤上的力,它反映了人类触摸的感觉,或者是皮肤上受到压力的感觉;而力量反馈是作用在人肌肉、关节和筋腱上的力。限制触摸/力量反馈技术发展的几个技术问题:①技术分析比较复杂难度。②难以正确描述触觉。③性能要求较高。5.自然交互技术在计算机系统提供的虚拟空间中,人可以使用眼睛、耳朵、皮肤、手势和语音等各种感觉方式直接与之发生交互,这就是虚拟环境下的自然交互技术。在VR领域中较为常用的交互技术主要有手势识别、面部表情的识别以及眼动跟踪等。(1)手势识别手势是一种较为简单、方便的交互方式,系统只须跟踪用户手的位置以及手指的夹角就有可能通过已接收的手势下达指令。手势识别系统根据输入设备的不同,主要分为基于数据手套的识别和基于视觉(图像)的手语识别系统两种。(2)面部表情识别计算机面部表情的识别技术通常要分为3个步骤进行,即表情的跟踪、表情的编码和表情的识别。①面部表情的跟踪为了识别表情,首先要将表情信息从外界摄取回来。现阶段比较典型的例子是由Sim-Graphics开发的虚拟演员系统。②面部表情的编码要使计算机能识别表情,就要将表情信息以计算机所能理解的形式表示出来,即对面部表情进行编码。③面部表情的识别表情之间存在着相互渗透和融合,很难明确地划分为不同的种类。表情识别的分类判别树(3)眼动跟踪眼动跟踪技术的基本工作原理是利用图像处理技术,使用能锁定眼睛的特殊摄像机,通过摄入从人的眼角膜和瞳孔反射的红外线连续地记录视线变化,从而达到记录、分析视线追踪过程的目的。下表归纳了目前几种主要的视线追踪技术及特点6.碰撞检测技术在虚拟世界中关于碰撞,首先要检测到发生碰撞的位置,其次是计算出发生碰撞后的反应。(1)碰撞检测的要求①实时性②精确性(2)碰撞检测的实现方法①层次包围盒法②空间分解法。7.虚拟现实工具软件VR的软件系统是实现VR技术应用的关键。目前,在国内与国外已开发了很多VR系统软件工具,如WTK(WorldToolKit)、MR(MinimalRealityToolkit)、WorldVisions、FreeWRL、VRT(VirtualRealityToolkit)、DVES(DistributedVirtualEnviromentSystem)等,其中WTK是应用较多的一种。(1)WTK(WorldToolKit)它是一种简洁的跨平台软件开发系统,可用于科学和商业领域建立高性能的、实时的、综合三维工程。WTK开发系统由两部分构成:硬件部分和软件部分。硬件部分包括主机、图形加速卡、VR设备。软件部分实质是指集成了WTK函数库的C编辑器。WTK仿真循环程序流程图(2)MR(MinimalRealityToolkit)MR实质上是一个支持虚拟环境开发的子程序库。它包括3个层次的库函数:底层包括一组设备支撑函数包,每一函数包支持一种设备,并称为一个客户/服务器对。第二层是一组处理从设备获得的数据并将其转换为程序员方便使用的格式的库函数。最高层的库函数为程序员提供了一组打包的服务集。8.Web3D技术与软件(1)Web3D技术特点Web3D称为网络3D,是一种网络上带有交互性能实时渲染的三维技术,它的本质就是在网络上如何表现3D图形,是VR技术在网络上的应用。①Web3D的国际标准——VRML(X3D)②互联网3D图形的关键技术——实时渲染③交互性(2)Web3D应用工具软件常见的国内外软件有:Cult3D、Viewpoint、Java3D、GL4Java、Flatland、Fluid3D、Janet3D、Pulse3D、Shout3D、Sumea、Superscape、Vecta3D、Blaxunn3D、OpenWorlds等。①全景技术②VRML建模语言③Atmosphere④Shockwave3D技术⑤Cult3D技术⑥Viewpoint技术(3)Web3D应用与发展Web3D技术是针对互联网上的最新和最具应用前景的技术,今后几年必将在互联网上占有重要地位。从目前的趋势来看Web3D图形将在互联网上的应用主要有以下方面:①企业产品宣传与电子商务②娱乐休闲与游戏③多用户虚拟社区9.虚拟现实技术的总结在硬件系统方面,交互性是实现人机和谐的关键,改进硬件设备的性能则是其中的关键,而目目前为VR制造的大部分专用设备却普遍存在使用不便、效果有限等问题。在软件系统方面,首先应该为应用系统的开发提供一些更为简单、适用的生成工具。从应用系统的角度来看,VR的应用领域尚有待大力拓展。客观而论,目前VR技术所取得的成就,绝大部分还局限于计算机的接口能力。仅仅是刚刚开始涉及到人的感知系统和肌肉系统与计算机的交互作用问题,还根本未涉及”人在实践中所得到的感觉信息是怎样在人的大脑中存储和加工处理成为人对客观世界的认识”的过程。