Static Map Layer:为了做全局规划,机器人需要一个超越其传感器的地图,以了解墙壁和其他静态障碍物的位置。 静态地图可以先用SLAM算法生成,也可以从架构图中创建。 当层接收到地图时,updateBounds方法将需要返回覆盖整个地图的边界框。 然而,在随后的迭代中,由于它是静态的,所以绑定框的大小不会增加。 在实践中,静态地图一直是全局代价图的底层,因此它将其值直接复制到主成本图中,因为在其之前没有其他层将被写入主节点。 (如果机器人在使用生成的地图导航时运行SLAM,则分层成本图方法允许静态地图层更新,而不会丢失其他层的所有先前信息。)
Obstacles Layer:该层从诸如激光和RGB-D相机的高精度传感器收集数据,并将其放置在二维网格中。 传感器和传感器之间的空间被标记为自由空间,传感器读数的位置被标记为占用。 每个周期,边界框扩展以适应所有新数据。 根据传感器数据与静态映射所需的信任级别,该层可以配置为覆盖主成本映射中的值。 或者,该层只能写入致命的障碍,并将未知区域更新为自由空间。
Voxels Layer:这一层具有与障碍层相同的功能,但在三维空间中跟踪传感器数据。在[12]中引入的三维像素网格允许更智能地清除障碍物,以反映可以看到的多个高度。
Inflation Layer:如前所述,膨胀过程在每个致命障碍周围插入缓冲区。增加到costmap的值取决于离最近的障碍的距离。机器人肯定会发生碰撞的地点有致命的代价,而且周围的区域有一些小的非致命的成本。这些值确保机器人不会撞上致命的障碍物,也不愿太靠近。更新边界的步骤将增加前一个边界框,以确保新的致命障碍将被夸大,并且在前一个跳跃框外的致命障碍也会膨胀到跳跃的盒子中。updateValues步骤直接操作在master costmap上,而不存储本地副本。
Sonar Layer:单片成本地图能够处理声纳数据,但是分层成本地图增加了如何处理它的选项。将一层用于声纳读数可以避免玻璃墙被激光观测排除的问题。此外,我们还可以使用这一层来处理不同于高准确度障碍层的声纳数据。我们建造的声纳层实现了一个概率声纳模型,并使用贝叶斯逻辑更新成本图。然后我们就可以设定一个截止概率,我们只写一些我们相对确定的数据,在master costmap中。请注意,这种方法允许我们保持概率的语义含义,而不必直接将它们与成本结合起来
Caution Zones Layer:这个层让我们能够以比空闲/占用更详细的方式指定机器人环境的区域。尽管没有障碍,但大多数机器人都希望避免导航到楼梯导向。或者机器人不应该导航到特定的人的办公室。有许多场景,运营商将要限制机器人可以安全驾驶的地方,尽管出现导航。在实践中看到的这些限制的一种技术是在静态地图上标记障碍物。这种技术可以起作用,但可以从其他应用程序(如AMCL)可能需要的地图中删除信息。这一层还使我们能够标记不一定被禁止的区域,但不是可取的。向厨房增加非致命成本可以确保机器人不会靠近危险液体驱动,除非没有其他选择。这些区域也可用于社会上不太可接受的领域,例如人与物体之间的空间,如电视机,如Ferguson和Likhachev所示
Claustrophobic Layer:通胀层在致命障碍周围增加了一个小缓冲区,但幽闭恐怖层增加了更大的缓冲区,以增加接近障碍物的相对成本。这一层对于那些关于机器人相对于障碍物的确切位置有更多不确定性的场景来说是很有用的,而在障碍物中驾驶的几率或成本也很高。
正如在相关的工作部分中所看到的,将更复杂的成本添加到costmap的主要动机之一是为了建模由人机交互引入的约束。
Proxemic Layer:研究人员和机器人之间空间关系的研究稳步上升,以及确保机器人不违反预期关系的方法。最常见的方法是增加高斯分布,或者是多重高斯分布的混合物,到costmap,如Kirby,[8]。这些调整创造了周围的区域,使路径更接近人们更昂贵的路径,尊重他们的代理关注点。
我们创建了一个代理层,它实现了Kirby混合的高斯模型。利用检测到的人的位置和速度(从人的腿的激光扫描中提取出来),该层将每个人的高斯值写入到图层的私有成本地图中,然后添加到master costmap中。根据两个不同的参数(振幅和方差)来度量生成的值。一般来说,当你增加这些参数时,最优路径会离你的人更远。然而,正如在[13]中所讨论的那样,在最优路径更改为最短路径之前,这些参数可以发生多大的改变是有限度的。这意味着调整参数,试图让机器人更远的离开,相反的情况发生,这在社会上是次优的。[13]的结果是复制的
我们也开始实施相关工作中提到的更复杂的代理模型。一些模型比一个人的位置和方向更多地假设信息,我们的层实现假设它们与足够强大的传感器能力结合在一起来探测像头部和身体姿势这样的东西。
Hallway Layer:在一些文化中,人们习惯走在正确的道路上,就像许多国家的司机在马路的右边一样。我们实现了一个层,它决定了机器人是否在走廊里,动态地增加了走廊左边的成本,让机器人更喜欢右边。我们在最近的一项用户研究中使用了一个类似的模型,在这里,层改变了成本,让机器人更喜欢在走廊的另一边进行导航,这是最接近的人(通常是右侧)。这一层的添加不仅能有效地将机器人移到走廊的一边,还能使人在互动过程中更有效
Wagon Ruts Layer: 如果机器人的目标是避免在社会上受到侵害,并尽量减少意想不到的障碍,一个有效的策略可能包括模仿人类的交通模式。这一层可以降低人们走过的路的成本,从而产生机器人的最佳路径。你也可以逆转成本的极性,并在人们通常是为了减少社会混乱的地区增加价值。
手机扫一扫
移动阅读更方便
你可能感兴趣的文章