2023-10-12
自主探索
00
请注意,本文编写于 343 天前,最后修改于 339 天前,其中某些信息可能已经过时。

目录

1. 摘要
2. 模块划分
2.1 机器人模型
2.2 定位和建图
2.3 语义分割
2.4 对象位置提取
3. 基于语义的探索
3.1 边界点检测
3.2 基于语义感知对边界点进行评估
3.3 路径规划和导航

Milas A, Ivanovic A, Petrovic T. ASEP: An Autonomous Semantic Exploration Planner with Object Labeling[J]. IEEE Access, 2023. PDF

1. 摘要

出发点: 到目前为止,利用环境中的语义信息进行自主探索是一个研究较少的领域。在加入语义分割进行目标检测,并完成探索后,可以得到未知区域的地图,地图上标记了感兴趣的对象。

因此,提出了一种称为自主语义探索规划器(ASEP)的自主无人机探索规划器,该规划器能够在缺乏GPS的室内环境中实现实时地图绘制、探索、导航、目标检测和标记。

贡献点:

  • 提出一种探索策略:利用基于边界的方法来生成候选点,并结合语义信息,使用了新的效用函数来迭代探索未知环境并标记所有感兴趣的对象。所使用的信息增益函数,不仅包含环境的几何信息,还包含环境的语义信息。

  • 在探索过程中使用3D对象标记:包括从2D图像中提取语义分割的对象,以及通过相机深度点云来估计对象在环境中的位置。

  • 搭建了一个用于地图绘制、勘探、路径规划和导航的完整系统:该系统是模块化的,可以扩展或替换为自定义模块。该系统利用低成本的传感系统,确保在资源有限的无人机上进行探测和物体标记。

主要目标:

  • 探索未知环境并构建三维地图
  • 在构建出的三维地图中标记感兴趣的对象(事先定义好)
    • 对象标记包含位置和类别,所以需要一种能够实时检测物体并估计其位置的算法

2. 模块划分

2.1 机器人模型

机器人模型:用状态数组表示,包含有位置信息和偏航角信息

传感器模型:水平和垂直视场均为0-360度,提供丰富的视觉和深度信息

同时需要考虑每个自由度的速度与加速度的动态约束,以及进行碰撞检测。

2.2 定位和建图

采用ORB-SLAM3算法作为SLAM算法

  • 通过RGB-D相机数据使用ORB-SLAM3算法,使用深度信息来合成三维坐标,用于提取图像特征。为了避免跳变问题,使用多传感器融合方法,考虑imu数据和姿态测量数据。

用摄像机点云生成OctoMap

  • 用于整个系统流程中,包括探索、路径规划和导航

2.3 语义分割

将来自RGB-D相机的输入图像表示为像素值的二维数组。通过语义分割算法来确定图像中每个对象的语义标签,将对象映射到对应的标签上。

使用HRNet模型做语义分割。

2.4 对象位置提取

一旦在2D图像中对对象进行了语义分割,那么下一步就是确定这些对象在环境中的位置以用于探索。

  • 确定对象的图像掩码,得到对应掩码的点云
  • 根据得到的点云,求解点云质心,作为对象的三维位置
pojbic=i=1NpixelscoiNpixelsp^c_{ojb_i}= \frac {\sum^{N_{pixels}}_{i=1} c_{o_i}} {N_{pixels}}

image-20231012002811159

系统输入模块由一个前置摄像头组成,为SLAM和OctoMap的创建生成输入数据。语义分割模块和目标姿态提取模块分别完成目标识别和目标姿态估计。基于语义感知的探索策略生成一个目标点,指导机器人进行规划和导航。导航系统通过ORB-SLAM3实现。

3. 基于语义的探索

3.1 边界点检测

OctoMap在相机点云的基础上生成,当每次有新的点云数据到来时,OctoMap会随之进行更新。

将边界体素定义为:具有至少一个未知邻居的自由体素。

边界体素的中心通常被称为边界点。由于空间是有限的,一旦边界集合变空,就认为探索已经完成。

对边界集合使用均值偏移聚类算法,得到边界候选点。

3.2 基于语义感知对边界点进行评估

加入语义感知的主要目标是探索环境并在地图上标记感兴趣的对象。已标记的感兴趣对象包含在探索策略中,对每个候选边界点进行评估,评估方式如下:

G(vc)=αIgg(vc)+βIsg(vc)G(v_c) = \alpha I_{gg}(v_c) + \beta I_{sg}(v_c)

相比传统的信息增益,新增了语义信息增益,使用候选节点的几何信息增益和语义信息增益同时进行评估。

每个候选节点的语义信息增益是来自当前点的所有可见对象的总和,与对象的距离成反比。

选取出得分最高的候选点作为目标点进行后续探索。

3.3 路径规划和导航

一旦选择了最佳边界点,就会将其作为航路点转发给路径规划器,机器人开始沿着规划好的路径导航到最佳候选点。

随着路径规划,OctoMap不断更新,可能会出现障碍物影响运动。为了克服这个问题,路径规划器需要在运动过程中检查路径的有效性。对于路径上的每个点,都需要检查无人机是否能够正常通行。如果在规划好的路径上检测到障碍物,则无人机停止,当前目标点被归类为无法到达。开始重新计算新的候选者。

使用基于MPC的跟踪方法来实现路径执行和无人机控制。保证安全稳定的飞行。

image-20231012010223097

本文作者:southyang

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!