虚拟现实技术主讲:杨文晖第三章虚拟现实的计算机技术◇课前索引◇第一节虚拟现实的计算机体系结构◇第二节虚拟现实的软件系统◇第三节虚拟现实的网络和通讯◇章节小结◇课后习题〖课前思考〗1.哪些计算机用于VR?2.常用工具软件有什么特点?3.分布式仿真中的网络和通讯有什么特点?〖学习目标〗1.了解不同类型VR用计算机的组成和特点。2.了解工具软件的要求和功能,了解分布式仿真。3.了解网络和通讯的硬件、软件。〖学习指南〗1.注意VR用计算机提高速度的措施。2.注意工具软件的功能及对比。3.注意分布式仿真中的网络和通讯的主要问题。〖难重点〗1.注意帧频和延迟的要求。2.注意不同类型VR用计算机的组成结构。3.注意VR用计算机的并行处理技术构。4.注意工具软件的要求。5.注意工具软件的功能。6.注意常用工具软件的对比。7.注意各类网络结构的对比。8.注意软件质量的要求和保证措施。9.注意分布式仿真的特点。1虚拟现实的计算机体系结构虚拟现实的计算机体系结构特点,可以从以下几方面讨论:1.虚拟现实对计算机系统的要求2.基于PC的虚拟现实机器的组成结构3.基于工作站的虚拟现实机器组成结构4.高度并行的虚拟现实机器组成结构虚拟现实对计算机系统的要求问题?1.前面我们讲解了哪些虚拟现实技术指标?位姿、视觉、听觉、力觉触觉显示等2.为什么当前的虚拟现实计算机,主要完成视觉显示的计算任务。?原因是:I.位姿传感器的数据处理,一般不在主计算机进行,而是由专用的电子设备完成。II.听觉显示,力觉触觉显示,研究工作和实际应用还较少,对其计算要求的认识还较少。听觉显示和力觉触觉显示的计算,往往由专用计算机完成。问题二:视觉显示对计算机系统的要求有哪些?1.帧频和延迟时间的要求2.计算能力和场景复杂性视觉显示对计算机系统的要求---帧频和延迟时间VR对计算机系统有怎样的帧频和延迟处理要求?为什么?VR要求高帧频和快速响应这是由于其内在的交互性质决定的。两个概念:帧频来自动态图像技术。在动图像显示中,每一帧实际上是静止照片。如果新照片快速接替旧照片,连续播放就产生连续运动的幻觉。修改率是在屏幕上的显示改变的速率。为符合基本的动图像技术,理想的修改率是每秒20帧(新图像)。针对计算机硬件,帧频有几个含义:a.图形的帧频b.计算的帧频c.数据存取的帧频哪种帧频是最重要的?为什么?为了维持在VR中的临场和沉浸感,图形帧频是关键。1.这些帧频可能是独立的,图像场景可能变化,而没有来自用户视点运动的计算和数据存取。这时,图形的帧频大于计算的帧频和数据存取的帧频。经验表明,图形帧频率应尽可能高,低于每秒10帧的帧频严重降低临场的幻觉。2.如果图形显示依靠计算和数据存取,则计算和数据存取帧频必须为8到10帧/秒,维持用户看到时间演化的幻觉。什么情况下,希望VR尤其应该具备快速响应?如果应用允许交互控制,就要求快速响应。长响应时间(滞后时间,延迟时间)最直接的影响是什么?严重降低用户性能。响应时间的通常恒量值是多少?多于几毫秒的延迟会影响用户性能,而多于0.1秒的延迟有严重影响。请例举一个响应时间影响用户性能的例子延迟时间是如何计算的?①从用户的动作开始(如用户转动头部),经过位姿传感器感知用户位姿,②把位姿信号传送给计算机,计算机计算新的显示场景③把新的场景传送给视觉显示设备,直到视觉显示设备显示出新的场景为止。影响延迟的因素这些延迟在计算机系统中来自很多因素造成:1.如数据存取时间2.计算时间3.绘制时间4.输入/输出设备的数据处理时间类似帧频的情况,将延迟的来源进行划分:1.数据存取2.计算3.图形显示问题:如果系统有高帧频,其延迟就相对会小,正确与否?错误虽然延迟与帧频有关,但它们不同。系统可能有高帧频,但同时可能会有较大的延迟时间,显示的图像和提供的计算结果是几帧以前的。VR系统中,帧频和延迟的最低要求由什么决定?要求的帧频和延迟一般取决于环境特性。只有慢速运动物体,较静的环境,可以用帧频每秒8至10,和0.1秒延迟。如果环境中有高速运动的物体,则要求高帧频和短延迟。所有情况下,若帧频低于每秒8帧,则失去三维环境的生动感,若延迟大于0.1秒,则很难操作环境。因此,帧频必须大于8到10帧/秒,总延迟必须小于0.1秒。视觉显示对计算机系统的要求---计算能力和场景复杂性为什么说虚拟现实仿真的计算问题,是一种时间受限的计算这是因为显示的帧频必须大于8到10帧/秒。于是,在0.1秒内,必须完成一次场景的计算。用什么表示场景的复杂性?用什么能够表示计算能力?如果一个显示的场景中有10,000个三角形(或多边形),这个数量就反映了场景复杂性。这样,在每秒进行的10次计算中,就应该计算100,000个三角形(或多边形)。这表示了计算能力。计算能力和场景复杂性的折衷问题?若要求更加逼真的仿真效果,就要增加场景复杂性。显示的场景中有更多的三角形(或多边形),显示的效果就更逼真。这就要求更强的计算能力,每秒计算更多的三角形(或多边形)。反之,如果只能使用能力有限的指定的计算机,则限定了计算能力,也就限定了场景复杂性。每个场景,只能用较少的三角形(或多边形),产生较粗糙的显示。图中表示,波音747-400飞机的两种复杂性不同的三维模型。(a)中的模型有520个顶点,406个多边形。(b)中的模型有7694个顶点,7556个多边形。效果图说明了明显的逼真度差别。图中表示,人体骨骼的两种复杂性不同的三维模型。(a)中的模型有8979个多边形(b)中的模型有131275个多边形。效果图说明了明显的逼真度差别。问题?1.对于VR计算机,主要的技术指标就是其计算能力,用什么恒量计算能力?每秒计算的三角形(或多边形)的数目。2.讨论计算能力时应该注意的问题?是否加纹理,是否反走样,采用哪一种明暗模型,都会影响到计算能力。加入这些复杂的功能,就会增加计算复杂性,从而减少每秒计算的三角形(或多边形)的数目。什么是计算机生成图像时的“走样”现象?用离散量(像素)表示连续的量(图形)而引起的失真,称为走样,或称为混淆即:由于采样不充分重建后造成的信息失真产生走样的原因?这是因为直线、多边形、色彩边界等是连续的,而光栅则是由离散的点组成,在光栅显示设备上表现直线、多边形等,必须在离散位置采样光栅图形的走样现象有哪几种?1.锯齿形边2.图形细节或纹理绘制失真3.狭小图形遗失:动画序列中时隐时现,产生闪烁VR里,通常存在前两种反走样?用于减少或消除这种效果的技术,就称为反走样(antialiasing)反走样的方法:基本上反走样方法可分为两类。1、提高分辨率即增加采样点(提高采样频率)。什么叫超采样或后置滤波?CRT光栅扫描设备显示非常精细光栅的能力是有限人们通常是在较高分辨率上对光栅进行计算,然后采用某种平均算法(滤除高频分量)得到较低分辨率的象素的属性,并显示在分辨率较低的显示器上。这种方法称为。2、把像素作为一个有限区域,对区域采样来调整像素的亮度,以光顺边界来减小锯齿现象。这种方法等价于图像的前置滤波。关于明暗模型光照模型可用于任何表面上任一可见点。通过计算该点处的表面法线方向及应用光照模型即可确定此点的光照明暗程度。处理多边形集合或多面体时,如果整个表面都这样依次计算每点的光照明暗度,所需的耗费就太大了。因此,需要采取一些有效的方法对整个表面的明暗度进行处理。对多边形和多边形网格的基本明暗处理方法有三种:1.常数明暗处理法2.Gourand明暗处理算法:3.Phong明暗处理算法1.常数明暗处理法2.Gourand明暗处理算法:3.Phong明暗处理算法•三种算法的具体内容?常数明暗处理模型当我们处理多边形集合或多面体时,常数明暗处理模型对每个多边形只计算一个光照强度值,然后用此值作为整个多边形平面的明暗值赋给多边形的每个象素,使多边形的每个点都具有相同的明暗度,这种方法称为常数明暗法或平面明暗法(Flat)。如果使用多边形来作为曲面的近似时,常数明暗处理就很难得出满意的光滑图形。当把曲面离散成许多小的平面多边形时,若离散度较粗,在光照的表面上使用常数明暗处理后,两个相邻的多边形会显出凸起或凹陷的折痕,在连接处就显得比周围处亮或暗,这就是所谓的马赫带效应。Gourand明暗处理算法Gourand在1971年提出了光强度插值明暗算法该算法较好地消除了用常数明暗法处理光强度的不连续性,但是在明暗强度函数的斜率急剧变化处仍可看到马赫带效应。即Gourand明暗算法不能完全消除光强度的不连续性。Gourand明暗算法的基本思想是在各多边形的公共顶点处,用前面得到的光照较准确地计算各顶点的反射光的明暗度。而对于各多边形内部各点的明暗度,则使用线性插值法计算各点的明暗度。Gourand明暗处理算法简单,一般可以得到较满意的光滑表面。它的缺点是除了马赫带效应外,在用周围多边形法线来计算共有顶点的法线时,如果得到相邻顶点的法线平行如图9-9,采用线性插值法计算出平面上各点的明暗值时会得到:各平面上的明暗值相同,图形会出现一块光亮的平坦区域。Phong明暗算法又称为法线矢量明暗算法。该方法是将多边形顶点处的法线矢量进行线性插值计算以得到多边形内各点的法线,然后用此插值计算各点的光照明暗度,因而Phong明暗算法的计算量要大于Gourand明暗算法的计算工作量。Phong算法较好地模拟了局部范围内的表面弯曲度,得到了很好的曲面效果,尤其在镜面反射的高光区显得很真实。即使不是镜面反射情况,Phong明暗算法的效果也明显地优于Gourand算法。这是因为它在每点进行了光照模型的计算,因而大大地减轻了马赫带效应。但是由于每次插值计算后的法线矢量在代入光照模型前都需要单位化,因而也大大地增加了计算工作量。VR对计算机系统的要求图形学和计算机硬件的进展对全真实的VR是关键因素。硬件开发方面需要在几个档次上进行,为什么?1.由于广泛的兴趣2.不同性能要求的大量应用由高档多模式工作站低档的只有适当三维视觉能力的个人工作站。将来的高档VE系统有哪些硬件要求?具有高计算要求的计算机结构。这些机器必须有1.很大的物理存储2.多个高性能向量处理机3.高带宽(500Mbytes/s)4.低延迟(0.03s)5.巨型存储设备6.和对各种输入输出设备的高速接口。物理建模和可视化计算将是计算需求的推动力。基于PC的虚拟现实机器的组成结构让一般公众接受虚拟现实的最佳途径?Grimsdale[1992]指出,让一般公众接受虚拟现实将通过“发展”,而不是“革命”。发展意味着升级现有的计算基础,产生虚拟现实要求的新功能。利用PC平台的优点是价格低最初的PC平台的虚拟现实机器:在1992年推出了低级的基于486的虚拟现实机器它有头部跟踪器、HMD、3-D声音、图形加速器和手柄,价格少于20000美元。1994年,低级的基于PC的系统价格约3300美元(跟踪球200美元,Cyberscope200美元,软件工具盒900美元,486-PC2000美元)。图形硬件图形硬件指的是什么?是那些使图形绘制加速的硬件设备。图形硬件涉及到哪些?1.图形流水线2.图形卡的AGP和PCI3.图形加速器4.Add-ons图形流水线图形流水线的作用:包括把三维物体由其自身坐标系变换到用于显示的二维屏幕空间所需要的计算器。这个过程涉及到的步骤1.第一步是把物体由其自身坐标系变换到描述整个场景的世界坐标系。2.第二步是剔除在场景中不必显示的物体,减少计算量,这是计算过程优化。3.第三步是在模型中引入颜色和明暗等性质。4.第四步,场景再作另一个变换到屏幕空间。最后光栅化为象素,并且显示。在这个过程中,计算是在多个区域内进行。很多计算在CPU进行,但是多数矩阵运算是在图形加速器中进行。图形卡的AGP和PCI图形卡的AGP和PCI总线。数据总线会影响到图形卡的性能。PCI是标准的计算机内部总线。总线把计算机的插入卡(网络卡,图形卡等)连接到CPU。PCI总线