方锦浩 韩旭龙 卢一凡 梁毅强
摘要:本文首先对比了选取的ORB-SLAM算法与其余AR效果算法,总结了其优势和缺点;简述了项目实现所用到的关键技术,即在ORB-SLAM2下运行ros例程,并在其上叠加虚拟物体;同时将目前已有的地下管道实时显示成果中使用SLAM算法的与使用ARToolkit工具做对比,说明SLAM算法更适用于本项目的户外环境。
关键词:增强现实;ORB-SLAM
引言:
增强现实技术(AR),也被称为混合现实技术。它通过计算机程序,将真实的环境和虚拟的信息实时地叠加,在同一个画面或空间同时存在。增强现实技术可以提供超过人类感知的信息,将现实世界信息与虚拟信息相互补充、相互叠加[1]。ORB-SLAM是2015年出的比较完整的基于关键帧的单目SLAM算法,其定位精确度很高,且可以实时运行[2],其最大的优点是计算速度快,但构建的特征点云图相对稀疏。
本论文主要针对地下管线的虚拟增强现实监控技术的实现讨论ORB-SLAM在AR领域的优势。该技术是一种将管道信息和真实环境融合到同一个屏幕空间的实时显示技术。其需要研究的核心问题是如何准确的将管道信息和真实环境融合以及如何实现增强现实管道图像叠加的实时性。
一、AR底层算法选取。
首先在AR效果实现算法的选取上,现有的技术有使用ARToolkit的AR工具包、使用OpenCV和c++结合、利用python的BAR4Py框架实现或使用我们项目中使用的SLAM算法。接下来我们就这几种实现方式做讨论。
(一)ARToolKit与ORB-SLAM对比
ARtoolkit的实现步骤是:程序初始化----抓取一帧进行视频的输入----然后探测标示卡----计算摄像头的转移矩阵----绘制虚拟物体----关闭视频捕捉[8]。首先在平台的选取方面,ARToolKit拥有方便快捷,支持面广,可以提供的快速和准确的标记跟踪等优点,但是ARToolKit是基于计算机视觉的注册方式,依赖于形状规则的标志物,在复杂环境下很难适应[3],不适合直接应用于户外增强系统的开发,需要做进一步的改进,所以需要与GPS RTK和INS结合合进行精确定位,保证一定的定位精度[5]。
ORB-SLAM算法中特征的提取与匹配、稀疏地图的创建、位置识别都是基于ORB特征,属于无标志的三维注册,其定位精确度很高,且可以实时运行[6],相对于ARToolKit可以更好的适应户外检测管道的实际情况。
(二)OpenCV和c++结合与ORB-SLAM对比
据了解,一些项目通过OpenCV实现对图像中的Marker(特定标识)的识别和定位,然后通过OpenGL将虚拟物体叠加到摄像头图像下,实现增强现实。实际上这种Marker的选取很大程度上类似与SLAM中特征点的选取,其过程都是先转化成灰度图在对现有图像进行扫描满足条件则选为特征点。在我们查阅到的相关项目中,在计算特征点后还需要利用C++算法提取Marker的轮廓并二值化,再计算摄像机位置,最后利用复杂的矩阵算法计算物体投影姿态,利用OpenGL将虚拟物体投影在Marker上。
这无疑增加了巨大的代码工作量,其算法的快速性也有待提高,不足以成该项目要求的实时显示。这再次体现了稀疏点云图创建的ORB-SLAM算法快速、实时的优点。同时ORB-SLAM中可以调用pangolin库在摄像头画面上叠加虚拟物体,直接调用封装好的函数也可以提高该项目的工作效率。
(三)python的BAR4Py框架与ORB-SLAM对比
用Python来实现AR效果,首先需要运用到两个工具包----PyGame与PyOpenGL。PyGame是非常流行的游戏开发工具包,它可以非常简单的处理显示窗口,输入设备,事件以及其他内容。PyOpenGL是OpenGL图形编程的Python绑定接口。在实现的过程中,我们需要获取照相机矩阵并转换到OpenGL格式,并以平面和标记物进行姿态估计,然后在图像中放置虚拟物体。但是这种实现方法对于这个项目来说,同OpenCV和c++结合一样有增加大量代码工作量的缺点。
二、实现实时提取特征点的方法
本项目使用ORB-SLAM系统是基于ROS运行的。我们之前的检测特征点的方式是将视频裁剪成的图片集载入,通过FAST特征点检测法逐帧解算获取图像的特征点,从而获得摄像头的初始姿态,在初始化完成之后,根据后续图片的特征信息一方面进行姿态优化,并不是实时的运行方式。
在项目的实现中,为了实现实时提取特征点,若采用ORB-SLAM与ROS Kinect结合的方法,虽然在调用摄像头初始化的过程中需要一点时间,但在初始化调用SLAM后具有跟踪特征点的效果,并将生成的特征點叠加在图像上。我们,利用pangolin代码在例程运行时,将一个可变化位置的三维物体叠加在摄像头的画面上,并可以使用图形界面的按钮改变三维物体的大小和位置。这样的提取特征点的方法与我们项目之前使用的调用图片集的方式相比更具有实时性。
三、地下管道实时显示成果对比分析
据了解,现如今对于地下管道的实时显示的研究成果仍然较少,做出完整的成果更是屈指可数,所以本项目的研究具有一定开拓性与创新性,同时城市地下管道是城市的重要基础设施,它的安全运行是现代化城市高效率、高质量运转的保证。目前实现地下管道信息的增强现实技术主要有以下两种方法:(一)利用ARToolKit作为编写增强现实应用程序的工具,结合GPS RTK和INS实现城市地下管道的三维可视化。(二)将AR技术与GIS技术结合将传统的静态的人机交互转变为户外的动态的交互,用AR建立的虚拟世界与客观真实世界合二为一[4],用于适应户外复杂的环境的情况。在利用ORB算法进行特征点选取等一系列工作。
我们在前文指出了ORB-SLAM相对于ARToolKit的优点,但ORB_SLAM构建的点云图比较稀疏,不能直观的看出构建的三维地图形状。点云图是实际图像的抽象提取,虽然并不直观,但是却已足够用来进行管道匹配。而且点云图在最终成果中并不直接展示,最终显示画面会是实际图像和三维管道的叠加。所以这不影响此项目的运行效果。
参考文献:
[1]朱淼良,姚远,蒋云良.增强现实综述[J].中国图象图形学报,2004,9(7):767-774.
[2]权美香,朴松昊,李国.视觉SLAM综述[J].智能系统学报,2016,11(6):768-776. DOI:10.11992/tis.201607026.
[3]常勇,何宗宜.基于ARToolKit的地下管网增强现实系统研究[J].计算机工程与应用,2005(29):196-199.
[4]王涌天,刘越,胡晓明.户外增强现实系统关键技术及其应用的研究[J].系统仿真学报,2003(03):329-333+337.
[5]王珂.增强现实技术的发展状况及其在地下传输管网上的应用[J].中国管理信息化,2016,19(20):62-63.
[6]郝东升.移动终端地下管线透视探查系统[D].中国海洋大学,2015.
作者简介:
方锦浩(1998-11-),男,汉族,重庆涪陵人,本科,研究方向:计算机视觉。
作者单位:东南大学