-
移动增强现实[1](mobile augmented reality,MAR)技术以其强化表达和方便携带的特点弥补了传统手段的局限[2-3],为灾害可视化领域注入了新的活力[4-7]。利用MAR进行灾害可视化需要结合多源数据,数据量和计算量的提升对移动设备的硬件机能提出了挑战。但当前针对MAR可视化的场景调度尚无相关研究。因此,研究在兼顾视觉质量的同时实现灾害的MAR可视化,对于提升场景表现力和灾害认知有重要意义。流技术常用于缓解多媒体数据传输时的延迟[8]。近年来,有研究开始把地理信息数据传输调度和流技术结合,如使用流传输BitTorrent遥感影像[9]、利用流式传输在多级带宽下构造多分辨率地形[10]、将流和环境模型耦合用于实现灾害应急响应中模型信息的快速计算[11]等。在地形渲染方面,多细节层次模型(level of detail,LOD)技术也在模型构造[12]、模型层次计算[13]等方面广泛应用。
综上,本文提出了一种基于流的场景加载优化方法,使用LOD模型构建场景并拆分为数据流,通过传输策略控制数据调度,实现灾害MAR可视化场景的快速稳定加载,并开发了一个部署在Microsoft HoloLens上的原型系统。
-
灾害可视化场景的构建基础是资产,主要包括地形和地物两类模型。地形资产从高程、影像、材质和纹理等素材创建,地物资产则由第三方模型创建而来。场景资产创建流程如图 1所示。
-
流式加载的基本思想是将一个完整的、难以一次性处理的计算任务分解成若干个小任务,以此降低计算负荷。基于流的场景加载优化方法如图 2所示,分为3个基本步骤:场景构建、数据存储和场景加载。
-
本文选用LOD模型来管理不同视距下三维对象显示的精度变化。具体做法如图 3所示:首先制作不同细节级别(LOD 0~LOD 3, 其中数字表示不同精度,LOD 0为最高精度层级)的场景模型,配准后放置于场景中的同一位置。根据用户与场景对象的距离变化确定模型显示的精度级别。
用户与场景对象的距离可以用对象边界框高度和屏幕高度的比值来间接表示。令边界框高度和屏幕高度的比值为p (p∈[0, 1]),并设p值的变化节点为p1、p2和p3。如表 1中,当1≥p > p1时,显示最高精度LOD 0级别的场景模型;当p1≥p > p2时,显示LOD 1级别对应的模型;当p2≥p > p3时,显示LOD 2级别对应的模型;当p3≥p≥0时,模型不会被渲染显示。
表 1 不同p值下LOD显示级别
Table 1. LOD Display Level Under Different p Values
p值域 显示级别 1≥p > p1 LOD 0 p1≥p > p2 LOD 1 p2≥p > p3 LOD 2 p3≥p≥0 LOD 3 -
对场景数据进行拆分可以实现场景的快速更新。当浏览范围变更后,无需对所有资源进行修改即可完成场景的更新。场景块形状多为三角形、正方形或六边形(如图 4所示)。由于数字高程模型的规则性特点,本文选择正方形作为场景块的基本形状。将场景等分为若干正方形的块,并保存资产和场景块之间的对应关系,为数据调用提供依据。
在流系统中,场景块数据被定义为具有相同数据类型的有序集。对于移动平台来说,数据压缩可以有效节省存储容量和网络带宽压力。Lempel-Ziv4(LZ4)算法是一种基于自适应字典的无损压缩算法,属于LZ77算法[14]的变体。在众多压缩算法中,它并不以压缩比见长,但在速度方面极为出色[15-16]。同时,它使用基于块的压缩/解压缩机制,允许将数据以“块”的方式被处理。因此本文选用LZ4算法来压缩场景数据,能够避免因为等待压缩包完全解压而造成的性能损耗。
-
场景加载方式由传输策略决定。对于三维场景来说,传输策略往往以用户视点为中心[17],根据用户视线焦点变化读取相应数据。在场景漫游中,用户在水平方向上的浏览需求变化远大于在垂直方向上的变化。该情况下,使用水平方向上的用户位置变化代替视线焦点变化,可以在较低的计算开销下,获得近似的视觉效果[18]。因此,本文使用基于用户位置的九宫格策略作为加载策略。
该策略以用户为中心的9个场景块作为浏览范围。运行时仅渲染这9个场景块。考虑到在漫游时用户移动轨迹总是线性的,当浏览范围变动时,会出现一个公共区域,重复卸载和加载这些公共区域是对资源的浪费,因此还建立了一个场景块缓冲池。
如图 5所示,在场景加载时,以用户当前所在位置为中心,大小为5×5的场景块资源被调用,但仅渲染九宫格范围内的场景块。预加载场景块(图 5中编号为3的场景块)被存入缓冲池中。这些数据会在用户位置改变后被取出并渲染。场景更新过程如图 6所示,每次场景变动时,仅对除公共区域外的场景块做加载或卸载操作。相比于操作整个九宫格,这一方式需要的运算资源仅为前者的2/3。
-
对于MAR应用来说,画面稳定十分重要。每秒帧数(frames per second,FPS)是评价可视化效果的常用指标。同时,由于硬件性能和网络带宽的影响,数据传输过程中会出现操作中断的现象,影响用户体验。因此本文选取FPS和单次加载时长作为衡量画面稳定性、用户舒适度和数据加载质量指标,评价标准为FPS≥60,单次加载时长不超过5 s。短暂的数据加载空档可以回避用户对于操作中断的感知,合适的FPS能够带来稳定的画面。
-
本文使用Microsoft HoloLens一代开发者版本作为测试及部署硬件平台。开发硬件环境为Dell, Intel (R) Xeon (R) CPU E3-1240v6@3.70 GHz,16 GB内存,软件开发采用Unity3D 2017。数据使用了黑龙江省哈尔滨市地理信息产业园模型以及江西省瑞金市地形影像数据。
-
为测试本文提出方法的实际效果,本文通过令摄像机飞掠过整个场景来测试优化方法的实际效率。实验对比了使用优化方法前后的场景运行变化,以及在不同数据量情况下优化方法的实际性能,已验证基于流的场景加载优化方法是否能够应对不同数据量情况下的数据传输渲染问题。
-
实验使用数据量为1 GB的原始场景来测试优化方法的影响,其结果如图 7所示。由图 7可知,不使用优化方法,场景启动时,FPS出现一次波动,下降到55然后回归到60。运行时,FPS迅速下降至3.9,持续数秒后立即恢复至60。使用优化方法,场景启动时,FPS下降至48,然后稳定在60左右,迅速下降现象消失。运行期间,FPS出现若干次规律性的下降,最低值为46.8。
图 7 相同数据量下,使用优化方法对每秒帧数的影响(1 GB)
Figure 7. Frames per Second of Optimized Method Under Same Data Volume(1 GB)
使用优化方法后的单次数据加载时长结果如图 8所示。场景启动后共发生15次数据加载行为,平均用时2.54 s,其中最高用时4.04 s,最低用时1.00 s。
-
为测试优化方法的鲁棒性,实验选取了2 GB、10 GB、20 GB、50 GB 4种数据量情况,以测试优化方法在不同数据量情况下的性能,结果如图 9和图 10所示。
图 9 不同数据量下,使用优化方法对每秒帧数的影响
Figure 9. Frames per Second of Optimized Method Under Different Data Volume
图 10 不同数据量下,使用优化方法对单次加载时长的影响
Figure 10. Single Loading Time of Optimized Method Under Different Data Volume
图 9为4种数据量情况下的FPS变化, 其中黑色曲线代表观测值,红色曲线代表平均值。可以看到,4种情况下的FPS平均值分别为59.42、59.54、59.51和59.57。其中,在场景启动阶段,4种情况下FPS数值均出现了短促波动,最低值为49,见图 9(a)。此外,4种情况下均出现了FPS数值规律性下降的情况,最高值为58.7,见图 9(a),最低值为45,见图 9(d)。
图 10显示了4种数据量情况下的单次加载时长结果。从图 10中可以看到,每种情况中,应用场景均发生了15次数据加载行为。其中单次加载时长的平均值分别为2.17 s、2.04 s、2.07 s和1.95 s。4种情况下,最高用时4.05 s,最低用时0.97 s,见图 10(b),任一单次加载时长均小于5 s。
-
本文在实现基于流的场景加载优化方法基础上,开发了一个灾害MAR可视化原型系统,对火灾和洪水两种灾害进行了模拟(如图 11所示),并使用HoloLens设备进行了测试。其中,火灾场景选用黑龙江省哈尔滨市地理信息产业园的火灾试验场作为实验区域。洪水灾害场景选用江西瑞金作为研究区域,该区域构建的洪水灾害场景数据量更大,用于测试优化方法的实际效果。
如图 12所示,优化方法被用于场景飞行漫游模块。其中摄像机代表用户视角,用户在场景中飞行时,仅加载用户视野内的部分。当用户位置发生变化,系统会按照既定的传输策略,从数据缓存池中动态加载需要被展示的场景数据,并卸载旧数据。
-
实验对比了使用优化方法前后场景的运行效果,以及不同数据量情况下优化方法的性能。可以看到:在不使用优化方法时,如图 7(a)所示,场景启动后,FPS出现一次小幅波动,然后迅速下降至3.9,最后回升至60。首次波动是由于场景启动导致的卡顿,而FPS迅速下降是因为场景加载需要的算力超出了硬件算力,此时场景已无法正常运行。而FPS逐渐回升是由于操作系统自动结束了超负荷的计算进程,使得FPS数值回归到60;而使用优化方法后,如图 7(b)所示,FPS总体上稳定在60左右。FPS规律性下降是因为受限于带宽和硬件,每次加载数据时FPS都会小幅下降。同时由于飞行速度和场景块大小是固定的,所以数据加载的时间间隔基本一致,最终使FPS表现出如图 7(b)所示的规律性下降情况。从图 8可以看到,单次加载时长平均值为2.54 s,任一单次加载时长均小于5 s,因此可以认为方法是有效的。
不同数据量情况下优化方法的性能呈现出相似的结果。如图 9所示,在数据加载阶段,4种情况下FPS表现出与图 7(b)结果相同的规律性下降,且平均值基本持平。由图 10可知,4种情况下的单次加载时长平均值基本一致,且任一单次加载时长均小于5 s。由此可以认为,在固定场景块大小的前提下,基于流的场景加载优化方法能够应对不同数据量情况下的数据传输渲染问题。
-
本文主要研究了灾害MAR可视化中的场景加载问题,提出了一种基于流的场景加载优化方法。通过实验得到以下结论:(1)基于流的场景加载优化方法能够解决因数据复杂导致的灾害场景加载困难问题。(2)在不同数据量的情况下,优化方法均能够保持相同的处理效率,意味着方法具有良好的鲁棒性,因此基于流的场景加载优化方法是有发展前景的。
同时本文工作也存在一些不足, 由于受设备能力限制,固定了场景块的大小,使得用户的观察范围受到限制,可能会导致用户对于灾害认知不足。未来将考虑把本方法应用到更多实际灾害场景案例[19]和不同的MAR设备,以提升实际应用效果。
Optimization Method of Disaster Scene Loading Under Mobile Augmented Reality Visualization
-
摘要: 地理信息可视化分析是灾害研究的重要手段,而移动增强现实(mobile augmented reality,MAR)为可视化注入了新的活力。灾害MAR可视化通常会涉及到多源数据的处理,这对移动设备的性能提出了挑战。为实现灾害移动增强可视化场景的流畅稳定加载,提出了一种基于流的场景加载优化方法。该方法利用多细节层次模型(level of detail,LOD)构建基础场景,拆分压缩后存储于服务器。客户端按照需要向服务器请求数据,然后依据传输策略控制数据的调度,并采用缓存机制缓解加载时的计算压力。同时搭建了一个原型系统用于测试方法的性能。实验结果表明,提出的优化方法可以实现灾害MAR可视化场景的快速加载,突破了Microsoft HoloLens设备的数据量限制,并在不同数据量的情况下表现稳定。Abstract: Geographic information system(GIS) visualization analysis is an important method for disaster research, and mobile augmented reality (MAR) brings new vitality into GIS visualization.MAR visualization of disaster scenes usually needs to process multi-source and massive data, which challenges the performance of MAR device. To achieve smooth and stable loading capability for MAR visualization of disaster scenes, we proposed a flow-based optimization method for disaster scene loading. First, a MAR scene was split and compressed by the level of detail(LOD) method, then the scene data were stored on a data server. When a MAR client browsed data in a determined area, our optimized method can help to request the data from the server, and control the data loading by using our designed transmission strategy and alleviate the bandwidth pressure through our designed caching mechanism. A prototype system was built to test the performance of the optimized method. Experimental results show that the optimized method can achieve fast loading performance for MAR visualization of disaster scenes, and breakthrough the data volume limit on HoloLens device, and succeed stably under different data volume.
-
Key words:
- mobile augmented reality /
- disaster visualization /
- streaming loading /
- data transmission
-
表 1 不同p值下LOD显示级别
Table 1. LOD Display Level Under Different p Values
p值域 显示级别 1≥p > p1 LOD 0 p1≥p > p2 LOD 1 p2≥p > p3 LOD 2 p3≥p≥0 LOD 3 -
[1] Azuma R. A Survey of Augmented Reality[J]. Presence: Teleoperators & Virtual Environments, 1997, 6(4): 355-385 http://ci.nii.ac.jp/naid/10020199382 [2] 林珲, 游兰, 胡传博, 等.时空大数据时代的地理知识工程展望[J].武汉大学学报·信息科学版, 2018, 43(12): 2 205-2 211 doi: 10.13203/j.whugis20180318 Lin Hun, You Lan, Hu Chuanbo, et al. Prospect of Geo-Knowledge Engineering in the Era of Spatio-Temporal Big Data[J]. Geomatics and Information Science of Wuhan University, 2018, 43(12): 2 205-2 211 doi: 10.13203/j.whugis20180318 [3] 申申, 龚建华, 李文航, 等.基于虚拟亲历行为的空间场所认知对比实验研究[J].武汉大学学报·信息科学版, 2018(11): 1 732-1 738 doi: 10.13203/j.whugis20170083 Shen Shen, Gong Jianhua, Li Wenhang, et al. A Comparative Experiment on Spatial Cognition Based on Virtual Travel Behavior[J]. Geomatics and Information Science of Wuhan University, 2018, 43(11): 1 732-1 738 doi: 10.13203/j.whugis20170083 [4] Sangmin P, Soung P, Lee P, et al. Design and Implementation of a Smart Iot Based Building and Town Disaster Management System in Smart City Infrastructure[J]. Applied Sciences-Basel, 2018, 8(11):2 239 doi: 10.3390/app8112239 [5] Tsai M, Yau N. Using Augmented-Reality and Mobile Three-Dimensional Graphics Techniques in Relief Work on Radiological Disaster Sites[J]. Nuclear Technology & Radiation Protection, 2013, 28(3): 332-340 http://smartsearch.nstl.gov.cn/paper_detail.html?id=8a53cc9aa6dbd56f620e047a9266d5f2 [6] Dai F, Dong S, Kamat V, et al. Photogrammetry Assisted Measurement of Interstory Drift for Rapid Post-Disaster Building Damage Reconnaissance[J]. Journal of Nondestructive Evaluation, 2011, 30(3): 201-212 doi: 10.1007/s10921-011-0108-6 [7] Ferrari V, Megali G, Troia E, et al. A 3-d Mixed-Reality System for Stereoscopic Visualization of Medical Dataset[J]. IEEE Transactions on Biomedical Engineering, 2009, 56(11): 2 627-2 633 doi: 10.1109/TBME.2009.2028013 [8] Zhang D, Shen R, Ren J, et al. Delay-Optimal Proactive Service Framework for Block-Stream as a Service[J]. IEEE Wireless Communications Letters, 2018, 7(4): 598-601 doi: 10.1109/LWC.2018.2799935 [9] 夏辉宇, 孟令奎, 娄书荣. BitTorrent的影像流式传输模型研究[J].测绘学报, 2013, 42(2): 225-232 http://www.wanfangdata.com.cn/details/detail.do?_type=perio&id=chxb201302010 Xia Huiyu, Meng Lingkui, Lou Shurong. Research on Spatial Image Streaming Model Based on BitTorrent[J]. Acta Geodaetica et Cartographica Sinica, 2013, 42(2): 225-232 http://www.wanfangdata.com.cn/details/detail.do?_type=perio&id=chxb201302010 [10] 杜金莲, 张雪.三维地形模型流式传输方法[J].计算机应用, 2010, 30(10): 2 661-2 664 http://www.wanfangdata.com.cn/details/detail.do?_type=perio&id=jsjyy201010027 Du Jinlian, Zhang Xue. Method for Streaming Transmission of 3D Terrain Model[J]. Journal of Computer Application, 2010, 30(10): 2 661-2 664 http://www.wanfangdata.com.cn/details/detail.do?_type=perio&id=jsjyy201010027 [11] Shangguan B, Yue P, An Z, et al. A Stream Computing Approach for Live Environmental Models Using a Spatial Data Infrastructure with a Waterlogging Model Case Study[J]. Environmental Modelling & Software, 2019, 119: 182-196 http://www.zhangqiaokeyan.com/academic-journal-foreign_other_thesis/0204113135749.html [12] Leite F, Akcamete A, Akinci B, et al. Analysis of Modeling Effort and Impact of Different Levels of Detail in Building Information Models[J]. Automation in Construction, 2011, 20(5): 601-609 doi: 10.1016/j.autcon.2010.11.027 [13] Sanzharov V, Frolov V. Level of Detail for Precomputed Procedural Textures[J]. Programming and Computer Software, 2019, 45(4): 187-195 doi: 10.1134/S0361768819040078 [14] Ziv J, Lempel S. A Universal Algorithm for Sequential Data Compression[J]. IEEE Transactions on Information Theory, 1977, 23(3): 337-343 doi: 10.1109/TIT.1977.1055714 [15] Liu W, Mei F, Wang C, et al. Data Compression Device Based on Modified LZ4 Algorithm[J]. IEEE Transactions on Consumer Electronics, 2018, 64(1): 110-117 doi: 10.1109/TCE.2018.2810480 [16] Santos B, Cruz N, Fernandes A, et al. Real-Time Data Compression for Data Acquisition Systems Applied to the ITER Radial Neutron Camera[J]. IEEE Transactions on Nuclear Science, 2019, 66(71): 1 324-1 329 http://arxiv.org/abs/1806.04671 [17] 施松新.大规模流域三维可视化研究[D].杭州: 浙江大学, 2007 Shi Songxin. 3D Visualization Research of Large-area River Valley[D]. Hangzhou: Zhejiang University, 2007 [18] 马照亭, 潘懋, 胡金星, 等.一种基于数据分块的海量地形快速漫游方法[J].北京大学学报(自然科学版), 2004, 40(4): 619-625 http://www.wanfangdata.com.cn/details/detail.do?_type=perio&id=bjdxxb200404018 Ma Zhaoting, Pan Mao, Hu Jinxing, et al. A Fast Walkthrough Method for Massive Terrain Based on Data Block Partition[J]. Acta Scientiarum Naturalium Universitatis Pekinensis, 2004, 40(4): 619-625 http://www.wanfangdata.com.cn/details/detail.do?_type=perio&id=bjdxxb200404018 [19] 吕奕杰, 叶健, 徐清杨, 等.面向大规模滑坡灾害模拟的地形建模与三维可视化[J].武汉大学学报·信息科学版, 2020, 45(3): 467-474 doi: 10.13203/j.whugis20180486 Lü Yijie, Ye Jian, Xu Qingyang, et al. A Large-Scale Landslide Hazard Simulation-Oriented 3D Terrain Modeling and Rendering Approach[J].Geomatics and Information Science of Wuhan University, 2020, 45(3): 467-474 doi: 10.13203/j.whugis20180486 -