目录

ERASOR-译


ERASOR:基于自我中心比率的伪占用的动态对象移除静态3D点云地图构建

摘要:城市环境的扫描数据通常包括动态对象,例如车辆、行人等。然而,在构建具有顺序累积扫描数据的 3D 点云地图时,动态对象通常会在地图中留下不需要的痕迹。这些动态物体的痕迹作为障碍物,阻碍移动车辆实现良好的定位和导航。为了解决这个问题,本文提出了一种新的静态地图构建方法,称为 ERASOR,基于自我中心比率的伪占用的动态对象移除,它对运动模糊性快速且鲁棒。我们的方法将注意力集中在城市环境中大多数动态物体不可避免地与地面接触的性质上。因此,我们提出了一种称为伪占用的新概念来表达单位空间的占用,然后区分不同占用的空间。最后,采用 Region-wise Ground Plane Fitting (R-GPF) 来区分候选箱中可能包含动态点的静态点和动态点。正如在 SemanticKITTI 上进行的实验验证的那样,我们提出的方法相对于最先进的方法产生了有希望的性能,克服了现有的基于光线追踪和基于可见性的方法的局限性。

索引词——建图;距离感应


I. 介绍与相关工作

对于大多数移动平台,如无人地面车辆 (UGV)、无人机 (UAVs) 或自动驾驶汽车,恢复点云地图对于实现长期自主性至关重要 [1]-[10]。机器人可以利用地图提供的相邻几何结构的静态信息来实现成功的定位或导航。该地图可以用许多不同的形式表示,例如基于特征图的表示 [11]、基于占用的表示 [10]、[12] 或结构方差稳健的地点表示 [3]。本文将地图的范围限制为 3D 点云地图,该地图是由三维 LiDAR 传感器获得的激光扫描的累积生成的。

不幸的是,由于扫描数据呈现了周围环境的快照,因此城市环境中的扫描数据不可避免地包括动态对象的表示,例如车辆、行人等 [13]-[16]。此外,由于 3D 点云图是扫描数据顺序积累的产物,因此可能存在动态物体的痕迹,或鬼影痕迹效应 [8]、[13],如左图 1 所示。这些动态对象的痕迹在地图中充当障碍物,从而阻碍移动机器人进行良好的定位和导航。

解决这个问题的常规方法主要分为两类:a)在地图生成时拒绝动态对象[16],[17];b)使用完整的生成地图集拒绝动态对象[7 ]、[8]、[15]。本文提出的方法侧重于后一种情况。因此,后一类可以进一步分为三种主要方法:a)基于分割的方法,b)基于光线追踪的方法,以及 c)基于可见性的方法。

首先,基于分割的方法通常基于聚类[16]、[18]、[19]。 Litomisky 和 Bhanu [18] 通过使用视点特征直方图 (VFH) ,以及 Yin 等人在静态集群中区分动态集群。 [19]利用特征匹配来检查错误的对应关系,然后将它们作为种子从动态对象中提取集群。尹恩等人[16]提出了一种基于区域增长的方法。

此外,基于深度学习的语义分割或检测已经导致性能的额外显着提高[20]。给定具有动态标签的正确分割点,可以通过排除预测的动态点 [15]、[21] 直接构建地图。然而,现有的基于分割的方法目前只关注动态点拒绝,而不是显示最终的静态地图。此外,这些都严重依赖于监督标签;因此,它们容易受到标记错误或未标记类的动态对象的影响[22]。为了缓解这个问题,有必要考虑扫描到地图的关系。

Occupancy grid [17] 和 Octomap [12] 是使用光线追踪的典型方法,它们计算 gridmap 空间中扫描的命中和未命中并决定空间的占用。通过扩展,Schauer 和 Nüchter [14] 提出通过遍历体素占用网格和 Pagad 等人来移除动态点。 [13] 提出了对象检测和 Octomap 的组合。然而,基于光线追踪的方法计算成本很高,这导致引入了基于可见性的方法来降低计算成本[8]、[10]、[15]。然而,这种假设存在入射角模糊性;随着从地面的距离测量变得更长,一个点的入射角变得更加模糊,因此相邻的地面点可能被错误地视为动态物体(图2(a))。为了解决这个问题,Pomerleau 等人。 [8] 利用贝叶斯方法,使用法线和入射角来表示每个点的状态。通过扩展,Kim 和 Kim [15] 提出了一种像素到窗口的比较方法,以考虑入射角模糊性。然而,之前的所有工作都在努力解决遮挡问题(图 2(b)),一旦在动态点后面没有观察到静态点,就不可能去除巨大动态对象的动态点(图 2(c)) .

在本文中,我们提出了一种新的静态地图构建方法,称为基于 pSeudo Occupancy 的以自我为中心的比率动态对象移除 (ERASOR) ,以克服上述方法的局限性。我们的方法是一种无可见性的方法,并利用了我们提出的在垂直列中组织的点的表示,称为伪占用。本文的贡献有四个:

  • 我们提出了一种称为扫描比测试 (SRT) 的快速且稳健的方法,以根据城市环境中大多数动态对象(例如陆地车辆和行人)不可避免地与地面接触的性质来获取包含动态点的箱。
  • 提取箱后,我们应用区域级地平面拟合 (R-GPF),这是一种具有低计算负载的新型静态点检索方法。 R-GPF 克服了基于光线追踪的方法和基于可见性的方法的潜在局限性,详细信息如图 2 所示。
  • 对其他最先进的方法进行了验证。据我们所知,这是在 SemanticKITTI [5] 上与其他最先进的方法进行定量比较的第一次尝试。特别是,我们指出了精度/召回指标的局限性,并提出了适用于静态地图构建任务的替代指标:保留率和拒绝率。
  • 我们提出的方法显示出优于最先进方法的有希望的性能。特别是 ERASOR 以最少的静态点损失去除动态点,并且比最先进的方法至少快十倍。

本文的其余部分组织如下:第二节解释了伪占用的概念和我们提出的方法。第三节描述了实验和新的误差度量,第四节讨论了实验结果。最后,第五节总结了我们的贡献并描述了未来的工作。

II. 通过 ERASOR 构建静态地图

我们提出的静态地图构建方法的示意图如图 3 所示。以下段落重点介绍了 ERASOR 每个模块背后的问题定义和推理。请注意,本文主要关注静态地图构建的实例级动态对象拒绝。也就是说,城市环境的大规模变化,例如建筑物的重建或修复,超出了这项工作的范围

A. 问题定义

令 $\mathcal{P_t} = \lbrace\mathbf{p}_1, \mathbf{p}_2, . . . , \mathbf{p}_n\rbrace$ 是在时间步 $t$ 包含 $n$ 个点的一组点云,其中每个点在笛卡尔坐标中表示为 $\mathbf{p}_k = \lbrace x_k, y_k, z_k\rbrace$。令 $\mathcal{P}_t^Q$为查询帧上的查询点云,${ }_{Q}^{W} \mathbf{T}_{t}$为与$\mathcal{P}_t^Q$相关联的 $SE(3)$ 位姿。在本文中,假设姿势集是通过配准优化或校正后给出的。通过让${ }_{Q}^{W} \mathbf{T}_{t} * \mathcal{P}_t^Q$成为 $\mathcal{P}_t^Q$ 在世界框架 $W $中的变换表示,使用一组原始 LiDAR 扫描构建的先验地图 $\mathcal{M}$ 可以表示如下: $$ \mathcal{M}=\bigcup_{t \in[T]}{ }_{Q}^{W} \mathbf{T}_{t} * \mathcal{P}_{t}^{Q} $$ 其中 $T$ 是总时间步长,$[T ]$ 等于 $\lbrace1, 2, . . . , T - 1, T\rbrace$。请注意,$\mathcal{M}$ 在世界框架上,包含所有测量的动态点。

接下来,设 $\mathcal{P}_t^M$ 为 $\mathcal{M}$ 的子图相对于查询点云坐标表示,这等于 $\mathcal{M}$ 的子图通过${ }_{W}^{Q} \mathbf{T}_{t} = { }_{Q}^{W} \mathbf{T}_{t} ^{-1}$变换。在本文中,上标 $Q$ 和 $\mathcal{M}$ 分别用于表示查询和地图。通过定义 $\hat{\mathcal{M}}$ 是估计的静态图,我们感兴趣的问题定义如下: $$ \hat{\mathcal{M}}=\mathcal{M} - \bigcup_{t \in[T]} \hat{\mathcal{M}}_{dyn,t} $$ 其中 $\hat{\mathcal{M}}_{dyn,t}$ 是指由 $\mathcal{P}_t^Q$ 和 $\mathcal{P}_t^M$ 之间的差异确定的估计动态点。

在介绍我们的无可见性方法之前,必须对单位空间的各个方面进行解释。我们的方法将注意力集中在城市环境中大多数动态物体的性质上,例如地面车辆和行人,它们不可避免地与地面接触。基于这个假设,我们可以构建四种可能的情况:

  • 在$\mathcal{P}_t^M$中有物体在地面上,而在$\mathcal{P}_t^Q$中同一位置的地面没有物体。
  • 在$\mathcal{P}_t^M$中地面上没有物体,而在$\mathcal{P}_t^Q$中相同位置的地面上有物体。
  • 在$\mathcal{P}_t^M$和$\mathcal{P}_t^Q$中都有一个物体在地面上。
  • 在$\mathcal{P}_t^M$和$\mathcal{P}_t^Q$中地面上没有物体。

在这些情况中,表示动态对象的点将被分类为第一种情况和第二种情况。但是,我们的目标是细化地图云,因此忽略了第二种情况。为了清楚起见,我们定义了两个术语;第一种情况可能是动态情况,而第三和第四种情况肯定是静态情况。

因此,我们的目标可以解释为检测 $\mathcal{P}_t^M$ 中满足潜在动态情况的单位空间,并检索包含动态点的区域(参见第 II.D 节)。然后可以通过删除动态部分来细化单位空间集(参见第 II.E 节)。

B. 感兴趣的空间

在 $\mathcal{P}_t^M$和 $\mathcal{P}_t^Q$ 被分离到单位空间之前,点空间的物理有效域或感兴趣体积 $ (VOI, \mathcal{V}{t})$ 定义和表述如下: $$ \mathcal{V}{t}=\left{\mathbf{p}{k} \mid \mathbf{p}{k} \in \mathcal{P}{t}, \rho{k}<L_{\max }, h_{\min }<z_{k}<h_{\max }\right} $$ 其中 $ρ_k = px2k + y2k$; $Lmax$、$hmin$ 和 $hmax$ 是常数参数,分别表示最大径向边界、VOI 的最小高度和 VOI 相对于地面的最大高度。我们感兴趣的动态对象(例如车辆或行人)的高度通常落在合理的范围内 [6]、[7]。因此,我们可以设置 hmax = 3.0m,hmin = -1.0m 和 Lmax = 80.0m。请注意,最小值hmin = -1.0m,低于地面,即h = 0m,设置为覆盖倾斜区域以及检测到的地面高度的不确定性。

请注意,$VMt$ 是通过邻居搜索从 M 中提取的,即 K-D 树 [23],关于查询帧的位置,然后通过 $WQ Tt -1$ 进行变换以降低计算成本。这是因为 M 主要由超过一百万个点组成;因此,将所有点转换为查询帧然后提取 $VMt$ 是不划算的。

C. 按区域划分的伪占用描述符

对于区域级动态对象移除,VOI 由称为区域级伪占用描述符 (R-POD) 的以自我为中心的空间占用描述符封装。它的设计受到感兴趣细胞 (COI) [7] 和扫描上下文 [6] 的启发。

金等人。 [7] 提出 COI 将点云中的垂直信息编码为二进制位。然而,COI 使用 RGB 格式并且不适合 LiDAR [3]。另一方面,Scan Context [6]、[24] 从每个 bin 中获取最大高度,并以自我为中心的方式将它们排列成 2D 矩阵。检查扫描到扫描的关系是有效的,但是编码z向信息的绝对最大值来检查扫描到地图的关系可能是有风险的。这是因为来自 LiDAR 里程计或 LiDAR SLAM 的姿势 z 方向信息通常比 x 和 y 方向信息更不确定 [25]。

为此,我们的 R-POD 通过以自我为中心的方式定义一个表示占用率与垂直信息的边界差异或伪占用率的垂直箱,从而融合了两种方法的优点。与 Scan Context 类似,RPOD 采用 Vt 并将体积划分为方位角和径向方向的规则间隔,即扇区和环。令 Nr 和 Nθ 为环数和扇区数。则表示为 St 的 R-POD 可以表示如下: $$ \mathcal{S}{t}=\bigcup{i \in\left[N_{r}\right], j \in\left[N_{\theta}\right]} \mathcal{S}_{(i, j), t} $$ 其中 S(i,j),t 表示 R-POD 在时间步 t 的第 (i, j) 个 bin。令 θ = arctan 2(y, x)。然后,每个 S(i,j),t 由满足以下条件的浊点组成。 $$ \begin{aligned} \mathcal{S}_{(i, j), t}=\left{\mathbf{p}_{k} \mid \mathbf{p}_{k} \in \mathcal{V}_{t}, \frac{(i-1) \cdot L_{\max }}{N_{r}} \leq \rho_{k}<\frac{i \cdot L_{\max }}{N_{r}}\right.\
\left.\frac{(j-1) \cdot 2 \pi}{N_{\theta}}-\pi \leq \theta_{k}<\frac{j \cdot 2 \pi}{N_{\theta}}-\pi\right} \end{aligned} $$ 此后,单位空间,即每个 bin,分配一个实数值来描述伪占用,Δh(i,j),t。令 Z(i,j),t = {zk ∈ pk|pk ∈ S(i,j),t}。然后,每个bin的伪占用编码如下: $$ \Delta h_{(i, j), t}=\sup \left{Z_{(i, j), t}\right}-\inf \left{Z_{(i, j), t}\right} $$ 其中 sup 和 inf 分别表示最高和最低。

D. 扫描率测试

提出了扫描比率测试(SRT)来检查给定一对查询和地图点云的 R-POD,即 SQ t 和 SMt 是否出现伪占用差异。 SRT 的灵感来自于尺度不变特征变换 (SIFT) [26] 中的 Lowe 比率测试。与基于全局阈值的方法[26]相比,基于比率的方法被证明对场景变化更稳健。由于这一优势及其普遍性,我们可以在比较伪入住率时将比率测试的概念应用到我们的方法中。

让术语扫描比率是 SQ t 和 SMt 中每对 bin 之间的伪占用率,即 ΔhQ (i,j),t 和 ΔhM(i,j),t 之间的比率。然后使用扫描比率将 bin 分类为上述情况,并选择属于潜在动态情况的 bin,其中任一 bin 都包含我们感兴趣的动态点。直截了当,如果两个 bin 都没有变化,即绝对静态情况,则扫描比率必须接近 1,而属于潜在动态情况的扫描比率必须比1小得多,如第 II.A 节所述,这是由地面上存在动态物体引起的。

因此,我们选择扫描比率小于比率阈值的 bin 作为可能包含动态对象或潜在动态 bin 的 bin。图 4(a) 说明了扫描比率的概率分布函数 (PDF),图 4(b) 描述了使用 SemanticKITTI 数据集的浊点数量的直方图(参见第 III.A 节)。一组包含查询或地图中的动态点的 bin 往往具有较小的扫描率。相比之下,一组只有静态点的 bin 显示的扫描率接近 1。

基于这些观察,比率阈值设置为 0.2,根据经验确定该阈值足够严格。图 3 说明了从 SRT 检索到的结果。 SRT 上的绿色 bin 是潜在的动态 bin,蓝绿色 bin 是扫描比率超过 0.2 的 bin。红色区域是确定性静态区域或已清理区域,即 ΔhM(i,j),t/ΔhQ (i,j),t < 0.2。请注意,如果地图或查询箱包含少量点,则跳过 SRT,在图 3 中的 SRT 上这些点以蓝色显示。

E. 区域级地平面拟合

根据第 II.A 节中的假设,可以观察到许多潜在的动态 bin 仅由地面点和动态点组成。因此,我们可能会想到计算要求不高的静态点检索方法。

地平面的 Bin-wise 估计优于对整个地图的单平面模型的估计,因为许多城市地区包括不形成完美平面的路缘或倾斜区域的地面 [27]。出于这个原因,采用了bin-wise地平面拟合,这是由bin-wise line拟合来寻找地面点的[28]。因为每个 bin 相对于整个地图来说都很小,所以可以安全地假设 bin 内的地面是平面的。因此,R-GPF 可以在非平面的城市特定区域上稳健地选择更多静态点并将其还原回地图(参见第 IV.B 节)。

假设第 $l$ 个 bin,即 SMl,t,是在整个 SRT 中的 Nr × Nθ 个 bin 中选择总 L 个潜在动态 bin 的候选者。因为每个 bin 中高度最低的点最有可能属于地表[28],最低高度的种子点从 SMl,t 中选择,令 ¯z 为所选种子点的平均 z 值。然后,得到初始估计的地面点集 0Il,t 如下: $$ { }^{0} \mathcal{I}{l, t}=\left{\mathbf{p}{k} \mid \mathbf{p}{k} \in \mathcal{S}{l, t}^{M}, z\left(\mathbf{p}{k}\right)<\bar{z}+\tau{\text {seed }}\right} $$ 其中 z(·) 表示一个点的 z 值,τseed 表示高度边距。因为我们的方法是迭代的,设第 i 个内点为 iIl,t,则 iIl,t 的协方差矩阵 iCl,t 计算如下: $$ { }^{i} C_{l, t}=\sum_{j=1:\left|{ }^{i} \mathcal{I}_{l, t}\right|}\left(\mathbf{p}_{j}-{ }^{i} \overline{\mathbf{p}}_{l, t}\right)\left(\mathbf{p}_{j}-{ }^{i} \overline{\mathbf{p}}_{l, t}\right)^{T} $$ 在哪里 | · |和 i¯pl,t 分别表示集合的大小和 iIl,t 的平均位置。

接下来,使用主成分分析(PCA),计算三个特征值和对应的三个特征向量,即 iCl,t~ vm = λm~ vm 其中 m = 1, 2, 3。然后,具有最小特征值的特征向量最大可能代表地面的法线向量。让特征向量为 inl,t = [ial,t ibl,t icl,t]T 。那么,平面系数可以计算为 idl,t = −inTl,ti¯pl,t,其平面方程为 ial,tx+ ibl,ty + icl,tz + idl,t = 0。最后,我们的目标是提取平面下方的潜在静态点如下: $$ { }^{i+1} \mathcal{I}{l, t}=\left{\mathbf{p}{k} \mid \mathbf{p}{k} \in \mathcal{S}{l, t}^{M},{ }^{i} d_{l, t}-{ }^{i} \hat{d}_{k}<\tau_{g}\right} $$ 其中 i ^dk = −inTl,tpk 和 τg 表示平面的距离余量。该过程重复 3 次,之后将最后的 3Il,t 恢复到拒绝动态点的地图中。因此,我们方法拒绝的动态点可以直接检索如下: $$ \hat{\mathcal{M}}_{d y n, t}=\bigcup_{l \in[L]}\left(\mathcal{S}_{l, t}^{M}-{ }^{3} \mathcal{I}_{l, t}\right) $$ 图 3 简要介绍了 R-GPF 的过程。 R-GPF 上的红点代表动态点,绿点代表恢复到地图云中的地面点。