论文部分内容阅读
摘要:大规模虚拟场景在互联网的传输延迟一直以来是困扰着Web3D的瓶颈问题。为了突破传输瓶颈,一方面针对大规模虚拟场景数据进行预处理,通过轻量化,细粒度化等预处理降低每次传输的数据量,另一方面基于WebRTC技术实现浏览器端的对等传输,提高了传输速度。
关键词: Web3D; WebRTC; 对等传输;轻量化
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2018)10-0039-02
Abstract: Transmission delay of large scale virtual scenes is usually a bottleneck problem of Web3D application. To solve the transmission bottleneck, on the one hand, applying lightweight preprocessing and fine-grained preprocessing to decrease data size of each transmission, on the other hand, using WebRTC to implement P2P transmission to increase the transmission rate.
Key words:Web3D; WebRTC; P2P transmission; lightweight preprocessing
1 引言
Web3D是通过互联网进行虚拟的三维立体展示并可互动浏览操作的一种虚拟现实技术。如今Web3D技术已在互联网上有了不少的应用,如虚拟旅游,虚拟博物馆网页游戏等。一方面随着虚拟场景的规模越来越大,相应的数据量越来越大,所需的传输时间就越长,尤其是较多用户同时访问的时候,另一方面用户对于加载时间要求很高,尤其是在浏览器端,几秒钟场景如果没有加载好,用户就可能将网页关闭,因此数据量大,高并发的Web3D应用面临着传输瓶颈,利用P2P架构进行对等传输是一个解决传输瓶颈的有效方案。P2P充分利用用户节点的资源,提升传输速度并且降低了服务器端的负载。WebRTC(Web Real-Time Communication)技术能建立一个浏览器与浏览器之间的信道,这个信道可以发送任何数据,使得浏览器端对等传输成为可能。
2 Web3D对等传输关键技术
2.1 大规模虚拟场景预处理
大规模虚拟场景数据量巨大,需要对场景进行预处理,降低传輸时的数据量。一方面场景数据进行分析,利用可重用的单元,去除场景中冗余数据,有效降低场景传输时所需的数据量。另一方面由于用户漫游时的视野有限,只需先传输周围场景数据并及时渲染,随着用户虚拟化身的变化逐渐下载场景增量,进一步降低了每次传输的数据量。
2.1.1 场景轻量化
3D模型往往存在着可重用的单元,它们只是方向和空间位置不一样,所以可以通过对一些模型单元旋转,缩放,平移得到另一些模型单元[1]。图1中吊灯包括许多形状大小完全一致的灯具,金属管线材料,灯架等部分,它们均以吊杆为柚心,按照一定的角度有规则的摆放着。如果不进行轻量化建模处理,将传输大量重复的3D 模型单元。通过轻量化的处理,灯具的模型简化为一个灯具实体,灯架也简化为一幅灯架,场景中存在多个相同灯具也只需要传输一个灯具,传输的模型数据量极大减少。因此,轻量化预处理对原始数据进行构件层面的语义分析,几何重复性检测和重复性冗余去除,减少了整个场景的冗余数据。
图1 吊灯模型的轻量化处理
2.1.2 基于空间分割的场景细粒度化
场景中存在着大量建筑物,不仅内外部数据遮挡明显,且理论上每栋建筑物又可以被分解为多个楼层,各楼层内部又可以分解为多个空间。建筑信息模型BIM(Building Information Modeling)数据中包含语义信息,根据前期解析得到相应的楼层(Storey)和空间(Space)对象,分析这两种对象的地板(Slab)及顶部(Covering)构件对其进行验证并形成初步的构筑物空间结构;其次获取整个构筑物地板等特殊构件,结合初步空间结构进行进一步的楼层分析,形成整个建筑物的楼层分布情况以及楼层间的连通关系,最后在每个楼层内部,结合初步空间结构进行进一步的楼层内连通关系分析,形成整个建筑物的室内子空间划分及连通关系结构图[2]。
场景漫游时,用户的视野是有限的,只会对于其周围场景感兴趣,因此只要传输和加载用户虚拟化身周围的可见对象即可满足当前漫游要求。视锥是指场景中摄像机的可见的一个锥体范围,在视锥体内的景物可见,反之则不可见。根据用户虚拟化身当前所在位置判断出其所在子空间并计算出当前视锥内的物体,可进一步减低了加载的数据量,在实时漫游过程中始终都能用来对当前视点范围内需要加载的数据量进行有效控制,实现场景数据的渐近式传输和加载。
2.1.3 渐进式网格
渐进式网格(Progressive Mesh, PM)也是当前复杂模型传输时的常用手段。利用了人眼观察事物的清晰程度与距离成反比的这一客观事实,当物体距离用户虚拟化身较远时粗糙,较近时细致。在对于场景中一些复杂的、在低带宽时无法实时传输的模型进行PM预处理,将原始模型处理成含有较少数据量的基网络和增量网格两部分。在进行场景漫游时,首先处理基网络数据,并在后续的漫游过程中,通过根据视点位置增加相应的增量网络来实时调整该模型的精度。使得整个漫游过程中,不仅不影响用户体验质量,做到增量数据的按需处理。
关键词: Web3D; WebRTC; 对等传输;轻量化
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2018)10-0039-02
Abstract: Transmission delay of large scale virtual scenes is usually a bottleneck problem of Web3D application. To solve the transmission bottleneck, on the one hand, applying lightweight preprocessing and fine-grained preprocessing to decrease data size of each transmission, on the other hand, using WebRTC to implement P2P transmission to increase the transmission rate.
Key words:Web3D; WebRTC; P2P transmission; lightweight preprocessing
1 引言
Web3D是通过互联网进行虚拟的三维立体展示并可互动浏览操作的一种虚拟现实技术。如今Web3D技术已在互联网上有了不少的应用,如虚拟旅游,虚拟博物馆网页游戏等。一方面随着虚拟场景的规模越来越大,相应的数据量越来越大,所需的传输时间就越长,尤其是较多用户同时访问的时候,另一方面用户对于加载时间要求很高,尤其是在浏览器端,几秒钟场景如果没有加载好,用户就可能将网页关闭,因此数据量大,高并发的Web3D应用面临着传输瓶颈,利用P2P架构进行对等传输是一个解决传输瓶颈的有效方案。P2P充分利用用户节点的资源,提升传输速度并且降低了服务器端的负载。WebRTC(Web Real-Time Communication)技术能建立一个浏览器与浏览器之间的信道,这个信道可以发送任何数据,使得浏览器端对等传输成为可能。
2 Web3D对等传输关键技术
2.1 大规模虚拟场景预处理
大规模虚拟场景数据量巨大,需要对场景进行预处理,降低传輸时的数据量。一方面场景数据进行分析,利用可重用的单元,去除场景中冗余数据,有效降低场景传输时所需的数据量。另一方面由于用户漫游时的视野有限,只需先传输周围场景数据并及时渲染,随着用户虚拟化身的变化逐渐下载场景增量,进一步降低了每次传输的数据量。
2.1.1 场景轻量化
3D模型往往存在着可重用的单元,它们只是方向和空间位置不一样,所以可以通过对一些模型单元旋转,缩放,平移得到另一些模型单元[1]。图1中吊灯包括许多形状大小完全一致的灯具,金属管线材料,灯架等部分,它们均以吊杆为柚心,按照一定的角度有规则的摆放着。如果不进行轻量化建模处理,将传输大量重复的3D 模型单元。通过轻量化的处理,灯具的模型简化为一个灯具实体,灯架也简化为一幅灯架,场景中存在多个相同灯具也只需要传输一个灯具,传输的模型数据量极大减少。因此,轻量化预处理对原始数据进行构件层面的语义分析,几何重复性检测和重复性冗余去除,减少了整个场景的冗余数据。
图1 吊灯模型的轻量化处理
2.1.2 基于空间分割的场景细粒度化
场景中存在着大量建筑物,不仅内外部数据遮挡明显,且理论上每栋建筑物又可以被分解为多个楼层,各楼层内部又可以分解为多个空间。建筑信息模型BIM(Building Information Modeling)数据中包含语义信息,根据前期解析得到相应的楼层(Storey)和空间(Space)对象,分析这两种对象的地板(Slab)及顶部(Covering)构件对其进行验证并形成初步的构筑物空间结构;其次获取整个构筑物地板等特殊构件,结合初步空间结构进行进一步的楼层分析,形成整个建筑物的楼层分布情况以及楼层间的连通关系,最后在每个楼层内部,结合初步空间结构进行进一步的楼层内连通关系分析,形成整个建筑物的室内子空间划分及连通关系结构图[2]。
场景漫游时,用户的视野是有限的,只会对于其周围场景感兴趣,因此只要传输和加载用户虚拟化身周围的可见对象即可满足当前漫游要求。视锥是指场景中摄像机的可见的一个锥体范围,在视锥体内的景物可见,反之则不可见。根据用户虚拟化身当前所在位置判断出其所在子空间并计算出当前视锥内的物体,可进一步减低了加载的数据量,在实时漫游过程中始终都能用来对当前视点范围内需要加载的数据量进行有效控制,实现场景数据的渐近式传输和加载。
2.1.3 渐进式网格
渐进式网格(Progressive Mesh, PM)也是当前复杂模型传输时的常用手段。利用了人眼观察事物的清晰程度与距离成反比的这一客观事实,当物体距离用户虚拟化身较远时粗糙,较近时细致。在对于场景中一些复杂的、在低带宽时无法实时传输的模型进行PM预处理,将原始模型处理成含有较少数据量的基网络和增量网格两部分。在进行场景漫游时,首先处理基网络数据,并在后续的漫游过程中,通过根据视点位置增加相应的增量网络来实时调整该模型的精度。使得整个漫游过程中,不仅不影响用户体验质量,做到增量数据的按需处理。