室内激光SLAM的回环检测与重定位,为什么会“认错地方”?
室内激光SLAM的回环检测与重定位,为什么会“认错地方”?
内容摘要
点击“计算机视觉life”,选择“星标”机器人AI干货第一时间送达UpDown-SC 开源:同时保留顶棚与低处结构地图已经建好,机器人重新走进厂房,眼前的走廊、
点击“计算机视觉life”,选择“星标”
机器人AI干货第一时间送达
UpDown-SC 开源:同时保留顶棚与低处结构
地图已经建好,机器人重新走进厂房,眼前的走廊、设备和顶棚似曾相识。它需要回答:当前这帧点云,对应地图里的哪个地点?
回环检测和全局重定位,通常先做地点检索,找出少数候选位置与朝向,再用点云配准核验。若第一步把两个相似的区域认成同一个地点,后面的几何优化就可能从错误的位置开始。
无界动力开源的 UpDown-SC 聚焦检索前端。它将同一帧扫描的高处和低处结构分别编码,共同寻找候选地点,无需训练。后续仍由 ICP 等几何配准方法估计和核验位姿。
图 1|上方为实测扫描侧视图,下方对比两种表示。矩阵是方法示意,不是性能统计。
1. 顶棚很稳定,却未必能区分地点
经典 Scan Context(SC)把点云投进极坐标网格:按距离分环、按方位分扇区,每个格子只存一个数,即格子里的最高点高度。这种表示简单、高效,也能通过扇区循环移位处理朝向差异。
在室内,顶棚、横梁或管线可能沿着很长一段路连续分布,而门洞、隔断、墙角、设备和家具更多出现在中低处。若每格只留最高点,低处的差异就可能不再进入描述子。两个不同的房间或走廊,因而可能得到相似的描述。
下面的论文图来自同一帧实测查询点云。它有 467 个有效格子,SC 中 431 个格子的最高点来自上方结构;其中 197 个格子也有中低处回波,却没有保留在单路描述里。这一帧按“顶棚主导格子最多”的固定规则选出,用来展示问题,不代表整个数据集都具有这一比例。
图 2|查询点云俯视图。橙点为扫描原点,原图保留 10 m 比例尺。
图 3|三个描述图的圆盘大小一致,不将单路图放大、双路图压缩。红点标出被单路最高值遮蔽的低处格子;两路继续使用论文原图的统一高度色标。
UpDown-SC 仍保留顶棚等高处结构,同时为中低处几何留出独立通道。顶棚提供稳定轮廓,低处结构帮助区分相邻区域。
这段短视频把同一帧扫描从侧视图转成俯视描述,适合先直观看一遍上下两路是怎样出现的。
视频 1|从实测点云到上下双路描述(21 秒)
2. 两路描述怎样保持可比
跨时间、跨安装状态比较描述子,需要一致的垂直参照。UpDown-SC 用重力方向对齐扫描,消除横滚和俯仰变化;不同安装高度通过实测的描述原点高度表达在统一坐标下。偏航差异则交给后续的扇区对齐处理。
上下分界从先验地图的高度分布中估计,再复用到查询扫描。分界面以下保留低处或中部结构的最高点,分界面以上保留高处结构的最低点,分别记录下部结构的上沿与顶部结构的下沿。这就是“双包络”表示。
每个通道都有独立的有效性掩码。匹配只比较地图与查询都有效的格子,区分“没有观测”和“观测到低高度”。两路共同参与候选排序,扇区循环移位用于估计偏航差异。
3. 检索提出候选,ICP 核验几何关系
查询扫描经过重力对齐与双路编码后,检索返回候选地图关键帧和偏航估计。ICP 再以候选为初值,优化点云相对先验地图的六自由度位姿,并检查几何拟合。通过核验的结果可用于回环或全局重定位。
图 4|论文流程示意,按编号阅读。第 4 个面板展示的是以检索朝向初始化后的点云叠加,不是 ICP 已收敛的结果;配准后的实际回放见下方视频。
这里需要区分两个指标:Recall@1 看第一检索候选是否对应正确地点,ICP 拟合接受率看配准是否通过预设核验条件。最终位姿精度还需要与参考真值比较。
下面的片段展示先验地图上的连续配准。灰色为固定地图,青色为 ICP 配准后的查询点云,红叉保留了未通过核验的尝试。完整演示中的 91.8% 对应候选窗口的 ICP 拟合接受率,应与下文检索结果分别阅读。
视频 2|先验地图上的连续点云配准(22.5 秒)
4. 实验结果
公开项目页使用统一的重力对齐前端,记作 +G。下面摘录 SC + G 与 UpDown-SC + G 的六组检索结果,均在 ICP 之前统计,单位为百分比。R@1 看第一候选是否正确,R@5 看前五个候选中是否包含正确地点;每行较高值加粗,平局同时加粗。
第一候选召回率 R@1(%)
|
|
|
+G |
|---|---|---|
|
|
|
69.4 |
|
|
|
64.2 |
|
|
|
48.3 |
|
|
|
54.4 |
|
|
96.4 |
|
|
|
98.3 |
|
前五候选召回率 R@5(%)
|
|
|
+G |
|---|---|---|
|
|
|
86.9 |
|
|
|
87.2 |
|
|
|
70.7 |
|
|
|
82.5 |
|
|
|
100.0 |
|
|
100.0 | 100.0 |
查询数依次为 320、148、58、57、28、60。完整基线、协议及逐查询来源见项目页结果表与结果溯源文档。
室内双序列中,R@1 从 62.5% 提高到 69.4%,增加 6.9 个百分点。Construction Hall 包含室外到室内的混合路段,也有提升。两组跨设备测试则考察了安装状态变化后的检索表现。
M2DGR 和 Newer College 的 R@1 则由 SC + G 领先,其他基线在个别场景中也有更高结果。UpDown-SC 的设计重点,是室内顶部结构遮蔽低处线索、传感器安装变化时的地点辨识;室外结果不能照搬室内结论。
下面两幅论文原图展示室内双序列的全部 320 次查询:蓝点为第一候选正确,红叉为错误,淡红线连接错误查询与其选中的地图关键帧。除了总体百分比,还可以对照各个分支上的失败分布。
图 5|两幅结果图完整保留,手机阅读时上下排列。第一候选正确率分别为 62.5% 和 69.4%。
5. 换一张地图,看点云实际怎样对齐
除了上述检索表,视频还展示另一张先验地图上的配准回放。短片中青色查询点云在 Construction Hall 地图的不同区域依次出现,右侧局部视图用于检查轮廓是否重合。这个片段主要帮助理解“检索候选如何落到地图上”,不应把视频里的局部回放当作整个数据集的统计结论。
视频 3|另一张先验地图上的配准
6. 开源范围与使用条件
目前的公开仓库包含不依赖 ROS 的 C++ 描述与检索实现、实验协议、基线适配、结果文件、论文绘图代码和来源记录。仓库里的紧凑结果包可以先用于检查公开数字;完整评测输入包含哪些数据组、应放在哪些路径,详见数据说明。完整包的下载状态请以项目页为准。
复现从已经去畸变、完成运动补偿的关键帧点云开始,同时需要位姿与重力信息。生成这些关键帧的上游 LIO 前端及原始 rosbag,不在本次代码仓库的发布范围内。
使用时需要可靠的重力方向、安装高度参照,以及后续几何核验。车间、楼宇中的重复顶棚是本文关注的场景;室外开阔环境或其他雷达配置,应结合对应实验判断适用性。
从头看完整过程⬇️
想直接上手,先看
项目主页:https://jiejie567.github.io/updown-sc/
中文 README:https://github.com/jiejie567/updown-sc/blob/main/README_CN.md
代码仓库:https://github.com/jiejie567/updown-sc
新品上新
让机器人真正走进真实场景:从“能移动”到“会认路”EDU-D360 × EDU-BOX 一体化智能机器人方案来了
“超级拓展坞”正式发布,EDU-BOX走向实际应用,让机器人从“会走”到“会干活”研发快人一步
福利优惠
推荐阅读