
# 基于高斯过程的自主陆地车辆实时地面分割

陈通通 · 戴斌 · 王瑞丽 · 刘大雪

收到：2013年2月25日 / 接受：2013年9月10日

© 2013 施普林格科学+商业媒体多德雷赫特

## 摘要

地面分割是自主陆地车辆 (ALV) 在户外环境中导航的关键组成部分。本文提出了一种用于实时分割各种地形的三维扫描的新算法。单个地形扫描被表示为圆形极坐标网格地图，该地图被划分为许多段。使用具有非平稳协方差函数的一维高斯过程 (GP) 回归来区分每个段中的地面点或障碍物。所提出的方法将大规模地面分割问题分解为许多简单的 GP 回归问题，这些问题复杂度较低，从而可以在获得可接受的地面分割结果的同时实现实时性能。为了验证

我们的方法的有效性，我们在公共数据集以及我们自己的 ALV 在不同户外场景中收集的数据上进行了实验。我们的方法与两种以前的地面分割技术进行了比较。结果表明，我们的方法可以在计算时间和精度之间实现更好的平衡，从而可以实现实时对象分类和局部路径规划。我们的方法已成功应用于我们的 ALV，该 ALV 在 2011 年中国未来挑战赛中获得冠军，比赛地点在鄂尔多斯市。

关键词：自主陆地车辆、地面分割、高斯过程、3D点云

数学主题分类 (2010)

68T45 · 68T40 · 60G15

## 1 简介

在未知户外环境中导航对自主陆地车辆 (ALV) 来说是一项具有挑战性的任务。这是传感器、测量和控制相关领域中一个有趣的课题。该课题的研究成果具有广泛的应用。例如，ALV 可用于军事，执行对士兵来说过于危险的任务。

---

由于地面分割是自主陆地车辆 (ALV) 在户外环境中导航的关键组成部分，因此它在机器人研究领域受到了越来越多的关注。为了安全地到达预定目的地，机器人需要识别区域内的可通行地面和各种障碍物。然后，机器人可以规划一条正确的路径，以避免碰撞。由于地面分割是障碍物分类中的关键预处理步骤，因此地面分割的性能将直接影响后续的障碍物分类，这对于动态环境中的局部路径规划和定位估计至关重要。典型的动态城市场景如图 1 所示。

随着摄像头和测距仪成为自动驾驶汽车的标准配置，近年来，地面分割的研究工作已经进行了很多。由于彩色摄像头的大规模生产且相对便宜，许多研究团队将其用作其机器人或自动驾驶汽车的主要传感器。这些方法可以分为两类：基于单目视觉的 [^7] [^9] [^28] [^32] [^33] 和基于立体视觉的 [^8] [^14] [^20]。这些方法通常使用纹理特征和颜色特征来分割地面。因此，它们对光照和阴影非常敏感。

与摄像头相比，激光测距仪在其设计中包含移动部件，这使其复杂且昂贵。但是，它们可以提供准确的距离信息，这使其在机器人领域广受欢迎和被广泛使用。

Douillard 等人 [^4] 提出了一种基于快速傅里叶变换的方法，用于在频域中分割水下非结构化地形的三维扫描结果。较低的频率分量表示底层地面。带宽使用峰值检测自动确定。据我们所知，这是唯一一种在频域中分割三维扫描结果的工作。

在空间域中，已经提出了许多地面分割方法，大致可以分为三个子组：基于网格单元的方法 [^6] [^29]、基于线条的方法 [^10] [^13] [^26] 和基于曲面的方法 [^5] [^11] [^17] [^23] [^31]。

Thrun 等人 [^29] 提出了一种基于最大-最小值高程图的地面分割方法，该方法被 2007 年 DARPA（美国国防高级研究计划局）城市挑战赛的许多团队广泛使用。计算单元内最大和最小高度的差值。高度差小于预定义阈值的单元被识别为地面。最初，这种方法无法解决底层分割问题，该问题后来在参考 [^6] 中得到解决。[^6] 中的方法使用平均高程图提取地面表面。保留单元与其相邻单元之间的最大梯度

![Image](images/b142ce8f75c3f6ac20d5e147e0aad95a417440a2150895472fc2ccc6ac099eaa.jpg)

<div style="text-align: center;">Fig. 1 A typical segmentation result of one scan collected by Velodyne LIDAR (Light Detection And Ranging) in an urban environment. The yellow, red, green pixels represent the ground, obstacles, and overhanging structures, respectively.</div>

<div style="text-align: center;">tively. The middle cube is our ALV, and the other two cubes are the vehicles detected based on ground segmentation. The green arrow represents the driving direction.</div>

---

作为单元的梯度。如果梯度小于阈值，则该单元属于地面。最大连通地面单元集构成地面表面。基于网格单元的方法仅使用局部信息，而不是全局地面连续性信息来分割地面。因此，性能非常敏感，很容易受到观测噪声和传感器外参标定等因素的影响。

Stamos 和 Hadjiliadis [^26] 提出了一种基于粗分类方法的在线地面分割算法，参见参考 [^10]。它首先检测每个扫描线中可能位于地面的水平点序列，然后验证这些点在扫描线之间是否确实位于地面上。该算法可以生成地面点的鲁棒估计，以及每个扫描线处地面的高度。Himmelsbach 等人 [^13] 描述了一种用于高速 ALV 的大型远程 3D 点云的快速分割方法。该方法将极坐标网格地图划分为许多段，并使用 [^19] 中的线提取算法来表示每个段中的地面表面。该方法将分割问题分解为许多简单的拟合问题，复杂度较低。它可以实现实时性能，但不适用于崎岖地形。本文将解决此问题。

基于表面方法的地面分割使用 LIDAR (光探测和测距) 数据，基于地面连续性的概念。常用的方法基于 3D 网格地图。参考 [^17] 提出了一种高斯过程回归技术的扩展，用于地形建模。为了保留结构特征，该方法采用非平稳协方差函数，并提出了一种新的基于高程结构张量 (EST) 的局部核自适应方法。基于参考 [^17]，Plagemann 等人 [^23] 使用具有非平稳协方差函数的 GP 回归来建模地形。此外，为了进一步提高模型的效率，推导出一个非迭代模型。将另一个 GP 先验置于局部核的参数中，以计算任何点的局部核。在 [^5] 中，提出了一种新颖的迭代方法，称为高斯过程增量样本共识 (GP-INSAC)，用于估计稀疏 3D 数据的概率连续地面表面，这些数据被非地面物体所干扰。该算法保留了 GP 地形建模的大致能力，并使其具有异常值拒绝的能力。因此，它可以表示各种地形。但是，它只能离线处理数据。[^11] 中的方法使用在线基于核的学习在再生核希尔伯特空间 (RKHS) 中估计感兴趣区域的连续地面表面，该方法还提供了地表的上下界。利用可见性信息可以提高精度，通过基于梯度的优化可以减少计算时间。这些方法通常可以获得良好的地面分割结果，但不能应用于实时应用，这对于 ALV 至关重要。

在本文中，我们提出了一种基于高斯过程回归的实时地面分割方法，该方法适用于配备 Velodyne HDL-64E 扫描激光雷达系统的移动平台 [^3]。 我们的方法构建了一个圆形极坐标网格地图，并使用由 Paciorek 和 Schervish 在 [^21] 中提出的非平稳协方差函数进行一维高斯过程回归，以允许每个地图片段中的地面起伏进行局部适应。 通过计算每个片段的局部梯度来实现这种适应。 我们的方法受到参考文献 [^13] 和 [^5] 的启发。 与参考文献 [^13] 相比，本文采用连续的高斯过程回归，而不是每个片段中的分段线性拟合，这使得我们的方法对粗糙地形更具鲁棒性。 相比于参考文献 [^5]，该文献使用具有平稳协方差函数的高斯过程增量共识模型来对三维网格地图中的全局地面进行建模，我们的方法将一个大型二维地面分割问题分解为许多一维高斯过程回归问题，这些问题在极坐标网格的片段中具有较低的复杂性，这可以大大提高计算效率。 此外，采用非平稳协方差函数可以提高分割的精度。

---

本文的主要贡献有两个方面。 最重要的贡献是，可以将复杂的大规模二维地面分割问题分解为极坐标网格中许多简单的一维高斯过程回归问题。 这样，激光雷达数据就可以在线处理。 另一个贡献是局部自适应的高斯过程回归，其中使用极坐标网格段中的一维梯度信息来调整长度尺度 $l_{i}$。 此外，我们还使用几个典型的地形结构，通过公式化伪对数边际似然来学习高斯过程回归的超参数，该回归具有非平稳协方差函数。 借助学习到的超参数，我们的算法可以适应大多数城市和乡村环境。

本文的其余部分结构如下。 在下一节中，将描述三维 Velodyne 激光雷达数据的采集以及如何构建极坐标网格地图。 第 3 节详细描述了基于具有非平稳协方差函数的高斯过程回归的地面分割方法。 第 4 节展示了一些实验结果。 我们的算法与两个以前的地面分割技术在公共数据集 [^16] 和由我们的 ALV 在不同户外场景中收集的数据上进行了比较。 结果表明，我们的算法具有良好的性能。 最后，第 5 节给出了结论和未来工作的概述。

## 2 数据采集和极坐标网格地图表示

Velodyne HDL-64E S2 是一款改进型的高清激光雷达扫描仪，专为 ALV 导航、测绘、勘测和其他应用而设计。它具有 $360^{\circ}$ 的全水平视野 (FOV)，以及 $26.8^{\circ}$ 的垂直视野，HDL-64E S2 提供比以往更多的环境信息，可达 120 米，并且以 10 Hz 的帧速率输出超过 130 万个点。HDL-64E S2 输出 UDP 以太网数据包，每个数据包包含 1206 字节的数据负载，分别表示距离、方位角和强度信息 [^15]。与参考文献 [^10] [^26] 不同，在本文中，将一个扫描周期内收集的点（需要 0.1 秒）视为同时收集的。本文采用了 [^18] 中的方法，将原始点转换为激光雷达坐标系。通过简单的平移，可以将这些点转换为车辆的局部坐标系，其中地面分割的结果可直接用于局部路径规划。我们假设车辆的局部坐标系与车辆的中心对齐，y 轴指向前方，z 轴指向上方。形式上，在时间点 t 收集的扫描由集合 $P_t = \{p_1, p_2, \ldots, p_l\}$ 表示，其中 $p_i = (x_i, y_i, z_i)^T$ 是相对于车辆局部坐标系的欧几里得坐标。

扫描包含如此多的点，我们需要以正确的方式表示它们，以提高计算效率。 与基于核函数在网格单元之间的复杂关系 [^5] [^11] [^17] [^23] [^31] 或计算高程图中的高度差 [^29] 相比，本文遵循参考资料 [^13] 构建极坐标网格图。 我们的算法具有至少三种优点：(1) 极坐标网格图保留了所有数据，以避免欠分割问题；(2) 极坐标网格图与激光雷达的物理模型非常吻合。 数据可以以允许通过许多简单的单维局部回归来分割地面点的形式进行分区，这将大大提高计算效率；(3) 极坐标网格图适用于描述平坦和倾斜的地形以及两者之间的过渡 [^13]。 为了保持本文的完整性和连贯性，我们将简要描述如何构建我们的 ALV 的极坐标网格图。

给定相对于车辆局部坐标系原点 O 的时间点 t 收集的扫描 $P_t = \{p_1, p_2, \ldots, p_l\}$，我们首先将这些 3D 点划分为半径为 $R_{\text{def}}$ 的圆形极坐标网格，如图 2 所示，该网格将划分为 M 个段。

距离原点 O 水平距离超过 $R_{def}$ 的点将被忽略。 残余点根据它们与坐标正 y 轴的角度映射到各个段。

---

![Image](images/079c6fc9426444df4aa69757e1d948df7f51e2395498ce97f3af91d7ac857a6c.jpg)

<div style="text-align: center;">Fig. 2 A polar grid map, which is evenly split into M segments counter-clockwise. Every segment is divided into N bins unevenly. Obviously, the range of a bin that is close to the LIDAR centre is smaller, while the range of a bin that is far away from the centre is relatively large. The middle green rectangle represents our ALV</div>

点 $p_{i}$ 将根据公式 1 映射到段 $S(p_{i})$：

 $$ S(p_{i})=\left[\frac{A n g(x_{i},y_{i})}{\Delta\alpha}\right], $$

其中 [.] 是舍入函数，$Ang(x_i, y_i)$ 表示正 y 轴与 $Op_i$ 之间的水平角度，$\Delta\alpha$ 表示每个段覆盖的角度。 映射到同一段 m 的所有点可以形成一个集合 $P_m$ [^13]：

 $$ P_{m}=\left\{p_{i}\in P_{t}|S(p_{i})=m\right\}. $$

每个网格将被划分为 N 个 bin，以离散地表示点的范围分量。在第 m 个网格中的第 n 个 bin $b_n^m$ 覆盖的范围是从 $r_n^{\min}$ 到 $r_n^{\max}$。点 $p_i = (x_i, y_i, z_i)^T$ 被映射到 $\mathrm{bin} b_n^m$，如果且仅当其径向坐标 $r_i$ 满足公式 3 中的不等式：

 $$ r_{n}^{\min}<r_{i}=\sqrt{x_{i}^{2}+y_{i}^{2}}\leq r_{n}^{\max}\land p_{i}\in P_{m}. $$

由于激光雷达数据对地面进行不均匀的采样，在较远距离上会迅速变得稀疏，并且由于遮挡而产生大的空洞，因此本文中，每个bin覆盖的范围会根据bin与激光雷达的距离而变化。所有映射到第m个分段的第n个bin中的3D点可以构成一个集合 $P_{b_n^m}$。对于每个集合 $P_{b_n^m}$，都存在一个一一对应的集合 $P'_{b_n^m}$ (2D点 [^13]:

 $$ P_{b_{n}^{m}}^{\prime}=\left\{p_{i}^{\prime}=\left(r_{i},z_{i}\right)^{T}|p_{i}\in P_{b_{n}^{m}}\right\}. $$

我们的目标是将一个复杂的二维地面分割问题分解为许多简单的单维回归问题。因此，我们选择每个分段m中具有最低 $p'_i \in P'_{b_p^m}$ 的2D点 $z_i$，以形成候选地面点集 $PG_m$:

 $$ P G_{m}=\left\{p_{i}^{\prime}|p_{i}^{\prime}\in P_{b_{n}^{m}}^{},z_{i}=\min(H_{n}^{m}),n=1\ldots N\right\}. $$

其中 $H_n^m$ 是所有映射到 bin $b_n^m$ 的点的 z 坐标的集合。到目前为止，所有 3D 点都已映射到 $P_{b_n^m}^{\prime}$。对于每个网格 m，可以使用集合 $PG_m$ 来建模地面。在获得每个网格的参考高度后，可以使用它来为相应网格中的每个点分配一个标签：地面或障碍物，根据其相对于地面参考高度的高度。

## 3 地面分割作为 1D 回归问题

在机器人技术中，Velodyne HDL-64E S2 是一种流行的传感器，因为它能够提供准确且高频率的 3D 测量。在上述预处理步骤之后，这些原始 3D 数据被转换为极坐标网格图，该图将被划分为 M 个网格。对于地图的每个网格，在本节中，我们将构建一个连续的一维地面模型，该模型可以生成网格中任意位置的地面高度预测分布。这可以将复杂的两维地面建模问题分解为许多一维的局部回归问题，以提高计算效率。

对于网格 m，构建局部地面模型的过程可以描述如下。给定 n 个位置样本的两维点集 $PG_m = \left\{(r_i, z_i)\right\}_{i=1}^n$，$r_i, z_i \in \mathbb{R}$ 可能被障碍物点污染。我们的任务是消除异常值，并使用剩余的样本

---

集合 $D_m$ 来构建网格 m 的地面模型 $p_m(z_*|D_m, r_*)$，其中 $r_*$ 是网格 m 中的测试输入（径向坐标），而 $z_*$ 是在输入 $r_*$ 处对地面的预测高度。由于高斯过程回归具有强大的近似能力，因此它在机器人技术中得到了广泛的应用 [^1] [^5] [^12] [^17] [^23] [^30] [^31]。在本文中，将使用一种一维高斯过程回归来构建极坐标网格图中每个网格的地面模型，而不是直接构建整个 3D 高程图的连续二维地面模型。

### 3.1 高斯过程回归

高斯过程是一组随机变量的集合，其中任何有限数量的变量都具有联合高斯分布 [^24]。 它是对空间相关且可能存在不确定性的数据进行建模的强大连续表示。 对于给定的二维训练集 $D = \{(r_i, z_i)\}_i=1$，由 n 个样本组成，根据高斯过程的定义，这些训练样本的联合分布可以表示为：

 $$ p(Z|R)\sim N(\mu,K), $$

其中，$R = [r_1, \ldots, r_n]^T$、$Z = [z_1, \ldots, z_n]^T$、$\mu$是均值向量，K是协方差矩阵。为了简化记号，通常将均值向量 $\mu$ 设为零 [^24]。协方差矩阵K模拟了随机变量之间的关系。它由协方差函数 k 和噪声方差 $\sigma_n^2$ 确定：

 $$ K(r_{i},r_{j})=k(r_{i},r_{j})+\sigma_{n}^{2}\delta_{i j}, $$

其中，$\delta_{ij}$是克罗内克δ，当 i = j 时，其值为 1，否则为 0。

常用的平稳各向同性协方差函数是平方指数 (SE) 协方差函数。其形式如下 [^24]:

 $$ k(r_{i},r_{j})=\sigma_{f}^{2}\exp\left(-\frac{(r_{i}-r_{j})^{2}}{2l^{2}}\right), $$

其中，l是长度尺度，$\sigma_{f}^{2}$是信号协方差。这些自由参数构成了高斯过程的超参数。高斯过程回归利用高斯过程的定义，即训练输出 Z 和在测试输入 $z_{*}$ 处的输出 $r_{*}$ 的联合分布为：

 $$ \begin{bmatrix}Z\\ z_{*}\end{bmatrix}\sim N\left(0,\left[\begin{matrix}K(R,R)\ K(R,r_{*})\\ K(r_{*},R)\ K(r_{*},r_{*})\\ \end{matrix}\right]\right). $$

因此，高斯过程回归的关键预测方程如下：

 $$ \begin{align*}\bar{z}_{*}&=K(r_{*},R)K^{-1}Z\\V[z_{*}]&=K(r_{*},r_{*})-K(r_{*},R)K^{-1}K(R,r_{*}),\end{align*} $$

其中$\bar{z}_*$和$V[z_*]$分别是输出$z_*$的均值和协方差，$K^{-1}$是K的逆矩阵，且$K = K(R) = \left(K(r_i, r_j)\right)_{1 \leq i, j \leq n}$。$K(r_*, R) \in \mathbb{R}^{1 \times n}$的第k个元素为$K(r_*, r_k)$，可通过式(7)计算得到。

平方指数协方差函数的主要缺点在于，它假设长度尺度在整个输入空间上是恒定的[^23]。为了适应不同地形，我们应当为平坦地面选择较长的长度尺度，为崎岖地面选择较短的长度尺度。

本文为了提高分割精度，采用Paciorek和Schervish提出的非平稳各向同性协方差函数，求解每个分割段的回归问题[^21]。对于一维情况，其形式如下：

 $$ \begin{align*}k(r_{i},r_{j})=&\sigma_{f}^{2}\left(l_{i}^{2}\right)^{\frac{1}{4}}\left(l_{j}^{2}\right)^{\frac{1}{4}}\left(\frac{l_{i}^{2}+l_{j}^{2}}{2}\right)^{-\frac{1}{2}}\\&\times\exp\left(-\frac{2(r_{i}-r_{j})^{2}}{l_{i}^{2}+l_{j}^{2}}\right),\end{align*} $$

其中每个输入位置$r_i$都拥有独立的长度尺度$l_i$。两个输出$z_i$与$z_j$之间的协方差，通过对对应输入位置$r_i$和$r_j$处的两个长度尺度取平均计算得到[^22]。通过这种方式，模型的协方差函数在一定程度上能够更好地描述地面的局部特征。

本文利用极坐标网格图分割段中的一维梯度信息调整长度尺度。对于每个分割段m，采用[^19]中的增量算法提取直线$L_{m}$，且其绝对梯度为

---

大于 $10^{\circ}$ 的部分被省略。这是因为本文认为，绝对梯度大于 $10^{\circ}$ 的地面被认为是 ALV 的障碍物。对于 $r_{i}$ 中的每个输入 $PG_{m}$，我们在 $L_{m}$ 中找到与其距离最近的线，然后将输入 $r_{i}$ 赋予对应线的绝对梯度值 $g(r_{i})$。对于输入 $l_{i}$，局部长度比例 $r_{i}$ 的计算如下：

 $$ l_{i}=\left\{\begin{aligned}{}&{{}a*\operatorname{l g}\left(\frac{1}{|g(r_{i})|}\right)}&{}&{{}\mathrm{i f~|g(r_{i})|>g_{d e f}~}}\\ {}&{{}a*\operatorname{l g}\left(\frac{1}{|g_{d e f}|}\right)}&{}&{{}\mathrm{o t h e r w i s e}}\\ \end{aligned}\right., $$

其中 a 只是一个大于 0 的比例参数，可以在第 3.3 节中学习；$|g(r_i)|$ 被限制在 $g_{\mathrm{def}}$ 范围内，以防止在平坦地面上 $l_i$ 变为无穷大；$g_{\mathrm{def}}$ 是一个大于 0 的预定义参数。

### 3.2 基于 GP 回归的地面分割

对于分割 m，可以获得候选的 2D 地面点集 $PG_m$，该集合可能包含障碍物点。然而，典型的高斯过程回归假设集合 $PG_m$ 中的所有数据都是地面点，只有少数异常值。在本文中，地面分割问题可以重新表述为，为每个分割获得一个具有异常值拒绝能力的回归模型。本文采用迭代学习的方法，构建一种既具有强大的拟合能力，又具有异常值拒绝能力的局部地面模型，该模型用于极坐标网格地图的每个分割。详细的算法见算法 1。

该算法从扫描 3D 点云 $P_{t}$ 开始，并输出每个点的标签：地面或障碍物。该算法主要包含六个步骤：极坐标网格地图表示、线拟合、种子估计、具有非平稳协方差函数的高斯过程回归、新种子评估和逐点分割。

极坐标网格地图表示对应于第 1 行的函数 $\text{polargridMap}$。极坐标网格被划分为 M 个分割，每个分割又被划分为 N 个网格单元。详细过程见第 2 节。

```pseudo
// Algorithm 1: Ground Segmentation

Input:  $P_t = \{p_1, p_2, \ldots, p_l\}$, M, N, B,  $T_s$,  $T_r$, a,  $\sigma_f$,  $\sigma_n$,  $t_{model}$,  $t_{data}$

Output: label of  $p_i$, i = 1, ..., l

1:  $(PG, P'_{b_m}) = \text{PolarGridMap}(P_t, M, N)$;
2: for  $i = 1$: M - 1 do
3:  $L_i = \text{fitline}(PG_i, a)$;
4:  $s_{new} = s_p = \emptyset$;
5:  $s_{new} = \text{seed}(PG_i, B, T_s)$;
6: while size( $s_{new}$) > 0 do
7:  $s_p = s_p \cup s_{new}$;
8: model = GPR( $s_p$,  $L_i$,  $\sigma_f$,  $\sigma_n$);
9: test =  $PG_i - s_p$;
10:  $s_{new} = \text{eval}(model, test, t_{data}, t_{model})$;
11: end while
12: for j = 0 : N - 1 do
13: segment( $model, P'_{b_i}$,  $T_r$);
14: end for
15: end for

```

线拟合对应于第 3 行的函数 fitline。可以使用 [^19] 中的所有线提取算法。本文使用增量算法，因为 $PG_i$ 中的点已经根据它们到激光雷达的距离进行排序。$PG_i$ 中的每个点都被赋予一个由方程 12 计算的局部长度比例（见图 3）。

第三步是第 5 行中的种子估计。 它的目标是找到初始的地面点，作为训练数据。 在本文中，选择距离传感器在固定半径 B 内的，绝对高度小于 $T_s$ 的点作为初始种子。 由于在该函数中，使用点的绝对高度作为选择种子的标准，因此 LIADR 的外参校准需要满足某些要求。 如果没有初始种子，我们的算法将毫无用处。 通常，由于我们 ALV 的攀爬障碍能力，选择 B = 30 米和 $T_s = 30$ 厘米。

基于高斯过程回归获得地面模型（第 8 行）是第四步的目标。使用方程 7 和 11 计算成对种子 $s_{p}$ 之间的协方差矩阵。如果两个种子之间的水平距离小于一米，则只保留其中一个种子，并删除另一个种子。因此，

---

<div style="text-align: center;">Fig. 3 The results of the line extraction in one segment. The green lines represent the ground in the segment, and the numerals are the gradients and interceptions of the corresponding lines (a). The pentacles are the length-scales at the input locations, which are processed by an average filter  $(a=1)$ (b)</div>

![Image](images/de5597bd3367a52071d4e9e1f5482db56a26bf70139da0b84f286ff82c331b5d.jpg)

每个网格单元中的种子数量不会过多。协方差函数的尺寸较小，可以大大提高计算效率。

新的种子评估对应于第10行的函数 eval。 方程 7 和 11 可用于计算 $K(r_*, r_*$ 和 $K(r_*, s_p)$，以供每个测试点 $(r_*, z_*$ 使用。） 然后，可以使用方程 10 来计算测试输入位置 $z_*$ 处的输出 $r_*$ 的均值和方差。 在本文中，采用 Douillard [^5] 提出的、用于评估输入点属性（新种子或异常值）的规则（见方程 13）。 参数 $t_{\text{model}}$ 是输出 $V[z]$ 的方差 $z_*$ 的阈值，而 $t_{\text{data}}$ 指定真实输出 $z_*$ 与测试输入 $\bar{z}$ 处预期均值 $r_*$ 之间的归一化距离。

![Image](images/9e16b099c48fad1efe4da198449f670ac93f773d2494e052776f75e6c438d2f3.jpg)

 $$ \begin{array}{r l}{V[z]\leq t_{\mathrm{m o d e l}}}&{\frac{|z_{*}-\bar{z}|}{\sqrt{\sigma_{n}^{2}+V[z]}}\leq t_{\mathrm{d a t a}}.}\end{array} $$

对于测试点 $(r_*, z_*)$，如果它同时满足方程 13 中的两个不等式，则将其分类为新种子；否则，将其分类为异常值。 从初始种子（第 5 行）开始，在每次迭代中累积种子，直到不再找到新的种子（第 6-11 行）。 图 4 显示了在图 10 中显示的场景的第一网格单元的迭代结果。

图 4：极坐标网格地图的横截面。 蓝色点是可能的地面点，红色圆圈表示每次迭代后的种子。 该点（位于右下角的五角星）是道路上的一根电线的反射，被分类为异常值。

![Image](images/347748814f9ea076597e382be53e34c3412b8b36dbd60fb0b3ad67444929bc40.jpg)

---

最终步骤是逐点分割，对应于第 13 行的函数 segment。 对于每个网格单元 i，可以使用找到的最终种子来对局部地面进行建模。 对于网格单元 i 中的第 j 个网格单元 $b_j^i$，$(r_j^{\min} + r_j^{\max})/2$ 用作网格单元 $b_j^i$ 的径向坐标。 因此，对于 $r_j^i = (r_j^{\min} + r_j^{\max})/2$，可以使用方程 10 来预测网格单元 $z_j^i$ 中地面高度 $b_j^i$ 的均值。 这意味着网格单元 $z_j^i$ 中的地面高度 $b_j^i$ 被定义为参考地面高度 $H_{ij}$。 对于集合 $p_k^i$ 中的每个点 $P_{b_j^i}' = \{p_k' = (r_k, z_k)| p_k \in P_{b_j^i}\}$，如果其相对高度 $|z_k - H_{ij}|$ 小于 $T_r$，则将 $p_k^i$ 分类为地面点；否则，将其分类为障碍物点。 由于集合 $P_{b_j^i}$ 和集合 $P_{b_j^i}'$ 之间的点对点映射是一对一的，因此 3D 点 $p_k$ 和 2D 点 $p_k^i$ 具有相同的标签。 现在，可以获得扫描中所有 3D 点的标签。

### 3.3 学习超参数

到目前为止，我们假设我们知道超参数 $\theta = \{\sigma_f, a, \sigma_n\}$ 来描述我们的方法。 然而，实际上，这些参数无法提前获得。 在本节中，我们将每个网格单元的回归任务表示为监督学习问题，并重点介绍如何学习这些参数。

给定训练集 $\mathfrak{I} = \{r^m, z^m\}_{m=1}^M$，每个网格单元都是以下形式的训练示例：$(r^m, z^m)$，其中每个 $r^m = \{r_1^m, \ldots, r_{n_m}^m\}$ 是一系列网格单元 m 中的径向坐标 $n_m$，每个 $z^m = \{z_1^m, \ldots, z_{n_m}^m\}$ 是一系列对应的地面高度，并且 $n_m$ 是网格单元 m 中的点的数量。 在本文中，我们假设这些示例是条件独立的，并尝试通过最大化伪对数似然函数 [^24] 来寻求这些超参数：

 $$ \begin{align*}\sum_{m=1}^{M}\log p(z^{m}|r^{m},\theta)&=-\frac{1}{2}\sum_{m=1}^{M}(z^{m})^{T}K_{m}^{-1}z^{m}\\&\quad-\frac{1}{2}\log\left(\prod_{m=1}^{M}|K_{m}|\right)\\&\quad-\frac{\log2\pi}{2}\sum_{m=1}^{M}n_{m},\end{align*} $$

其中，$K_{m}$是用于噪声$z^{m}$值的协方差矩阵，该矩阵用于分割m，并且可以使用公式7进行计算。

为了通过最大化公式14来设置超参数，我们需要求解伪最大后验似然函数相对于超参数的一阶导数。 我们得到：

 $$ \begin{align*}\frac{\partial}{\partial\theta_{i}}&\left(\sum_{m=1}^{M}\log p(z^{m}|r^{m},\theta)\right)\\&=\frac{1}{2}\sum_{m=1}^{M}tr\left(\left(\alpha_{m}\alpha_{m}^{T}-K_{m}^{-1}\right)\frac{\partial K_{m}}{\partial\theta_{i}}\right),\end{align*} $$

其中，$tr()$表示矩阵的迹，$\alpha_m = K_m^{-1} z_m$，以及$\frac{\partial K_m}{\partial \theta_i}$是一个矩阵，该矩阵包含逐元素的导数。 $\frac{\partial K_m}{\partial \theta_i}$的具体公式如下：

 $$ \begin{aligned}\frac{\partial K_{m}(r_{i},r_{j})}{\partial\sigma_{f}}&=2\sigma_{f}\left(d_{i}^{2}\right)^{\frac{1}{4}}\left(d_{j}^{2}\right)^{\frac{1}{4}}\left(\frac{d_{i}^{2}+d_{j}^{2}}{2}\right)^{-\frac{1}{2}}\\&\quad\times\exp\left(-\frac{2(r_{i}-r_{j})^{2}}{a^{2}(d_{i}^{2}+d_{j}^{2})}\right)\end{aligned} $$

 $$ \begin{align*}\frac{\partial K_{m}(r_{i},r_{j})}{\partial a}&=\sigma_{f}^{2}\big(d_{i}^{2}\big)^{\frac{1}{4}}\big(d_{j}^{2}\big)^{\frac{1}{4}}\left(\frac{d_{i}^{2}+d_{j}^{2}}{2}\right)^{-\frac{1}{2}}\\&\quad\times\exp\left(-\frac{2(r_{i}-r_{j})^{2}}{a^{2}\big(d_{i}^{2}+d_{j}^{2}\big)}\right)\\&\quad\times\left(\frac{4(r_{i}-r_{j})^{2}}{a^{3}\big(d_{i}^{2}+d_{j}^{2}\big)}\right)\end{align*} $$

 $$ \frac{\partial K_{m}(r_{i},r_{j})}{\partial\sigma_{n}}=2\sigma_{n}\delta_{ij}, $$

其中，$d_i = \lg \left( \frac{1}{|g(r_i)|} \right)$。 可以采用基于梯度的优化器来解决此问题。

本文使用在美国波士顿城区采集的10幅已标注街景扫描数据[^16]和部分人工标注扫描数据学习超参数。每幅扫描被划分为180个分段。选取上坡路、下坡路、平路、颠簸路等典型分段构成训练集$\mathfrak{I}$。图5展示了训练集$\mathfrak{I}$中的9个典型分段。

---

![Image](images/07b944cef9031b24ef43bce3aca15ac6a1509a50ae8a9964e1dbab4e5473c239.jpg)

![Image](images/b5f03014c1afd5b6323786cc3874924ec79b107d9497e4d65d8911415531019d.jpg)

![Image](images/f9cb8b8b3ba33d2b6012bc463dfd2e63472f97f1699a36b2bd9b75bd3569c972.jpg)

![Image](images/61520c618d3c8ba9f9a0c3bfd92bde7cb7ba15e1728cbd54dcdb0566abddf599.jpg)

![Image](images/1e3acb796c410bb2d23351fd520a3e44694835d2c3ddf09364dffc209a181c5c.jpg)

![Image](images/8adf4945127e74b24a374bdc4630552fd508c8fa2100b6beef5b9241af636289.jpg)

![Image](images/90a023212a9c1d587fc2a52b96aa049a19f2e8b7454e0da7ee2f4b3382ed9f55.jpg)

![Image](images/b22388ff64ec881d440506d289bf7b427d41c1245bdea9484d95b3130b45b9da.jpg)

![Image](images/8824097333b6a5b56f4b0a02807f2cb3dd6eca01fd587358740f443f8fac2f0d.jpg)

<div style="text-align: center;">Fig. 5 9 typical segments chosen from the training set. The blue pluses are training points in the segments. The red lines represent the terrains in the segments with the learnt parameters  $\sigma_{f}^{2}=0.0528$,  $\sigma_{n}^{2}=0.0012$, a=6.2978)</div>

### 3.4 基于地面的障碍点分割

在对扫描的所有点进行标记后，将诸如车辆、行人、道路上的树桩等障碍物以及悬垂结构（如树冠和电线）分类为障碍物，这些障碍物是自动驾驶车辆无法通过的。 这是一个典型的欠分割问题。 但是，使用本文的方法，可以轻松解决这个问题。 由于我们自动驾驶车辆的局部路径规划仅依赖于2.5维网格地图，因此我们将3维障碍点映射到极坐标网格地图，分辨率为0.2米（我们使用0.2米是因为我们自动驾驶车辆的轮胎宽度约为0.2米）。 使用符号$P_{ij}$来表示映射到网格单元$c_{ij}$的障碍点的集合。

 $$ \begin{aligned}P_{ij}=\left\{p_{k}|i\leq\frac{x_{k}}{0.2}<i+1\cap j\leq\frac{y_{k}}{0.2}<j\right.\\ \left.+1\cap p_{k}\in obs\right\},\end{aligned} $$

其中$x_k$、$y_k$分别是点$p_k$在车辆局部坐标系中的x坐标和y坐标，该点的标签为障碍物。对于$P_{ij}$中的所有点，我们按照它们相对于地面的高度从小到大排序。对于$p_m$中的任意两个相邻点$p_n$、$P_{ij}$，$z_m$、$z_n$分别是它们相对于地面的高度。若$z_m$大于$z_n$，且距离$|z_m - z_n|$大于给定阈值T$|z_m - z_n| > T$，则$z_m$中相对高度大于等于$P_{ij}$的点为悬伸点，其余点为真实障碍物点。阈值T根据我们ALV的高度选定，为$T = 1.8$ m。

## 4 实验评估和分析

实验评估的目标是展示第3.2节中提出的地面分割算法的实用性。 为了评估所提出的算法的实时性能和准确性，采用了其他两个在[^5] [^13]中提出的算法进行比较。 我们使用C++以及点云库（PCL）[^25]来实现它们，并在城市和乡村环境中进行了多次对比实验。 我们的实验平台是一个经过修改的

---

![Image](images/5e175ab4646d4539c455d2c4c416b2ad9039f961f670b4ca8e56b1fa128ed3a7.jpg)

<div style="text-align: center;">Fig. 6 Our ALV used for the experiments in various environments. It is equipped with some cameras, lasers, and positioning sensor for perception</div>

丰田 Land Cruiser，如 6 图所示，配备了 Velodyne HDL-64E S2、三个 SICK LMS 291 以及 NovAtel SPAN-CPT GPS 辅助惯性导航系统 (INS)。 Velodyne 激光扫描仪以 10 Hz 的速度旋转。因此，每次扫描最多包含 0.13 亿个点。同时，为了直观地评估其准确性，我们在提供的 [^16] 数据集中进行了定量性能评估。在所有实验中，我们使用具有 2.4 GHz 双核和 2 GB 内存的英特尔 P8600 CPU 的笔记本电脑。

我们的算法和[^13]中的算法都基于极坐标网格地图。在构建直径为100米的极坐标网格地图的过程中，我们设置了线段大小$M = 180$。每个线段被划分为160个bin，$N = 160$。为了简化计算，靠近激光雷达的bin的范围约为0.2米（沿径向方向），其他bin的范围约为0.5米（沿径向方向）。[^5]中的算法基于三维网格地图，而本文中的网格地图覆盖100米x100米的区域，水平分辨率为0.4米，垂直分辨率为0.2米。$^{1}$每个网格单元的内容是其中点的3D均值。为了提高计算效率，我们进行了数据压缩，通过保留每30个网格均值中的1个进行降采样。

### 4.1 运行时间

由于该算法应用于 ALV，因此我们关注的是地面分割算法的实时性能。我们已在线评估所提出的算法，用于在鄂尔多斯市自主驾驶时采集的许多扫描结果。路线位于复杂的郊区环境，包含一些上坡道路、下坡道路和平坦道路，如图 7 所示。[^5] 和 [^13] 中的算法也使用相同的扫描结果进行离线实现。图 8 显示了这些算法的结果。

大多数情况下，我们的算法平均每扫描 74.93 毫秒，能够实现实时性能。但是，在区间 A 中，每次扫描的运行时间都超过 100 毫秒。这是因为 ALV 位于一个大型开放区域（如图 7 所示），并且 ALV 右侧的地面是上坡。在极坐标网格地图的相应部分，迭代次数（算法 1 的第 6-11 行）会增加，从而导致时间增加。在 [^5] 算法中也出现了相同的现象。从图 8 可以看出，我们的算法比 [^13] 算法慢，平均每扫描 35.12 毫秒，但比 [^5] 算法快得多，平均每扫描 678.77 毫秒。即使如此，我们的算法仍然可以实现实时性能，因为扫描刷新率为 100 毫秒/次扫描。

### 4.2 准确性

[^16] 中提供的数据集包含在波士顿城市区域收集的十个标记的街景扫描。每个点都有一个标签，例如地面、汽车、房屋等。在本文中，我们仅关注两种类型的激光点：地面点和障碍物点。所有非地面点（属于汽车、房屋、人等的激光点）

---

<div style="text-align: center;">Fig. 7 The global planned map in the city of Ordos acquired from the position sensor (INS)</div>

![Image](images/8295474c90cc82efd427d7c396dad028332ad87d84f4d2db1e39074bf819a51d.jpg)

树木、路牌、栅栏和其他物体被归类到障碍物类别中。所有十次激光扫描都分别映射到直径为 100 米的极坐标网格地图以及覆盖 100 米 x 100 米面积的三维网格地图中。地面分割的结果见表 1。所有算法都能获得良好的性能。这是因为这些扫描是在地形非常平坦的城市街道上采集的（下一小节将展示一些地形崎岖的扫描）。我们的算法可以实现 0.9767 的准确率，比 [^13] 中的算法高 1.16%，但比 [^5] 中的算法低 0.17%。众所周知，对于自动引导车辆 (ALV) 来说，将非地面点错误地分类为地面点可能是一场灾难，因为这很容易导致与障碍物发生碰撞。从表 1 可以看到，我们的算法将最少的障碍物点错误地分类为地面点。因此，在一定程度上，我们的算法是三种算法中最安全的。

### 4.3 在各种环境中的分割

为了评估所提算法对我们ALV的实用性，我们利用从城市与乡村环境采集的多幅扫描数据对这些算法进行了对比。示例结果如图9、图10、图11和图12所示，这些图同时展示了采用各算法得到的地面分割结果和地面曲面。这些场景包含一条带有部分

<div style="text-align: center;">Fig. 8 Runtime of our algorithm (blue) compared to that of [^13] (red) and [^5] (green) for 3200 scans acquired in the city of Ordos</div>

![Image](images/7c26f5eed24dab7ea9b2420c2b54d5652b142a22c97aa2460294a93c11bbd51d.jpg)

---

<div style="text-align: center;">Table 1 Confusion matrix of the three algorithms</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">True\nInferred</td><td colspan="2">Our algorithm</td><td colspan="2">Algorithm in [^5]</td><td colspan="2">Algorithm in [^13]</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ground</td><td style='text-align: center; word-wrap: break-word;'>Non-ground</td><td style='text-align: center; word-wrap: break-word;'>Ground</td><td style='text-align: center; word-wrap: break-word;'>Non-ground</td><td style='text-align: center; word-wrap: break-word;'>Ground</td><td style='text-align: center; word-wrap: break-word;'>Non-ground</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ground</td><td style='text-align: center; word-wrap: break-word;'>192251</td><td style='text-align: center; word-wrap: break-word;'>8268</td><td style='text-align: center; word-wrap: break-word;'>196060</td><td style='text-align: center; word-wrap: break-word;'>2570</td><td style='text-align: center; word-wrap: break-word;'>189780</td><td style='text-align: center; word-wrap: break-word;'>10728</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Non-ground</td><td style='text-align: center; word-wrap: break-word;'>6822</td><td style='text-align: center; word-wrap: break-word;'>439919</td><td style='text-align: center; word-wrap: break-word;'>11479</td><td style='text-align: center; word-wrap: break-word;'>440589</td><td style='text-align: center; word-wrap: break-word;'>11844</td><td style='text-align: center; word-wrap: break-word;'>434901</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Accuracy</td><td colspan="2">0.9767</td><td colspan="2">0.9784</td><td colspan="2">0.9651</td></tr></table>

在我们的实现中，算法中的参数设置为 $\sigma_n^2 = 0.0012$、$\sigma_f^2 = 0.0528$、$a = 6.2978$、$T_{model} = 0.04$、$T_{data} = 3$、$T_r = 0.3$。这些参数是通过最大化第 3.3 节中的伪对数边际似然值而获得的。

图 9–12 显示了所提出的地面分割算法在四个不同场景中的一些结果，与 [^13] 和 [^5] 中算法获得的结果进行比较。 每一张图包含两列：左列显示了我们算法、[^5] 算法和 [^13] 算法的分割结果，而另一列显示了使用相应算法获得的地表。 在图中左列，黄色、红色和绿色点分别代表地面、障碍物和悬垂结构。 由于本文中的算法和 [^13] 算法都基于已划分为许多部分的极坐标网格地图，因此我们只能在每个部分构建局部地面模型。 我们算法和 [^13] 算法获得的全局地面表面是由（所有）局部地面模型组合而成的。 $^{2}$

图 9 显示了一个高速公路场景，其中包含一辆汽车、一名自行车骑行者和一名行人。左侧的柱状图显示了算法的分割结果，而右侧的柱状图显示了使用相应算法获得的地面表面。我们的算法（如图 9a 所示）和 [^5] 中的算法（如图 9b 所示）可以获得良好的性能，而 [^13] 中的算法会将一些地面点（蓝色矩形中的红色点）错误地分类为障碍物（如图 9c 所示）。这是因为汽车遮挡了部分地面点，这违反了连续线之间的平滑过渡（在 [^13] 中，地面由每个线段中的线条表示）。使用 [^13] 算法获得的地面表面如图 9c 的右侧图像所示。红色矩形中的平坦地面表面被错误地分类为凸起，该凸起高于周围的地面表面。因此，红色矩形中的实际地面点被错误地分类为负障碍物。

图10展示了一处坡度为8.7%的校园场景。本文算法和[^5]中的算法都对坡度完成了准确分类，结果如左列所示，而[^13]中的算法无法做到这一点（对应图10c左图蓝色四边形内的红色和绿色点）。原因在于，这类陡坡的直线拟合均方根误差超过了预先设定的阈值。本文算法可以通过迭代将斜坡上的点累积为种子点，过程如图4所示。因此，每个分段内的局部地面都可以得到精准建模。[^5]中的算法也采用了类似的迭代流程。

尽管如此，本文算法与[^5]中的算法仍存在一些差异。对比图10a和图10b的地面分类结果可以发现，图10a中将A区域地面分类为平地，而图10b中将A区域分类为斜坡。主要原因是二者地面种子点的分布存在差异。在图10b左图对应的A区域（四边形A）中没有激光回波。本文算法将A区域划分为多个分段，并得到各分段内的局部地面模型。只有那些种子

---

![Image](images/1752f61d7016dab450c04bb8386207cb2e5a166dec5e7e6d184beb72c370c547.jpg)

![Image](images/343c40fe7e551ee6168b42f04274fa9f30da399a55a535dc7076078acae3992d.jpg)

<div style="text-align: center;">(a) The segmentation result (in the left image) and the ground surface (in the right image) obtained with our algorithm</div>

![Image](images/216a45ad3452992061e6fd89645577d85388aae8e6cca3943ceaadad26aa3b93.jpg)

![Image](images/028afa916a8da3eb94a7a9b7a3af6c141c1066286df453cabd8c272172c145e2.jpg)

<div style="text-align: center;">(b) The segmentation result (in the left image) and the ground surface (in the right image) obtained with the algorithm in [^5]</div>

![Image](images/574611253a834c3945a83f276c501a1a337b9a9f54920ef7a9f11524a619cf48.jpg)

![Image](images/d116dfb62e73b0be28a2c1f0c0b803f395c92d1c71affdf68e6433dfa4f9e592.jpg)

<div style="text-align: center;">(c) The segmentation result (in the left image) and the ground surface (in the right image) obtained with the algorithm in [^13]</div>

<div style="text-align: center;">Fig. 9 Our segmentation result in (a) of a highway scene, with a vehicle, a cyclist and a pedestrian, compared with the results of the algorithms in [^5] in (b), and [^13] in (c). In the left column of the figure, the ground points, obstacles, and</div>

悬空结构分别被涂成黄色、红色和绿色像素。 右侧的列显示了使用相应算法获得的地面。 图 10、11、12 和 13 相同

被用作种子。 当使用 [^5] 中的算法计算全局地面模型时，可以利用位于平坦地面和斜坡上的种子（通过迭代过程找到的种子）来预测区域 A 中的地面。 地面高度的平均预测值（如公式 10 所示）是种子的高度的线性组合。 因此，我们的算法将区域 A 分类为平坦地面，而 [^5] 中的算法将其分类为斜坡。

图 11 显示了另一个带有 T 型路口的校园场景。 检测远距离路口对于局部路径规划非常重要。

---

![Image](images/17e2eb253272e403ab0c81e3fac3db907f4f14d11d083925a944d628c46d2b78.jpg)

![Image](images/300f1a9ca6c477336053f6ec334cb5be6f7c9e85565f4d14f234194670b41333.jpg)

<div style="text-align: center;">(a) The segmentation result (in the left image) and the ground surface (in the right image) obtained with our algorithm</div>

![Image](images/e941866dab6bd8c4ff5d6e9a69cab13d8a0d527b9162ed74f7cd529ae9ce52c9.jpg)

![Image](images/b847d2c1c1ea9c663178a8bad1a83528677f6c97988ac77fc46b2240fecc3b62.jpg)

<div style="text-align: center;">(b) The segmentation result (in the left image) and the ground surface (in the right image) obtained with the algorithm in [^5]</div>

![Image](images/d207694780025793390fe73f929e818485f54cd4368af9a06ff21a7cb20bd88e.jpg)

![Image](images/e7314c81e8b49c39ea02b772bd7aff12e460d415e52b133064678e95d9c5d9ad.jpg)

<div style="text-align: center;">(c) The segmentation result (in the left image) and the ground surface (in the right image) obtained with the algorithm in [^13]</div>

<div style="text-align: center;">Fig. 10 Our segmentation result in (a) of a campus scene with an 8.7 % slope, compared with the results of the algorithms in [^5] in (b), and [^13] in (c)</div>

本文中的算法和 [^5] 可以获得良好的性能（如图 11a 和 b 所示）。这是因为这些算法的种子位于交汇点附近。但是，[^13] 中的算法将交汇点识别为障碍物，如图 11c 左侧图像中的蓝色矩形所示，这使得后续的交汇点检测变得不可能 [^2]。与 [^5] 中的算法的结果相比，我们的分割结果仍然存在一些缺陷。台阶被分类为地面，如图 11a 左侧图像中的蓝色多边形 B 所示。

我们的算法对缓慢上升的障碍物（例如台阶）不敏感。虽然每个台阶的高度通常小于 30 厘米，但它对城市环境中的 ALV 来说是一个障碍。

---

![Image](images/a9f15de911700fcf0818d837ac5bc5dc280a96029fcc4ac3bd9820b82acc9066.jpg)

![Image](images/137aea1ecc6753d6021688d1dbef33df729c2fbb6f422f7fd8d8b2726816bd43.jpg)

<div style="text-align: center;">(a) The segmentation result (in the left image) and the ground surface (in the right image) obtained with our algorithm</div>

![Image](images/c89e273855f4aabb7b8deb686e89db0a923b0f6b9fdb4f9293e29b9161e10750.jpg)

![Image](images/e1ee5a68351124d2d1229773052b074f0d87fb32986905e1c06301be22e75ff3.jpg)

<div style="text-align: center;">(b) The segmentation result (in the left image) and the ground surface (in the right image) obtained with the algorithm in [^5]</div>

![Image](images/cf7f61319c48f406816df38b1a3d6a45cfda06b03a0f975746621f875422382e.jpg)

![Image](images/aef776da1f6f197b965af47bdccdadfaaf44e113091e44ded2a4cad04fbf7722.jpg)

<div style="text-align: center;">(c) The segmentation result (in the left image) and the ground surface (in the right image) obtained with the algorithm in [^13]</div>

<div style="text-align: center;">Fig. 11 Our segmentation result in (a) of a campus scene with a T-junction in front of the ALV, compared with the results of the algorithms in [^5] in (b), and [^13] in (c)</div>

在包含台阶等障碍物的区域中，最小高度会逐渐增加。由于每个区域只有少数种子位于平坦的地面上，因此我们的算法可能会将台阶上的点通过迭代过程积累为种子。台阶将被错误地分类为地面。因此，该区域中的地面高度会增加（例如，如图 11a 右侧图像中的区域 B 所示）。[^5] 中的算法在这种情况下可以获得更好的结果。这是因为它使用了许多位于全局平坦地面上的种子点。台阶上的点很难通过迭代过程成为种子。

---

![Image](images/318e38e4b67ab03308b1a53540f9a4adc0715cda978e536a4224f6fa0216ce9c.jpg)

![Image](images/9f6474ec9226339731808e728fdde04db54bf13139fc7a17bb728a78d253bc51.jpg)

<div style="text-align: center;">(a) The segmentation result (in the left image) and the ground surface (in the right image) obtained with our algorithm</div>

![Image](images/342a53f58e6ebe493b4aeec0fca7470ad84d5e126f390692fd73e49c17efe55b.jpg)

![Image](images/3b63cdc4a58e1ac2fb36cb053a1b8e9afdd5ee7cea76ac362f12ce0205a531be.jpg)

<div style="text-align: center;">(b) The segmentation result (in the left image) and the ground surface (in the right image) obtained with the algorithm in [^5]</div>

![Image](images/4f868f464e7f8be9606255ef83bef68764b2b3846017e97d5eac2dad628df0d1.jpg)

![Image](images/ba5dfb299cb48c78dca886e8403969e1c73fe51c6021a23eb115db1667a97b52.jpg)

<div style="text-align: center;">(c) The segmentation result (in the left image) and the ground surface (in the right image) obtained with the algorithm in [^13]</div>

<div style="text-align: center;">Fig. 12 Our segmentation result in (a) of the countryside scene with some road-blocks, compared with the results of the algorithms in [^5] in (b), and [^13] in (c)</div>

[^5] 中的算法的迭代过程中。预测的地面，如图 11b 右侧图像所示，非常平坦，并且台阶被准确地分类为障碍物。

乡村场景如图 12 所示。在我们 ALV 前面有许多路障，这些路障被放置在平坦的地面上，形成道路的 curbs。所有三个算法都可以将路障与地面分开，因为它们都具有描述平坦道路的能力。但是，对于粗糙的道路，它们的性能有所不同。

---

![Image](images/6256fca6a21d1118f35c1b75c12194430e29f46bc07211aa6909e36e35bae100.jpg)

![Image](images/e5c867c5d2b52db98610a20799e8e00fd322c1f8891c6fa65746ec9957af162e.jpg)

<div style="text-align: center;">Fig. 13 Examples where the performances of our algorithm are poor. The left image shows a campus scene with a car, some persons, some trees and two stair steps (the bottom stair step is 0.15 meter high and the other is 0.2 meter) that are in Quad. C, our algorithm misclassifies the</div>

<div style="text-align: center;">stair steps as ground, but segments the car, persons, trees and overhanging structures accurately. In the right image, our ALV locates at the intersection of a trunk road and a countryside uphill road. The uphill road is misclassified as obstacles in Quad. D</div>

[^13] 中的算法无法适应粗糙的道路，许多地面点被错误地分类为障碍物（即，如图 12c 左侧图像中的蓝色多边形中的红色点）。这是因为粗糙的地面表面会导致线拟合的均方误差增大。由于存在许多位于平坦地面上的种子点，[^5] 中的算法可以获得平坦的地面。它可以准确地检测到负向障碍物，同时会将缓慢上升的山坡错误地分类为障碍物（如图 12b 左侧图像中的蓝色矩形所示）。由于我们的算法对山坡不敏感，因此它可以将它们准确地分类为地面。

从图 9–12 的右侧列可以看出，[^5] 中由算法获得的地表是最平滑的，第二是我们的算法，最后是 [^13] 中的算法。在 [^5] 中，基于二维高斯过程回归的算法使用整个地图中的种子来建模全局地表，从而保持了整个地图中地表的连续性。我们的方法对每个段落都进行局部地表建模，只使用每个段落中的种子。然而，较少的种子使得我们的算法对阶梯和山坡不敏感，但较少的种子也使得我们的算法具有实时性能。我们的算法只能保持每个段落中的连续性，而不能保持相邻段落之间的连续性。[^13] 中的算法使用线拟合方法来对每个段落中的局部地表进行建模，只能保持每个段落中的相对连续性。同时，遮挡和崎岖的地形会极大地影响线拟合的结果。

图 13 提供了一些示例，说明了我们算法的局限性，以说明在哪些环境情况下我们的算法无效。在图 13 的左侧图像中，我们的算法会将阶梯错误地分类为地表（左侧图像中的 C 区域），因为我们的算法将极坐标网格地图划分为许多段落。每个段落只包含几个种子，这使得我们的算法对缓慢上升的障碍物不敏感，例如阶梯。我们的算法会将阶梯上的点累积为种子来建模局部地表，并错误地将阶梯分类为地表。我们算法的另一个缺点在图 13 的右侧图像中有所体现。我们的 ALV 位于主路和乡间丘陵道路的交叉口（坡度为 12%），并面向丘陵道路。如前所述，我们只选择传感器周围 30 米范围内绝对高度小于 0.3 米的点作为初始种子。但是，在这个场景中，坡度非常陡峭，因此没有初始种子，这使得我们的算法无法奏效。

虽然我们的算法可以进一步改进，但它已成功应用于我们的 ALV，该 ALV 在中国奥尔多斯举行的 2011 年中国未来挑战赛中获得了冠军，该挑战赛要求 ALV 完成避开静态障碍物、并入车辆、转弯等任务。通过本文中的算法

---

以及 [^27] 中的路径规划算法，我们的 ALV 在 20 分钟内自主完成了奥尔多斯市的十公里路线，无需任何人工干预。

## 5 结论与未来工作

本文提出了一种用于 ALV 的新型实时地表分割算法，该算法结合了 [^5] 和 [^13] 中两种算法的优点。该算法将复杂的两维地表分割问题分解为许多一维回归问题，以提高计算效率，并保持每个段落中的地表连续性。与 [^13] 中的算法相比，它可以获得更好的精度，与 [^5] 中的算法相比，可以实现实时性能。我们的算法对于后续的实时目标分类和局部路径规划很有用。

未来，我们将研究如何基于本文中的算法，在相邻的图像块之间保持连续性。此外，在选择初始种子点时，我们将考虑每个点的法向量方向，因为在城市环境中，地面的法向量几乎向上。如果某个点的法向量不是向上的，则它将不会被选择为初始种子点。这种方法可以在一定程度上提高我们算法的准确性和鲁棒性。

致谢：本工作部分由中国国家自然科学基金资助，项目编号分别为61075043和61375050。感谢所有加入竞赛并与我们合作，共同赢得第三届中国未来挑战赛冠军的实验室成员。

## 参考文献

[^1]: Abuhashim, T., Sukkarieh, S.: Incorporating geometric information into Gaussian process terrain models from monocular images. In: Internation Conference on Intelligent Robots and Systems (IROS), pp. 4162–4168 (2012)

[^2]: Chen, T., Dai, B., Liu, D., Liu, Z.: Lidar-based long range road intersection detection. In: Sixth International Conference on Image and Graphics, pp. 754–759 (2011)

[^3]: Chen, T., Dai, B., Liu, D., Zhang, B., Liu, Q.: 3d lidar-based ground segmentation. In: Asian Conference on Pattern Recognition, pp. 446–450 (2011)

[^4]: Douillard, B., Nourani-Vatani, N., Johnson-Roberson, M., Williams, S., Roman, C., Pizarro, O., Vaughn, I., Inglis, G.: Fft-based terrain segmentation for underwater mapping. In: The 2012 Robotics: Science and Systems Conference (RSS) (2012)

[^5]: Douillard, B., Underwood, J., Kuntz, N., Vlaskine, V., Quadro, A., Morton, P., Frenkel, A.: On the segmentation of 3d lidar point clouds. In: International Conference on Robotics and Automation (ICRA), pp. 2798–2805. Shanghai, China (2011)

[^6]: Douillard, B., Underwood, J., Melkumyan, N., Singh, S., Vasudevan, S., Brunner, C., Quadros, A.: Hybrid elevation maps: 3d sruface models for segmentation. In: International Conference on Intelligent Robots and Systems (IROS), pp. 1532–1538. Taiwan (2010)

[^7]: Filitchkin, P., Byl, K.: Feature-based terrain classification for littledog. In: Internation Conference on Intelligent Robots and Systems (IROS), pp. 1387–1392 (2012)

[^8]: Gu, J., Cao, Q., Huang, Y.: Rapid traversability assessment in 2.5d grid-based map on rough terrain. Int. J. Adv. Robot. Syst. 5(4), 389–394 (2008)

[^9]: Guo, Y., Song, A., Bao, J., Tang, H., Cui, J.: A combination of terrain prediction and correction for search and rescue robot autonomous navigation. Int. J. Adv. Robot. Syst. 6(3), 207–214 (2009)

[^10]: Hadjiliadis, O., Stamos, I.: Sequential classification in point clouds of urban scenes. In: Fifth International Symposium on 3D Data Processing, Visualization and Transmission (2010)

[^11]: Hadsell, R., Bagnell, J., Huber, D., Hebert, M.: Non-stationary space-carving kernels for accurate rough terrain estimation. Int. J. Robot. Res. (IJRR) 29(8), 981–996 (2010)

[^12]: Hemakumara, M., Sukkarieh, S.: Non-parametric uav system identification with dependent gaussian processes. In: International Conference on Robotics and Automation (ICRA), pp. 4435–4441 (2010)

[^13]: Himmelsbach, M., Hundelshausen, F., Wuensche, H.: Fast segmentation of 3d point clouds for ground vehicles. In: IEEE Intelligent Vehicles Symposium (IV), pp. 560–565. USA (2010)

[^14]: Hu, T., Qi, B., Wu, T., Xu, X., He, H.: Stereo matching using weighted dynamic programming on a single-direction four-connected tree. Comp. Vision Image Underst. (CVIU) 116(8), 921–928 (2012)

[^15]: Inc, V.L.: HDL 64E S2 Uesr's Manual. Morgan Hill, CA 95037 (2008)

[^16]: Lai, K., Fox, D.: Object recognition in 3d point clouds using web data and domain adaptation. Int. J. Robot. Res. (IJRR) 29(8), 1019–1037 (2010)

[^17]: Lang, T., Plagemann, C., Burgard, W.: Adaptive non-stationary kernel regression for terrain modeling. In: Robotics: Science and Systems Conference (RSS) (2007)


## [^18]: Muhammad, N., Lacroix, S.: Calibration of a rotating multi-beam lidar. In: International Conference on


---

Intelligent Robots and Systems (IROS), pp. 5648–5653. 台湾 (2010)

[^19]: Nguyen, V., Martinelli, A., Tomatis, N., Siegwart, R.: A comparison of line extraction algorithms using 2d laser rangefinder for indoor mobile robotics. In: International Conference on Intelligent Robots and Systems (IROS), pp. 1929–1934. Canada (2005)

[^20]: Ortigosa, N., Morillas, S., Peris-Fajarnes, G.: Obstacle-free pathway detection by means of depth maps. J. Intell. Robot. Syst. 53, 115–129 (2010)

[^21]: Paciorek, C., Schervish, M.: Nonstationary covariance function for Gaussian process regression. In: Processings of the Conference on Neural Information Processing Systems (NIPS) (2004)

[^22]: Plageman, C., Kersting, K., Burgard, W.: Nonstationary gaussian process regression using point estimates of local smoothness. In: The European Conference on Machine Learning (ECML), pp. 204–219. Belgium (2008)

[^23]: Plagemann, C., Mischke, S., Prentics, S., Kersting, K., Roy, N., Burgard, W.: Learning predictive terrain models for legged robot locomotion. In: International Conference on Intelligent Robots and Systems (IROS), pp. 3545–3552 (2008)

[^24]: Rasmussen, C., Williams, C.: Gaussian Processes for Machine Learning. The MIT Press, England (2006)

[^25]: Rusu, R., Cousins, S.: 3d is here: point cloud library (pcl). In: International Conference on Robotics and Automation (ICRA), pp. 1–4 (2011)

[^26]: Stamos, I., Hadjiliadis, O., Zhang, H., Flynn, T.: Online algorithms for classification of urban objects in 3d point

云朵。 摘自：国际三维成像、建模、处理、可视化和传输会议 (3DIMPVT)，第 332–339 页（2012 年）。

[^27]: Sun, Z., Chen, Q., Nie, Y., Liu, D., He, H.: Ribbon model based path tracking method for autonomous land vehicle. In: Internation Conference on Intelligent Robots and Systems (IROS), pp. 1220–1226 (2012)

[^28]: Sung, G., Kwak, D., Lyou, J.: Neural network based terrain classification using wavelet features. J. Intell. Robot. Syst. 59, 269–281 (2010)

[^29]: Thrun, S., et al.: Stanley: the robot that won the darpa grand challenge. Journal of Filed Robotics (JFR) 23(9), 661–692 (2006)

[^30]: Vasudevan, S., Ramos, F., Nettleton, E., Whyte, H.: Heteroscedastic Gaussian processes for data fusion in large-scale terrain modeling. In: International Conference on Robotics and Automation (ICRA), pp. 3452–3459 (2010)

[^31]: Vasudevan, S., Ramos, F., Nettleton, E., Whyte, H.: Non-stationary dependent gaussian processes for data fusion in large-scale terrain modeling. In: International Conference on Robotics and Automation (ICRA), pp. 1875–1882. Shanghai, China (2011)

[^32]: Wang, M., Zhou, J., Tu, J., C.L., L.: Learning long-range terrain perception for autonomous mobile robots. Int. J. Adv. Robot. Syst. 7(1), 55–66 (2010)

[^33]: Xiao, L., Dai, B., Wu, T., Fang, Y.: Unstructured road segmentation based on spare representation. In: National Conference on Image and Graphic. Changchun, China (2012)
