胡睿婷 刁明光*
(中国地质大学( 北京) 信息工程学院,北京 100083)
随着城市建设的发展,室内建筑规模不断扩大,室内结构趋于复杂化,然而面向室内的位置服务尚不满足人们在室内公共空间的出行需求。现阶段各类室内电子地图存在以下四方面问题:
(1) 传统的二维地图导航可读性差,室内空间方向辨识度低,使用者难以根据二维地图准确判定当前位置与方向;
(2) 基于360街景技术的地图导航虽然提升了真实感与代入感,但其制作与更新成本高,实景的可维护性差,操作复杂,无法实现以位置更新为驱动的实景导航;
(3) 三维实景导航可以实现随位置更新变化场景,但其三维模型数据量大,建模成本高,且仍然保留实景导航存在的问题;
(4) 室内AR导航虽已经面向市场,但基于室内无线定位技术的AR导航仍无法摆脱定位困难的缺陷。由于GPS信号在穿透建筑物或其他阻挡时信号强度被削弱,其定位精度不满足室内定位精度的标准,一般不采用GPS方式进行室内定位;因此,现阶段主要的室内定位方式包含以下六种:Wi-Fi技术,蓝牙技术,红外线技术,超宽带技术,RFID技术和超声波技术。但对于移动设备,Wi-Fi技术,蓝牙技术,红外线技术的信号接收端容易受到其他信号的干扰,从而影响其定位精度,定位器的能耗也较高,稳定性差;而超宽带技术、RFID技术和超声波技术等虽然较前三种方法其定位精度更高,但由于特定硬件设备不便于整合到移动设备中,同时还需要大量部署底层硬件设施,总体成本都较高。
因此,本文针对上述问题设计并实现了一种基于AR标识追踪技术的室内导航系统,弥补了二维地图与实景地图缺陷的同时,避免使用现有无线定位技术,提升了定位精度,降低了基础设施铺设成本,兼顾了导航的高效性和实用性。
系统主要功能包括AR路径导航、地图场景切换和清除缓存。AR路径导航功能可通过AR标识追踪技术确定起始位置,反馈实时位置,并引导最短路径;场景切换用于初始化AR导航所在地图;清除缓存功能用于整理用户空间,有助于合理利用系统资源。其中AR路径导航为本系统核心模块。系统功能设计如图1所示。
图1 系统功能设计
AR模块以Dijkstra路径规划结果为输入,加载AR资源到缓存。导航过程中AR引擎持续从设备摄像机接收视频帧,捕捉画面中的自然特征点[1],再根据路径规划结果对图像进行重绘,从而达到在摄像机实景中放置3D引导模型的效果。AR模块业务流程如图2所示。
图2 AR模块业务流程
双重定位是指,每一个AR标识 (AR Tracker) 包含两个弱标记对象[1](以下简称标记),分别为NetRoad Tracker和Node Tracker。其中NetRoad Tracker用于快速定位视频帧中的路网节点标记,其元数据包括建筑物编号Building_ID和楼层编号Layer_ID,在导航过程中该标记全局加载,同一建筑物的同一楼层使用同一个NetRoadTracker;Node Tracker用于定位路径规划结果节点,其元数据包括该节点的实际地理位置X、Y以及唯一标识该节点的Node_ID,当且仅当该节点属于路径规划结果的子集及其相邻节点时将该标记被加载到缓存。采用双重定位的AR标识结构,可在缓存容量一定时,减少资源的加载量与加载时间,同时保证系统可以实现规划路径节点与非规划路径节点的辨别。
将AR标识铺设在室内路网的相应位置,组成可视的地理信息网,通过追踪AR标识获取当前位置所包含的地理意义,从而实现室内定位。追踪定位流程如图3所示,当计算机捕捉到NetRoad Tracker时,系统接收到标识反馈的建筑物编号、楼层编号数据,若同时捕捉到Node Tracker,则由Node_ID向系统上层查询该节点的其他地理信息,若为规划路径节点,则展现相应引导模型;若已偏离规划路径,此时应重新调起路径规划。
图3 追踪定位流程
根据建筑物的规模及其设计的复杂程度,其室内路网节点数量在百到万数量级之间,楼层间的节点数量也不一定相同,因此加载不同建筑,不同楼层的AR标识资源所需要的时间与空间成本是动态变化的。为了节约加载资源,采取静态加载NetRoadTracker,动态加载NodeTracker的方式,优先缓存必要的AR标识资源到缓存中,即先进行路径规划,根据Dijkstra法路径规划的结果,缓存所有规划路径节点及部分相邻节点,舍弃剩余无关节点资源,保证系统可以辨别规划路径节点与非规划路径节点的同时,提升系统性能和资源利用率。
由于室内空间有限,道路狭窄,而AR标识的识别率与实际图片大小呈正相关,且考虑到节点的位置价值,AR标识所代表的地理信息节点需要根据实际室内环境合理、均匀地铺设在可行走道路中轴线上。
在获取地理信息数据后,系统会根据当前路径规划结果在地面铺设的AR标识图形上生成3D引导模型,并辅以距离文字提示。
系统以MAXSTAR SDK为AR引擎开发工具测试导航效果。如图4所示,3D引导模型箭头所指方向即为当前位置在路径规划结果中,指向下一目的位置的相对方向。在单次导航过程中,仅该次路径规划结果节点子集所覆盖位置的AR标识位置展示引导模型。
图4 展示引导方向的AR模型
本文研究并分析了现阶段室内导航所使用的技术及其缺陷,利用在自然环境下的弱标记识别技术进行室内定位,并结合OpenGL2.0在视频帧画面中渲染3D引导模型,实现非无线定位的室内AR导航。
未来将以丰富AR标识模型、优化海量资源缓存算法为研究方向,提升导航效率,扩展应用场景,持续推动智能化出行的建设与发展。