最新导航综述!SLAM方法/数据集/传感器融合/路径规划与仿真多个主题(下)

简介: 在过去几十年中,自主移动机器人领域取得了巨大的进步。尽管取得了重要里程碑,但仍有一些挑战有待解决。将机器人社区的成就汇总为综述,对于跟踪当前最先进的技术和未来必须应对的挑战至关重要。本文试图对自主移动机器人进行全面综述,涵盖传感器类型、移动机器人平台、仿真工具、路径规划和跟踪、传感器融合方法、障碍回避和SLAM等主题。论文的出发点主要有两方面。首先,自主导航领域发展很快,因此定期撰写综述对于让研究界充分了解该领域的现状至关重要。第二,深度学习方法已经彻底改变了包括自主导航在内的许多领域。因此,有必要对深度学习在自主导航中的作用进行适当的处理,这也是本文所涉及的。还将讨论未来的工作和研究差距。

路径跟踪



为了执行计划的路径,移动机器人必须配备必要的手段来跟随它们。多年来,已经开发了各种路径跟踪方法。其中一些方法简单到纯粹的追求,而另一些方法则通过依赖动态系统或深度学习来采取更复杂的方法。本节将回顾其中一些路径跟踪方法。


纯跟踪方法


Pure pursuit[72]是一种历史悠久的路径跟踪算法,因为它已用于各种项目,如Terragator[62]、NavLab[278]和NavLabs2[73]。简言之,纯跟踪算法在假设恒定线速度的情况下计算机器人角速度。机器人从其当前位置移动到其前方的某个前方观察点。到达指定的前方观察点后,它将在要遵循的路径上进一步移动。


该算法计算将机器人当前位置连接到目标位置的弧。目标点是距机器人当前位置的一个前瞻距离。图7显示了机器人的局部坐标系以及目标点。目标是计算将机器人当前位置连接到目标位置的弧的曲率,假设弦长(向前看距离)为1。目标点强制位于机器人路径上。曲率值的计算相当简单。参见图7,可以写出以下等式:

640.png

640.png


其中等式4来自左侧较大三角形中的勾股定理,等式5是由于x和d的和等于曲率半径r的事实。使用方程4和5,曲率可以计算为:

640.png


基于DMP的路径跟踪


如第5节所述,DMP是一种为机械手机器人生成平滑轨迹的流行工具。然而,它也被用于移动机器人的路径跟踪。Sharma等人[260]为非完整机器人实施了一种基于DMP的路径跟踪方法,该方法能够避免路径上的障碍物。使用两个DMP(表示沿x和y轴的运动),并使用径向基函数(RBFNs)对每个DMP的强制函数进行参数化。由于DMP的自适应特性,所提出的方法可以保持计划轨迹的形状,即使开始或目标位置改变,也可以达到目标。此外,所提出的方法能够建议通过障碍物两侧的两个轨迹。当两条路径中的一条由于某种原因无法遍历时,这特别有用。


基于DL和RL的路径跟踪



受RL取得的有趣学习结果的启发,它已扩展到处理具有连续状态和动作空间的问题。这一趋势通过借鉴DL的思想得到了加强,从而产生了能够控制具有连续和高维状态和动作空间的机器人的鲁棒深度RL(DRL)方法。例如,Cheng等人[66]将DRL应用于路径跟踪和障碍回避。路径跟踪是通过设计适当的状态和奖励函数来实现的,这些函数对于任何RL代理的成功训练都至关重要。为了实现避障,对上述奖励和状态函数进行了修改,以考虑距离和角度来检测障碍物。本工作中使用的RL算法为DDPG[182]。所提出的方法已经在仿真中进行了评估。


传感器融合方法



移动机器人的有效定位是一项具有挑战性的任务。定位模块必须处理多个不确定性源,以便及时以合理的精度估计机器人位置。最简单的定位形式是航位推算(DR)[67]。在该方法中,移动机器人的运动方程是基于机器人的结构特性(如车轮周长)、车载传感器(如IMU、磁力计和旋转编码器)设计的。知道车轮旋转的次数(使用旋转编码器)和移动方向,可以及时估计机器人在每个位置的位置和方向。然而,传感器读数总是有噪声,因此估计位置容易出错。由于周围环境的随机现象,情况变得更糟。例如,在车轮打滑的情况下,旋转编码器报告车轮移动,然而,由于打滑,机器人可能根本没有移动,从而导致错误的位置估计。为了处理定位误差,通常的做法是融合来自多个传感器的读数以获得更好的位置估计。本文回顾了经典的卡尔曼滤波、扩展卡尔曼滤波、无迹卡尔曼滤波、多状态约束卡尔曼滤波、粒子滤波,公众号之前已经有文章讲的很清楚了,再此不在赘述,详情移步以下文章:


避障



当移动机器人在其操作环境中导航时,它们必须处理各种障碍物才能到达目的地。因此,在导航过程中避开障碍物的能力是自主系统中的关键模块。障碍物的位置可能是环境地图的一部分,但通常事先不知道地图。因此,高度期望自主移动机器人能够在导航期间实时检测和避开障碍物。本节将对文献中存在的几种避障方法进行综述。


传统方法


避障方法的历史几乎与移动机器人的出现一样悠久,这并不奇怪,因为如果没有避障,移动性就没有多大用处。在本小节中,回顾了经典的避障方法。


BUG算法系列:一组最简单的避障方法是Bug算法。顾名思义,这些算法模拟了在途中遇到障碍物时的错误行为。Bug算法家族始于Bug1和Bug2的提出[189]。Bug1和Bug2的避障机制如图12a和12b所示。根据图12a,每当Bug1撞上障碍物时,它都会围绕障碍物完成一个循环,在第二个循环中,它会离开障碍物并继续朝着目标前进,直到到达目标或检测到新的障碍物。如图12b所示,Bug2假设从起点到目标点有一条假想线,并绕过与这条线相交的任何障碍物。显然,与Bug1相比,Bug2在行驶距离方面更有效。Bug2+[35]是Bug2的改进版本。在Bug2+中,修改了从障碍边界跟随切换到运动到目标的条件,以缩短从起点到目标的路径长度。

640.png


Bug家族的另一个算法称为CBUG[105],它考虑面积等于的椭圆image.png,从而使起点和终点形成椭圆的焦点。在该椭圆内,执行Bug1以尝试达到目标。如果在当前椭圆中无法达到目标,则其面积将增加到image.png,其中i是迭代计数。在新椭圆内再次执行Bug1。这一趋势会重复出现,直到达到目标或得出无法达到目标的结论。如[105]所示,CBUG是具有恒定内存需求的最佳在线规划器。


Bug2+最初设计用于未知环境,但它已与A*结合使用,以利用环境地图,从而缩短路径长度。结果方法是名为ABUG[34]的随时计划器。随时计划的优点是,他们可以快速规划次优路径,并在导航过程中修改路径。“随时计划”一词意味着计划过程可以随时中断,并且有一条有效的路径可用。给规划者的时间越多,规划的路径就越好。在ABUG的情况下,无论何时遇到障碍,Bug2+都可以从左侧或右侧绕过它。给定环境地图,路径上的所有障碍都是事先知道的。这就是A*出现的地方。对于每个障碍物,都会创建一个对应于绕过障碍物左侧或右侧的二进制节点。障碍物集合形成二叉搜索树。在树上运行A*为我们提供了从开始到目标的最佳路径。


也许最重要的Bug算法之一是TangetBug[145],基于该算法提出了其他方法,如WedgeBug[171]和CautiveBug[192]。WedgeBug使用双目视觉进行障碍物检测,其能耗、计算复杂性和内存使用已降至最低,以满足火星车有限的资源。WedgeBug这个名字是因为这个算法能够使用有限的(30°至45°) 双目视觉的楔形视野。该算法检查环境的一部分,如果需要,旋转其双目视觉系统以检查已经观察到的区域附近的区域。通过这种方式,有限的视野得到了处理。EdgeBug经过进一步修改,诞生了用于Rock7火星车[171]的RoverBug[170]。


TangentBug利用激光扫描仪等距离传感器在实际碰到障碍物之前检测障碍物。这样,朝向目标的行进路径显著减少。每个检测到的障碍物由其两个端点表示。例如,在图12c中,机器人被四个障碍物包围,这些障碍物由六个端点组成。TangentBug有两种主要行为模式,即运动到目标(M2G)和墙跟随(WF)。最初,行为设置为M2G。在这种模式下,机器人采取直接路线到达目标G。如果障碍物干扰直接路线,机器人计算障碍物两个端点的启发式距离,如图12d所示。启发式距离由下式计算:

640.png


在WF期间,机器人沿着障碍物边界移动,直到满足以下条件之一:


  • 目标实现了→算法因成功而停止;
  • 机器人围绕障碍物完成一个完整的循环→ 由于目标不可达到,算法因失败而停止;
  • 方程式$d_{Reach}


另一种考虑到实际限制而提出的方法是I-Bug[274]。该方法被设计用于处理不准确的定位和有噪声的传感器读数。假设目标点发出可由机器人上的特殊传感器检测的信号。当机器人越来越接近球门时,信号强度增加,而当机器人离开球门时,则信号强度下降。信号强度测量传感器是机器人上唯一的精确传感器。除了这个传感器之外,机器人还配备了一个传感器,用于确定机器人是否面对目标。虽然机器人不知道自己在环境中的位置和障碍物位置,但I-Bug能够达到目标。Bug算法家族甚至已经扩展到处理移动障碍物。所得算法称为距离直方图Bug(DH Bug)[314]。


曲率速度法:Bug算法简单且易于实现,但它们不考虑机器人的运动学和/或动态约束。相反,曲率速度法(CVM)[262]在一定程度上考虑了机器人运动学约束,甚至动态约束。


为了进行避障,CVM将环境阻挡障碍物施加的物理约束以及机器人的加速度和速度限制转换为速度空间。假设机器人只沿着具有曲率的圆弧移动,速度空间由旋转速度和平移速度组成。CVM将障碍物从笛卡尔网格映射到速度空间。根据机器人与障碍物之间的距离绘制地图。映射后,可以确定由于阻挡障碍物而必须过滤掉的旋转速度和平移速度的范围。


当然,避障方法必须是实时的。为了满足这一要求,CVM对圆形障碍物进行了建模(图13)。这样的建模可能会导致某些障碍物的形状表现不佳。这是CVM的主要缺点。

640.png


势场:势场[153]最初设计用于机械臂的控制和避障。然而,由于其简单和有效性,势场也被移动机器人社区所采用。势场将机器人建模为在各种吸引和排斥势场的影响下在环境中移动的点。目标是吸引力的来源,而障碍物充当排斥力。在此设置中,施加到机器人的总力是排斥力image.png和吸引力image.png的总和[153]:

640.png


吸引力和排斥力通过从吸引力和排斥势函数中获取梯度来计算。因此,有必要定义这些函数,使其可微:

640.png


其他如动态窗口方法[100]和矢量场直方图[51]可以参考具体论文。


使用RL和DL避障


多年来,计算机的发展大大减轻了移动机器人平台的计算负担。这为使用更强大的方法铺平了道路,如DL和强化学习,这些方法对处理能力要求更高。在本小节中,回顾了最先进的避障方法。


为了能够避开环境障碍物,需要机器人与障碍物之间的距离。LiDAR传感器提供高精度的距离数据,但成本高昂。更便宜的替代方案是通过两台相机之间计算的视差图提供深度数据的立体相机。然而,获取正确的距离数据取决于双目摄像机的适当标定,并且估计的距离仅限于几米(远小于激光雷达)。为了避免标定过程,可以使用单目相机,代价是丢失深度数据。然而,最近DL的进步使得仅使用单个相机就可以估计深度。为此,Wenzel等人[296]利用生成对抗网络(GAN)[113]将RGB图像转换为其相应的深度图像。这种方法不仅可以从单个相机进行深度估计,还可以弥补模拟和现实应用之间的差距。由于DL方法的强大特征提取,深度估计成为可能。由于GAN不关心RGB图像的来源,并且它可以估计模拟图像和真实图像的深度图,因此实现了模拟和真实世界之间的差距。作者训练了深度强化学习代理,如深度Q网络(DQN)[203]和近端策略优化(PPO)[256],以生成输入深度图像的适当控制命令。利用RL避障的历史先于臭名昭著的DQN方法的诞生。例如,Huang等人[134]使用神经网络来估计Q学习代理的Q函数,而不是依赖于查找表。


除了RL,基于DL的避障模块也可以以监督的方式进行训练。Liu等人[183]通过向基于AlexNet[168]的DL模型提供原始图像并使用模型输出作为转向命令,实现了室内障碍物回避。基于输入图像,机器人被向左、向右转向并被命令直行。DL模型的训练已经使用在由人类操作员控制的机器人运动期间收集的数据来完成。为了促进实施,使用了ROS。


导航方法



自主导航方法要么基于地图,要么无地图。在基于地图的方法中,环境地图在导航开始之前是已知的,但对于无地图方法则不是这样。显然,具有环境地图有助于有效的路径规划。然而,在许多情况下,环境地图事先不为人所知,这导致了第10节中所述的无地图导航和同时定位与建图(SLAM)的发展。


基于地图的导航


基于地图的导航的质量直接受环境地图的表示方式及其精度的影响。地图表示是度量的或拓扑的。在度量地图中,检测到的障碍物、地标、机器人等的位置是相对于某个参考系来表示的[201]。图15b以2D网格的形式示出了与图15a中的环境相对应的典型度量图。如图所示,在网格地图中,检测到的障碍物、机器人位置等相对于某些特定的XY参考框架表示。该网格的每个单元表示被障碍物占据的概率。黑色较深的网格单元更容易被障碍物占据。概率占用网格可以使用多种方法实现。贝叶斯占用网格(BOG)[210]依赖于贝叶斯规则来估计网格图的每个单元被占用的概率。BOG已用于一些映射方法[91,133]。实现占用网格的其他方法基于反射图[281]和期望最大化[280]。


640.png

自然,当距离传感器可用时,将环境地图表示为2D或3D网格是有用的[116,123,285]。然而,由于存储地图所需的存储器大小随着距离数据的获得和处理而增加,因此存储大规模环境地图的存储器需求可能是禁止的[98]。为了保持网格地图的内存需求可管理,已经进行了多次尝试[90,133,152]。


除了距离传感器,相机传感器还提供丰富的视觉特征。这些特征可用于实现地标地图[208265],其对于环境中存在局部可区分特征的场景有效。例如,再次考虑图15a中的环境,并假设该环境的不同区域中存在可区分的特征。使用这些特征,可以生成类似于图15c中的拓扑图。基于上述可区分的视觉特征,拓扑图的每个节点表示环境中的特定区域。彼此可访问的区域由拓扑地图中的边连接。例如,(房间4)可通过拓扑图(15c)中所示的(转弯1)访问,其边缘将连接到。将拓扑图视为无向图,可以使用现成的图路径规划算法来找到机器人位置和目标位置之间的最短路径(如图15c所示)。在现实世界的应用程序中,环境地图很可能只是部分已知的。为了在这种情况下执行自主导航,Sgorbisa和Renato提出了一种混合导航方法,以在机器人运动期间利用可能不完整的环境地图和局部感知,从而实现安全无碰撞导航[257]。


无地图


自主无地图导航是在不访问环境地图的情况下控制移动机器人朝向期望目的地的行为。无地图导航的问题已经解决了好几次。如[120]中所指出的,用于室内机器人导航的基于无地图视觉的技术可分为:


  • 基于光流的方法:简而言之,图像序列中视觉特征的运动被定义为光流。robee[48]是基于光流的无地图导航方法之一。在这种方法中,蜜蜂的视觉系统被模拟成使用双目摄像机在环境中导航而不与障碍物碰撞。光流还被用于实现走廊跟踪行为[86]以及基于特征的导航系统[276]。
  • 基于外观的匹配:在这种方法中,环境的某些模板和图像被记忆。然后将存储的数据与控制命令相关联,以引导机器人朝向期望的目的地[81]。基于外观的方法的主要挑战是找到合适的方法来根据突出特征来表达环境,以及定义识别环境某些区域的匹配标准[50]。视觉记忆[107]是一种基于外观的方法,其中在机器人运动期间捕获一系列图像。捕获的图像与到达特定目的地所需的适当运动相关联。图像、它们的相关运动和模板匹配算法可用于构建机器人路线。另一种基于外观的方法是基于捕获图像的统计分析(与颜色、纹理和边缘密度相关)提取的多维直方图[254,312]。通过匹配存储位置的直方图和为机器人的当前位置计算的直方图来完成位置的识别。
  • 物体识别:基于外观的方法主要集中于记忆周围环境。然而,可以使用符号导航[154155]。在这种方法中,检测到的障碍物存储在称为S图的2D网格图中。使用该地图,完成路径规划,并向机器人发出符号命令,如“到主出口”或“到前面的角落”[120]。
  • 基于特征的导航方法:在这些方法中,通过从图像序列中提取特征并跟踪这些特征在机器人运动过程中的相对位移来确定机器人的运动。基于特征的导航方法的一个例子是漏斗车道[65],其中机器人的任务是通过将来自其单摄像机的图像馈送与先前记录的图像序列(称为视觉路径)相匹配来遵循先前走过的路径。漏斗道方法是完全定性的,不需要任何类型的环境图。该方法已扩展到倾斜漏斗车道[149],以解决某些场景中平移和旋转之间的模糊性等问题,并实现更好的机动性。


RL还被用于在需要快速和自适应动作选择的高度动态环境中实现无地图自主导航。例如,Fan等人[96]优化了一种无地图导航策略,该策略能够在高度动态的环境(如行人拥挤)中进行机器人控制。作为本地规划器,使用PPO对策略进行优化,并将策略表示为具有四个隐藏层的CNN。


SLAM



同时定位和建图(SLAM)可以被认为是一个概念,而不是一种特定的算法[245]。这一术语是根据休·杜兰特·怀特(Hugh Durrant Whyte)和约翰·J·伦纳德(John J.Leonard)[173]的原著创造的,他们的研究是基于史密斯、赛尔夫(Self)和奇塞曼(Cheeseman)[265]的早期研究建立的。简而言之,SLAM的目标是在未知环境中定位移动机器人,同时根据观察到的环境地标来估计环境地图。粗略地说,SLAM的主要组成部分是地标提取、数据关联、状态估计以及状态和地标更新。


SLAM期间机器人位姿预测和校正的高级步骤如图16所示。如图16a所示,机器人测量到三个地标的距离,然后移动到新位置。使用机器人里程测量模型,预测新位置,如图16b中的实线机器人图所示。再次检查到三个地标的距离(图16c)。根据获得的测量结果,机器人位姿被修正,导致图16d中的橙色机器人。可以看出,修正后的位姿更接近地面真实位姿(图16d中的青色机器人)。IMU等传感器提供了有关机器人运动的宝贵信息,并在SLAM的预测步骤中发挥了重要作用[147]。另一方面,在SLAM的更新步骤中使用从相机获得的测量距离数据或视觉特征,以减少预测误差[204]。

640.png


SLAM解决方案可分为两大类:滤波(在线SLAM)和平滑(全SLAM)方法[33],下面将简要介绍。


  • 平滑方法依赖于最小二乘优化,使用迄今收集的所有传感器测量值来估计机器人的完整轨迹。因此,内存消耗很高,但仍有可能实时实现全SLAM[270];
  • 第二类SLAM方法是在线方法,与全SLAM方法相比,在线方法具有更低的内存消耗。这源于在线方法仅依赖于先前的位姿估计和传感器读数。然而,与全SLAM方法相比,较低的内存消耗以降低精度为代价。


除了在线或完整之外,SLAM方法还可以根据它们用于收集环境观测的传感器进行分类。使用距离传感器作为观测源的方法和使用相机传感器的方法分别称为激光雷达SLAM和视觉SLAM。表3总结了这些方法。

640.png


LiDAR SLAM


室内环境结构复杂,很可能在距离机器人60米的范围内有障碍物。这样的条件非常适合使用激光扫描仪来感知和绘制环境。基于LiDAR传感器的SLAM方法被称为LiDAR SLAM。尽管LiDAR传感器能够提供高精度数据,但通常伴随着高昂的价格标签,使得LiDAR SLAM成为一种昂贵的解决方案。


SLAM文献包括各种基于激光雷达的SLAM方法,如Hector SLAM[165]、基于关键帧的3D激光雷达SLAM[118]、Google Cartographer[131]、GMapping[116]和TinySLAM[269]。传统上,激光雷达传感器使用旋转机构来扫描周围环境。然而,最近的发展已经导致基于微机电系统MEMS技术的低功率和低成本LiDAR传感器。MEMS激光雷达的价格更实惠,这使其成为机器人研究人员的理想选择。然而,MEMS激光雷达的较低成本是以较短的距离(约9米)和较小的视野(FOV)为代价的,这使得激光雷达SLAM具有挑战性。将MEMS LiDAR数据与IMU等其他数据源融合可以提高SLAM性能[292]。已经表明,利用快速点云配准可以进一步提高定位和建图质量[294]。虽然使用LiDAR传感器可以提供具有卓越精度的距离数据,但其相对昂贵的价格标签是使用更便宜的替代品(如超声波传感器)的动机[71,76,143,301]。


Visual SLAM


另一种SLAM方法是视觉SLAM,其主要集中于单目/立体摄像机。视觉SLAM不得与视觉里程计(VO)混淆[304]。视觉SLAM主要是准备探索环境的全局地图,而VO则用于局部估计机器人姿态。


实现视觉SLAM的一种自然方法是从相机图像中提取特征,并使用它们来确定场景几何体和相机姿态。基于特征的方法要么基于滤波,如基于EKF的视觉惯性里程计[179],要么基于关键帧[159]。乍一看,基于特征的方法似乎非常直观。然而,这些方法限于由提取的特征的类型捕获的信息。正如[93]中所指出的,基于特征的方法在人造环境中会遇到困难。已经提出了一些基于边缘的[87,161]和基于区域的[70]来解决上述限制。在基于特征的方法中,并行跟踪和建图(PTAM)[160-162]的计算复杂度低到足以在使用其相机作为视觉数据源的移动电话上运行。PTAM使用FAST-10角检测器[246]进行特征提取。ORB-SLAM[214]基于ORB特征[248],能够处理小型/大型和室内/室外环境。ORB特性的使用使得ORB-SLAM可以实时运行,而不需要图形处理单元(GPU)。ORB-SLAM收到了两个重要的扩展,产生了该方法的第二个[215]和第三个[58]版本。第二个版本支持双目和RGBD相机。第一个版本仅限于针孔相机模型,但第三个版本(基于第一个和第二个版本以及ORB-SLAM-VI[216])适用于任何相机类型,前提是提供了相机模块。OV2SLAM[97]还提供了一种基于特征的方法,该方法比ORB-SLAM更准确、鲁棒和实时。


也可以采用直接(无特征)方法,其中使用图像强度中的所有信息。使用直接方法,完全避免了由于特征的有限表示能力而导致的显著信息丢失。其中一种直接方法是大规模直接单目SLAM(LSD-SLAM)[93],能够实时构建大规模和一致的环境3D地图。直接稀疏映射(DSM)[315]基于光度束调整(PBA),该调整引入了直接方法中地图重用的思想。DSM显示了中期数据关联的重要性。


虽然大多数SLAM方法都是基于视觉或激光雷达的,但多线索直接SLAM(MD-SLAM)[82]是唯一以统一方式支持激光雷达和RGBD传感器的开源方法。


回环检测技术


有效的SLAM模块必须能够识别先前访问的地点,以减少在多个时间步骤中累积的定位和建图误差。这种能力被称为回环检测。传统上,SIFT[187]和SURF[47]等特征描述符用于回环检测。然而,对于实时应用程序,这些方法在计算上效率很低。研究人员开发了基于单词包(BoW)方法的循环闭合机制[74106271],以弥补SIFT和SURF等描述符的高计算负荷。单词包是指从环境中提取的视觉特征字典,并将其聚集在一起形成所谓的单词。尽管速度很快,但Bow依赖于必须事先知道的固定视觉特征。毫不奇怪,BoW在未探索的环境中表现不佳。为了使BoW能够适应新的区域(以前没有探索过),可以在在线步骤中创建BoW[106]。然而,在线方法的内存要求很高。随着DL在各个领域的重大成就,它已被机器人界采用[219、238、261、310]。用DL增强SLAM的一个显著例子是DXSLAM[13176],它使用CNN提取显著特征以提高SLAM性能。


公开SLAM数据集


对SLAM方法进行研究需要访问多个传感器和移动机器人平台。除了准备上述硬件的成本外,单个研究人员可能很难建立一个SLAM可执行的硬件设置。另一种方法是在从真实机器人获得的公共数据集上开发和评估SLAM方法。Yin和Berger[303]审查了在公共道路上收集的27个公共可用数据集。其中一些数据集适用于SLAM方法的评估。这些数据集的汇总见表4。可以看出,现有的数据集涵盖了室内和室外的各种环境,具有不同的天气和照明条件等。最近,语义SLAM已经普及,这是准备适合语义SLAM的合成数据集的灵感。SSS数据集(ShanghaiTech Semantic SLAM)[59]是此类数据集的一个示例,它为场景组成和单个物体形状和姿态提供了准确的GT。

640.png


未来工作



现实世界中的移动机器人部署


研究自主移动机器人的最终目标之一是将其部署在制造业、医院、仓储等领域。实施多机器人设置很自然,可以更快地完成任务[218]。决定必须以集中或分散方式进行的操作是未来的一个重要方向[101]。还需要支持多机器人设置,并对必须安装在机器人上以执行特定任务的工具集进行有效决策[101]。


自主导航也被用于开发具有不同自主水平的自主船舶。在未来的工作中,重要的是在自主级别为D3和D4的海上自主水面舰艇(MASS)之间建立合作行为。D3自主是指在没有海员的情况下对船舶进行远程控制,而D4是指完全自主的船舶[228]。分析人机交互设置中的安全性也是至关重要的[157]。


SLAM


尽管SLAM文献中有大量的工作,但由于SLAM的复杂性和挑战性,未来的工作仍有重要的研究空白。对于有效的SLAM实施,至关重要的是在勘探(访问新地点)和开采(重新访问已知地点以减少不确定性)之间保持平衡[279],这是由主动SLAM解决的。主动SLAM的未来工作[235]包括主动空间感知、提出评估度量以促进方法的比较,以及执行基准以走向现实世界应用。


SLAM方法通常假设世界是静态的。然而,现实世界中充满了移动物体,这些物体导致了SLAM中的特征识别失败,从而导致跟踪失败[80]。作为未来的工作,DL和光谱方法[298299]可用于实现更鲁棒的特征识别和跟踪[190]。可以从SLAM的地图构建过程中检测和排除动态目标。目前,动态SLAM方法(如[272,273])用于处理环境的动态性。使用语义信息设计语义SLAM是解决动态SLAM的一个持续研究领域[190]。此外,使用语义SLAM将机器人的自主级别提升到下一个级别是对未来任务的挑战[64]。


虽然DL在回环检测方面显示出一些优点,但由于其局限性,真正的回环检测仍然没有得到解决[37]。该限制是由于基于视觉的回环检测方法对不同照明条件的敏感性。基于激光雷达的环路不会受到此类限制,但由于天气条件(如下雨),其性能会降低。提出混合方法,利用基于LiDAR和基于DL的方法的优点和缺点似乎是未来的一个必要方向[37]。


要在现实世界应用程序中部署可视化SLAM方法,它们必须可以在处理能力有限的智能手机等嵌入式平台上执行。因此,SLAM未来的重要工作之一是保持实时执行和准确性之间的平衡[64]。


未知环境中的自主探索


能够自主导航和探索未知环境是非常理想的。为此,Shah等人利用RL提出了一种名为RECON(用于结果驱动导航的快速探索控制器)[258]的方法,该方法是在18个月期间从不同的真实环境(包括不同的季节和照明条件)收集的视觉数据集[16]上训练的。RECON的两个主要组成部分是不确定性感知和上下文条件目标表示以及拓扑图表示。地图的节点表示以自我为中心的观察结果,边缘表示节点之间的距离。


扩展RECON,Shah和Levine[259]专注于在不需要精确地图或传感器数据的情况下,通过看不见的室外环境进行远程自主导航。他们的方法名为ViKiNG(基于视觉的公里级导航和地理提示)的优点有两方面。首先,ViKiNG在规划过程中使用不准确的数据(GPS坐标、卫星地图和示意路线图)作为启发式方法,设法到达给定的目的地。其次,该方法不构建几何地图,仅依赖于环境的拓扑表示。这样,在具有轻量级处理/存储平台的机器人上就不会遇到长距离构建和存储环境密集地图的问题。作者们使用只有80米长的轨迹训练了ViKiNG,但他们成功地达到了三公里外的目标。正如Shah和Levine所指出的,未来的重要工作之一是设计类似于ViKiNG的模型,能够接受文本指令和纸质地图等输入。


结论



自主导航已经走了很长的路,但这段旅程仍在继续。已经尝试了不同的传感器组合和数学方法,导致各种方法;每个都有自己的优点和缺点。本文试图对自主移动机器人的不同方面进行全面综述,包括定位方法、避障、传感器类型、SLAM等。论文还试图强调DL在加强避障和SLAM方法中的作用。综述了常用的仿真工具及其性能。此外,还引入了用于在没有实际机器人的情况下实现SLAM的公开可用数据集(包含真实传感器数据)。最后,指出了未来研究的可能方向。


参考



[1] A Comprehensive Review on Autonomous Navigation


原文首发微信公众号【自动驾驶之心】:一个专注自动驾驶与AI的社区(https://mp.weixin.qq.com/s/NK-0tfm_5KxmOfFHpK5mBA

相关文章
|
存储 传感器 编解码
turtlebot3 在gazebo仿真下 通过 gmapping slam 建立二维平面地图——全过程
turtlebot3 在gazebo仿真下 通过 gmapping slam 建立二维平面地图——全过程
turtlebot3 在gazebo仿真下 通过 gmapping slam 建立二维平面地图——全过程
|
5月前
|
机器学习/深度学习 算法 数据挖掘
计算机视觉五大核心研究任务全解:分类识别、检测分割、人体分析、三维视觉、视频分析
计算机视觉五大核心研究任务全解:分类识别、检测分割、人体分析、三维视觉、视频分析
541 1
|
计算机视觉
【状态估计】基于卡尔曼滤波器和扩展卡尔曼滤波器用于 INS/GNSS 导航、目标跟踪和地形参考导航研究(Matlab代码实现)
【状态估计】基于卡尔曼滤波器和扩展卡尔曼滤波器用于 INS/GNSS 导航、目标跟踪和地形参考导航研究(Matlab代码实现)
|
5月前
|
编解码 算法 数据处理
【论文速递】ISPRS2022 :一种新颖的结合几何语义信息的星载SAR数据立体三维定位方法
【论文速递】ISPRS2022 :一种新颖的结合几何语义信息的星载SAR数据立体三维定位方法
|
11月前
|
传感器 存储 前端开发
视觉SLAM 关键技术与发展概述
最近看了北京理工大学的课程《智能车辆概述与应用》,感觉入门角度讲的还不错的,于是通过本文记录关键内容。
286 0
|
传感器 算法 机器人
【通过粒子滤波进行地形辅助导航】用于地形辅助导航的粒子滤波器和 PCRB研究(Matlab代码实现)
【通过粒子滤波进行地形辅助导航】用于地形辅助导航的粒子滤波器和 PCRB研究(Matlab代码实现)
127 0
|
传感器 机器学习/深度学习 人工智能
最新导航综述!SLAM方法/数据集/传感器融合/路径规划与仿真多个主题(上)
在过去几十年中,自主移动机器人领域取得了巨大的进步。尽管取得了重要里程碑,但仍有一些挑战有待解决。将机器人社区的成就汇总为综述,对于跟踪当前最先进的技术和未来必须应对的挑战至关重要。本文试图对自主移动机器人进行全面综述,涵盖传感器类型、移动机器人平台、仿真工具、路径规划和跟踪、传感器融合方法、障碍回避和SLAM等主题。论文的出发点主要有两方面。首先,自主导航领域发展很快,因此定期撰写综述对于让研究界充分了解该领域的现状至关重要。第二,深度学习方法已经彻底改变了包括自主导航在内的许多领域。因此,有必要对深度学习在自主导航中的作用进行适当的处理,这也是本文所涉及的。还将讨论未来的工作和研究差距。
最新导航综述!SLAM方法/数据集/传感器融合/路径规划与仿真多个主题(上)
|
算法 数据处理 计算机视觉
基于目标运动模型和观测模型的交互多模算法IMM卡尔曼滤波目标跟踪matlab仿真
基于目标运动模型和观测模型的交互多模算法IMM卡尔曼滤波目标跟踪matlab仿真
400 0
基于目标运动模型和观测模型的交互多模算法IMM卡尔曼滤波目标跟踪matlab仿真
|
传感器 机器学习/深度学习 算法
【目标融合】基于扩展卡尔曼滤波器的传感器融合算法附matlab代码
【目标融合】基于扩展卡尔曼滤波器的传感器融合算法附matlab代码
|
传感器 机器学习/深度学习 算法
【目标跟踪】基于扩展卡尔曼滤波器实现多机器人跟踪定位附matlab代码
【目标跟踪】基于扩展卡尔曼滤波器实现多机器人跟踪定位附matlab代码