APP下载

无人驾驶车辆与移动机器人SLAM方法综述

2021-04-09中国矿业大学北京景元泉王跃辉邹宇杰

电子世界 2021年13期
关键词:建图里程计子图

中国矿业大学(北京) 景元泉 王跃辉 韩 伟 邹 恒 邹宇杰

当今时代大力发展人工智能技术,越来越多的自动驾驶车辆出现在生活中这离不开SLAM的发展。SLAM即同步定位与地图构建,无人驾驶汽车与自主移动机器人的实现主要解决定位精度以及其即时性、环境地图构建的准确定、导航、路径规划的计算四个问题,其中SLAM扮演非常重要的作用,SLAM主要用于解决未知环境中即时定位、地图构建与导航的问题。本文主要对SLAM的几种分类进行描述与总结,并对SLAM的未来发展趋势进行预测。

1 SLAM的经典框架

SLAM的经典框架主要是由传感器、视觉里程计、后端、闭环检测、建图五个部分所组成。传感器和视觉里程计在视觉SLAM中属于前端,传感器主要用于环境信息的采集,视觉里程计的目的是根据传感器将其采集到的图像数据估计其位姿,后端是将视觉里程计所形成的不同时刻位姿信息整理优化得到完整的环境地图。闭环检测环节是个反馈环节,它通过对传感器、视觉里程计、后端三个环节的信息进行比对来判断机器人移动的位置是否存在漂移或重复,若存在则将其信息反馈至后端。经过前四个环节后,得出最后的建图信息。

在实际使用当中还需依据经典框架进行完善。单一的传感器所采集的信息有着很多的局限性,对于一些精度要求极高的机器人来说,需要多传感器融合。机器人是否可以成功建图,很大一部分取决于闭环检测,闭环检测成功可以极大的减小建图的误差,提高建图的精准度,从而使机器人更加快速、准确的避障。

2 激光雷达

激光雷达有着很高的精度和分辨率,其基本原理是由发射系统向被测目标发射激光,与目标作用产生返回信号,再将返回信号与发射信号进行对比和处理,获取位置、速度等所需信息。激光雷达建图性价比很高,在花费较少的情况下也可以得到比较精确的图像;由于采用激光获取信息,所以信息获取的速度很快,从而使建图也很迅速。不仅如此,激光雷达自动化程度也很高,对于人工的依赖性比较小。但是它也有着一些缺点,譬如会受到恶劣环境的影响、对信息计算处理能力的要求较高等。激光SLAM主要分为2D激光SLAM和3D激光SLAM。2D激光SLAM是利用激光雷达获取二维数据,并利用二维数据进行定位与建图;3D激光SLAM是利用三维数据,对三维空间进行定位与建图。在使用时,一般室内采用2D激光SLAM,室外采用3D激光SLAM。

2.1 2D激光SLAM

2D激光SLAM技术目前已经较为成熟并推广应用,有了一套比较完整的实现流程,实现方案也已经有了很多种。

SLAM经典算法:

(1)Gmapping

Gmapping是一种基于滤波的SLAM算法,采用RBPF的方法,先定位后建图,每一个粒子都会单独建立一个地图。该算法实现时间早,是目前比较成熟和可靠的算法,应用也非常广泛。该算法在室内小场景和低特征环境下,具有较高的精度,鲁棒性较高,对传感器的频率要求并不是很高,同时计算量也很小。但是,Gmapping对于里程计的要求很高,在进行比较大的或者是复杂的场景下,计算量会大大增加,而且由于回环检测的缺乏,误差会不断累积,建模的效果会比较差。

(2)Cartographer

Cartographer是由谷歌公司于2016年发布的基于图优化的SLAM算法。谷歌公司在该算法种引入闭环检测,对建图过程中产生的误差进行消除,从而提高在大规模场景下建图的精度。Cartographer将测得的环境数据进行处理,生成栅格地图,将生成的子图与上一次扫描所获得的子图进行比对,并插入到上一次的子图中进行子图更新优化。当没有新的子图插入时,完整子图的构建就完成了。当完成多个完整子图的构建以后,后端会开始进行回环检测,对前面建立的子图进行优化,并且消除累计误差。

2.2 3D激光SLAM

3D激光SLAM现在一般用于室外地图构建,在智能车和无人机等领域中,有着广泛的用途,是目前很热门的研究方向。

经典算法:

(1)LOAM

LOAM SLAM于2014年由张吉等人提出,是一种低漂移实时激光雷达测距建图算法,是比较老的一种3DSLAM算法。这种算法将定位与建图分开,用两个不同算法分别加以实现然后再结合,保证实时性和精度要求。但是这种算法没有回环检测环节,因此算法产生的漂移误差会随时间不断增加。现在LOAM已经不再开源,但是之后的许多开发者对该算法的一些思想和方法进行借鉴,产生了一些基于LOAM改进的算法。

(2)SegMap

SegMap是Seg Match的改进算法,同样是基于数据驱动。SegMap进行建图是使用了数据驱动描述,在进行3D片段建图以后引入数据驱动的片段描述符,然后对语义信息进行提取,用于提高对环境变动的鲁棒性,但该算法会产生漂移,并随着时间不断累积。

随着激光SLAM算法的不断应用和发展,现有算法会不断进行完善,也将会有许多开发者研究出更加优秀的算法,推动激光SLAM技术的不断发展。

3 视觉SLAM

视觉SLAM主要可以分为三类:单目视觉SLAM、双目视觉SLAM和RGB-D SLAM。单目视觉SLAM只利用一个相机作为外部传感器,可分为基于概率框架的单目视觉SLAM和非概率框架的单目视觉SLAM。双目视觉属于使用两个相机作为传感器的立体视觉SLAM,利用两个相机从不同角度拍摄的三维场景图像进行三维重建,通过立体匹配算法寻找对应同一三维点的投影点对、计算两张图像的视差图,再根据三角化原理估计深度信息,以恢复场景的三维结构。RGB-D SLAM则将RGB-D相机与红外传感器相结合,得到的图像包括普通的RGB彩色图像和深度信息图像,在普通相机的基础上增加了深度测量的功能,可以得到每个像素点的具体深度信息。

虽然近三十年来视觉SLAM技术取得了积极进展和长足进步,但是仍然存在诸多不足之处,例如相机拍摄精度不高、数据处理计算量大、不同SLAM相机在不同的环境下有各自优缺点等问题。主要表现为:(1)拍摄相机选择问题。视觉SLAM依赖的是相机,相机本身质量,拍摄环境的影响因素等都会影响相机标定的精度,同时影响图像质量。高质量相机拍摄区域大,但也要考虑到成本问题,低成本相机分辨率不够高,影响精度。(2)特征检测与匹配算法问题。视觉SLAM算法在实现时需要地图表示、信息感知、数据关联、定位与构图问题。图像特征检测与匹配算法对传感器位姿初始情况有重要影响,其处理速度、效率与性价比问题仍有待进一步提高。(3)后端优化问题。后端优化是减小成图误差、提高建图精度的主要方法,目前仍有待改善。

4 其它传感器

4.1 毫米波传感器

毫米波雷达的传播过程就是发射一段毫米波后,当它遇到障碍物就立即发生反射,将反射的波由传感器接受,然后计算位置的距离和环境的构建。由于采用的是反射原理,毫米波的传播过程中就会容易受空气中水分子的影响,导致毫米波频率被有选择地吸收和分射。整个毫米波频率段有四个传播频段,每个波段的可用带宽可容纳几乎所有低频频段,包括微波。由此可以大致得出毫米波的一些优势:多频段、大带宽、细口径。

凭借一个毫米波雷达的多频段的特点,容易推断出使用不同频段的区间配合以及频段的宽频带扩频来提高抗频率干扰强度。由于毫米波雷达的天线小又轻、高精度测量的特点,毫米波雷达的安装占地位置小适合各种狭小环境的测量。

4.2 仿生声呐

声呐传感器SLAM只是对环境表面的初步构建,而仿生声呐采用的是仿照动物界蝙蝠的回声定位。通过模拟蝙蝠的声呐发射和声波接收来实现在复杂的环境中,它对复杂环境的地图构建和定位。

通过声纳传感器发射的信号,由返回回来的回波信号被智能车接收后,经过车内的仿生声呐模板,生成局部场景细胞,同时智能车不断地更新里程计和转角传感器来构建出位姿细胞。位姿细胞是用来判断智能车的位置与状态。若仿生声呐出现问题,位姿细胞的修正需要借助WiFi指纹模板的数据采集,同时借助局部场景细胞一起修正来辅助位姿细胞进行地图的构建与定位。在BatSlam的基础上,借用WiFi指纹模板进行位姿的辅助修正,是BatSLAM的一种创新。此方法既可提高二维地图的构建和定位的准确性与精度,也降低了环境信息的失真率。

结束语:目前,通过给机器人配备各类传感器来进行SLAM的位置定位与地图构建已经出现多样多样的处理方法。早期的激光雷达SLAM的应用已经发展趋于成熟,但是使用激光雷达进行SLAM的劣势开始慢慢展现出,无法探测出环境的数据信息,价格偏贵。然后开展了视觉传感器SLAM的研究,解决了环境数据采集的问题,同时价格便宜,但是又出现了测量精度低和测距能力不足的问题,慢慢地发展到如今激光与视觉SLAM的融合处理。现阶段的融合处理SLAM发展过晚,有许多问题出现。为了解决各种问题,就逼迫了各种各样符合解决问题的传感器,未来可能的发展就是所有传感器一齐融合SLAM的研究。

猜你喜欢

建图里程计子图
室内退化场景下UWB双基站辅助LiDAR里程计的定位方法
视觉同步定位与建图中特征点匹配算法优化
基于三轮全向机器人的室内建图与导航
一种单目相机/三轴陀螺仪/里程计紧组合导航算法
临界完全图Ramsey数
一种基于多传感融合的室内建图和定位算法
基于模板特征点提取的立体视觉里程计实现方法
机器人室内语义建图中的场所感知方法综述
基于频繁子图挖掘的数据服务Mashup推荐
大角度斜置激光惯组与里程计组合导航方法