虚拟现实技术及应用VirtualReality郝泳涛博士haoyt@vip.sina.com同济大学CAD研究中心副教授2007年上海第二章虚拟现实技术的技术体系结构2.1虚拟现实技术的体系结构体系结构输入处理器渲染处理器用户模拟处理器虚拟世界数据库模拟处理器VR的核心程序处理:控制交互、对象动作和决定虚拟世界的状态。渲染处理感觉传输到用户视觉听觉触觉(触摸/力)实时图像生成SGI图形工作站虚拟世界数据库设计的主体部分隶属虚拟世界的对象信息描述动作的脚本用户信息灯光效果程序控制硬件设备支持OOD技术虚拟现实建模语言(VRML)VirtualRealityModelingLanguageVRML是在因特网上建立虚拟现实的开放标准AVRMLcylinder#VRMLV2.0utf8#ACylinderShape{appearanceAppearance{materialMaterial{}}geometryCylinder{height2.0radius1.5}}Cylinder.wrl2.2虚拟现实的多感知系统体系和技术系统活动形式感受单元器官模拟器官行为剌激物外部信息方向感姿势及方向调整机械及重力感受器前庭器官身体平衡重力及加速度重力或加速度方向听觉听机械感受器耳蜗器官声音定位空气振动振动方向及性质触觉触摸机械、热量及动觉感受器皮肤、关节、肌肉及腱各种探查活动组织变形、关节配合及肌肉纤维紧张物体表面粘性及冷热等各种状态味觉尝化学及机械感受器嘴品尝物体化学性质营养及生化价值嗅觉嗅化学感受器鼻以鼻吸气气体化学性质气味性质视觉看光学感受器眼睛凝视、扫描等活动光大小、形状、纹理及运动等J.J.Gibson总结的感知系统人类的感知系统系统目的应用相关系统调整姿势适应重力及加速度维持身体平衡前庭器官定向通过部分身体运动获得外部剌激考察或感觉各种信息所有相关感觉走动通过身体运动进入其它环境从一个位置走到另一个位置定向及调整姿势饮食通过部分身体运动获取或给予吸收或排除品尝、吸收及其它身体功能行动有利于个人的行为操作、自我保护等走动及相关行为表达用于表达、表明或识别姿势、面部或语言表达语言表达、聆听及面部表情语义用信号通知或表达语言表达基于信号的相关系统行为系统人类的行为系统行为感知参与者行为系统感知系统外界环境人与环境的关系虚拟现实系统(传感器)(信号源)BOOM双筒全方位监视器多感知系统技术框图一个示例:virtualcockpit、视觉生成技术1.1视觉生成基本原理:光线跟踪的方法假设从视点V通过屏幕象素e向场景投射光线交场景中的景物于P1,P2,…,Pm,那么离视点最近的P1就是画面在象素点e处的可见点,象素e的光亮度应由P1点向P1V方向辐射的光亮度决定。如此求出视域内每一个象素的光亮度,则可生成一幅完整的真实感图象。e光线跟踪技术(raytracing)I=Ic+tsIs+ttIt其中:I:可见点P处的光亮度。Ic:局部光照亮度tsIs:环境镜面反射光亮度ttIt:规则透射光亮度每一点的光亮度求法视觉生成的基本内容在图形设备上生成逼真视景必须完成四个基本任务:1.用数学方法建立所需要三维场景的几何描述2.将三维几何描述转换为二维视图这可通过对场景的透视变换来完成。3.确定场景中的所有可见面这需要使用隐藏面消除算法将视域之外的或被其他物体遮挡的不可见面消去。4.计算场景中可见面的光强与颜色严格地说,就是根据基于光学物理的光照模型计算可见面投射到观察者眼中的光亮度大小和色彩,并将它转换成合适图形设备的颜色值,从而确定投影画面上每一个象素的颜色,最终生成视景。1.2视景的几何建模与表示方法要实现虚拟现实,首先要尽可能详细地表示虚拟现实的场景几何信息。例如:表示虚拟环境中的山川河谷、鱼虫鸟兽,花草树木、五官躯体、车船路桥等。实现虚拟现实视景的表示方法有:多边形(三角形)网格表示方法结构立体几何表示方法体数据表示方法(volume-basedmethod)多边形(三角形)表示方法这种方法又称为表面或边界表示方法,即物体的立体几何信息是通过它们的边界面或包围面来表示的。而物体的边界面或包围面(即物体的表面)可以用多边形表示。结构立体几何表示方法这种方法又称为体积表示方法。这种表示方法中,物体被表示为一个三维体积基元的集合及它们之们的布尔运算:并、交及差。U\Volume-basedmethods表示单元为体素(voxel)每个体素表示了所在位置的颜色、密度等相关信息。其他建模与表示技术(VR相关)细节层次(LevelsofDetail:LOD)技术纹理映射(texturemap)技术纹理映射技术(texturemapping)在视景表示时,对于有些细节,不需要建立相应的多边形表示,为了达到很好的视觉效果,只需要建立简单的几何模型,然后在几何模型的面上贴上对应的逼真图片就可以了。这种方法称为纹理映射方法。这不仅增加了场景的逼真度,而且减少了表示场景的多边形数目。映射纹理前的场景映射纹理后的场景纹理映射技术(示例)1.3立体显示技术单目视域双目重叠视域单目视域基本原理:人的视觉系统可以通过四种线索得到深度知觉:侧视网膜图象差(lateralretinalimagedisparity);运动视差(motionparallax);图象大小差异(differentialimagesize);纹理梯度(texturegradient)。目前的立体显示技术基本上是基于双目视差原理实现的。影响(沉浸感)立体视觉因素•宽视野(180X150)•立体显示•彩色•高分辨率•头部跟踪主要视觉设备:红蓝滤色眼镜液晶开关的立体视眼镜三维头盔显示器(HMD)双筒全方位监视器(BOOM)墙式显示屏自动声象虚拟环境(CAVE)头盔式显示器(HeadMountedDisplay,HMD)头盔RGB-NTSCRBG-NTSC计算机系统扫描转换器左眼计算右眼计算双路VR系统图形硬件图形硬件HMD实物与原理图头盔显示器HeadMountedDisplay,HMD眼睛显示器镜窥视孔合成器外部世界头盔实现方法1校正透镜阴极射线管连接的光导纤维束校正透镜合成器带有光导纤维的HMD的原理HMD的实现方法美国icuiti公司分辨率:VGA(640X480)价格69800日圆(约合人民币5235元)距离眼睛1cm,画面相当于2米外42英寸屏幕厚度2cm,重量70g支持连接DVD播放器、桌面电脑等电源使用3节AA电池,可以连续播放5小时左右。VideoEyewear眼镜式显示器BOOMBinocularOmni-OrientationMonitorBinocularOmniOrientationMonitor(BOOM)CAVECaveAutomaticVirtualEnvironment://www.ipo.tue.nl/homepages/mrauterb/presentations/HCI-history/sld076.htmCyberSphereFullyImmersiveSphericalProjectionSystemIllustrationoftheSphericalProjectionSystemtheFullyImmersiveSphericalProjectionSystem://www.evl.uic.edu/pape/CAVE/idesk/paper/://www.evl.uic.edu/pape/CAVE/idesk/paper/、声音生成技术听觉3D&Stereo声源定位:强度(高频)和时差(低频)问题:声音从头里发出,随强度差而偏左或偏右原因:与耳朵形状有关解决:Convolvotron($15,000)耳内录音+计算3触觉与力觉生成技术3.1触觉与力觉反馈设备Therearetwomaintypesofhapticdevices:devicesthatallowuserstofeeltexturesof2-dementionalobjectswithapenormouse-typeinterfacegloveorpen-typedevicesthatallowtheusertotouchandmanipulate3-dementionalvirtualobjects触觉(Haptic)Haptic:机械感受器(压力与纹理)与本体感受器(proprioceptor)(重量、形状、大小)机械臂,空气囊,记忆金属,小马达,小探针第二代TeletactII装有更高分辨率的指尖空气室,其余部分的空气室更大,并提供手掌反馈系统。很大的手掌空气室允许用户使劲握物体,然后接收刺激。TeletactII与TeletactI使用相似,只是空气室由20增加到30个。在中指尖、食指尖和拇指区域空气室密度较大,空气室也被放在手的背部,以产生手接触物体的感觉。手掌空气室侧空气室远程触觉空气室ARRC力学反馈手套笔式力量感知器PHANTOM®Omni™HapticDeviceⅡRMⅡ像一付手套似的戴在用户的手上。主要结构包括一个小平台,上面架着四个特制的汽缸。每个汽缸轴的顶端都和相应的指尖相连接,轴和指尖的连接通过“Y”形的连接物。一个简单的细皮手套被作为传感器/反馈系统的支持结构。CyberGrasp数据手套DHM手势传感装置原理图4、身体位置跟踪身体跟踪位置的跟踪(位置+方向)及角度的度量(指关节、光纤)眼动跟踪位置跟踪技术:正交电磁场Polhemustrackers超声波信号Logitec.MattelPowerGlove机械连接FakeSpaceLabs视频信号处理MyronKruegerLED视频传感UNCatChapelHill惯性跟踪(加速度)SpaceballPowerGlove示意图三维鼠标器示意图基于运动跟踪的方法一种人体运动记录回放的方法关键:数据的转换基于运动跟踪的方法基于运动跟踪的方法记录点的坐标转换成旋转角驱动虚拟角色运动重定向基于运动跟踪的方法虚拟现实系统:virtualcockpit