增强现实技术应用架构_第1页
增强现实技术应用架构_第2页
增强现实技术应用架构_第3页
增强现实技术应用架构_第4页
增强现实技术应用架构_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

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

文档简介

1增强现实技术应用架构5/8/2024应用架构01、增强现实架构第九章2增强现实技术应用架构5/8/20249.1应用架构简介一个完整的增强现实应用,不仅需要一个感知和反馈的用户终端,还需要一个能够处理大量计算、正确感知真实世界、准确解读用户意图的服务器端。在深度学习愈发普遍的情况下,大部分计算量大的流程都是依靠服务器进行处理,再通过网络通信传输到客户端。3增强现实技术应用架构5/8/20249.1应用架构简介一般情况下,服务器会分为两类:门户服务器与场景服务器。1门户服务器负责用户管理、场景管理、数据资产管理等功能。2场景服务器负责实时状态同步、场景交互、云渲染等功能。4增强现实技术应用架构5/8/20249.1应用架构简介如图所示的所有设备是在搭建、部署、使用一个增强现实应用中所需的基本设备,包括服务器、客户端、网络通信设备等。5增强现实技术应用架构5/8/20249.1应用架构简介1传感设备可以采用传统的计算机输入设备如鼠标键盘,也可以用语音识别、手势识别、动作捕捉等技术对用户的输入信息进行采集。之后将采集到的数据通过客户端计算单元进行相应处理反馈到反馈设备,如体感眼镜、手套等设备。2门户应用服务器和场景应用服务器分别从数据库服务器和数字资产服务器获取信息,在服务器端生成虚拟世界,与语音/视频消息应用服务器,在5G网络、WIFI、LAN的环境下,与用户方进行相互交互。

在AR应用所需的基本设备中:6增强现实技术应用架构5/8/20249.11通信机制本系统计划采用客户端-服务器模式,即由两部分组成:一个服务器和多个客户端7增强现实技术应用架构5/8/20249.11通信机制

系统通信机制特点:1服务器组件将为多个客户端组件提供服务。客户端从服务器请求服务,服务器为这些客户端提供相关服务。此外,服务器持续侦听客户机请求。网络状况不同时:1、在网络延时<100ms,多人交互、人物交互流畅无问题。3、在网络延时超过300ms以上的情况下,用户体验会非常糟糕,物体移动会出现迟滞或跳跃。2、网络延时100~300ms,用户可明显感知到延时,但仍可交互。根据不同的交互场景,如果只是漫游类则可正常进行;如果有关键事件,例如击打等,则需要进行延时预估,对交互物体的移动速度进行调整。8增强现实技术应用架构5/8/20249.11通信机制2通信部分将采用TCP+UDP的混合通信模式。TCP将负责客户端状态表的同步,而UDP则负责实时的流通信(例如语音、视频等)。状态表设计如图所示,每次分发状态表时,仅分发和上次同步状态表的差异部分,以此减少网络带宽的消耗。9增强现实技术应用架构5/8/20249.12门户服务器逻辑架构门户服务器的职能较为简单,通过网络通信层与客户端和场景服务器进行交互,管理数据库和资产库。1资产库中主要包括场景、角色、模型、动画、材质等信息。2数据库采用MySQL或sqllite,保存资产模型所对应的数据表。3用户模块中包含用户信息,资产模块中包含模型和材质、动画等信息,场景模块中包含用户搭建的场景信息。10增强现实技术应用架构5/8/20249.12门户服务器逻辑架构门户服务器的开发可以采用云端MySQL数据库,使用云端存储功能,保存数据库和资产库,使用J2EE框架开发用户模块、资产模块、场景模块,搭载在云服务器上。使用TCP协议与客户端和场景服务器进行交互。11增强现实技术应用架构5/8/20249.13场景服务器逻辑架构场景服务器通过网络通信层与门户服务器和客户端进行交互。1交互逻辑层中包含用户与用户、用户与场景之间交互所涉及到的模块,角色可以搭建自己的场景,摄像机可以跟随角色进行相应的运动,角色进行抓取、拖拽等动作对物体进行操纵。2反馈逻辑层给予用户操作的反馈信息,通过渲染画面、场景中的音效、体感设备的触觉反馈、菜单窗口的提示,分别给予我们视觉、听觉、触觉方面的反馈信息。12增强现实技术应用架构5/8/20249.13场景服务器逻辑架构3三维场景层就涉及到场景表达、物理引擎、粒子系统和光照渲染方式。4场景服务器通过TCP协议与门户服务器交互,通过RTSP协议与客户端进行交互。场景服务器中的三维场景表达可以采用glTF格式,物理引擎采用Bullet/PhyX等引擎,使用Effekseer粒子系统制作特效,光照渲染使用WebGL/OpenGL/Vulkan等。13增强现实技术应用架构5/8/20249.14客户端逻辑架构客户端通过网络通信层与门户服务器和场景服务器进行交互。14增强现实技术应用架构5/8/20249.13场景服务器逻辑架构

客户端通信简要说明:客户端通过TCP/UDP等协议与门户服务器交互,通过RTSP协议与场景服务器进行交互。反馈数据表达层中,场景画面通过视频推流的方式从服务器端将图像传递到客户端,减少了客户端渲染的压力。场景音效使用SDL,界面菜单使用QT,肢体触觉方面将会寻求自主研发的道路。15增强现实技术应用架构5/8/2024应用架构02、增强现实主要功能第九章16增强现实技术应用架构5/8/20249.2AR应用的主要功能1数字资产创建、加载、保存2数字资产权限管理3场景漫游式交互4场景编辑式交互5用户间交互17增强现实技术应用架构5/8/20249.2AR应用的主要功能01数字资产创建、加载、保存增强现实核心功能是将虚拟场景和现实场景叠加。因此,增强现实应用的核心功能之一是要能够创建虚拟场景。常见的方式是载入预存的场景模板。另一种重要的数字资产是用户的虚拟形象。数字资产的创建可从外部(例如U盘,网络等)获取,也可以直接在增强现实场景内创建。个性化的角色形象也可以通过其他方式(基于图像、深度相机等)创建与真实用户一致的个性形象。18增强现实技术应用架构5/8/20249.2AR应用的主要功能建议场景保存为glTF(GLTransmissionFormat)格式。glTF是一种3D内容的格式标准,由KhronosGroup管理(KhronosGroup还管理着OpenGL系列、OpenCL等重要的行业标准)。19增强现实技术应用架构5/8/20249.2AR应用的主要功能

glTF特点:1glTF的设计是面向实时渲染应用的,尽量提供可以直接传输给图形API的数据形式,不再需要二次转换。2glTF对移动端的渲染引擎OpenGLES、WebGL非常友好。20增强现实技术应用架构5/8/20249.2AR应用的主要功能华为有提出一款多功能3D编辑器RealityStudio。它提供了3D场景编辑,动画制作和事件交互等功能,帮助您快速打造3D可交互场景。可广泛用于教育培训、电商购物、娱乐等诸多行业的XR内容开发。21增强现实技术应用架构5/8/20249.2AR应用的主要功能02数字资产权限管理在商业级别的增强现实应用中,虚拟场景等数字资产一般归属不同用户。因此,需要将场景相关操作加入权限管理模式。一般在服务器端,通过明确每个用户对场景的不同权限,确保场景的隐私和合作模式。常见权限划分为:浏览基本信息、漫游场景、编辑场景。22增强现实技术应用架构5/8/20249.2AR应用的主要功能03场景漫游式交互场景漫游是增强现实的一个重要功能。鼠标键盘和平板触控技术成熟,可首先考虑作为场景漫游的交互手段。另外,较为新颖的漫游手段包括利用手势、头盔、真实行走、眼球跟踪等。其中前三者通过控制虚拟摄像机的变换矩阵实现,眼球跟踪通过场景内的交互式渲染实现。23增强现实技术应用架构5/8/20249.2AR应用的主要功能在漫游模式下,主要分为视野、增强渲染和触觉三种交互。触觉式交互将在未来作为新的交互方式加入进来。新的交互方式,如其他的运动捕捉系统,可通过视野交互和增强渲染两个的通用接口来实现兼容。24增强现实技术应用架构5/8/20249.2AR应用的主要功能04场景编辑式交互在增强现实场景下,除了基础的漫游式交互,用户很多情况下还需要编辑物体、场景的属性。编辑交互的核心是选择物体、编辑属性。基本的物体交互功能包括选择物体、抓取物体、编辑物体、触碰物体。25增强现实技术应用架构5/8/20249.2AR应用的主要功能04场景编辑式交互在增强现实场景下,除了基础的漫游式交互,用户很多情况下还需要编辑物体、场景的属性。编辑交互的核心是选择物体、编辑属性。基本的物体交互功能包括选择物体、抓取物体、编辑物体、触碰物体。26增强现实技术应用架构5/8/20249.2AR应用的主要功能04场景编辑式交互实现交互的方式有多种,包括手势交互、键盘、触摸屏、鼠标等成熟技术。为了实现通用性,可以将针对物体的交互封装为三种不同的交互类,即选择、抓取、编辑,通过其他方式完成的交互,只要能对接这三种类的接口即可。利用其它新设备、新方式提供的编辑交互,最终都通过顶层的编辑交互类进行实现。27增强现实技术应用架构5/8/20249.2AR应用的主要功能05用户间交互在一个多人协同的增强现实场景下,还需要开发面向用户间协同的功能。其中,部分核心功能包括语音聊天、语音消息、文字消息等。在更高级的情况下,触觉等方式进行交互是未来的发展趋势。用户间交互相对独立,可考虑成熟的语音和文字SDK,便于集成。28增强现实技术应用架构5/8/2024收集设备检测平面信息的反馈。根据反馈当中的距离、角度、和位置数据这些信息,我们就可以建立起设备相对定位的3D模型。当在不同的设备间分享这些数据的时候,设备将获得识别彼此位置的能力。解决方案29增强现实技术应用架构5/8/20249.2AR应用的主要功能什么是Anchors?虚拟物体在现实世界中的固定位置就是Anchors,有了这个锚点,虚拟物体就不会发生偏移,可以很好的贴合在现实环境中。要形成一个Anchors,首先需要一个SLAM系统提供相机的位置,通过相机扫描现实位置放置虚拟物体,虚拟物体的位置就会形成一个anchors,它包括了一个物理位置和一堆视觉特征。用户A首先将本地anchor和anchor周围局部的视觉信息(比如特征点、线等),上传到云端,云端通过处理并生成三维点云信息,生成cloudanchors,同时返回其对应的ID,该ID可以共享给其他用户。其他用户(例如用户B,C等)通过该ID访问已有的cloudanchors,ARCore将本地的视觉信息上传到云端服务器,云端服务器尝试将接收的视觉信息与云端cloudanchor对应的的三维点云进行对齐,从而将多个用户的位置和姿态统一到同一坐标系下。30增强现实技术应用架构5/8/2024应用架构03、服务器端概念架构第九章31增强现实技术应用架构5/8/20249.3.1应用逻辑层该层主要包括接收客户端发来的消息,调用对应模型,触发相关的消息机制。消息种类包括:1场景类:场景打开、新建、删除、保存等。2信息类:用户更新个人、场景、系统属性。3状态类:需要同步的状态,包括角色动作、物体属性、注视点等。4模型类:用户更新包括模型、材质、纹理等。5消息类:用户间发送的消息。 32增强现实技术应用架构5/8/20249.3.1应用逻辑层针对不同的资产数据类型,建立对应的模型类,用于处理不同的消息请求,包括系统、场景、角色、动画、纹理、材质、图片、文本等。其中数据库将针对上述的各类资产,建立对应的数据表,储存相关信息。33增强现实技术应用架构5/8/20249.3.2资产数据层该层主要包括数字资产和数据库管理。其中各种资产的文件格式拟采用如下方案:1场景:glTF,用以描述场景中所有信息,包括角色,物体,灯光,摄像机等。2角色:glTF,用以描述角色的模型、纹理、材质、骨骼等信息。3三维模型:保存为glTF的BIN,同时接受fbx,ma/mb/3ds等格式,通过插件转化为BIN。4动画:动画轨迹保存为json格式,或采用glTF中的BIN格式。34增强现实技术应用架构5/8/20249.3.2资产数据层该层主要包括数字资产和数据库管理。其中各种资产的文件格式拟采用如下方案:1场景:glTF,用以描述场景中所有信息,包括角色,物体,灯光,摄像机等。2角色:glTF,用以描述角色的模型、纹理、材质、骨骼等信息。3三维模型:保存为glTF的BIN,同时接受fbx,ma/mb/3ds等格式,通过插件转化为BIN。4动画:动画轨迹保存为json格式,或采用glTF中的BIN格式。35增强现实技术应用架构5/8/20249.3.2资产数据层5纹理:模型的纹理贴图保存为.jpg/.png图片格式,以实现精度更高、视觉感强的外观。6材质:基于真实感光照的材质模型保存为json格式。7图片:场景中利用到的一般图片保存为.jpg/.png图片格式,包括展示图片、场景截图等。8文本:包括系统日志、用户对话及其他相关配置,均可保存为文本文件,采用json格式。36增强现实技术应用架构5/8/20249.3.2资产数据层数据库拟采用MySQL或sqllite。一方面是针对上述模型建立对应的数据表,保存相关信息和链接,另一方面用于保存包括用户基本信息、日志等。37增强现实技术应用架构5/8/2024应用架构04、客户端概念架构第九章38增强现实技术应用架构5/8/20249.4客户端概念架构该架构(如图)主要是将传感器数据采集、交互逻辑规则和反馈生成分离。该架构一方面可屏蔽底层传感器的差异性,允许多种传感器收集同一信号;另一方面可屏蔽输出平台的差异,兼容虚拟现实、增强现实、PC、平板等多种平台。客户端概念架构结构图39增强现实技术应用架构5/8/20249.4.1传感设备驱动层这个模块主要包括传感器API层和传感器接口层。其中后者主要是为了制定统一的数据接口,用于兼容不同的传感器设备。传感器类别:鼠标、键盘、触摸板、运动捕捉系统、眼球跟踪、RGB摄像机、RGBD摄像机、数据手套、麦克风、头盔/眼镜内置IMU等等。40增强现实技术应用架构5/8/20249.4.1传感设备驱动层

传感器数据类型:1菜单交互事件类:打开、选择、关闭菜单等操作,用于改变物体属性、修改系统选项、打开保存退出场景等。可通过鼠标、键盘、触摸板、手势、麦克风等实现。2物体交互事件类:点击、抓取、释放物体等操作。可通过鼠标、键盘、触摸板、手势、麦克风等实现。3角色实时动作类:获取真实用户的运动(表达为标准三维骨骼的运动信息)。可通过运动捕捉系统、RGB摄像机、RGBD摄像机、数据手套等实现。41增强现实技术应用架构5/8/20249.4.1传感设备驱动层

传感器数据类型:1菜单交互事件类:打开、选择、关闭菜单等操作,用于改变物体属性、修改系统选项、打开保存退出场景等。可通过鼠标、键盘、触摸板、手势、麦克风等实现。2物体交互事件类:点击、抓取、释放物体等操作。可通过鼠标、键盘、触摸板、手势、麦克风等实现。3角色实时动作类:获取真实用户的运动(表达为标准三维骨骼的运动信息)。可通过运动捕捉系统、RGB摄像机、RGBD摄像机、数据手套等实现。42增强现实技术应用架构5/8/20249.4.1传感设备驱动层

传感器数据类型:4角色固定动作类:基于用户输入,触发角色固定动作库中的某个动作。可通过运动捕捉系统、RGB摄像机、RGBD摄像机、数据手套等实现。5角色眼球跟踪类:捕捉人眼位置,获取视野注意点。可通过眼球跟踪设备获取,在缺少眼球跟踪设备情况下,也可采用角色实时动作类中的头部朝向或内置IMU模块代替。6用户间通信消息类:不同用户之间的交流,包括语音和文字等。可通过鼠标、键盘、触摸板、麦克风等实现。43增强现实技术应用架构5/8/20249.4.2传感数据表达层这个模块核心作用就是基于用户输入,调用对应的交互模型,用于生产合适的反馈,或与服务器进行通信。交互逻辑类别:(1)场景漫游:允许用户视野在虚拟场景中进行漫游,通过鼠标键盘、操纵杆、真实行走等方式,改变摄像机的位置和方向。(2)角色模型:允许用户自定义角色模型,通过线下定制线上导入、线上实时扫描等方式,制作个性化的角色模型。(3)角色动画:基于运动捕捉等系统的数据输入,驱动虚拟角色的骨骼动画。44增强现实技术应用架构5/8/20249.4.2传感数据表达层(4)物体选择:基于实体/虚拟键盘、鼠标、语音、手势选择等输入,转化为物体选择操作。(5)物体抓取:基于实体/虚拟键盘、鼠标、语音、手势选择等输入,转化为物体抓取操作。(6)物体编辑:基于实体/虚拟键盘、鼠标、语音、手势选择等输入,转化为物体编辑操作,包括缩放、旋转、平移、纹理等属性。45增强现实技术应用架构5/8/20249.4.2传感数据表达层(7)用户视点:基于眼球跟踪、运动捕捉中头部朝向等输入信息,获取用户视点,通过服务器传递给其他用户,激活场景中的增强渲染。(8)菜单操作:基于实体/虚拟键盘、鼠标、语音、手势选择等输入,定义包括系统设置、场景参数设置、场景新建、载入、保存、删除等交互命令。(9)语音通信:为用户之间提供语音通信的交互方式。语音输入由本地麦克风获取,通过语音通信API,发送到对方。(10)文本通信:为用户之间提供文本通信的交互方式。46增强现实技术应用架构5/8/20249.4.3反馈数据表达层客户端部分通过传感设备驱动层获取用户的信息,传递给传感数据表达层,并最终传递给网络通信层进行相应的处理。处理之后的信息发送给反馈数据表达层,表达出来之后,反馈给反馈设备驱动层,通过具体设备表现出来。47增强现实技术应用架构5/8/20249.4.3反馈数据表达层在客户端的反馈方式上,输出硬件包括常见的显示设备,包括MicrosoftHoloLens、手机平板等。在前端的显示框架上,已经有开源

温馨提示

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

评论

0/150

提交评论