作为一名技术博主,最主要的还是需要不断地学习新的知识,而最好的学习就是不断地阅读新的文章,并不断地学习和总结前人的思路和方法。所以博主打算开一个新的系列来介绍。这里主要来介绍一下《SuMa++: Efficient LiDAR-based Semantic SLAM》这篇论文。论文原文链接为:https://www.ipb.uni-bonn.de/wp-content/papercite-data/pdf/chen2019iros.pdf。下面的主要框架为任乾博士博客的内容,加入了作者个人的学习和理解。
SUMA++
可靠的高精度定位和建图是自动驾驶系统的关键环节。除了高精度的几何信息以外,地图中还应该包含语义信息,以为载体的智能行为提供依据。但在实际环境中,移动物体的存在会使建图过程变得更加复杂,因为它会污染地图并影响定位效果。在这篇文章里,我们在传统基于曲面建图(surfelbased mapping)方法的基础上,增加语义信息的融合以解决上面提到的问题。语义信息的提取是通过神经网络完成的,该网络对点云中所有的点都给予类别标签,从而让我们在使用曲面建图时,得到的是带有标签的曲面。通过这种方法,不仅可以滤除动态物体,而且可以使用语义信息对里程估计进行约束,以提到地图精度。
文中作者提到主要的两个贡献点在于
对点云进行语义分割,根据语义信息识别动态物体,并在地图中去除。
把带有语义标签的物体进行数据关联,和几何信息一起建立约束关系,从而提高建图精度。
下图为SuMa++整体的网络结构,可以看到主要的流程分为以下四个部分
通过网络对点云进行语义分割
使用漫水填充(flood-fill)方法消除错误的类别标签
使用滤波器进行动态物体检测,并移除动态物体
建立带语义信息约束的ICP模型,优化里程精度

此外SuMa++离不开Surfel地图,Surfel地图中存在一些预定义的概念:
语义分割使用的是RangeNet++方法,它的主要内容在另一篇论文里,该论文并没有对这个方法进行太多的改进。RangeNet++以Darknet53 Backbone作为基础改进为RangeNet53,从而实现深度图像的分割,并重映射到点云上。详细内容可以参考这篇文章。

漫水填充作为图像处理中常用的方法,在这里用于对错误分类进行修正,避免里面的分类错误对后续环节产生不好的影响,下图中左侧是右侧图中虚线框方法的部分,先对(a)中的错误识别结果进行剔除,得到(b),然后利用周围的标签点云对他进行填充,得到©。最后(d)中显示的是©对应的深度图。

下面是漫水填充的伪代码,在预处理内部,通过原始的语义掩码
S
r
a
w
S_{raw}
Sraw,和对应的定点地图
V
D
V_D
VD,(在
S
r
a
w
S_{raw}
Sraw中每个像素的值是一个语义编号,在定点地图中对应的像素包含最近3D点在雷达坐标系中的3d坐标。)首先移除在范围d内的邻居中存在至少一个不同语义编号的像素,组合该掩码和定点深度信息,设置空白边界像素为邻居带有标号的像素,如果对应点的距离是一致的,即小于某个阈值,即填充。

动态物体的识别是根据物体在同一位置出现的概率实现的。具体来讲,就是说如果在这一帧中,某个位置出现了物体 S D S_D SD,此时会同时将当前帧点云的位置 S D S_D SD映射到地图中的位置 S M S_M SM中,如果在下一帧中,物体物体 S D 1 S_{D_1} SD1还在地图的 S M S_M SM处,且连续很多帧它都出现在同一个位置 S M S_M SM,那么它就是静止的,反之,在每一帧中检测到的位置都发生变化,那么它就是移动的。
在这里涉及到一个稳重比较重要的概念,也就是Surfel地图,Surfel地图创新的使用地图中的点形成的面元为对象,以地图一致性作为指标进行优化。文中提出使用语义分割提供的label来处理运动物体,即通过比较新观测位置
S
D
S_D
SD和地图中已经存在的
S
M
S_M
SM的语义一致性,在我们更新地图时,如果label是不一致的,我们假设那些面元属于移动物体。这时我们增加一个惩罚项
o
d
d
s
odds
odds到稳定性对数几率
l
s
l_s
ls中。在一些观测后,我们可以移除不稳定的面元。下面是惩罚函数,其中
o
d
d
s
(
p
)
=
log
(
p
(
1
−
p
)
−
1
)
odds(p)= \log (p (1-p)^ {-1} )
odds(p)=log(p(1−p)−1),而
p
s
t
a
b
l
e
p_{stable}
pstable和
p
p
r
i
o
r
p_{prior}
pprior是稳定面元的分别给出了相容的测量值和先验概率。
e
x
p
exp
exp当中是补偿噪声量,
a
a
a是面元法向量
n
s
n_s
ns和测量法向量的的夹角,
d
d
d是测量法向量相对于面元的距离。测量法向量取自于
N
D
N_D
ND法向量地图。
