SuMa++
Chen (Bonn) 2019 · 论文
一句话总结 — SuMa++ 在 SuMa 基础上引入了来自 RangeNet++ 的逐点语义信息,通过语义一致性检查将运动物体从面元地图中滤除,并按语义一致程度对 ICP 残差加权,这显著提升了在动态交通场景中的稳健性——同时不会盲目删除停放的汽车。
问题
SuMa——如同大多数激光雷达 SLAM 系统一样——假设世界是静止的:每个扫描点在 ICP 配准中贡献相同的权重。在驾驶场景中,尤其是缺乏明显静态结构的高速公路上,落在持续移动的异常物体(比如交通拥堵中的汽车)上的错误对应关系,会使帧到模型 ICP 锁定在车流上,从而破坏位姿和地图。简单的解决办法——删除所有可移动类别的点——会带来反效果:停放的汽车往往是最具区分度的静态特征,将其移除会使面元地图更加稀疏,配准效果反而更差。系统需要区分真正在移动的物体和可移动但目前静止的物体。
方法与架构
SuMa 流水线在三处被扩展:一个语义分割前端、地图更新中的动态过滤器,以及 ICP 中的语义权重。
-
在距离图上进行语义分割:RangeNet++——一个基于 SqueezeSeg 架构、以 DarkNet53 为骨干网络的 FCN,在 SemanticKITTI 上训练——为球面投影的每个点预测一个标签,生成原始语义掩码 。每个面元还额外存储所推断的标签 及其概率。
-
泛洪填充式标签精化:对块状 CNN 输出进行反投影会引入标签伪影,通过两步减少:腐蚀操作移除邻域(核大小为 )内含有冲突标签的像素,随后基于深度的填充根据顶点图距离一致(在阈值 内)的邻居,为被腐蚀的边界像素重新赋值,得到精化后的掩码 。
-
通过语义一致性过滤动态物体:在地图更新过程中,新观测 的标签会与渲染出的语义世界模型 进行核对。不一致的面元——被判定为运动中的物体——会在递归稳定性更新中受到惩罚:
因此经过若干次观测后,运动物体的稳定性会降到阈值以下并被移除,而静止的可移动物体(停放的汽车)则作为有价值的配准特征得以保留。
-
语义 ICP:帧到模型的点到平面目标函数变为 ,其中 ,用高斯-牛顿法求解,权重为
其中当扫描标签与地图标签一致时 ,否则为 ——网络自身的置信度会以柔性方式降低语义不一致对应关系的权重。
-
初始化的注意事项:第一帧扫描中的动态物体无法通过一致性检测发现(此时还没有地图),因此仅在初始化阶段移除所有可移动类别。
实验结果
- KITTI road/raw 序列 30–41(乡村+高速公路;不在里程计基准测试范围内,因此不存在分割训练重叠),相对旋转误差(deg/100 m)/平移误差(%):SuMa 平均 1.35/6.13 → SuMa++ 平均 1.04/1.46。高速公路序列 35:5.11/26.8 → 2.90/1.11;序列 40:1.09/18.0 → 0.75/1.95;序列 41:1.24/15.6 → 1.14/1.67。
- KITTI 里程计训练集:SuMa 平均 0.36/0.83 → SuMa++ 平均 0.29/0.70(IMLS-SLAM −/0.55,LOAM −/0.84)。朴素基线”SuMa nomovable”在城市序列中发散(平均 23.3/9.24;例如序列 00:22.0/58.0)——移除停放的汽车摧毁了良好的特征。
- KITTI 测试集(服务器端):旋转误差 0.0032 deg/m,平移误差 1.06%,对比原始 SuMa 的 1.39%。
- 在 Xeon W-2123 + Quadro P4000 上的运行速度:RangeNet++ 平均每次扫描耗时 75 ms,面元建图耗时 48 ms,在整合回环检测时最多耗时 190 ms。
对SLAM的意义
SuMa++ 是最早使用深度分割网络处理动态环境的激光雷达 SLAM 系统之一——这是纯几何方法在交通密集或车流缓慢移动时难以应对的问题。其关键的实证经验——通过地图与扫描间的语义一致性来过滤真正在移动的物体,而不是删除整个可移动类别——成为城市自动驾驶 SLAM 中的标准做法,与 DynaSLAM 在视觉 SLAM 领域所做的工作相呼应。它还巩固了距离图作为学习式激光雷达处理的标准中间表示的地位,并生成了可供下游导航使用的语义标注面元地图。