融合多传感器的SLAM在应急救援中的应用探讨
◆ 曹智辉
摘要:灾害现场情况多变,应急救援现场信息及时、全面反馈对应急救援决策非常关键,传统的应急救援反馈不及时、沟通方式不够直观已不能满足新形势下对应急救援的要求。同时定位与地图构建(simultaneous localization and mapping,SLAM)可以在未知环境中定位自身方位并同时构建环境三维地图,并且以同时定位与地图构建为技术支撑的增强现实提供了一种全新的信息展示和沟通方式。论文首先介绍了SLAM概念和SLAM系统工作机制,重点分析了视觉SLAM方法及发展现状,然后结合应急救援场景中实时救援现场信息采集、救援现场环境增强与信息导航、灾变推演与仿真进行了探讨分析,最终总结了SLAM应用于应急救援工作的可行性以及遇到的逃战。
关键词:同时定位与构图;应急救援;增强现实
一、引言
随着我国经济的高速发展和城镇化的快速推进,灾害事故发生除了突发性、破坏性、不确定性、周期性外,还呈现连锁性、扩散性和紧迫性等新的特点。自国家安全生产应急救援指挥中心成立以来,据官方网站公布的信息,共指导协调全国矿山、危险化学品应急救援队伍参与11.2万起事故应急救援。因此,救援任务的艰巨性日益凸显。SLAM的主要目标是用来完成机器人进入未知环境的环境重建和自身定位,近年来,随着计算机硬件计算能力的提升和低成本原器件的出现,促进了计算机视觉的迅猛发展,并涌现出一大批以视觉传感器为主的与视觉SLAM相关的应用,如室内扫地机器人、低空无人机和无人驾驶等。当灾害发生后,原来的环境可能被完全改变,利用SLAM技术来辅助在未知环境中救援工作的展开具有重要的现实意义。
SLAM运行一段时间后会产品误差累计,消队误差,保证同时定位和构图的精度,为消除误差和保证精度,后端通过接受不同时刻前端各传感器传来的数据进行融合处理。回环检测是根据传感器信息判断机器人是否之前访问过的某个位置,如果检测到回环,它会把信息提供给端进行优化。建图是 根据估计的轨迹建立与任务要求的地图,地图的形式随 SLAM 的应用场合而定,没有一个固定的形式和算法,大体上分为度量地图和拓扑地图。
图 1 SLAM系统工作机制
(三)视觉SLAM
视觉SLAM是指仅用相机作为唯一的外部传感器,是近年来SLAM的研究热点之一。由于相机具有成本低、重量轻、集成方便的优点,且图像含有丰富的信息,视觉SLAM成为关注的热点。目前,根据采用视觉传感器的不同被分为三类:单目视觉SLAM、立体视觉SLAM和深度视觉SLAM。
根据利用图像信息的不同,视觉SLAM算法可分为基于滤波的视觉SLAM方法、基于关键帧的视觉SLAM方法和直接的视觉SLAM方法。
1.基于滤波的视觉SLAM方法
早期单目视觉SLAM是基于滤波器而实现的,基于滤波器的主要思想是基于概率模型来表示某一时刻的系统状态。MonoSLAM[3]的滤波器是基于滤波器扩展卡尔曼滤波器(extended Kalman filter,EKF),实现思想是利用概率密度函数来描述不确定性,用状态向量来表示相机的姿态和地图点的三维坐标,通过观测模型和递归计算来获得更新的状态向量的均值和方差。其缺点是SLAM 算法有较高的计算复杂度及线性化而带来的误差累积问题。为消除EKF对误差累积问题, Martinez-cantin等人[2]将无迹卡尔曼滤波器(Unscented Kal-man Filter,UKF)引入到单目视觉SLAM中。该方法虽然对线性化带来的误差累积有所改善,但随之也增加了计算复杂度。
2.基于关键帧的视觉SLAM方法
基于自然特征的视觉SLAM方法是从相机采集到的图
信息系统工程 │ 2019.5.20
二、SLAM
(一)SLAM问题
SLAM(simultaneous localization and mapping),也称为CML(Concurrent Mapping and Localization),即时定位与地图构建,或并发建图与定位。SLAM问题可以描述为: 机器人在未知环境中从一个未知位置开始移动,在移动过程中根据位置估计和地图进行自身定位,同时在自身定位的基础上建造增量式地图,实现机器人的自主定位和导航。
(二)SLAM系统工作机制
以视觉SLAM系统为参考,系统组成如图1所示,由传感器数据采集、前端里程计、后端非线性优化、回环检测和建图构成。
传感器数据采集主要由传感器来完成,现常用于SLAM的传器器有摄像机、GPS位置传感器、加速度传感器、角速度传感器、码盘等,用来完成对图像、位置、移动速度等数据的采集;前端里程计是通过传感器采集到的数据来估算运动,当前里程计有三种:视觉里程计(visual odometry,VO)、惯性测量单元(Inertial measurement unit,IMU)和视觉惯性里程计(visual inertial odometry,VIO),其中VIO是视觉里程计与惯性测量单元相结合;后端非线性优化是
[1]
135
INFORMATION TECHNOLOGY 信息化建设
像中检测并提取出特征点,然后基于这些特征来估计相机位姿和特征匹配来实现定位、建图目标。基于特征的处理在SLAM系统中较对整幅图像进行处理时间复杂度和空间复杂度有很大改善。在视频帧序列中,关键帧包含有场景中明显的关键特征点,其中最具代表性的是 parallel tracking and mapping(PTAM) [4],该方法将定位和创建地图分为两个独立的任务,并在两个线程上进行。之后,Mur-Artal等人[5]在此基础上做了重大修改,将整个系统分为追踪、地图创建、闭环控制三部分分别用3个线程来处理,系统中特征的提取与匹配、稀疏地图的创建、位置识别都是基于ORB特征,其定位精确度很高,也适应于室外大尺度快速移动场景,且可以实时运行。
3.基于直接的视觉SLAM方法
基于直接法的单目视觉里程计算法是近几年才被提出,与基于滤波器和基于关键帧的视觉SLAM方法相比不依赖于特征点的提取和匹配,而是直接通过比较像素颜色来求解相机运动。目前基于直接的视觉SLAM方法具有代表性系统有DTAM和LSD-SLAM。DTAM是Newcombe 等人
[6]
于2011年提出,能实时恢复场景三维模型,基于三维模型, DTAM 既能允许AR应用中的虚拟物体与场景发生物理碰撞,又能保证在特征缺失、图像模糊等情况下稳定地直接跟踪。LSD-SLAM系统是Engel等人[7]提出,与DTAM相比,LSD-SLAM仅恢复半稠密深度图,每个像素深度独立计算,因此能达到很高的计算效率。此外,Forster等人[8]提出了一种半直接方法,通过在整幅图像中提取的图像块来进行位姿的计算,该方法较直接法不是对整幅图像进行直接匹配来估计相机位姿,从而降低算法的计算量和增强算法的鲁棒性。
(四)融合多传感器的视觉惯性SLAM
相机能够捕获场景中的丰富细节,但基于特征的视觉SLAM方法遇到场景特征缺失的情况容易出现追踪失败,基于直接的视觉SLAM方法在应对快速运动和场景变化较差。惯性测量单元(inertial measurement unit,IMU)有高的帧率且相对小能够获得准确的短时间估计,但随着时间会出现误累计。全球定位系统(Global Positioning System,GPS)可以获得较精准定位,可以用来弥补IMU长时间累积的误差,但无法获取局部高精度定位。可用于SLAM系统中的传感器还很多,若能将这些传感器各自的优势加以利用,相互互补,将能够获得更好的结果。Mourikis等人[9]提出了一种测量模型用来表示当多个相机观察一个静态特征时的几何约束,该测量模型不需要在EKF的状态向量里包括特征的三维坐标能能 保持最优。Leutenegger等人[10]以全概率的形式将IMU累积的误差融合到路标的重投影误差里,构成联合非线性误差函数,通过关键帧边缘化之前的状态达到维持一个固定大小的优化窗口,保证实时运行。
三、SLAM在应急救援中的应用
通过对视觉SLAM方法及发展现状的分析,目前基于视觉
136
信息系统工程 │ 2019.5.20
的SLAM方法已经取得了里程碑式的进步。如果我们只盯着视觉SLAM的固有的局限性继续研究现实意义并不大,取长补短、以用促研、融合多传感器的SLAM将会有广阔的应用空间。
(一)实时救援现场信息采集
当事故灾害发生后,原有通信设施、应急设备和通道等不可避免遭到不同程度的破坏,对于危险动态多变的复杂救援现场,传统的信息反馈不及时和沟通方式不够直观,对救援现场实时情况了解不及时、不全面常常使救缓工作陷入困境,错失最佳救援时机。如果为救援人员配备集成SLAM技术的装备,可对遭到严重破坏的现场进行三维重建构建新的地图,并且也可以把动态变化的场景信息实时更新到重建的地图当中。另外,在应急救援过程中,应急救援人员需要时刻警惕身边的危险情况发生,尤其那些潜在的危险源,靠人眼、鼻子或者耳朵等难以识别和察觉,融合温度传感器、气体传感器和次声波传感器等的SLAM装置可以有效检测身边的温度高底、当前空气中的毒气浓度和是否有次声波等,这样既辅助救缓人员轻公避开这些危险区域或者及时做出防护措施,此外把这些信息上传到系统中,经过信息中心对所有数据融合处理,按危险等级划分出区域,分析出最佳救援方案,以可视化的方式呈现到指挥中心的大屏幕上,有利于及时做出正确的救援决策。
(二)救援现场环境增强与信息导航
增强现实是一种在现实场景中无缝地融入虚拟物体或信息的技术,能够比传统的文字、图像和视频等方式更高效、直观地呈现信息。SLAM技术除了作为机器人、无人驾驶关键技术之外,它也是增强现实的关键基础技术,在未知环境中定位自身方位并同时构建环境三维地图,从而保证叠加的虚拟物体与现实场景在几何上的一致性[11]。通过以SLAM技术为支撑和增强现实的特性,在应急救援工作中若为救援人员配备集成SLAM技术的增强现实眼镜或者头盔,不仅可以在未知环境中生成地图,补充原有地图的缺失,采集现场信息实时更新到地图信息系统中,还可以根据当前位置从地图信息系统中加载所在当前位置的场景信息,借助增强现实设备把救援情景信息叠加到现实环境中,救援人员按指示去实施应对方案,方便救援工作的高效展开。如三维建筑特设计图、消防栓位置、消防管网平面布置图、精密仪器的排障以及增强现实路线导航等。
(三)灾变推演与仿真
灾害事故的不确定性为救援工作的展开带来了难度,其不确定性的首要原因是对事故的发生的原因、现场信息的掌握不够充分;其次是没有掌握灾变演化规律。基于融合多传感器的SLAM技术除了完成未知环境中的地图构建、现场环境信息采集和增强现场救援环境外,还可以通过采集的现场信息来推演灾害事故的下一阶段演变,提早制定应急方案,控制进而制止灾害事故的进一步演变。另外,灾后根据采集的数据进行仿真模拟来分析此类灾害事故的发生机理、演变机理、演化规律和路径,达到认识事物的本质,让此类事故再次发生可以有效应对甚至可以杜绝此类事件的发生。
INFORMATION TECHNOLOGY 信息化建设
四、结论
SLAM一开始是为解决机器人领域的自主定位和导航的一项关键技术,随着近几年电子移动终端迅猛发展,SLAM被应用于众多领域而受到广泛关注。虽然当前的SLAM算法在理想条件下已经能达到很高的精度和计算效率,也在室外取得了不错的成果,但在应急救援现场要能够处理各种各样的复杂情况,才能很好地满足实际应用要求。目前 SLAM 技术正朝着多传感器融合的方向发展,试图通过利用各种传感器的优势互补性来达到尽可能高的精度和鲁棒性。通常采用的传感器、CPU等硬件设备的性能严重受限于大小、功耗、脆弱性等因素,这就要求 SLAM 算法具有很高的鲁棒性和计算效率。如果能更进一步提高 SLAM 算法的鲁棒性和计算效率、缩减传感器的体积和增强传感器的耐用性,那么SLAM必定会在应急救援工作发挥它强大的作用,进一步提高应急救援工作实力。H参考文献
[1] 陈卫东, 张飞.移动机器人的同步自定位与地图创建研究进展[J]. 控制理论与应用,2005,22(3):455-460.
[2] Martinez-cantin R, Castellanos J A. Unscented. SLAM for large⁃scale outdoor environments[C]/ /Proceed⁃ ings of 2005 IEEE / RSJ International Conference on Intelli⁃gent Robots and Systems. Edmonton, Alberta, Canada, 2005: 3427-3432.
[3] Holmes S, Kleink G, Murray D W. A square root un⁃scented kalman filter for visual monoSLAM[C] / / Proceed⁃ings of 2008 International
Conference on Robotics and Auto⁃mation, ICRA. Pasadena, California, USA, 2008: 3710- 3716.
[4] KLEIN G, MURRAY D. Parallel Tracking and Mapping for Small AR Workspaces[ C] / / IEEE and ACM Interna⁃ tional Symposium on Mixed and Augmented Reality. Nara,Japan, 2007: 225-234.
[5] Mur-artal R, Montiel J M M, Tardos J D. ORB⁃ SLAM: A Versatile and Accurate Monocular
[6] Newcombe R A, Lovegrove S J, Davison A J. DTAM: dense tracking and mapping in real-time[C] //Proceedings of IEEE International Conference on Computer Vision. Los Alamitos: IEEE Computer Society Press, 2011: 2320-2327.
[7] Engel J,Sturm J,Cremers D. Semi⁃Dense Visual Odometry for a Monocular Camera [ C ] / / International Conference on Computer Vision. Sydney, NSW, 2013: 1449-1456.
[8] Forster C,Pizzoli M,Scaramuzza D. SVO: Fast semi⁃direct monocular visual odometry[C]/ / 2014 IEEE International Conference onRobotics and Automation. Hong Kong, China, 2014: 15-22.
[9] Mourikis A I, Roumeliotis S I. A multi⁃state con⁃ straint Kalman filter for vision⁃aided inertial navigation [C] / / Proceedings of the 2007 IEEE International Confer⁃ ence on Robotics and Automation (ICRA). Roma, Italy, 2007.
[10] Leutenegger S, Furgale P, Rabaud V, et al. Keyframe⁃based visual⁃inertial slam using nonlinear opti⁃ mization [C ] / / Proceedings of 2013 Robotics: Science and Systems (RSS). Berlin,Germany,2013.
[11] 刘浩敏, 章国锋, 鲍虎军. 基于单目视觉的同时定位与地图构建方法综述[J].控制理论与应用, 2016, 28(6):855-867.
(作者单位:华北水利水电大学信息工程学院)
(上接第134页)
else
{Obstacle_L = 1;}if(XuanyaR == 0){Obstacle_R = 0;}else
{Obstacle_R = 1; }5.视频传输模块
接收视频信息通过一个自定义的SurfaceView 来实现,命名为MySurfaceView,继承android.View.SurfaceView,实现Runable和Callback接口。
通信地址:http://192.168.1.1:8080/?action=snapshot,其中?action=snapshot表示http协议的请求参数。
获取到字节流后Android API中的 BitmapFactory的decodeStream方法解析为Bitmap对象,然后通过Bitmap画到canvas 上展示出来,通过交替地锁定和解锁canvas 来实现视频的效果。
控制,超声波避障,悬崖避障,视频传输)和STM32小车以及其他输出器件的结合,设计出来的系统达到了预期的效果,总体上完成了当初设计系统。当然,由于材料和技术水平有限考虑问题不全面等原因以及和技术水平等多方面影响,设计出来的系统也存在很多不足的地方,例如在灭火时不能够判断火情发生的原因只能使用单一灭火,悬崖避障的时候遇到黑色跑道也会停止前进,光线过强的时候也会出现灭火等情形各种的不足之处,还有待完善。H参考文献
[1] STMicroelectronics NV.32 位基于ARM 微控制器STM32F101xx
与STM32F103xx固件函数库[Z].2007:(10):09.
[2]开源电子网.STM32 多通道ADC 规则转换实现[Z].2011:01:141-146.
[3]虞日跃.RS-485 总线的理论与实践[J].电子技术应用,2001:05:19.
(基金项目:大学生创新创业训练计划项目《基于STM32单片机的多功能wifi视频智能灭火小车 》项目编号:201712623024)
(作者单位:华南农业大学珠江学院)
三、结语
通过对系统的六大功能(自动循迹,自动灭火,上位机
信息系统工程 │ 2019.5.20
137
因篇幅问题不能全部显示,请点此查看更多更全内容