基于ROS平台和Kinect V2深度摄像头的SLAM系统设计与实现文献综述
2020-04-14 17:28:59
随着机器人技术的飞速发展,人类的生活方式已经发生了很大的变化,也为人类提供了非常大的便利,机器人也逐渐成为我们日常生活中不可或缺的一部分,在各个领域都发挥着极其重要的作用。同时,机器人是否能够进行自主导航以及根据已知环境地图进行路径规划,是否能够在有障碍物的情况下进行向目标的运动,这是机器人智能化水平的重要标志,同时也是其能广泛应用的 基础。但大多数环境下,机器人工作的环境通常难以事先知晓,这就要求机器人能够在完全未知的情况下进行建图,同时利用建得的地图进行自主定位,这也就是我们所说的同步定位与地图创建问题(Simultaneous Localizationand Mapping, SLAM)。自从SLAM这个概念在1990年首次被提出以来,很多学者将其看作是真正意义上能实现机器人自主移动的关键,近年来已经成为国内外机器人领域研究的热潮。
随着计算机技术的不断发展,再加上人类不断地深入研究与探索,SLAM问题取得了很大的发展,很多优秀的算法结合各类较为精确的传感器,已经取得了较为良好的效果。例如,采用EKF算法与单目相机结合的EKFmonocular SLAM,对相机运动实现了较好的估计。采用粒子滤波算法与激光传感器结合的Gmapping方案,通过采集激光数据,可以对大尺度环境进行厘米级别精度的地图构建。关于SLAM的相关研究,人们应用了许多种类的传感器进行信息的采集,常用的有激光传感器、红外传感器、声纳传感器、超声波传感器、视觉传感器等等,其中激光传感器凭借测量的精度高、范围广以及数据直观,更加便于实现地图的构建,因此基于激光传感器的SLAM已经较为成熟,部分也已投入商用。但激光传感器体积较大、发热较大、能耗高、价格昂贵等局限性限制了它的长足发展,同时它的感知辨识能力也因为自身获取的是一系列的信息点而显得较为有限,难以区分不同的路标。而视觉传感器体积较小、质量轻、安装简便、成本低廉等优点使得它逐渐成为当今研究的热点,虽然已经取得了一系列显著的成果,但仍然存在很多问题。因此,开展基于视觉传感器的SLAM研究,对于智能机器人的自主运动以及降低成本具有重大的意义。
目前,对于移动机器人的研究已经取得了巨大的进步。上世纪 60 年代,斯坦福研究院(SRI)的 Nilsson、Charles Rosen等人研制出了第一台名为 Shakey的移动机器人,它标志了移动机器人研究的正式开端。1970年,前苏联开发研制的轮式无人探测机器人Lunokhod1 首次于月球登陆,成为第一台登陆外太空星球的无人探测机器人。70年代末期,SRI 的 Hans Moravec等人研制出名为Cart 的移动智能人,该机器人以视觉传感器为主,通过重构二维环境模型实现避障以及路径规划。美国 Maryland 大学在80年代前期开发研制了ALV(Autonomous Land Vehicle)军用无人侦察越野车。1997 年,美国国家航空航天局(NASA)研制的火星探测机器人 Sojourner 成功于火星登陆,拉开了人类利用移动机器人技术进行空间探测与开发的序幕。2012年8月6 日,美国 NASA火星探测移动机器人(Curiosity)再次在火星成功登陆。Curiosity 携带了分辨率更高的探测设备,具有更强大的空间探测能力。我国的移动机器人研究工作虽然起步较晚,但是政府对其的关注程度与日俱增。中科院自动化研究所开发了集视觉、语音识别、会话等多种功能于一体的智能移动机器人CASIA-I。清华大学自主研制了 THMR(Tsinghua Mobile Robot)系列移动机器人,对移动机器人的自主式系统、体系结构、传感器信息的采集与处理、路径规划与立体视觉、感知动作、多行为控制、通讯与临场感技术都进行了较为深入的研究,并完成了多项整体实验。但从整体水平与自主核心成果上看,我国移动机器人技术比起发达国家还具有一定的差距。
而基于视觉传感器的SLAM研究也得到了较为深入的研究。伦敦帝国学院 Davision 等人对单目视觉 SLAM 进行了相关研究,建立了单目视觉 SLAM 算法框架,并于2007年推出一款实时的单目视觉SLAM系统。该系统通过单目相机的运动,基于概率学框架,生成稀疏但持续的路标地图,并恢复单目相机的空间运动轨迹。Murray等人基于普通手机摄像头,将 SLAM 过程分解为图像特征点的追踪提取与地图创建两个模块,利用图优化来改善地图效果,实现了一个实时的SLAM系统。Davison通过双目视觉系统实现视觉SLAM。该方法基于视觉传感器对环境中部分特定区域的感知,依靠部分可靠特征实现图像匹配,无需使用全局图像信息。华盛顿大学Henry等人首先使Kinect摄像头实现了RGB-D同步定位与地图构建系统。慕尼黑工业大学Endres等人在 Henry的基础上对RGB-D同步定位与地图构建系统进行了改进,从RGB图像提取视觉关键点,并采用G2O优化了运动估计,并且使用Octomap library创建了环境的体素地图,进而可直接应用于机器人的导航。同时Endres等人对RGB-D SLAM 算法提出了一个评价标准,并公开了两个不同环境的数据集。该标准与数据集可以帮助研究者们对自 己的算法进行测试,极大地推动了RGB-D SLAM的发展。国内的研究起步较晚,目前还处于一个初级阶段,但也取得了令人欣喜的进展。西安交通大学袁泽剑等人于2013年提出了一种基于RGB-D相机的高效位姿估计方法,对于纹理稀疏的区域有着显著效果。同 时,袁泽剑等人为该方法设计了一种高效的路标,用于回环检测。上海交通大学机器人研究所结合Kinect与ICP算法,完成了室内3D场景的实时重建。清华大学智能技术与系统国家重点实验室李海洋等人,在逆深度参数化方法的基础上,采用SURF特征提取算法,融合特征点深度信息,最后通过扩展卡尔曼滤波(EKF)实现摄像机位置估计与地图更新。
{title}
2. 研究的基本内容与方案
{title}本设计主要运用机器人操作系统(ROS)平台和同步定位与地图构建(SLAM)技术的相关知识,结合轮式机器人底盘及Kinect V2深度视觉摄像头模组,研究相关的机器视觉算法并实现一套完整的SLAM系统。该系统能够使用结合机器视觉算法增强自主采集图片数据集的质量,并成功采集完整的可以使用的图片数据集,即可以使用SALM导出对应的点云地图以及路径地图等等,同时也可以增强运动中图片源数据集的质量,使得得到的点云地图等更为精确。该系统能通过SLAM算法导出相对应的点云地图,并可以将点云地图转化为相对应的八叉树地图,以供后面的自主路径规划使用。同时该SLAM系统能根据给定的地图,能自主完成路径规划,结合避障等算法成功运动到目的地点。
围绕以上内容,拟采用的技术方案如下:
1.结合硬件搭建整套操作系统。在安装好Ubuntu操作系统的情况下,安装完整的ROS开发环境,并完成环境变量的配置,配套使用EAI SSD1智能移动平台以及Kinect V2深度摄像头搭建出一套完整的硬件平台,并能成功运行。
2.使用过程中整合一些机器视觉算法。在采集自建数据集以及运动中建图的过程中的采图,图片数据集的质量对于建图的完整性以及路径规划的准确性是至关重要的,因此我们整合进相关的一些机器视觉算法以提高准确程度,方便后续的路径规划以及提高运动的准确性。
3.点云地图的导出以及八叉树地图的转化。使用相关的SLAM算法,能将我们实时采集的数据集输出保存成为点云地图,我们可以使用相关的SLAM算法将点云地图转化为八叉树地图,以便后续的使用及操作。
4.路径规划模块的设计。在设计的最后,实现系统的自主运动也是很重要的。假如给定一个地图,我们整体搭建的SLAM系统能够自主完成路径的规划,并能够成功地运动到目的地点。