
# 基于三维LADAR数据的行人检测与跟踪

《国际机器人研究杂志》 29(12) 1516–1528

© 作者 2010 重印与许可：sagepub.co.uk/journalsPermissions.nav

DOI: 10.1177/0278364910370216 ijr.sagepub.com

Luis E. Navarro-Serment、Christoph Mertz 和 Martial Hebert

![Image](images/31169ed768dfbd55d433a283c9090b8341eabcf3235a7e64cf4eb2b47d3253c7.jpg)

## 摘要

本文研究的方法利用三维LADAR测量结果检测并跟踪动态场景中的行人。该传感器搭载于移动车辆上。算法首先利用一部分测量点快速检测出潜在的行人目标，随后采用统计模式识别技术对每个目标进行分类。该算法利用几何特征和运动特征识别行人特征。本文所述的感知能力为自动驾驶车辆的安全、鲁棒导航奠定了基础，对于保障移动机器人车辆附近活动的行人安全而言必不可少。

## 关键词

行人检测、三维LADAR传感与感知、野外与服务机器人技术

### 1. 引言

对于自动驾驶车辆而言，躲避与其他物体碰撞的能力至关重要，尤其是当车辆在靠近行人的区域行驶时。及时检测到行人可以让车辆感知到附近的潜在危险，并据此调整行驶路线。

近年来，在行人保护、车辆列队行驶和自动驾驶等应用的推动下，鲁棒可靠的检测与跟踪技术吸引了大量研究关注。这是一个难度很高的问题，当传感器（例如光学传感器、雷达、激光扫描仪）安装在车辆上而非像交通监控系统那样固定安装时，问题会变得更加棘手。有效的检测与跟踪要求即使传感器自身处于运动中，也需要准确测量目标的位置和运动。距离传感器非常适合解决该问题，因为只需从距离测量结果中减去自身运动即可完成一阶运动校正。遗憾的是，仅仅减去自运动无法消除运动带来的所有影响：当目标的不同侧面进入视野时，观测得到的目标形状会发生改变，这种变化很容易被误判为目标运动。此外，观测到的目标外观还取决于目标姿态，也可能受到附近物体的影响。最后，复杂的户外环境通常存在背景杂乱、不平地形易产生地面回波、交通参与者交互不可预测等诸多挑战。

已有大量研究将线激光扫描仪用作行人检测与跟踪的核心传感器。我们课题组已经开发出基于SICK™线激光扫描仪的检测与跟踪系统，这些实现方案在地面相对平坦的场景下表现良好（Navarro-Serment等，2006）。然而，三维（3D）激光雷达LADAR（即可生成一组三维点或点云的传感器）能够捕获环境及其中物体更完整的表征。在之前的工作（Navarro-Serment等，2008）中，我们提出了一种从三维数据中检测行人的算法。相比二维数据版本，该算法的核心改进在于它构建了地面高程图，并利用该图剔除地面回波，这使得即使周围地面不平坦也能完成行人检测。算法利用运动、尺寸和噪声特征对目标是否为行人进行分类，只要目标处于运动状态，分类效果就很好，但对静止行人分类时仍然存在过多误报。

本文中，我们介绍一种利用目标的完整三维点云检测并分类行人的策略，该策略能够同时提升运动行人和静态行人的分类效果，其中对静态行人分类性能的提升最为显著。该算法首先利用点云的一个子集快速检测出可能是行人的目标，随后利用统计模式识别技术对每个目标进行分类。我们给出了基于三维的检测性能实验结果，这些结果

---

![Image](images/4057fc17594447393abac7880b823a5583a0604371faeaa53682940ab9301c61.jpg)

<div style="text-align: center;">Fig. 1. The Demo III Experimental Unmanned Vehicle (named XUV) used in our tests. The vehicle shown is equipped with a 3D LADAR mounted on a pan-tilt platform.</div>

LADAR来自于在Demo III实验无人车（XUV）上开展的实地测试（Shoemaker和Bornstein，1998）（图1）。

### 2. 相关工作

车载应用中最常用的运动目标检测与跟踪方法涵盖被动式和主动式测距传感器两类（Hebert，2000）。像摄像机这类被动传感器能够以非侵入式方式采集数据。Sun等人（2006）已经针对基于视觉的道路车辆检测系统发表了一篇全面综述。

主动式测距传感器（如雷达和LADAR）无需强大的计算资源即可直接测量距离。特别是近年来的新型激光扫描仪能够以高扫描速度采集高分辨率数据，并且已有适配车载应用场景的成品。和本文方法最相关的研究是线激光扫描仪的应用。Fuerstenberg等人（2002）介绍了多层激光扫描仪在行人分类中的应用：他们利用车辆里程计估计自身运动，消除传感器运动带来的影响，用卡尔曼滤波估计目标速度，被跟踪的目标根据形状和随时间的行为被分类为汽车、行人等。该团队还开发了第二套系统（Streller等，2002），在这套系统中，卡尔曼滤波根据目标估计中心点的位置变化来估计运动，再根据分类结果为点集拟合特定类别的先验矩形模型。尽管文中没有明确说明，这似乎是一种减少形变运动伪影的方法。该技术的效果依赖于分类的正确性，每个目标类别也有独立的固定卡尔曼滤波参数，因此采用多假设方法来缓解分类错误的影响。这两项工作都聚焦于单LADAR系统，并未考虑多扫描仪融合。

Cui等人（2007）描述了一种对人群场景处理效果尤为出色的系统。作者采用了基于连续激光帧累积分布的特征提取方法，最终的跟踪器结合了独立卡尔曼滤波和Rao–Blackwellized蒙特卡洛数据关联滤波。

已有研究人员将分类技术应用于检测与跟踪问题。Arras等人（2007）提出的方法利用AdaBoost从相邻点组的简单特征中训练得到强分类器，该工作聚焦于二维距离测量。
采用三维数据的研究案例包括Morris等人（2006）的工作：该研究将三维扫描结果自动聚类为不同目标，并利用表面密度函数对目标建模。通过优化Bhattacharya相似性测度来配准每个目标的后续观测，从而实现良好的区分与跟踪，最终完成运动目标检测。Howard等人（2007）提出了一种行人检测系统，该系统利用立体视觉生成三维点云，随后采用朴素贝叶斯分类器，基于考虑二维投影前两阶中心矩的点形状分布对点云进行分类。运动信息也被用作人体检测的线索。

Thornton等人（2008）提出了一种能够同时检测静止人体和运动人体的算法。他们的方法采用多传感器模态，包括三维LADAR和长波红外视频（LWIR）。类似地，同一研究团队在Thornton和Patil（2008）的工作中提出了一种结合三维LADAR和可见光谱图像的人体检测技术。在这两项工作中，作者都采用二维模板从目标形状中提取特征。与本文工作相比，除其他差异外，他们仅从单个平面的投影提取形状模板，并且计算回波在模板上的分布均匀性度量。

### 3. 算法描述

本节将对本文提出的行人检测与分类算法进行介绍。在我们的方法中，由于实时运行是核心需求，因此我们首先在二维数据子集上完成目标检测与跟踪，随后利用目标的位置和尺寸信息将三维测量集合划分为更小的分组，以便开展进一步分析。我们将在后续小节中介绍这些步骤。

#### 3.1. 投影到二维平面

我们利用惯性导航系统对单周期采集的LADAR数据进行车体运动校正。随后，为降低处理整幅点云的计算量，我们提取出一个二维虚拟切片，该切片仅包含距离地面特定高度范围内的点。如图2所示，三维扫描仪生成点云后，从中提取的“切片”被投影到二维平面，得到一条虚拟扫描线。该扫描线是由连续方位角的距离测量组成的向量，它

---

![Image](images/ab67043e720b3c762d039946eff1108e652005d776a6c8bfad900dd2bb2004be.jpg)

<div style="text-align: center;">(a)</div>

<div style="text-align: center;">(b)</div>

<div style="text-align: center;">Fig. 2. Projection of the virtual scan line. (a) A point cloud collected from the environment illustrated in Figure 1 is shown. The points located within a certain height above ground are projected onto a 2D plane, and processed as if it were a single scan line (b). The resulting projection is shown in (c), top view.</div>

与SICK $^{TM}$这类线扫描仪直接输出的数据格式类似。该过程将切片内所有点投影到平面上，切片由其距地面的高度范围定义。

地面高程存储在滚动网格中，该网格包含累积的LADAR点，且以车辆当前位置为中心。我们先计算每个单元格内所有扫描点高度的均值和标准差，再通过单元格内所有点的平均高度减去一个标准差得到高程值。为了提升应对传感器失准的鲁棒性，我们对高度测量结果应用遗忘因子，因此越新的点权重越大。该简单算法的核心特点是：均值和标准差可递归计算，且高程值永远不会低于最低扫描点，同时仍有约80%的点位于地面以上。

该系统通过改变感知平面的形状（即调整将点投影到二维平面的切片高度）来适配不同环境。通过在高于地面的固定高度搜索测量值，可避免地面回波产生的虚假测量结果。由于我们的研究大多在开阔室外环境中开展，并未遇到过街天桥或天花板这类悬挑结构，对这类结构的处理可作为未来工作的研究方向。

#### 3.2 目标分割与跟踪

得到虚拟扫描线后，它将依次经历目标分割和目标跟踪流程。第一步是分割，目的是判断扫描线中的哪些点可能属于同一个目标。我们采用距离阈值分割方法，将相互间距在固定距离内的点聚类。每个目标由包围其所属点的边界框的中心表示，目标尺寸由边界框的对角线长度表示。

随后我们会测试当前扫描检测到的目标与过往扫描中目标的关联关系。如果当前扫描和过往扫描的两个目标的边界框重叠，二者会被判定为同一个目标。考虑目标的预测运动路径后，两个目标判定为重叠的条件是：至少有一个实际测量点落在该目标的边界框内。我们对点进行直线或角点拟合，得到的角点和端点作为特征点输入卡尔曼滤波器，由卡尔曼滤波器估计目标的位置和速度 $^{1}$。这些估计结果会被存储，供检测流程的后续步骤使用。

跟踪算法会尝试在目标暂时丢失时维持跟踪。如果一个目标消失（例如被其他目标遮挡，或是移出视野），该目标轨迹会保留数个周期，其

---

位置会根据上次的运动估计更新。当目标重新出现，且其当前位置接近估计位置时，该目标会与旧轨迹相关联。

#### 3.3 运动特征

使用虚拟扫描线完成目标检测与跟踪后，我们可以计算运动得分（MS）。MS用于衡量算法判定检测目标为人类的置信度，计算基于四个与运动相关的变量：目标尺寸、目标移动距离，以及目标尺寸和速度的变化量。尺寸测试可排除汽车、墙体这类大尺寸目标，移动距离测试可排除桶、桩这类静止目标，变化量测试可排除植被——因为植被本身多孔且性质柔韧，其外观会发生大幅变化。这些测试的单独结果会被打分，再用于计算MS。

3.3.1. MS的计算。用于计算MS的四个指标分别是尺寸、移动距离（ $d_{t}$）、尺寸变化量（ $\sigma_{s}$）和速度变化量（ $\sigma_{v}$）。此处的变化量是过去14个周期内计算得到的方差。

MS等于尺寸测试得分、移动距离测试得分与两个方差测试得分的平方根的乘积：

 $$ \begin{array}{r}{M S=S_{d_{t}}S_{\mathrm{s i z e}}\sqrt{S_{\sigma_{v}}S_{\sigma_{s}}}.}\end{array} $$

我们对方差测试得分取平方根，是为了让两个方差测试的总权重与另外两个测试保持相等。

尺寸测试和方差测试的得分计算方式如下：

 $$ S_{\mathrm{s i z e},\sigma_{s},\sigma_{\nu}}(x)=\begin{cases}0&x\geq a_{e}\\ \frac{a_{e}-x}{a_{e}-a_{b}}&a_{e}>x>a_{b}\\ 1&x\leq a_{e}\end{cases} $$

而移动距离测试的得分为

 $$ S_{d_{t}}(x)=\left\{\begin{array}{cc}0.75\frac{a_{b}+x}{2a_{b}}&S_{1}<1,x<a_{b}\\0.75&S_{1}<1,x\geq a_{b}\\0.75+\frac{x}{4a_{m}}&S_{1}=1,a_{m}>x>a_{b}\\1&\text{otherwise}\end{array}\right. $$

其中

 $$ S_{1}=S_{\mathrm{s i z e}}\sqrt{S_{\sigma_{s}}S_{\sigma_{v}}}. $$

阈值$a_{b}$、$a_{e}$和$a_{m}$的取值均通过实验确定，已列于表1中。

上述计算的逻辑如下。$a_{b}$是使准确率（即真阳性率与真阴性率的加权平均值）达到最大的阈值，$a_{e}$是观测得到的人类对应的极值，也就是人类能达到的最大数值。尺寸相关的数值符合直观认知：1 m略大于普通人的横截宽度，2 m是人类张开手臂的总跨度。移动距离测试的计算逻辑不同，和其他指标相反，移动距离越大，算法就越有把握判定该目标是人类。但行人也可能出现移动距离为0 m的情况，因此不存在可以排除人类的上下限；相反，我们可以通过该指标排除固定物体。$a_{m}$是我们观测到的固定物体对应的极值，固定物体可能因为误关联而表现出运动假象。

#### 3.4. 几何特征

为了更好地排除静态结构，我们还从二维空间中每个被跟踪目标所属的点集中计算出一组具有区分度的几何特征，随后将这些特征输入分类器，由分类器判定目标是否为人类。这一流程如图3所示。

如图3(a)所示，该流程从传感器读取点云时启动。我们将$Z_j = \{x_1, x_2, \ldots, x_N\}$定义为时刻$t_j$采集的一帧中包含的N个点的集合，集合中的元素由笛卡尔坐标$\mathbf{x} = (x, y, z)$表示。图中展示了对应一帧的所有点，并根据这些点距离地面的高度进行着色。为了避免处理整个点云带来的计算开销，我们按照3.1节的描述提取了一个二维虚拟切片（如图3(b)所示）。对于时刻$t_j$正在跟踪的M个物体中的每一个，我们利用其位置、速度和尺寸估计值计算其MS。此外，我们利用物体的位置和尺寸信息从原始点云中分离出仅对应潜在人类的点，如图3(c)所示。我们利用地面高程去除最低处的点，以确保仅提取属于目标物体的点。通过这种方式，每个物体对应的三维信息会以更小的点集形式被恢复出来。此时我们得到了M个点集的集合$\{S_1, S_2, \ldots, S_M\}$，其中$S_{i \in \{1, 2, \ldots, M\}} \subset Z_j$。我们从每个点集中计算得到一个特征向量（如图3(d)和(e)所示），随后将其输入分类器，由分类器判断每个物体是否为人类，如图3(f)所示。该判断针对每个物体单独进行，基于传感器采集到的最新点集。分类器还会纳入用于计算MS的信息，相关内容将在后续章节介绍。

我们计算一组特征，目的是从三维数据中提取最能表征人类的信息特征。腿部是人类外形特别具有辨识度的部分，因此算法会对腿部周围的点计算统计描述。我们也会对代表上半身的躯干区域计算类似的统计描述。此外，我们利用惯性张量捕捉所有点的整体分布。最后，为了纳入人类外形的整体形状信息，我们

---

<div style="text-align: center;">Table 1. Thresholds for Motion Score Tests</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$a_{{b}}$</td><td style='text-align: center; word-wrap: break-word;'>$a_{{e}}$</td><td style='text-align: center; word-wrap: break-word;'>$a_{{m}}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Size (m)</td><td style='text-align: center; word-wrap: break-word;'>1.0</td><td style='text-align: center; word-wrap: break-word;'>2.0</td><td style='text-align: center; word-wrap: break-word;'>—</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Size variation ( $m^{{2}}$)</td><td style='text-align: center; word-wrap: break-word;'>0.035</td><td style='text-align: center; word-wrap: break-word;'>0.45</td><td style='text-align: center; word-wrap: break-word;'>—</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Velocity variation ( $(m/s)^{{2}}$)</td><td style='text-align: center; word-wrap: break-word;'>0.01</td><td style='text-align: center; word-wrap: break-word;'>0.1</td><td style='text-align: center; word-wrap: break-word;'>—</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Distance traveled (m)</td><td style='text-align: center; word-wrap: break-word;'>1.5</td><td style='text-align: center; word-wrap: break-word;'>—</td><td style='text-align: center; word-wrap: break-word;'>3.0</td></tr></table>

![Image](images/8458a3ee968f6ec8b8693186bb4cd347fd1a1cf8717c722dad1914f3c98d592a.jpg)

<div style="text-align: center;">Fig. 3. Improved pedestrian detection. Geometric features present in subsets of the point cloud are used by a classifier to distinguish pedestrians from static objects.</div>

在与重力向量对齐的两个平面上计算归一化二维直方图。

3.4.1 特征提取。设$S_{k}=\{\mathbf{x}_{1},\mathbf{x}_{2},\ldots,\mathbf{x}_{n}\}$为属于物体k的点集，集合中的元素由笛卡尔坐标$\mathbf{x}=(x,y,z)$表示。我们从$S_{k}$中计算得到一组合适的特征，如图3(d)所示，这些特征构成了物体的轮廓。

我们首先使用$S_k$的所有元素执行主成分分析（PCA），以识别三维数据中的统计模式（参见图4）。这一步需要从三个数据维度的每个维度中减去均值$\mathbf{m}$。基于这个零均值的新数据集，我们将所有点视为单位点质量，计算得到协方差矩阵$\boldsymbol{\Sigma} \in \Re^{3 \times 3}$（公式(4)）和归一化惯性张量$\mathbf{M} \in \Re^{3 \times 3}$（公式(5)）：

 $$ \sum=\frac{1}{n-1}\sum_{k=1}^{n}(\mathbf{x}_{k}-\mathbf{m})(\mathbf{x}_{k}-\mathbf{m})^{\mathrm{T}}, $$

 $$ \boldsymbol{M}=\left[\begin{matrix}{\sum_{k=1}^{n}\left(y_{k}^{2}+z_{k}^{2}\right)}&{-\sum_{k=1}^{n}x_{k}y_{k}}&{-\sum_{k=1}^{n}x_{k}z_{k}}\\ {-\sum_{k=1}^{n}x_{k}y_{k}}&{\sum_{k=1}^{n}\left(x_{k}^{2}+z_{k}^{2}\right)}&{-\sum_{k=1}^{n}y_{k}z_{k}}\\ {-\sum_{k=1}^{n}x_{k}z_{k}}&{-\sum_{k=1}^{n}y_{k}z_{k}}&{\sum_{k=1}^{n}\left(x_{k}^{2}+y_{k}^{2}\right)}\\ \end{matrix}\right]. $$

由于$\Sigma$和M都是对称矩阵，因此我们仅从每个矩阵中选取6个元素作为特征。

PCA得到三对特征向量与特征值，我们按照特征值降序对其排序。将这些特征向量记为$\mathbf{e}_1, \mathbf{e}_2, \mathbf{e}_3$，对应的特征值记为$\lambda_1 > \lambda_2 > \lambda_3$。主成分$\mathbf{e}_1$预期会与人体垂直对齐。它与第二大分量$\mathbf{e}_2$共同构成主平面（图4，顶部中心），并且

---

![Image](images/537adbb607d6e38efac2a7ea906dd0a1e22cb318922e5fcf879cf5c236cf29ea.jpg)

<div style="text-align: center;">Fig. 4. A set of geometric features is computed from the set of points belonging to an object.</div>

也由最小分量$\mathbf{e}_3$构成次平面（图4中下）。随后我们分别使用分量对$\mathbf{e}_1$、$\mathbf{e}_2$和$\mathbf{e}_1$、$\mathbf{e}_3$将原始数据转换为两种表示，进而基于这些表示计算额外特征（第三种可能的表示，即使用两个最小分量$\mathbf{e}_2$、$\mathbf{e}_3$的表示未被采用）。

我们重点分析主平面内包含的点，以得到对应行人腿部和躯干的模式，如图4中上所示。划分的区域为上半区，以及左下半区和右下半区。将点划分到这些区域后，我们对每个区域内的变换后点计算二维协方差矩阵，由此得到9个额外特征（每个区域贡献3个唯一值）。

最后，我们为两个主平面分别计算归一化二维直方图（图4右侧），以捕捉目标的形状。我们为由$14 \times 7$和$\mathbf{e}_1$定义的主平面设置了$\mathbf{e}_2$个分箱，为由$9 \times 5$和$\mathbf{e}_1$构成的次平面设置了$\mathbf{e}_3$个分箱。这些直方图以变换后数据的基坐标原点为中心。两种情况下分箱均为正方形，尺寸固定（主平面分箱尺寸为0.15 m，次平面为0.25 m）。分箱的尺寸和数量通过实验确定。每个分箱作为一个特征，因此共有143个特征表示形状，最终每个目标共得到164个几何特征。

尽管只要每个区域（即主平面的上半区、左下半区、右下半区）各有至少2个点就可以计算这些特征，但编码得到的信息不足以充分捕捉目标的几何形状。因此，仅当每个目标至少有15个点可用时，我们才会计算几何特征。该阈值是通过实验确定的。

#### 3.5. 行人检测

图3(f)所示的分类器由两个独立的支持向量机（SVM）组成（Burges 1998），用于判断每个目标是否为行人（图5）。第一个分类器是SVM，输入为直接从$S_k$计算得到的164个几何特征组成的向量，输出目标形状与人类形状的匹配度得分，我们将其称为几何得分（GS）。GS对检测静态行人尤为有效。类似地，用于计算运动得分（MS）的特征（即目标尺寸、移动距离，以及对应的尺寸噪声和运动噪声）包含了目标运动的宝贵信息。这些特征与GS一起输入第二个SVM，该SVM的输出表示样本到SVM决策面的距离。检测强度（SOD）是算法判断目标为行人的整体置信度，由到决策面距离的逻辑函数计算得到，每个目标都会输出该值。如果无法计算GS（例如仅能获得远距离目标的不足数据），则将MS作为该目标的SOD

---

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

<div style="text-align: center;">Fig. 5. In the classification step, a classifier, which is composed of two independent Support Vector Machines (SVM), determines the</div>

输出。SOD大于给定阈值的目标将被分类为行人。

使用SOD的动机来自多个目标：首先，SOD可作为通用对比基准，支持不同系统检测结果的融合。其次，不同应用可根据任务需求调整检测不确定性的严格程度，适配任务要求。第三，SOD的综合性特点有助于在针对其他传感器调优算法时，保持需要调整的参数数量处于较低水平。

3.5.1 训练。我们结合模拟样本和真实样本对GS分类器进行训练。由于无法收集足够的真实数据来评估感知算法在所有可能场景下的表现，我们开发了一款能够生成传感器数据合成样本的模拟器。该模拟器采用光线追踪引擎生成传感器与待模拟场景中物体之间的光线交点信息，之后利用该信息，根据特定传感器的参数集生成合成LADAR测量结果，如图6所示。我们使用超过3500个样本训练GS分类器（27.4%为人类目标，72.6%为非人类目标）。人类样本集中有62%是模拟样本，训练集还包含6%被LADAR部分观测到的行人样本（即部分处于LADAR视场内，或被部分遮挡的行人）。第二个分类器仅使用真实样本训练，这是因为用于确定MS的运动噪声和尺寸噪声具有动态特性，难以高效模拟，该分类器共使用超过46000个样本训练：6%为人类目标，94%为非人类目标。

训练集的正负样本比例是不平衡的。在实际场景中，系统通常会遇到多得多的负样本，且非人类物体的种类也更丰富。如果强行构建平衡训练集，不可避免会导致非人类样本集合的表示不完整。因此我们选择使用所有实际可获取的负样本，同时涵盖模拟数据和真实数据中的样本。

我们对两个SVM都采用五折交叉验证流程进行训练。我们发现径向基函数（RBF）核和多项式核的分类性能相近。经过多次测试，我们确定RBF核最适合GS的计算，而第二个分类器更适合使用多项式核。该算法可实时运行，其运行时间随场景中物体的数量线性增长。

### 4. 实验结果

#### 4.1. 目标平台

本节介绍多次实验运行的结果。这些结果均来自在Demo III XUV平台开展的实地测试（Shoemaker 和 Bornstein (1998)）。实验数据来自14次不同的运行，变化条件包含静止车辆与移动车辆、铺装路面行驶与越野行驶，以及站立、行走或慢跑的行人。数据采集频率为17 Hz，每次运行的平均时长约为1分钟。实验共有48个人类目标和1075个非人类目标，进出视场的目标会被计数两次。真值由

---

![Image](images/533c6a0b69e8eacd4353f1f38bbf985a762276f569a8235de33896a38c3d60fa.jpg)

![Image](images/f69b17144f0d99a1e2d51776c4ae9e1e6177c377d9c8290a7dbae19cbfb2621a.jpg)

<div style="text-align: center;">Simulated point cloud</div>

<div style="text-align: center;">Fig. 6. Simulated object models (left), and their corresponding point clouds (right).</div>

人工标注数据得到。这些数据集都标注了真值目标的边界框。当检测目标的边界框与真值目标边界框满足重叠要求时，判定该检测正确。我们使用受试者工作特征（ROC）曲线和精确率-召回率曲线评估检测性能，两种曲线分别展示了每周期和每轮运行的性能 $^{2}$.

图7的上半部分展示了ROC曲线和精确率-召回率曲线。每个周期中的每个人体是正样本，每个周期中的每个非人体目标是负样本。共约有6300个正样本和60000个负样本。这些图展示了我们系统当前的性能。点虚线表示仅单独使用MS分数的结果，虚线表示

---

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

![Image](images/7038dcce41e1a232850f01678a0ff72d74160f6aae59cb61335655c6032a0280.jpg)

![Image](images/bf1b61d47c918cd4216e783e40d68ecd14e0afbf7027e7c20047d7006158b14f.jpg)

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

<div style="text-align: center;">Fig. 7. The plots on the left show the precision-recall and those on the right the ROC curves. Shown are the curves produced by using the geometric score (dashed), the motion score (dot-dashed) and the combined (solid). For the upper curves each object in each cycle and in the lower curves each object in the full run is counted as one example.</div>

几何分数，即仅使用直接从目标三维点集中计算得到的几何特征进行分类，不引入任何运动线索。从图中可以看出，两种算法单独使用时，都无法在整个工作区间内始终优于对方。在低假阳性率区间，MS性能更好；而在高假阳性率区间，GS性能更优。正如我们之前提到的，MS可以检测静态人体，但代价是假阳性率较高。两种结果的协同组合性能显著提升，如实线轨迹所示。

图7的下半部分给出了ROC和精确率-召回率的另一种表示方式，该方式按单次运行统计每个目标。一个目标的分数为该目标在所有周期（至少10个周期）中分数的平均值。如上所述，该场景共包含48个人体（即正样本）和1075个其他目标（即负样本）。一个值得关注的工作点是：当几乎不存在假阳性（假阳性率为$10^{-3}$）时，真阳性率仍能达到0.75。

图8给出了按距离分段的检测性能分解结果。从图中可以看出，10-20米距离区间的检测性能最佳。这符合预期：距离传感器过近的人体通常只能被传感器部分观测到（即部分照射到）。同理，由于LADAR的回波点数随距离增加显著下降，距离传感器较远的行人对应的点数量更少，因此检测性能更差。在10-20米区间，传感器通常可以对行人完成完整成像，且点密度足够，因此分类性能更好。

图9给出了GS在不同距离下的性能表现。不出所料，GS在10-20米区间性能最佳，该区间内传感器可以完整观测到人体，每个目标拥有足够的点数。同理，在短距离区间（0-10米）性能略有下降，因为多数人体只能被传感器部分观测到。然而，在更远的距离（20-30米），算法尝试利用更少的

---

![Image](images/cc8f51005f19354d265e15c0ac753d08d30087da8df78fc39401dbcbbc54418a.jpg)

![Image](images/afe74c65ec9d5d28eba8166a21da63f053a47f4d09b3c9fc14b6068d1e35deac.jpg)

<div style="text-align: center;">Fig. 8. Detection performance by range. Precision-recall (left) and ROC (right) curves are shown, describing detection performance in the 0-10 m (solid), 10-20 m (dashed), and 20-30 m (dot-dashed) ranges.</div>

![Image](images/14a53e5dc8c8d2034c21325d1576933657dfeeb036e0b668994d5f691b3c60c1.jpg)

![Image](images/5940a90eff7dc836507b78cb75fc1b494797fe0a7eb8facfd69a49edb3bcc14e.jpg)

<div style="text-align: center;">Fig. 9. Performance of geometric score (GS) by range. Precision-recall (left) and ROC (right) curves are shown, describing GS-based detection performance in the 0–10 m (solid), 10–20 m (dashed), and 20–30 m (dot-dashed) ranges.</div>

测量值来识别数据中的统计模式，这会导致性能下降。此外，远距离区间会包含多得多的负样本，因为传感器覆盖的面积更大，这就解释了为什么远距离区间的精确率-召回率曲线特别低，而在ROC曲线中，远距离和短距离的性能看起来相当相似。

图10展示了若干人体和目标样本的GS分数，其中1是可能的最高分数，0是可能的最低分数。得分最高的样本是一个距离10米的人体，分数高达0.925（图10(a)）。在极短距离处，人体仅部分可见（图10(b)），分数为0.624。同一张图中的围栏也仅被部分观测到，分数为0.315。如果我们将0.5作为区分人体和目标的分界值，那么这些样本都被正确检测了。图10(c)展示了一个距离20米的人体，分数为0.257，分数低的原因是点数量不足。图10(d)展示了一例假阳性检测：这是一棵树，得分为0.777。

最后，非直立姿态的行人通常会导致假阴性检测（漏检）。这一结果在意料之中，因为我们提取几何特征时重点关注的是腿部和躯干。不过下跪姿态的行人是例外，我们始终能够稳定检测到这类目标，只是它们通常会被划分为边界人类样本。解决这些问题是当前研究的重点。

#### 4.2 替代传感器

我们还使用不同于Demo III XUV采集的LADAR数据的其他数据测试了我们的算法。卡内基梅隆大学的一个研究小组向我们提供了Velodyne LADAR数据。尽管两种传感器都生成表征环境的点云，但这些点云表征在测量密度、数据组织形式（例如LADAR图像数据

---

![Image](images/a84b4781efde119d6ccb0b5d04d53a3435daa929cc6b7dc6a8e613c5f2735850.jpg)

![Image](images/814de92e1bf146b1aeb6020e81eb82fa6476ef593bda325dcb1ac7e70a045c9d.jpg)

<div style="text-align: center;">(a)</div>

![Image](images/57838c5c5200f995e2a7417d60153b76c668111a37e6848ba172df9af3be921d.jpg)

<div style="text-align: center;">(b)</div>

![Image](images/ec388a8e3069de2f95887419193b7a26e9a4d515a10bb6de7ec6b59c6dfc452e.jpg)

<div style="text-align: center;">(c)</div>

<div style="text-align: center;">(d)</div>

<div style="text-align: center;">Fig. 10. Geometric score (GS) versus distance. Examples of point clouds from several objects collected from several distances, and their corresponding GS.</div>

![Image](images/97bac67a3b285986de8ddfd9926c314410ef1b1fd164775423a1f492484e6210.jpg)

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

<div style="text-align: center;">Fig. 12. Evaluation using Velodyne $^{TM}$ data. The plots on the left show the precision-recall and those on the right the ROC curves. Shown are the curves produced by using the geometric score (dashed), the motion score (dot-dashed) and the combined (solid).</div>

每隔几行就可能存在空缺，如图3(a)所示）、测量噪声、对目标反射率的敏感度等方面均存在差异。测试环境的快照以及对应的LADAR数据如图11所示。

我们将数据转换为我们系统可用的格式，随后使用该数据测试了系统性能。结果如图12所示。

每个周期中的每个目标计为一个样本，总共有943个周期。我们共得到4468个正样本和10883个负样本。如图11所示，实验包含多种场景变化：集装箱、行驶车辆、土路行驶、站立和行走的行人。真值数据由人工标注得到。

值得一提的是，我们未调整任何参数就得到了这些结果，其效果与目标平台上得到的结果相当。我们的SVM模型由模拟和真实的Demo III XUV样本组合训练得到，并未针对Velodyne™进行更新。这样的性能证明了我们分类算法的灵活性。

### 5. 结论

本文介绍了一种仅使用3D数据的行人检测与追踪系统。该方法结合几何特征与运动特征来识别行人特征，显著提升了我们此前工作取得的检测性能。该算法无需进行大幅修改即可在不同传感器上表现出良好性能。

我们当前用于确定人类得分和运动得分的特征集是针对检测直立姿态人类设计的。为了提升对其他姿态行人检测的鲁棒性，未来研究中我们将

---

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

<div style="text-align: center;">Fig. 11. A Velodyne $^{TM}$ LADAR is mounted on a flatbed truck, which traverses the test environment. A snapshot of the LADAR data is shown.</div>

研究从点云提取对人体形变具有不变性的行人特征的方法。

本文所述实验是在中等杂乱程度的环境中开展的。不过，杂乱程度更高的环境会带来更具挑战性的场景，检测性能也会因此下降。例如，若一人站在某物体附近（例如与另一物体的距离小于1 m）或另一人旁边，该人员可能无法被正确分割，代表该人员的孤立点集可能会混入来自该物体的点，甚至被完全漏检，最终导致分类错误。环境杂乱程度越高也意味着更多的部分遮挡情况。正如前文所述，该系统确实能处理存在中等遮挡的人员检测场景，但性能会有所下降。应对更高杂乱程度场景的一种方法是，聚焦改进目标分割流程，提升其区分不同目标的能力，而非直接将抗杂乱鲁棒性植入分类器中。这可以通过利用点云中包含的更多环境信息提取线索，让分割-跟踪流程更好地感知上下文。此外，当系统检测到某目标存在部分遮挡时，还可以利用该目标更多的历史信息来提升分类效果。

## 注释

[^1]: A comprehensive discussion of these processes is outside the scope of this paper. More detailed descriptions are presented in MacLachlan and Mertz (2006) and Navarro-Serment et al. (2008).


## 致谢

2. 相较于单次运行性能指标，是否应该比较每周期性能目前仍存在争议。为保证完整性，本文同时展示了两种指标。此外还有固定时长（通常为1秒）性能指标，但该指标实际上介于上述两种指标之间。计算机视觉领域对相关问题的精彩讨论可见于Dollar等人（2009）的研究。

我们感谢通用动力机器人系统公司提供的支持。我们也感谢UPI团队向我们开放Velodyne $^{TM}$ 数据集。本研究通过参与机器人联盟的合作完成，该联盟由美国陆军研究实验室在合作技术联盟项目下资助，合作协议编号为DAAD19-01-209912。

## 参考文献

Arras, K. O.、Mozos, O. M. 与 Burgard, W. (2007) 使用提升特征实现二维距离数据中的人员检测。《2007年IEEE国际机器人与自动化会议论文集》，意大利罗马，2007年4月10–14日，第3402–3407页。

Burges, C. J. C. (1998) 面向模式识别的支持向量机教程。《数据挖掘与知识发现》，第2卷，马萨诸塞州波士顿，Kluwer Academic出版社，1998年，第121–167页。

Cui, J.、Zha, H.、Zhao, H. 与 Shibasaki, R. (2007) 基于激光的人群中多人员检测与跟踪。《计算机视觉与图像理解》，106卷：第300–312页。

Dollar, P.、Wojek, C.、Schiele, B. 与 Perona, P. (2009) 行人检测：一个基准。IEEE计算机视觉与模式识别会议（CVPR），2009年，第304–311页。

Fuerstenberg, K.、Dietmayer, K. 与 Willhoeft, V. (2002) 使用车载多层激光扫描仪实现城市交通中的行人识别。智能车辆研讨会，2002年，第31–35页。

Hebert, M. (2000) 机器人学的主动与被动距离传感。《2000年IEEE国际机器人与自动化会议论文集》，第1卷，第102–110页。

Howard, A.、Matthies, L. H.、Huertas, A.、Bajracharya, M. 与 Rankin, A. (2007) 基于立体视觉的行人检测：动态环境下自主地面车辆的安全运行。第13届国际机器人研究研讨会论文集，2007年11月26–29日。

MacLachlan, R. 与 Mertz, C.（2006）《基于扫描激光测距仪的移动车辆运动目标跟踪》，收录于IEEE智能交通系统会议论文集，2006年9月17–20日。

Morris, D.、Colonna, B. 与 Haley, P.（2006）《移动车辆平台上基于Ladar的运动目标检测》，收录于第25届陆军科学会议论文集，2006年11月。

Navarro-Serment, L. E.、Mertz, C. 与 Hebert, M.（2006）《混杂环境下的预测式运动目标检测与跟踪》，收录于第25届陆军科学会议论文集，2006年11月27–30日。

Navarro-Serment, L. E.、Mertz, C.、Vandapel, N. 与 Hebert, M.（2008）《基于LADAR的行人检测与跟踪》，发表于第一届IEEE移动平台人体检测研讨会，Pasadena, CA，2008年5月20日。

Shoemaker, C. M. 与 Bornstein, J. A.（1998）《Demo III UGV项目：自主导航研究试验平台》，收录于IEEE智能控制国际研讨会论文集，Gaithersburg, MD，1998年9月，pp. 644–651。

Streller, D.、Furstenberg, K. 与 Dietmayer, K.（2002）交通场景鲁棒跟踪所用的车辆与目标模型，基于

---

激光距离图像，收录于智能交通系统会议论文集，2002年，pp. 118–123。

Sun, Z.、Bebis, G. 与 Miller, R.（2006）《道路车辆检测研究综述》，发表于IEEE《模式分析与机器智能汇刊》，28(5): 694–711。

Thornton, S.、Hoffelder, M. 与 Morris, D.（2008）面向安全作业的多传感器人体检测与跟踪，适配

无人地面车辆，发表于第一届IEEE移动平台人体检测研讨会，Pasadena, CA，2008年5月20日。

Thornton, S. 与 Patil, R.（2008）《基于多传感器特征的鲁棒人体检测》，收录于第26届陆军科学会议论文集，2008年12月1–4日。