![Image](images/956e86430783e72fbe64da654bd579714bc622e1991a311cb3dae2c0168a5063.jpg)

# 基于3D激光雷达的人体检测在线学习：点云聚类与分类方法的实验分析

闫智 $^{1}$ · 汤姆·达克特 $^{2}$ · 尼古拉·贝洛托 $^{2}$

收稿日期：2018年4月25日 / 录用日期：2019年8月3日 / 在线发布：2019年8月12日 © 施普林格科学+商业媒体有限责任公司，施普林格自然旗下机构 2019

## 摘要

本文提出了一套供移动服务机器人使用3D激光雷达传感器在线学习人体分类器的系统，并在大型室内公共空间中完成了实验评估。该学习框架仅需最少数量的标记样本（例如1个或若干样本）即可初始化分类器，随后分类器会在机器人运行过程中迭代重训练。新训练样本通过多目标跟踪和一对“专家”自动生成，用于估算假阴性和假阳性。分类和跟踪环节都采用了高效的实时聚类算法对3D点云数据进行分割。我们还提出了一种新特征，用于改善稀疏远距离点云的人体分类效果。我们在大型室内公共空间采集的行人运动3D激光雷达数据集上对本文框架进行了全面评估，该数据集已向研究界公开。实验证明了系统各组件对性能的影响，且与现有最优方法相比，人体分类效果得到了提升。

关键词 在线学习 · 人体检测 · 点云分割 · 基于3D激光雷达的跟踪 · 数据集

数学学科分类 68T40 · 93C85

## 1 引言

人体检测是在公共和家庭空间中运行的移动服务机器人的一项核心功能。除了明确的安全要求之外，区分人体与无生命物体可为机器人提供额外信息，帮助其规划和调整在环境中的下一步运动。通常，机器人通过机载传感器观测周边区域，估算感知范围内所有相关静态和/或运动物体的位置。为了识别这些物体是否为人类，可利用跟踪和轨迹分析得到的线索完成分类。

大多数服务机器人的人体检测与跟踪系统必须同时应对硬件限制和动态变化的环境。RGB-D相机可提供色彩信息和密集点云，但其感知范围通常仅为数米，且水平和垂直方向的视场通常都小于$90^{\circ}$。类似SICK的二维激光雷达感知范围可达数十米，但很难从获得的稀疏点分布中提取有用信息。面对环境变化，基于特征的分类器通常需要重新调参，且往往需要繁琐的重训练才能在新场景中达到可接受的性能。解决这一困境的一种方法是训练通用分类器，但通用分类器需要大量标记数据，通常伴随着高昂的人力成本。

近年来，3D激光雷达传感器在机器人和自动驾驶领域的应用大幅增长，既可以单独使用（Navarro-Serment 等，2009；Shackle-

---

ton et al. 2010; Kidono et al. 2011; Spinello et al. 2011; Teichman et al. 2011; Teichman and Thrun 2012; Deuge et al. 2013; Li et al. 2016; Sun et al. 2018）或与其他传感器结合使用（Geiger et al. 2012; Premebida et al. 2014; Wang and Posner 2015; González et al. 2015），相关应用包括人体检测与跟踪。这类传感器的一项核心特性是能够提供远距离、大视角的激光扫描。此外，它生成的点云会随距离增加变得愈发稀疏，但通常精度很高，且不受光照条件影响。然而，3D LiDAR扫描中的人体检测仍然极具挑战性，尤其是当目标人员距离机器人过近或过远时。此外，由于增大探测范围也会扩大待分析区域，进而增加区域内潜在的人员数量，因此基于3D LiDAR的人体检测计算成本可能非常高。最后，以往方法通常需要大量人工标注的训练数据，才能离线学习得到人体分类器（Navarro-Serment et al. 2009; Kidono et al. 2011; Premebida et al. 2014; Wang and Posner 2015; González et al. 2015; Li et al. 2016; Sun et al. 2018）。遗憾的是，标注3D LiDAR点云是一项繁琐的工作，且容易出现人为错误，尤其是需要对人体姿态、形状和尺寸的诸多变化进行正确分类时更是如此。对于复杂真实场景，以及系统需要针对不同运行环境重新训练的情况，离线人工标注也不具备高可行性。

本文扩展了我们近期在人体分类方向的工作（Yan et al. 2017），我们在该工作中开发了一套用于3D LiDAR扫描中人体分类的在线学习框架，该框架借助了一个成熟的多目标跟踪系统（Bellotto and Hu 2010）（见图1）。由于在线学习方法不依赖显式人工监督，因此会受误差影响。为了处理这些误差，并且受先

![Image](images/6c159b029ac44db7e0ad1110af5507598014eef85a957727a0f1dd2dc40f27fc.jpg)

<div style="text-align: center;">Fig. 1 A screenshot of the 3D LiDAR-based tracking system in action with an online learned human classifier. The detected people are enclosed in green bounding boxes. The colored lines are the people trajectories generated by the multi-target tracking system. The blue arrows indicate the odometry of the robot. Please note that the bounding box with tracking ID 100 is a false positive derived from the classifier the classifier (Color figure online)</div>

前跟踪-学习-检测方案的启发（Kalal et al. 2012），我们提出了一种基于两类“专家”的在线学习方法：一类将假阴性（漏检）转换为新的正训练样本（P-专家），另一类纠正假阳性（误检）以生成新的负训练样本（N-专家）。随后我们证明，通过迭代修正分类器的错误，可以有效提升人体分类器的性能。

相比Yan et al. (2017)的工作，本文新增了多项贡献。

- 首先，我们通过一种新型低成本特征改进了基于3D LiDAR的人体分类，该特征将点云中的人体轮廓与距离变化相结合，从而提升了分类器对距离机器人较远样本的灵敏度。

其次，我们将我们最新的3D LiDAR数据集与其他常用于行人检测的主流数据集进行了详细对比，可为该领域的研究人员提供参考指南。

- 第三，我们对我们提出的3D LiDAR点云聚类算法进行了全面评估，包括与其他当前最优方案的对比，评估覆盖了精度与运行时性能两个方面。

最后，我们大幅扩展了我们人体分类方法的性能评估范围，新增了对在线学习过程的详细稳定性分析。

本文剩余部分的结构安排如下：第2节概述相关研究工作，重点介绍基于三维点云的分割与人体分类方向的研究。随后，我们在第3节介绍本文提出的在线框架以及各模块之间的关系，包括人体跟踪和人体分类模块。其中人体跟踪模块在第4节展开，包含对聚类算法的详细描述。第5节阐释人体分类的实际学习过程，明确了P–N专家与跟踪之间的关联。第6节展示我们公开的3D LiDAR数据集，并与现有数据集进行对比；第7节对系统性能（包含聚类和人体分类性能）进行全面的实验评估。最后，第8节讨论结论与未来的研究方向。

## 2 相关工作

近年来，面向移动服务机器人的人体检测与跟踪已经得到了广泛研究，现有方案包括针对RGB相机（Premebida et al. 2014; González et al. 2015）、RGB-D相机（Munaro and Menegatti 2014; Linder et al. 2016; Jafari et al. 2014; Spinello and Arras 2011），以及2D激光雷达（Arras et al. 2007; Bellotto and Hu 2009; Luber and Arras 2013; Leigh et al. 2015; Linder et al. 2016; Beyer et al. 2018）

---

和3D LiDAR（Navarro-Serment et al. 2009; Shackleton et al. 2010; Spinello et al. 2011; Sun et al. 2018）的多种方法。尽管3D LiDAR能够提供准确的距离信息，但使用LiDAR开展研究的核心挑战之一在于，在点集相对稀疏、没有额外颜色信息的条件下，很难识别出人体。

目标跟踪的传统感知流程包含多个阶段，通常包括分割（例如聚类）、特征提取、分类、数据关联以及位置/速度估计。而端到端学习（通常为深度学习）这类新兴方法为跟踪应用提供了替代框架。例如，Dequaire et al. (2017) 采用循环神经网络（RNN）捕捉3D LiDAR下的环境状态演化（将三维点云降维为二维扫描），以完全无监督的方式训练模型，再用该模型对自动驾驶汽车场景中的轿车、公交车、行人和骑行者进行跟踪。Zhou and Tuzel (2018) 开发了另一种端到端网络，该网络将三维点云划分为若干体素。对点进行随机采样和归一化处理后，网络对每个非空体素使用多个Voxel Feature Encoding (VFE) 层提取逐体素特征。该网络经过训练，能够学习得到对不同几何形状目标的有效判别表示。尽管该领域这类方法已经取得了令人振奋的成果，我们并未将基于深度学习的方法整合到本文的在线框架中，因为这类方法通常需要大量人工干预进行微调、训练时间更长，还有特殊硬件要求（例如GPU和电源），难以满足自主移动机器人实际应用的需求。

本文所描述的框架包含一个多阶段感知流水线，其中用于三维点云分割的主流相关方法利用了扫描线游程（Zermas等人，2017）、深度信息（Bogoslavskyi和Stachniss，2016）以及欧氏距离（Rusu，2009）。基于游程的分割包含两个步骤：首先利用确定性分配的种子点以迭代方式提取地平面，随后采用源自二值图像的双游程连通分量标记技术对剩余的非地面点进行聚类。深度聚类是一种计算需求低的快速方法，该方法先将三维激光雷达扫描转换为二维距离图像，再在二维距离图像上完成分割。而欧氏方法则直接在三维空间中计算任意两点之间的距离，以此对点进行聚类。本文第7.1节将我们的聚类方法与这三种方法进行了对比。

在基于点云的人体分类研究中，一种非常普遍的思路是：在人工监督下离线训练分类器，随后在机器人运行过程中将其应用于传感器数据。例如，Navarro-Serment等人（2009）针对人体分类提出了七个特征，并基于这些特征训练了SVM分类器。Kidono等人（2011）结合人体三维形态和衣物材质（即利用反射激光束强度）提出了两个额外特征，证明分类性能得到显著提升。Häselich等人（2014）在非结构化环境的人体检测中实现了上述提及特征中的八个，由于缺乏硬件支持舍弃了强度特征。而Li等人（2016）实现了一种重采样算法，以提升前人提出的几何特征的质量。Wang和Posner（2015）将滑动窗口法应用于三维点数据，完成包含人体在内的目标检测。他们将三维包围框围起的空间划分为稀疏特征网格，随后基于六个与单元格占据状态、单元格内点分布以及点的反射率相关的特征训练SVM分类器。Spinello等人（2011）结合了基于体积特征的自上而下分类器和自下而上检测器，减少了三维激光雷达扫描中跟踪远距离人员时的误报。Deuge等人（2013）提出了一种替代方案：通过将三维激光雷达扫描投影到二维深度图像，引入无监督特征学习方法完成户外目标分类。

尽管本文聚焦于不同类型的传感器，但仍有必要提及二维激光雷达在人体检测与跟踪中的应用。这类传感器通常用于机器人导航，包括定位和安全避障，因此被安装在移动机器人前侧下部、靠近地面的位置。不少研究人员利用这种配置，通过在二维距离数据中检测人腿实现人体跟踪（Arras等人，2007；Bellotto和Hu，2009；Luber和Arras，2013；Leigh等人，2015；Linder等人，2016；Beyer等人，2018）。

离线方法的缺陷在于，当机器人移动到不同环境时，预训练分类器并不总能保持良好效果，因此通常需要进行微调或重新训练。为了将用户从这些繁琐的工作中解放出来，已有研究者提出了对标注量需求更低的方法。例如，Teichman和Thrun（2012）提出了一种用于多目标分类的半监督学习方法，该方法仅需要少量手工标注的初始目标轨迹即可训练分类器。但该方法需要由人类专家提供大规模背景物体训练集（即不含行人、骑行者、车辆等的样本），才能获得良好的分类性能。还有研究者提出了无分类器的方法。

例如，Shackleton等人（2010）采用曲面匹配技术进行人体检测，并使用扩展卡尔曼滤波估计人体目标的位置，辅助下一次LiDAR扫描中的检测过程。但该方法仅适用于简单场景，且进一步限制为仅能处理运动人体的情况。Dewan等人（2016）提出了一种无分类器的检测与跟踪

---

动态物体的方法，该方法同样依赖运动线索，因此不适用于行人这类运动缓慢或静止的物体。

尽管人体检测领域确实需要低标注或无分类器的方案，但优质数据集对于验证新方法、对比新方法与已有方法的性能而言至关重要。遗憾的是，与目前数量丰富的RGB和RGB-D相机采集数据集不同，$^{1}$ 学界可获取的3D LiDAR数据集寥寥无几（Spinello et al. 2011; Teichman et al. 2011; Deuge et al. 2013; Geiger et al. 2012），针对移动服务机器人的这类数据集更是稀缺。我们提出的数据集结合了多项独特的有用特性，适用于大尺度室内环境下基于3D LiDAR的人体检测与跟踪，我们在第6节中将该数据集与现有数据集进行了对比。

总而言之，从当前领域的研究现状来看，开发一种有效的低标注方法用于3D LiDAR扫描中的人体检测，显然具有很高的应用价值。我们的工作满足了这一需求，证明了在移动机器人上结合跟踪与在线学习能够提升人体检测效果，即使在高动态环境中也可适用，并且该方法能够获得媲美甚至优于已有方法的结果。

## 3 在线学习通用框架

我们的系统包含四个核心组件：面向3D LiDAR点云的聚类检测器、多目标跟踪器、人体分类器和训练样本生成器（参见图2）。分类器通过监督学习初始化，仅使用少量人体聚类样本。该样本集的大小可以小至仅包含1个样本，因为后续会逐步添加更多样本，供未来迭代过程中重新训练使用。

在线处理流程如下。在每一次新迭代中，聚类检测器对3D LiDAR扫描（即3D点云）进行分割。多目标跟踪系统实时估计每个聚类的位置和速度。这些估计结果会和对应的聚类观测一同缓存到轨迹数组中。同时，分类器会将每个聚类标记为“人体”或“非人体”。

样本生成器利用了聚类、轨迹和标签的全部相关信息。标签通常受到两类误差的影响：假阳性和假阴性。样本生成器通过两个独立的“专家”修正这些误差，两个专家会对分类器和跟踪器的输出进行交叉验证。基于专家的决策，样本生成器生成新的训练数据。具体来说，图2中的P专家将假阴性转换为正样本，N专家则将假阳性转换为负样本。当足够多的新样本已

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

<div style="text-align: center;">Fig. 2 Process details of the online learning framework</div>

生成后，它们会被用于重新训练分类器，因此系统可以从过往误差中学习并改进性能。该流程和专家模块的详细介绍见Sect. 5.2。

尽管从概念上与已有的跟踪-学习-检测框架（Kalal et al. 2012）相似，本文提出的系统在三个关键方面存在差异，分别是跟踪器独立于分类器、训练过程的频率，以及专家模块的实现方式。具体而言，人体分类器的性能依赖于专家和跟踪器的可靠性，但跟踪器的性能完全不受分类性能的影响。这种解耦设计让系统具备模块化特性，还可适配其他分类方法。此外，与基于单个样本进行增量重训练（即逐帧训练）不同，我们的系统采用频率更低的批增量训练（Read et al. 2012）（即批量收集样本，在经过一定周期后再重新训练分类器），在机器人于环境中移动时在线收集新数据。该特性能够有效避免在线学习中的欠拟合问题。最后，我们实现的专家模块专门设计用于同时处理多个目标，因此可以从多个检测结果中生成新的训练样本，加快了学习过程。

## 4 点云聚类检测与跟踪

图2所示本文提出的系统的两个核心组件是聚类检测器和多目标跟踪器。前者从3D LiDAR数据中实时检测点云聚类。跟踪器则无论聚类是否属于人体，都会独立地实时估计它们的位置和速度。下文将给出这两个模块的详细介绍。

---

### 4.1 点云聚类检测器

聚类检测器的输入是3D LiDAR点云$P = \{p_i \mid p_i = (x_i, y_i, z_i) \in \mathbb{R}^3, i = 1, \ldots, I\}$，其中I是单次扫描中的总点数。为了剔除属于地面的点，检测器会移除所有满足$p_i$的$z_i < z_{min}$，得到剩余子集$P^* \subset P$。显然该方法仅在地面相对平坦、z轴大致垂直于地面的场景下能良好工作，这是本文的假设之一，我们也接受该方法可能会剔除物体下部小部分点的局限性。但值得注意的是，本文提出的聚类算法的核心思想并不依赖于地面移除步骤，在更复杂的场景中可以采用其他方法完成该步骤（Douillard et al. 2011; Moosmann et al. 2009）。

与Rusu（2009）中的方法一致，我们基于三维欧氏距离提取相邻点的非重叠聚类。具体来说，如果$C_i, C_j \subset P^*$是两个这样的聚类，非重叠条件可以表示为：

 $$ C_{i}\cap C_{j}=\emptyset,for i\neq j\quad\Rightarrow\quad min\|p_{i}-p_{j}\|_{2}\geq d^{*} $$

式中$p_i \in C_i$、$p_j \in C_j$，$d^*$为距离阈值。

虽然基于距离的聚类方法相对快速简单，但准确率不高，尤其是当点云中的点密度随与传感器的距离发生显著变化时。如果阈值$d^{*}$太小，单个物体可能会被分割成多个聚类；如果太大，多个物体可能会被合并成一个聚类（见图3）。

在我们的场景中，3D激光雷达扫描人体得到的点云形状会随人体与传感器的距离变化发生显著改变。具体来说，受其垂直角分辨率（ $\Theta = 2^{\circ}$）限制，两个连续点之间的垂直间距可能会很大，如图4所示。因此我们将阈值$d^{*}$根据实际扫描范围r调整如下：

![Image](images/cb6c6bb7423cdfd8951da02cf0c09f4f43541cb10ce965340e06b4d2cfb15b72.jpg)

<div style="text-align: center;">Fig. 3 Point cloud of two distinct objects (red and blue). Different values of  $d^{*}$ lead to different clustering results (Color figure online)</div>

![Image](images/a69ae8e767579f9175a87b841b5f0d5e4af3ccb44b36ee591145b1ab199f5ac6.jpg)

<div style="text-align: center;">Fig. 4 Example of 3D LiDAR human point clouds at different distances. The further the person is from the sensor, the sparser is the relative point cloud</div>

 $$ d^{*}=2\cdot r\cdot\tan\frac{\Theta}{2} $$

该公式仅用于计算竖直放置物体上两个相邻扫描通道之间的预期垂直间距。

遗憾的是，3D点云聚类的计算量很大。最大扫描范围越大，$d^{*}$的取值就越高，落入同一聚类的点数量也因此越多。此外，覆盖更大的探测区域会增加潜在聚类的数量。为了降低计算复杂度，我们将水平空间划分为传感器周围嵌套的圆形区域，并在每个区域内设置固定的距离阈值（见图5）。

实际应用中，我们采用一组按固定间隔$d_i^*$取值的$\Delta d$，满足$d_{i+1}^* = d_i^* + \Delta d$。我们对每个值分别计算

![Image](images/7292855ba4090df0f508886a67938091342ebaddeafdb1bd8e0fc273a8766c59.jpg)

<div style="text-align: center;">Fig. 5 Different values of  $d^{*}$ correspond to different nested regions. In this example, a cluster (red dot) at 9m from the sensor lies on the 4th circular region, where the clustering threshold is  $d_{4}^{*} = 0.4$m (Color figure online)</div>

---

最大聚类探测范围$r_i$，计算时利用式(2)的逆，随后确定对应的半径$R_i = \lfloor r_i \rfloor$，其中$R_0$是传感器中心。阈值恒定为$d_i^*$的区域宽度为$l_i = R_i - R_{i-1}$。在我们的应用中，我们定义宽度为2-3米的圆形区域，取值为$\Delta d = 0.1$米，该分辨率能够很好地检测潜在的人体聚类。

最后，我们过滤掉尺寸过大或过小、不可能对应人体的聚类，因此跟踪器实际上仅使用下述聚类检测结果：

 $$ \overline{C}=\{C_{j}\mid0.2\leq w_{j}\leq1,\;0.2\leq d_{j}\leq1,\;0.2\leq h_{j}\leq2\} $$

其中$w_j$、$d_j$和$h_j$分别为容纳$C_j$的包围盒的宽度、深度和高度（单位为米）。我们提出的聚类算法基于k-d树实现，时间复杂度为$\mathcal{O}(\log n)$。

### 4.2 多目标跟踪器

多目标跟踪器基于高效的无迹卡尔曼滤波（Unscented Kalman Filter, UKF）实现，采用全局最近邻（Global Nearest Neighbour, GNN）数据关联方法同时处理多个聚类（Bellotto and Hu 2009, 2010）。我们在对应平坦地面的二维平面对人体聚类进行跟踪，估计目标相对于固定世界参考坐标系的水平坐标和速度。在当前实现中，我们并未考虑3D聚类的尺寸，尽管在更具挑战性的跟踪场景中尺寸信息可能会带来增益。

估计过程的预测步骤基于下述恒速模型（Li and Jilkov 2003）：

 $$ \left\{\begin{aligned}x_{k}&=x_{k-1}+\Delta t\dot{x}_{k-1}\\ \dot{x}_{k}&=\dot{x}_{k-1}\\ y_{k}&=y_{k-1}+\Delta t\dot{y}_{k-1}\\ \dot{y}_{k}&=\dot{y}_{k-1}\end{aligned}\right. $$

其中$x_{k}$和$y_{k}$是目标在时刻$t_{k}$的笛卡尔坐标，$\dot{x}_{k}$和$\dot{y}_{k}$分别为对应方向的速度，且$\Delta t = t_{k} - t_{k-1}$。

聚类的位置通过将其质心$(x, y)$投影到$c_j$平面计算得到，质心计算方式如下：

 $$ c_{j}=\frac{1}{|C_{j}|}\sum_{p_{i}\in C_{j}}p_{i} $$

估计的更新步骤随后使用二维极坐标观测模型来表示聚类簇的位置：

 $$ \left\{\begin{aligned}\theta_{k}&=tan^{-1}(y_{k}/x_{k})\\ \gamma_{k}&=\sqrt{x_{k}^{2}+y_{k}^{2}}\end{aligned}\right. $$

其中$\theta_{k}$和$\gamma_{k}$分别是聚类簇相对于传感器的方位角和距离。请注意，为简化起见，上述方程中省略了噪声和坐标变换，包括与机器人运动相关的变换部分。

上述模型和估计方法的选择由所使用的传感器类型决定。具体来说，极坐标观测模型能更好地反映我们所用LiDAR传感器的实际工作方式（即原始测量值是规则角度间隔下的距离值）及其噪声特性。该模型的非线性特性因此促使我们采用UKF，已知UKF的性能优于标准EKF（Julier and Uhlmann 2004; Bellotto and Hu 2010）。已有研究（Bellotto and Hu 2010; Linder et al. 2016）表明，我们的估计框架是移动机器人多人跟踪问题的有效且高效的解决方案。关于我们的航迹管理方案（即初始化、维护、删除）及其可能应用的更多细节，可以在Bellotto and Hu (2009, 2010), Dondrup et al. (2015)中找到。

最后，预测模型和观测模型的噪声协方差矩阵Q和R分别如下（Li and Jilkov 2003）：

 $$ \mathbf{Q}=\begin{bmatrix}{{{\frac{\Delta t^{4}}{4}\sigma_{x}^{2}\frac{\Delta t^{3}}{2}\sigma_{x}^{2}}}}&{{{0}}}&{{{0}}} \\{{{\frac{\Delta t^{3}}{2}\sigma_{x}^{2}\Delta t^{2}\sigma_{x}^{2}}}}&{{{0}}}&{{{0}}} \\{{{0}}}&{{{0}}}&{{{\frac{\Delta t^{4}}{4}\sigma_{y}^{2}\frac{\Delta t^{3}}{2}\sigma_{y}^{2}}}} \\{{{0}}}&{{{0}}}&{{{\frac{\Delta t^{3}}{2}\sigma_{y}^{2}\Delta t^{2}\sigma_{y}^{2}}}}\end{bmatrix}\mathbf{R}=\begin{bmatrix}{{{\sigma_{\theta}^{2}}}}&{{{0}}} \\{{{0}}}&{{{\sigma_{\gamma}^{2}}}}\end{bmatrix} $$

其中噪声标准差$\sigma_{x}$、$\sigma_{y}$、$\sigma_{\theta}$和$\sigma_{\gamma}$是通过经验确定的，用于优化我们机器人平台的人体跟踪性能。

## 5 人体分类的在线学习

在第4.1节中检测到的点云聚类簇由分类器实时分析，该分类器用于区分人体和非人体目标。我们的在线学习框架是一个迭代过程，会使用由样本生成器提供的新旧聚类检测结果定期在线重新训练分类器。样本生成器根据跟踪信息选择预定义数量的正、负聚类样本，并用它们重新训练人体分类器。下文各小节将详细介绍分类和样本生成过程。

### 5.1 人体分类器

我们使用标准支持向量机（SVM）（Cortes and Vapnik 1995）进行人体分类。SVM方法拥有扎实的数学理论基础，擅长处理小样本数据，并且

---

<div style="text-align: center;">Table 1 Features for human classification</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Feature</td><td style='text-align: center; word-wrap: break-word;'>Description</td><td style='text-align: center; word-wrap: break-word;'>Dimension</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$f_{1}$</td><td style='text-align: center; word-wrap: break-word;'>Number of points included in the cluster</td><td style='text-align: center; word-wrap: break-word;'>1</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$f_{2}$</td><td style='text-align: center; word-wrap: break-word;'>Minimum cluster distance from the sensor</td><td style='text-align: center; word-wrap: break-word;'>1</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$f_{3}$</td><td style='text-align: center; word-wrap: break-word;'>3D covariance matrix of the cluster</td><td style='text-align: center; word-wrap: break-word;'>6</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$f_{4}$</td><td style='text-align: center; word-wrap: break-word;'>Normalized moment of inertia tensor</td><td style='text-align: center; word-wrap: break-word;'>6</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$f_{5}$</td><td style='text-align: center; word-wrap: break-word;'>2D covariance matrix in 3 zones including the upper half, the left and right lower halves</td><td style='text-align: center; word-wrap: break-word;'>9</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$f_{6}$</td><td style='text-align: center; word-wrap: break-word;'>The normalized 2D histogram for the main PC plane</td><td style='text-align: center; word-wrap: break-word;'>98</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$f_{7}$</td><td style='text-align: center; word-wrap: break-word;'>The normalized 2D histogram for the secondary PC plane</td><td style='text-align: center; word-wrap: break-word;'>45</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$f_{8}$</td><td style='text-align: center; word-wrap: break-word;'>Slice feature for the cluster</td><td style='text-align: center; word-wrap: break-word;'>20</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$f_{9}$</td><td style='text-align: center; word-wrap: break-word;'>Reflection intensity&#x27;s distribution (mean, standard deviation, and normalized 1D histogram)</td><td style='text-align: center; word-wrap: break-word;'>27</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$f_{10}$</td><td style='text-align: center; word-wrap: break-word;'>Distance from the centroid of each slice to the sensor</td><td style='text-align: center; word-wrap: break-word;'>10</td></tr></table>

斜体行表示我们方法中使用的特征

因此非常适合本文提出的在线学习框架。此外，该算法在非线性分类问题中表现优异，并且已经成功应用于基于三维LiDAR的人体检测（Navarro-Serment et al. 2009; Kidono et al. 2011）。

为了训练SVM，我们从每个点云簇中提取了七种不同的特征，如表1所示。特征$(f_1, \ldots, f_7)$由Navarro-Serment等人（2009）提出。然而，由于原特征集合中最后三个特征计算成本高，且分类性能相对较低（Kidono等人，2011），因此我们舍弃了它们——这类特征不适合在大人口密集环境中实现实时人员追踪，我们转而将其替换为三个全新的特征：$f_8$、$f_9$和$f_{10}$。其中前两个特征$f_8$和$f_9$最初由Kidono等人（2011）提出。已有研究表明，将这两个特征与$(f_1, \ldots, f_4)$结合，可以成功表征站立与坐姿状态的人体（Yan等人，2017）。

而特征$f_{10}$是我们系统新增的特征，它旨在将传感器的检测距离与人体三维形状相结合，尤其适用于稀疏点云场景下的远距离分类任务。这个名为“切片距离”的新特征基于Kidono等人（2011）提出的10切片方法，其计算方式如下：

 $$ f_{10}=\{\|c_{i}\|_{2}\mid c_{i}=(x_{i},y_{i},z_{i})\in\mathbb{R}^{3},i=1,\ldots,10\} $$

其中$c_i$是每个切片的质心，可按照式(5)计算。设计10切片结构的目的是提取远距离观测下人体的局部特征，远距离场景中LiDAR点云的空间分辨率会出现下降。点云簇中的三维点被划分为10个块，每个块的长度和宽度被计算为特征（参见图6），对应的特征向量如下：

 $$ f_8=\{L_j,W_j\mid j=1,\ldots,10\} $$

![Image](images/a74052570790e16a727ccd7d580d66f92e1509fa29c28cdc5949ac1ad9a28d8b.jpg)

<div style="text-align: center;">Fig. 6 The slice feature proposed by Kidono et al. (2011)</div>

在第7.3节中我们将证明，使用本文提出的特征集，该分类器的性能优于当前最优方法。

来自簇$C_j$的全部特征共同构成向量$(f_1, \ldots, f_4, f_8, \ldots, f_{10})$，总维度为71。在学习过程的每次迭代中，我们都会训练一个二分类SVM，基于这些特征对人体簇和非人体簇进行标注。我们使用的软件工具是LIBSVM（Chang和Lin，2011），将正负训练样本的比例设置为1:1，并将所有特征值缩放到区间$[-1, 1]$内。该SVM使用高斯径向基函数核（Keerthi和Lin，2003），输出与标签对应的概率。目前我们的软件不支持增量学习，因此会从初始阶段就存储所有训练样本，并在每次新迭代中使用全部样本重新训练SVM。训练/重训练时间与样本数量成正比。对于本文第7节的实验配置，训练耗时从不到1毫秒到数分钟不等。但基于我们公开的源代码，研究者可以根据需求轻松将训练过程与在线学习解耦（例如使用独立线程），或者微调用于寻找最优训练参数的k折交叉验证来加快训练过程。此外，我们的在线学习框架支持

---

实现不同的分类器和训练算法。

### 5.2 样本生成器

重新训练人类分类器所需的训练样本由图2中的样本生成器从当前簇检测结果中筛选得到，该流程基于两个独立模块：正例（P）专家模块和负例（N）专家模块。在每个时间步，P专家会分析当前被归类为非人类的簇，识别出其中可能分类错误的样本（即假阴性），并将这些样本作为新增正例添加到训练集中。相反，N专家会检查当前被归类为人类的簇，识别出其中分类错误的样本（即假阳性），再将这些样本作为新增负例添加到训练集中。该过程会重复多次，直到收集到足够数量的新增正例和负例。随后，人类分类器会使用扩充后的训练集重新训练。实际应用中，P专家提升了分类器的泛化能力，N专家则提升了分类器的区分能力。具体实现细节描述见算法1。

```pseudo
// Algorithm 1: Sample Generation and Retraining

```

数据：H：人类分类器，C：簇，$C_h$：人类簇，$C_n$：非人类簇，$S_p$：正样本，$S_n$：负样本，$T_p$：正训练集，$T_n$：负训练集，p：迭代正训练样本数量，n：迭代负训练样本数量，i：当前迭代次数，m：最大迭代次数

结果：H：人类分类器

$T_p \longleftarrow S_p$;

$T_n \longleftarrow S_n$;

$train(H, T_p, T_n)$;

$i \longleftarrow 1$;

重复

$\left| \begin{array}{l} [C_h, C_n] \longleftarrow \text{Classify}(H, C); \\ S_p \longleftarrow P_{expert}(C_h, C_n); \\ S_n \longleftarrow N_{expert}(C_h, C_n); \\ T_p \longleftarrow T_p + S_p; \\ T_n \longleftarrow T_n + S_n; \end{array} \right|$

直到 $|T_p| >= p * i$ 和 $|T_n| >= n * i$ 满足条件；

$train(H, T_p, T_n)$;

$i \longleftarrow 1 + 1$;

直到 $i > m$；

P专家根据检测到聚类的跟踪轨迹选取新的正样本。具体而言，被分类为非人类、但所属轨迹中至少有一个聚类被分类为人类的这类聚类，也会作为正样本添加到训练集中。这类新增正样本需要满足的条件如下：

1. 该簇在时间区间 $K \ \Delta t$ 内被持续跟踪，在此期间它移动的距离不小于最小距离 $r_{min}^{p}$：

   $$ r_{k}=\sqrt{(x_{k}-x_{k-1})^{2}+(y_{k}-y_{k-1})^{2}}\mathrm{a n d}\sum_{k=1}^{K}r_{k}\geq r_{m i n}^{p} $$

2. 其估计位置 $(\sigma_{x}^{2}, \sigma_{y}^{2})$ 的方差 $(x_{k}, y_{k})$ 满足以下条件：

3. 其速度不为零，同时不超过人类常规步行速度 $v_{max}^{p} = 1.4$ m/s（Mohler 等人，2007）：

   $$ v_{k}=\sqrt{\dot{x}_{k}^{2}+\dot{y}_{k}^{2}}and v_{min}^{p}\leq v_{k}\leq v_{max}^{p} $$

   $$ \sigma_{x}^{2}+\sigma_{y}^{2}\leq(\sigma_{max}^{p})^{2} $$

本系统中使用的 K、$r_{min}^{p}$、$v_{min}^{p}$ 和 $\sigma_{max}^{p}$ 均在实验前通过经验调优确定。尤其是最后一个条件，它非常适合过滤掉这类簇：即便它们关联“类人”轨迹，但会因为突发运动或邻近其他簇而存在很高的不确定性（见图7）。

N专家分析被归类为人类的簇，挑选出其中潜在的假阳性样本，将其转化为新增负样本供后续重新训练使用。该挑选过程基于如下假设：人类不会完全静止，因为总会存在一些

![Image](images/2a8db8271a50db58f5a1a62d8c99a4e1fa9bc2ff8c5c77ccf4f4ec88b476531b.jpg)

<div style="text-align: center;">Fig. 7 Example of human-like trajectory samples, including one (red-crossed) filtered out because too uncertain. The green dashed line is the target's trajectory, while the blue dashed circles are the position's uncertainties (Color figure online</div>

---

簇形状和质心位置的变化，即便该人只是站立或坐着。利用3D激光雷达的高精度，这些静态簇（被视作负样本）只要满足以下条件就可以被识别出来：

 $$ r_{k}\leq r_{max}^{n}\mathrm{and}v_{k}\leq v_{max}^{n}\mathrm{and}\sigma_{x}^{2}+\sigma_{y}^{2}\leq(\sigma_{max}^{n})^{2} $$

参数$r_{max}^n$、$v_{max}^n$和$\sigma_{max}^n$是通过实验经验确定的。本文还在Sect. 7.2中讨论并评估了P-N专家系统在在线学习过程稳定性方面的性能。

## 6 系统搭建与数据集

我们的框架以高模块化的方式完整实现于ROS（Robot Operating System）中（Quigley等人，2009）。所有组件都可供其他研究人员下载$^{2}$和使用。我们在一套数据集$^{3}$上对该框架进行了评估，该数据集由移动机器人搭载Velodyne VLP-16 3D LiDAR在一栋大型大学建筑内采集得到。

### 6.1 采集平台

这款三维激光雷达拥有16个扫描通道，水平视场为$360^{\circ}$，垂直视场为$30^{\circ}$。该传感器安装在Pioneer 3-AT机器人顶部，如图8所示。其支撑框架和安装布局参照了欧盟FLOBOT项目开发的工业清洁机器人的设计。$^{4}$ 内部机构绕垂直轴逆时针旋转，转速范围为300至1200转每分钟（RPM），分别对应5 Hz和20 Hz。扫描分辨率与转速成反比。不过，改变转速不会改变数据率，因为传感器会自动调整水平角分辨率。也就是说，无论选择何种转速，该设备每秒都会以每秒30万个点的速率输出相同数量的数据包。

在本次实验中，三维激光雷达被设置为10 Hz转速（即600 RPM），最大扫描范围为100 m。机器人最大速度设置为2.52 km/h，最大转弯速度为140°/s。机器人和传感器都连接到同一平台搭载的嵌入式PC，该PC配备Intel i7-4765T处理器和8GB内存。此外，鱼眼摄像头安装在三维激光雷达顶部，通过WiFi连接至PC，因此全景

![Image](images/05df54a333229ad02c535e353f0d308a156392ad979ea989deaed5ece0c35d55.jpg)

<div style="text-align: center;">Fig. 8 Our hardware platform, in which the (1) Velodyne VLP-163D LiDAR is mounted at 0.8 m from the floor, on the top of the Pioneer 3-AT robot</div>

![Image](images/f5772df2d925405ebe68b39e5ae473e88a0b5295ab47418f7f132c69d6440e4f.jpg)

<div style="text-align: center;">Fig. 9 Screenshot of our annotation tool in operation</div>

图像已被采集记录，用于获取机器人周边环境信息，服务于数据标注。$^{5}$

所有数据采集和机器人运动相关软件都基于ROS实现，运行在64位Linux Ubuntu 14.04 LTS系统上。三维点云由Velodyne官方ROS驱动和校准文件提供。所有数据都存储为rosbag文件，方便向机器人学界共享。此外，除点云数据外，机器人里程计信息和坐标变换（传感器位置）也一同记录在rosbag文件中。所有数据都带有时间戳，为真值标注提供必要信息，可对任意目标（机器人、传感器或人类）进行准确定位。

---

![Image](images/cb39f7657630c161b75cbe580a017e37c844e23cb47ac06f90fe844ef094b339.jpg)

<div style="text-align: center;">Fig. 10 Example of annotated laser scan of the academic building. Ground and ceiling points have been removed. Each bounding box represents a cluster, and red boxes are humans. The image contains some typical annotation challenges: (1) human sample at 25 m from the sensor consisting of 5 points only; (2) cluster of a sitting person, included</div>

<div style="text-align: center;">the chair; (3) cluster of two people sitting at a circular table, who cannot be labelled as a humans; (4) human head only, the rest of the body is occluded; (5) clusters of people with many occlusions (Color figure online)</div>

### 6.2 数据标注

我们开发了一款基于Qt的开源数据标注工具（见图9），该工具也随我们的数据集一同开放。该工具提供了半自动标注功能，这是同类二维图像和视频标注软件常用的功能（Kavasidis等人，2012；Bianco等人，2015）。在我们的应用中，三维点云（来自PCD文件$^6$）首先被分割为待用户标注的候选聚类，用户可以填写候选目标ID、类别（例如行人、群组$^7$等）、可见性（例如完全可见或部分可见）等信息。该工具支持对已有数据集修改和添加新标注，还可以轻松扩展，用于标注自行车、汽车等其他目标（Sun等人，2018），也可对轨迹片段进行分割和标注。

### 6.3 L-CAS 三维点云行人数据集

该数据集包含28002帧扫描数据，由我们的移动机器人在一栋宽敞拥挤的学术大楼内运动和静止状态下采集得到（见图10），详细信息见表2。每一帧3D扫描约包含30000个点。除X-Y-Z坐标外，每个点的数据还包括扫描通道编号和返回光脉冲的强度。后者对人体分类非常有用（见表1中的特征$f_9$），因为不同材料在激光束的近红外区域具有独特的反射特性，这可以帮助区分人体（即衣物）和其他物体（Kidono等人，2011）。

我们对19分钟静止采集数据中的共5492帧扫描进行了人工标注，其中包含6140个人体聚类。单个人体扫描生成的3D点数量最少为3个，最多为3925个；与传感器的最小距离为0.5米，最大距离为27米。如图11所示，该数据集涵盖了多种挑战性场景，例如人群、儿童、推行李车的行人等，这类场景的组合很少出现在其他同类数据集中。

我们的3D LiDAR数据集与其他同类数据集的对比如表3所示。据我们所知，这是唯一一个由机器人在运动和静止状态下于室内采集的此类数据集。尽管Velodyne VLP-16的扫描通道数和分辨率低于其他型号，我们传感器提供的数据质量完全适用于大多数室内应用，可实现对距离机器人最远25米处的行人进行检测与跟踪。我们数据集的激光扫描总数量也排在第二位，数据以两种文件格式存储，即适用于ROS的bag格式和适用于点云（Point Cloud）的pcd格式

<div style="text-align: center;">Table 2 Overview of our dataset</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Type</td><td style='text-align: center; word-wrap: break-word;'>Start time</td><td style='text-align: center; word-wrap: break-word;'>Length (min)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Stationary</td><td style='text-align: center; word-wrap: break-word;'>12:00</td><td style='text-align: center; word-wrap: break-word;'>19</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Moving</td><td style='text-align: center; word-wrap: break-word;'>12:27</td><td style='text-align: center; word-wrap: break-word;'>12</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Stationary</td><td style='text-align: center; word-wrap: break-word;'>12:39</td><td style='text-align: center; word-wrap: break-word;'>18</td></tr></table>

---

![Image](images/83d075dd7e96da75bdd27a8248d6528eb5b62a0efb621dcc1bea339175761aff.jpg)

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

![Image](images/582a5313228551d04fd0c591e8ed4f18763b2767fc188dbda15e7389cb58af7c.jpg)

![Image](images/3548b69abd0a12b9e513c344bce2f2ee268c871b1a3a71026d8c52fe51cf4427.jpg)

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

![Image](images/a92efe8d37c5cded137c4c1b471711e5293de7b6da2e1743335472b1b6e85a78.jpg)

![Image](images/764a2e94749bc43a995d52c6d505da91cbd06b07971f5910efd5f1ae1768f48d.jpg)

![Image](images/662a202edaf4fed01b68d787f3bdbd7975e83a83c06e5bea8fd5f22a4ccabe63.jpg)

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

![Image](images/2ed40652480cd2b4438c95c908589fd5830d6e71a1f3071c051107ea65ba3067.jpg)

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

![Image](images/0f24f17872b10e40d4f397f3af7e0c17ac9781066461214d233b4e4023402204.jpg)

![Image](images/607031dd6bbbfa6544eb104601bc14945518a37ac9a540133050c3dd52a8df38.jpg)

<div style="text-align: center;">(e) sitting people</div>

![Image](images/b04b2027b2772432555e94c52cdfbc1c5c776343279f2f6f213e4b801e638979.jpg)

![Image](images/d7fc7a0d3f8c08d1122dda193432326eefc548a750a994a501b87eee6c1dee61.jpg)

<div style="text-align: center;">(f) people with trolleys</div>

<div style="text-align: center;">Fig. 11 Different challenging scenarios captured by our dataset</div>

库（PCL）（Rusu和Cousins，2011），这两种格式在机器人领域都非常流行。

## 7 实验结果

本文报道的实验中，聚类精度、运行时间对比以及不确定性下的在线分类实验在搭载Intel i7-7560U（2.40GHz）处理器和16GB内存的笔记本电脑上完成，系统环境为Ubuntu 16.04 64位 + ROS Kinetic；其余实验在搭载Intel i7-6560U（2.20GHz）处理器和8GB内存的笔记本电脑上完成，系统环境为Ubuntu 14.04 64位 + ROS Indigo。评估聚类性能的实验仅使用CPU的单个核心运行。

### 7.1 聚类性能

第一个实验评估了我们提出的点云聚类算法的运行时性能。我们使用19分钟静止状态下采集的数据，统计了不同检测距离下的运行频率。图12的结果表明，运行频率随检测距离的增加而下降，在前几米范围内下降尤为明显，从约50 Hz大幅降至约20 Hz。这是因为，距离传感器越远，需要处理的激光点就越多。具体来说，前几米范围内的障碍物（例如行人）更少，因此被障碍物反射、需要聚类算法处理的激光束也更少。得益于代码优化，与我们此前的

<div style="text-align: center;">Table 3 Comparison of existing 3D LiDAR datasets</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Dataset</td><td style='text-align: center; word-wrap: break-word;'>Recording setting</td><td style='text-align: center; word-wrap: break-word;'>Sensor model</td><td style='text-align: center; word-wrap: break-word;'>Sensor rate/range/altitude</td><td style='text-align: center; word-wrap: break-word;'>#Scans</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>(Spinello et al. 2011)</td><td style='text-align: center; word-wrap: break-word;'>Outdoor (stationary)</td><td style='text-align: center; word-wrap: break-word;'>Velodyne HDL-64E S2</td><td style='text-align: center; word-wrap: break-word;'>5 Hz, 20 m, unknown</td><td style='text-align: center; word-wrap: break-word;'>1,402 (.ezd)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>(Geiger et al. 2012)</td><td style='text-align: center; word-wrap: break-word;'>Outdoor (moving)</td><td style='text-align: center; word-wrap: break-word;'>Velodyne HDL-64E</td><td style='text-align: center; word-wrap: break-word;'>10 Hz, 100 m, 1.73 m</td><td style='text-align: center; word-wrap: break-word;'>14,999 (.bin)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>(Teichman et al. 2011)</td><td style='text-align: center; word-wrap: break-word;'>Outdoor (stationary &amp; moving)</td><td style='text-align: center; word-wrap: break-word;'>Velodyne HDL-64E S2</td><td style='text-align: center; word-wrap: break-word;'>10 Hz, unknown</td><td style='text-align: center; word-wrap: break-word;'>1,300,000 (.tm)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>(Deuge et al. 2013)</td><td style='text-align: center; word-wrap: break-word;'>Outdoor (stationary)</td><td style='text-align: center; word-wrap: break-word;'>Velodyne HDL-64E</td><td style='text-align: center; word-wrap: break-word;'>Unknown</td><td style='text-align: center; word-wrap: break-word;'>41 (.bin &amp; .csv)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>(Yan et al. 2017)</td><td style='text-align: center; word-wrap: break-word;'>Indoor (stationary &amp; moving)</td><td style='text-align: center; word-wrap: break-word;'>Velodyne VLP-16</td><td style='text-align: center; word-wrap: break-word;'>10 Hz, 100 m, 0.8 m</td><td style='text-align: center; word-wrap: break-word;'>28,002 (.bag &amp; .pcd)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>#Points per scan</td><td style='text-align: center; word-wrap: break-word;'>#Annotations</td><td style='text-align: center; word-wrap: break-word;'>Occlusion label</td><td style='text-align: center; word-wrap: break-word;'>Track label</td><td style='text-align: center; word-wrap: break-word;'>Ground-truth</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>120,000</td><td style='text-align: center; word-wrap: break-word;'>5277 pedestrian</td><td style='text-align: center; word-wrap: break-word;'>Visible, partially visible</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>100,000</td><td style='text-align: center; word-wrap: break-word;'>4487 pedestrian (orientation)</td><td style='text-align: center; word-wrap: break-word;'>Visible and 3 occlusion types</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✓</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>120,000</td><td style='text-align: center; word-wrap: break-word;'>54,484 pedestrian</td><td style='text-align: center; word-wrap: break-word;'>Unavailable</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Unknown</td><td style='text-align: center; word-wrap: break-word;'>152 pedestrian</td><td style='text-align: center; word-wrap: break-word;'>Unavailable</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>30,000</td><td style='text-align: center; word-wrap: break-word;'>4811 pedestrian, 3054 group</td><td style='text-align: center; word-wrap: break-word;'>Visible, partially visible</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>✓</td></tr></table>

---

![Image](images/c169787cd2dee34eee02cf8c2e027a393a055c281638083c2ceaeccfb7fc2cc0.jpg)

<div style="text-align: center;">Fig. 12 Runtime performance of the clustering algorithm varying the maximum LiDAR detection range. For example, 2m refers only to the measurements (points) within this particular distance. The respective mean is shown on the top of each box. As one can see, the amount of clutter (and therefore detected clusters) is inversely proportional to the considered distance from the sensor. This is consistent with the complexity of the algorithm, i.e.  $\mathcal{O}(\log n)$.</div>

![Image](images/ea653edd5f069acaee5aa83f06ff414caeba0f47eeca2ecc08dadaf1cc9dd268.jpg)

<div style="text-align: center;">Fig. 13 Two people walking in proximity of the robot in a large open space, one towards the robot and another one from side to side</div>

工作（Yan等人，2017）相比，结果得到了大幅提升，并且表明我们的聚类频率远高于人体跟踪通常要求的最低5 Hz（Bellotto和Hu，2010）。

随后我们将本文方法与当前最先进方法在精度和运行时间方面进行了对比。对于精度对比实验，我们设置了一片开阔空间：一名人员从距离3D LiDAR 25米处出发，朝传感器方向行走至距离1米处，另一名人员分别在距离传感器19米和11米的位置从一侧走向另一侧。图13展示了该实验场景的一个瞬间。整个过程持续17秒，3D LiDAR以10 Hz的频率运行。实验总共采集了172帧扫描数据，随后对所有数据进行了完整标注$^{8}$，以分析聚类检测器的精度。

我们将本文方法与Zermas等人（2017）提出的基于行的聚类方法、Bogoslavskyi和Stachniss（2016）提出的深度聚类方法，以及PCL的欧式聚类方法（Rusu和Cousins，2011）进行对比，在上述标注的扫描数据上评估分割精度。具体来说，我们统计了正确分割的人体聚类数量：未检测出任何聚类记为“漏检”，单个人的点云被拆分为多个聚类记为“过分割”，聚类大小超过手动标注大小30%记为“欠分割”。四种聚类算法的参数和实验结果如表4所示。对于基于行的方法，我们采用了Zermas等人（2017）论文中给出的参数值。对于深度聚类和欧式聚类方法，我们采用了论文中报告的能实现最优性能的阈值（Bogoslavskyi和Stachniss，2016）。可以看出，深度聚类性能较低的主要原因是该方法基于二维距离图像，依靠激光束之间的夹角对点进行聚类。这种方式很难区分深度非常接近的物体，也难以区分背景中大物体前的相对较小的物体，尤其会影响本实验中第二名人员的检测。而如表所示，本文方法几乎可以处理所有这类情况，得到的精度普遍远高于其他方法。

在运行时间性能方面，我们在静止机器人采集的19分钟数据的前2500帧扫描上测试了上述四种方法。图14的结果显示，基于行的聚类方法、深度聚类方法和本文方法都比欧式聚类方法快一个数量级。基于行的方法比深度聚类方法略快，这是因为该方法在第一步就随着地面移除了更多的点，节省了第二步聚类所需的时间。基于行的方法速度是本文方法的三倍，深度聚类方法速度是本文方法的两倍，但正如前文所示，这是以精度为代价的。

从上述实验我们可以得出以下结论：基于行的方法和深度方法都是从二维图像的角度进行聚类，而本文方法直接处理三维点云。因此前两种方法速度更快但精度不足，本文方法速度相对较慢但精度更高。

### 7.2 稳定性分析

通过分析人体分类器产生的假阳性$\alpha$和假阴性$\beta$的变化，即可对学习过程进行稳定性分析（Kalal等人，2012）：

 $$ \begin{bmatrix}\alpha_{k+1}\\ \beta_{k+1}\end{bmatrix}=\begin{bmatrix}1-R^{-}&\frac{1-P^{+}}{P^{+}}R^{+}\\ \frac{1-P^{-}}{P^{-}}R^{-}&1-R^{+}\end{bmatrix}\times\begin{bmatrix}\alpha_{k}\\ \beta_{k}\end{bmatrix} $$

其中k表示训练迭代次数，$P^{+}$、$R^{+}$、$P^{-}$和$R^{-}$分别是专家的P准确率、P召回率、N准确率和N召回率。该递推方程

---

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Approach</td><td style='text-align: center; word-wrap: break-word;'>Ground removal</td><td style='text-align: center; word-wrap: break-word;'>Min/max points</td><td style='text-align: center; word-wrap: break-word;'>Clustering threshold</td><td style='text-align: center; word-wrap: break-word;'>Precision</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Run clustering (Zermas et al. 2017)</td><td style='text-align: center; word-wrap: break-word;'>$Params_{GPF}$</td><td style='text-align: center; word-wrap: break-word;'>2/30,000</td><td style='text-align: center; word-wrap: break-word;'>$Params_{SLR}$</td><td style='text-align: center; word-wrap: break-word;'>51.7% (133 missed, 33 over- 0 under-segment)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Depth clustering (Bogoslavskyi and Stachniss 2016)</td><td style='text-align: center; word-wrap: break-word;'>$7^{\circ}$</td><td style='text-align: center; word-wrap: break-word;'>5/30,000</td><td style='text-align: center; word-wrap: break-word;'>$10^{\circ}$</td><td style='text-align: center; word-wrap: break-word;'>39.2% (162 missed, 11 over- 36 under-segmented)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Euclidean clustering (Rusu and Cousins 2011)</td><td style='text-align: center; word-wrap: break-word;'>-0.8 m</td><td style='text-align: center; word-wrap: break-word;'>5/30,000</td><td style='text-align: center; word-wrap: break-word;'>0.5 m</td><td style='text-align: center; word-wrap: break-word;'>64.5% (88 missed, 34 over- 0 under-segmented)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Current paper</td><td style='text-align: center; word-wrap: break-word;'>-0.8 m</td><td style='text-align: center; word-wrap: break-word;'>5/30,000</td><td style='text-align: center; word-wrap: break-word;'>Adaptive</td><td style='text-align: center; word-wrap: break-word;'>89.8% (1 missed, 16 over- 18 under-segmented)</td></tr><tr><td colspan="5">$Params_{GPF} = \{N_{segs} = 3, N_{iter} = 3, N_{LPR} = 20, Th_{seeds} = 0.4m, Th_{dist} = 0.2m\}$</td></tr><tr><td colspan="5">$Params_{SLR} = \{Th_{run} = 0.5m, Th_{merge} = 1m\}$</td></tr></table>

<div style="text-align: center;">Table 4 Parameter settings and segmentation precision of four different methods</div>

<div style="text-align: center;">Fig. 14 Runtime performance of the four clustering methods</div>

(14)式中的是一个离散动力系统，可以表示为$\mathbf{x}_{k+1} = \mathbf{M} \, \mathbf{x}_k$。可以证明，如果$\lambda_1$的特征值$\lambda_2$和$\mathbf{M}$均小于1，那么$\mathbf{x}$会收敛到零。

![Image](images/63430d779b513496f13b5986c3e6bbab7af6deb9fce31bad317cc488f55dd916.jpg)

观察(14)式可以得到一个有趣的结论：若$P^{+} = P^{-} = 1$，则$\mathbf{M}$成为对角矩阵，因此它的特征值就是$\lambda_1 = 1 - R^-$和$\lambda_2 = 1 - R^+$。在这种情况下，即使两位专家的召回率不高，也足以保证$\lambda_1 < 1$和$\lambda_2 < 1$，进而保证学习过程的稳定性。根据这些准则，我们为P-N专家采用了如下性能指标：

 $$ \begin{array}{r l}{-\mathrm{~P r e c i s i o n~o f~P-e x p e r t~}}&{P^{+}=n_{t}^{+}/(n_{t}^{+}+n_{f}^{+})}\\ {-\mathrm{~R e c a l l~o f~P-e x p e r t~}}&{R^{+}=n_{t}^{+}/\beta}\\ {-\mathrm{~P r e c i s i o n~o f~N-e x p e r t~}}&{P^{-}=n_{t}^{-}/(n_{t}^{-}+n_{f}^{-})}\\ {-\mathrm{~R e c a l l~o f~N-e x p e r t~}}&{R^{-}=n_{t}^{-}/\alpha}\end{array} $$

其中$n_{t}^{+}$和$n_{f}^{+}$分别是P专家检测得到的真阳性和假阳性数量，$n_{t}^{-}$和$n_{f}^{-}$则分别是N专家检测得到的对应数量。人工分类器产生的$\alpha$个假阳性，是所有应当由N专家修正的样本总数。同理，人工分类器产生的$\beta$个假阴性，是所有应当由P专家修正的样本总数。

表5展示了在与之前实验相同的172帧扫描数据上进行10次训练迭代得到的结果。三个分类器仅用一个样本完成手动初始化，之后分别每新增5个、10个或20个正样本（以及同等数量的负样本）重新训练一次。通过这种方式，我们验证了在线学习在不同训练间隔下都具有稳定性。可以看到，两位专家的性能整体表现良好。具体而言，由于$P^+ = P^- = 1$且$R^+ > 0 \land R^- > 0$，如前文所讨论的，在线学习的稳定性始终可以通过特征值$\lambda_1 < 1 \land \lambda_2 < 1$得到保证。

---

<div style="text-align: center;">Table 5 Performance analysis of the P-N experts</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>P-expert</td><td style='text-align: center; word-wrap: break-word;'>N-expert</td><td colspan="3">Eigenvalues</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$P^{+}$</td><td style='text-align: center; word-wrap: break-word;'>$R^{+}$</td><td style='text-align: center; word-wrap: break-word;'>$P^{-}$</td><td style='text-align: center; word-wrap: break-word;'>$R^{-}$</td><td style='text-align: center; word-wrap: break-word;'>$\lambda_{1}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$\lambda_{2}$</td></tr><tr><td colspan="5">Retrain the classifier every 5 positives and 5 negatives</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>1.0</td><td style='text-align: center; word-wrap: break-word;'>0.714</td><td style='text-align: center; word-wrap: break-word;'>1.0</td><td style='text-align: center; word-wrap: break-word;'>0.0215</td><td style='text-align: center; word-wrap: break-word;'>0.9785</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>0.286</td></tr><tr><td colspan="5">Retrain the classifier every 10 positives and 10 negatives</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>1.0</td><td style='text-align: center; word-wrap: break-word;'>0.8857</td><td style='text-align: center; word-wrap: break-word;'>1.0</td><td style='text-align: center; word-wrap: break-word;'>0.0405</td><td style='text-align: center; word-wrap: break-word;'>0.9595</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>0.1143</td></tr><tr><td colspan="5">Retrain the classifier every 20 positives and 20 negatives</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>1.0</td><td style='text-align: center; word-wrap: break-word;'>1.0</td><td style='text-align: center; word-wrap: break-word;'>1.0</td><td style='text-align: center; word-wrap: break-word;'>0.0271</td><td style='text-align: center; word-wrap: break-word;'>0.9729</td></tr></table>

### 7.3 分类性能

本节我们对基于3D LiDAR的人体分类器的性能进行评估：首先分析在线训练和离线训练SVM的分类结果，然后评估不确定条件下在线训练SVM的表现，最后将我们提出的新特征集得到的结果与其他当前最优的特征组合进行对比。

#### 7.3.1 在线分类与离线分类

我们首先将本文系统在线训练得到的SVM分类器，与使用人工标注数据离线训练得到的同一分类器进行对比。为了说明前者随时间推移获得的性能提升，我们分别考察了在线训练初期和训练结束后的性能。离线分类器使用来自标注数据的1000个单人样本，以及同等数量随机选取的背景样本进行训练。在线分类器初始使用人工挑选的5个正样本和5个负样本训练，之后每新增100个正样本和100个负样本，由系统自动重新训练一次，直到最终版本使用1005个正样本和1005个负样本完成训练。

测试集包含从我们18分钟的静止机器人数据集中随机选取的50帧扫描数据（不包含用于手动训练离线分类器的扫描数据）。该测试集中同时包含站立和坐姿的人体。具体而言，测试集共包含567个单人实例，对应每个点簇的点数在5到2122之间，距离传感器的距离范围为0.5米到25米。

我们采用标准指标（Everingham等人，2010）对分类性能进行评估，所用指标包括精确率（Precision）、召回率（Recall）、平均精度（Average Precision, AP）和F值（F-measure）。当预测边界框与真值边界框的重叠面积超过50%时，该人体聚类就会被判定为真阳性。结果如图15（左列）所示，图中显示最终在线分

![Image](images/963b749a6211f65df7908a2553d7212b3eb786fdcf6e6f7ba7773a2c5f721f64.jpg)

<div style="text-align: center;">Fig. 15 Performance evaluation of the 3D LiDAR-based human classifier. Left column: online versus offline classification. Middle column: online classification without P-N experts. Right column: online classification without P-N experts.</div>

<div style="text-align: center;">sification with robot moving. The initial online classifiers are trained with manually chosen 5 positive and 5 negative samples</div>

---

类器相较于初始分类器的提升十分明显。最重要的是，实验结果表明，最终的在线分类器性能优于手动离线训练得到的分类器。这很大程度上是因为我们的跟踪系统鲁棒性充足，能够检测距离机器人较远的聚类——即便这类聚类很难被人工标注者发现，这一特性为我们的在线学习框架带来了增益。

#### 7.3.2 不确定条件下的在线分类

随后我们在与7.3.1节相同的设置下（但不使用P-N专家）在线训练了一个分类器。仅满足式10、式11和式12的人体轨迹会被作为正样本学习，负样本则为随机选取的背景样本。该实验的目的是测试P专家和N专家失效时的性能，此时SVM会在混入一定数量假阳性和假阴性样本的情况下重新训练。结果如图15（中列）所示。可以看到，分类性能随着训练轮次的增加得到提升，但由于没有专家协助在线纠正错误，提升速度缓慢且效果有限。

我们还在12分钟的机器人移动数据上开展了另一项实验。我们运行完整系统（即包含P-N专家），并对5.2节所述参数进行微调，以应对机器人运动产生的额外噪声。我们在线训练了8轮分类器，并给出偶数训练轮次的性能结果，如图15（右列）所示。可以看到，在我们的在线学习框架下分类性能得到了提升，但性能会受到噪声的影响。不过需要指出的是，本实验中跟踪系统提供的是相对于机器人里程计的人体二维位置，该过程会累积漂移误差，使用激光雷达（LiDAR）里程计或基于地图的定位方法可以改善当前结果。

#### 7.3.3 特征集对比

最后，本实验评估了四个采用不同特征集的分类器，以验证我们提出的新型切片距离特征$f_{10}$带来的性能提升。四个特征集分别为：Navarro-Serment等人（2009）提出的$(f_1, \ldots, f_7)$、Kidono等人（2011）提出的$(f_1, \ldots, f_9)$、我们此前在Yan等人（2017）工作中使用的$(f_1, \ldots, f_4, f_8, f_9)$，以及本文使用的当前特征集$(f_1, \ldots, f_4, f_8, \ldots, f_{10})$。

训练阶段，正样本（人体）和负样本（背景）均取自19分钟的机器人静止数据，初始监督阶段从5个正样本和5个负样本开始。我们的在线学习框架每收集到100个正样本和100个负样本就对分类器重新训练一次，直到累积到1005个正样本和同等数量的负样本。最终得到的分类器在与前文实验相同的测试集上进行评估，该测试集包含从18分钟机器人静止数据中提取的567个人体聚类，涵盖了与传感器距离不等的站立和坐姿人体。

结果如图16所示，表明经本文提出的切片距离特征增强后的新型分类器的AP显著优于我们此前的方案，且整体性能与另外两种分类器相近。不同于使用基于投影平面、维度为152维的特征$(f_5, \ldots, f_7)$，我们基于距离的特征$L^2$ $f_{10}$仅10个维度，就能显著提升系统性能，因此更适合用于实时人体检测。此外，我们新型分类器的Precision-Recall和F-Measure整体也优于其他分类器。

![Image](images/e809318663fc8e7ab8580fa00be23e50b156bdb3dbb15a2a0c742dfbb8735abd.jpg)

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

<div style="text-align: center;">Fig. 16 Performance evaluation of different human classifiers</div>

---

## 8 结论

本文提出了一种改进的在线学习框架，用于3D LiDAR扫描中的人体检测，并且对框架的运行时性能、稳定性和分类结果进行了全面评估。该框架依托于集成了实时聚类算法和高效样本生成器的多目标跟踪系统，能够让移动机器人自主从环境中学习人体的外观特征，大幅减少了对繁琐耗时的数据标注工作的需求。

研究表明，我们的自适应聚类方法比其他现有最优算法更精准，同时仍保持了较低的计算成本，适用于大多数人体跟踪应用场景。本文详细分析了在线学习过程的稳定性，在实际应用中，我们的P-N专家模块能够提供高质量的训练样本，因此该稳定性可以得到保证。我们的实验还表明，得益于增强的高效特征集，我们的人体分类器在F-measure（准确率）指标上优于其他现有最优方案，而精确率和召回率与其他方案相当。

整个系统遵循模块化设计在ROS中实现。我们实验所用的软件和数据集均已公开，可供研究使用。虽然该软件目前用于人体检测与跟踪，但它可以扩展，以处理其他运动目标，例如汽车、自行车或动物（Sun et al. 2018）。基于3D LiDAR的聚类检测模块也可以替换为其他基于不同传感器的检测器，例如RGB-D相机和2D LiDAR（Yan et al. 2018）。

未来的扩展工作应包括将人体分类器与多目标跟踪器耦合，这样改进人体聚类的分类效果也会同步提升人员跟踪的性能。此外，虽然我们的方案能够实现动态环境下移动机器人的人体检测，但本文目前仅在采集时长相对较短的数据集上进行了测试。例如，服务机器人可以利用公共环境的日常运行规律：夜间没有运动物体时采集负背景样本，白天采集正人体样本。$^9$ 因此，长期运行和开放式学习是该领域未来研究中两个颇具前景的方向（Vintr et al. 2019; Krajnik et al. 2017）。未来工作可探索其他分类方法，例如深度神经网络，利用在线学习克服收集大量训练样本的难题。

## 参考文献

Arras, K. O., Mozos, O. M., & Burgard, W. (2007). Using boosted features for the detection of people in 2d range data. In Proceedings of the 2007 IEEE international conference on robotics and automation (ICRA) (pp. 3402–3407).

Bellotto, N.、Hu, H.（2009）。面向移动服务机器人的多传感器人体检测与追踪。《IEEE系统、人与控制论汇刊B辑》，39(1)，167–181。

Bellotto, N.、Hu, H.（2010）。移动机器人人体追踪的高效计算解决方案：贝叶斯滤波器的实验评估。《自主机器人》，28，425–438。

Beyer, L.、Hermans, A.、Linder, T.、Arras, K. O.、Leibe, B.（2018）。基于二维距离数据的深度人体检测。《IEEE机器人与自动化快报》，3(3)，2726–2733。

Bianco, S.、Ciocca, G.、Napoletano, P.、Schettini, R.（2015）。支持手动、半自动和全自动的交互式视频标注工具。《计算机视觉与图像理解》，131，88–99。

Bogoslavskyi, I.、Stachniss, C.（2016）。面向在线运行的基于距离图像的稀疏三维激光扫描快速分割。载《2016年IEEE/RSJ智能机器人与系统国际会议（IROS）论文集》（第163–169页）。

Chang, C. C.、Lin, C. J.（2011）。LIBSVM：支持向量机库。《ACM智能系统与技术汇刊》，2，1–27。

Cortes, C.、Vapnik, V.（1995）。支持向量网络。《机器学习》，20(3)，273–297。

Dequaire, J.、Ondruska, P.、Rao, D.、Wang, D.、Posner, I.（2017）。野外来深度追踪：基于循环神经网络的端到端追踪。《国际机器人研究杂志（IJRR）》，37，1–21。

Deuge, M.D.、Quadros, A.、Hung, C.、Douillard, B.（2013）。面向户外三维扫描分类的无监督特征学习。载《澳大利亚机器人与自动化会议（ACRA）论文集》。

Dewan, A.、Caselitz, T.、Tipaldi, G.D.、Burgard, W.（2016）。三维激光雷达扫描中基于运动的检测与追踪。载《2016年IEEE机器人与自动化国际会议（ICRA）论文集》（第4508–4513页）。

Dondrup, C.、Bellotto, N.、Jovan, F.、Hanheide, M.（2015）。面向人机空间交互的实时多传感器人体追踪。载《2015年IEEE机器人与自动化国际会议（ICRA）社交机器人机器学习研讨会论文集》。

Douillard, B.、Underwood, J. P.、Kuntz, N.、Vlaskine, V.、Quadros, A. J.、Morton, P.、Frenkel, A.（2011）。论三维激光雷达点云的分割。载《2011年IEEE机器人与自动化国际会议（ICRA）论文集》（第2798–2805页）。

Everingham, M.、Gool, L. J. V.、Williams, C. K. I.、Winn, J. M.、Zisserman, A.（2010）。PASCAL视觉对象分类（VOC）挑战赛。《国际计算机视觉杂志》，88，303–338。

Geiger, A.、Lenz, P.、Urtasun, R.（2012）。我们准备好自动驾驶了吗？KITTI视觉基准套件。载《2012年IEEE计算机视觉与模式识别会议（CVPR）论文集》（第3354–3361页）。

González, A.、Villalonga, G.、Xu, J.、Vázquez, D.、Amores, J.、López, A.M.（2015）。结合RGB与激光雷达数据的多视角局部专家随机森林行人检测。载《2015年IEEE智能车辆研讨会（IV）论文集》（第356–361页）。

Häselich, M.、Jöbgen, B.、Wojke, N.、Hedrich, J.、Paulus, D.（2014）。非结构化环境下基于置信度的三维激光测距行人追踪。载

---

《2014年IEEE/RSJ智能机器人与系统国际会议（IROS）论文集》（第4118–4123页）。

Jafari, O. H., Mitzel, D., & Leibe, B. (2014). 面向移动机器人和头戴式相机的基于RGB-D的实时行人检测与跟踪. 见：2014年IEEE国际机器人与自动化会议（ICRA）论文集（第5636–5643页）.

Julier, S. J., & Uhlmann, J. K. (2004). 无迹滤波与非线性估计. 《IEEE会刊》, 92(3), 401–422.

Kalal, Z., Mikolajczyk, K., & Matas, J. (2012). 跟踪-学习-检测. IEEE模式分析与机器智能汇刊, 34卷, 1409–1422.

Kavasidis, I., Palazzo, S., Salvo, R. D., Giordano, D., & Spampinato, C. (2012). 一种用于生成视频检测与跟踪真值的半自动化工具. 见：第一届计算机视觉应用真值采集视觉接口国际研讨会论文集.

Keerthi, S. S., & Lin, C. J. (2003). 高斯核支持向量机的渐近行为. 《神经计算》, 15(7), 1667–1689.

Kidono, K., Miyasaka, T., Watanabe, A., Naito, T., & Miura, J. (2011). 基于高清LIDAR的行人识别. 见：2011年IEEE智能车辆研讨会（IV）论文集（第405–410页）.

Krajnik, T., Fentanes, J. P., Santos, J. M., & Duckett, T. (2017). Fremen：变化环境中长期移动机器人自主导航的频率地图增强. IEEE机器人汇刊, 33卷, 964–977.

Leigh, A., Pineau, J., Olmedo, N. A., & Zhang, H. (2015). 基于二维激光扫描仪的行人跟踪与跟随. 见：2015年IEEE国际机器人与自动化会议（ICRA）论文集（第726–733页）.

Li, K., Wang, X., Xu, Y., & Wang, J. (2016). 基于密度增强的三维距离数据远距离行人检测. IEEE智能交通系统汇刊, 17卷, 1368–1380.

Li, X. R., & Jilkov, V. P. (2003). 机动目标跟踪综述 第一部分：动力学模型. IEEE航空航天与电子系统汇刊, 39(4), 1333–1364.

Linder, T., Breuers, S., Leibe, B., & Arras, K. O. (2016). 极拥挤动态环境中移动平台的多模态行人跟踪研究. 见：2016年IEEE国际机器人与自动化会议（ICRA）论文集（第5512–5519页）.

Luber, M., & Arras, K. O. (2013). 移动机器人的多假设社交分组与跟踪. 见：机器人学：科学与系统会议论文集.

Mohler, B. J., Thompson, W. B., Creem-Regehr, S. H., Pick, H. L., & Warren, W. H. (2007). 视觉光流对步态转换速度和偏好步行速度的影响. 《实验脑研究》, 181(2), 221–228.

Moosmann, F., Pink, O., & Stiller, C. (2009). 基于局部凸性准则的非平坦城市环境三维激光雷达数据分割. 见：2009年IEEE智能车辆研讨会（IV）论文集（第1931–0587页）.

Munaro, M., & Menegatti, E. (2014). 服务机器人的快速RGB-D行人跟踪. 《自主机器人》, 37卷, 227–242.

Navarro-Serment, L. E., Mertz, C., & Hebert, M. (2009). 基于三维激光雷达数据的行人检测与跟踪. 见：第7届野外与服务机器人会议（FSR）论文集（第103–112页）.

Premebida, C., Carreira, J., Batista, J., & Nunes, U. (2014). 结合RGB和稠密激光雷达数据的行人检测. 见：2014年IEEE/RSJ智能机器人与系统国际会议（IROS）论文集（第4112–4117页）.

Quigley, M., Conley, K., Gerkey, B.P., Faust, J., Foote, T., Leibs, J., Wheeler, R., Ng, A.Y. (2009)。ROS：一个开源机器人操作系统。载于DICRA开源软件研讨会。

Read, J., Bifet, A., Pfahringer, B., Holmes, G. (2012)。动态演化数据中的批量增量学习与实例增量学习对比。载于第11届智能数据分析国际研讨会（IDA 2012）会议录（第313–323页）。

Rusu, R.B. (2009)。面向人类生活环境日常操作的语义三维物体地图。博士学位论文，德国慕尼黑工业大学计算机科学系。

Rusu, R.B., Cousins, S. (2011)。三维时代已至：点云库（PCL）。载于2011年IEEE机器人与自动化国际会议（ICRA）会议录。

Shackleton, J., Voorst, B. V., Hesch, J. A. (2010)。使用360度激光雷达进行行人跟踪。载于第7届IEEE高级视频与基于信号的监控国际会议（AVSS）会议录（第420–426页）。

Spinello, L., Arras, K.O. (2011)。RGB-D数据中的行人检测。载于2011年IEEE/RSJ智能机器人与系统国际会议（IROS）会议录（第3838–3843页）。

Spinello, L., Luber, M., Arras, K.O. (2011)。使用自下而上自上而下检测器的三维行人跟踪。载于2011年IEEE机器人与自动化国际会议（ICRA）会议录（第1304–1310页）。

Sun, L., Yan, Z., Mellado, S.M., Hanheide, M., Duckett, T. (2018)。基于长期自主移动机器人部署数据学习的三自由度行人轨迹预测。载于2018年IEEE机器人与自动化国际会议（ICRA）会议录，澳大利亚布里斯班。

Sun, L., Yan, Z., Zaganidis, A., Zhao, C., Duckett, T. (2018)。Recurrent-octomap：面向三维激光雷达数据长期语义建图的基于状态的地图优化学习。《IEEE机器人与自动化快报》，3(4)，3749–3756。

Teichman, A., Levinson, J., Thrun, S. (2011)。通过任意物体轨迹分类实现三维物体识别。载于2011年IEEE机器人与自动化国际会议（ICRA）会议录（第4034–4041页）。

Teichman, A., Thrun, S. (2012)。基于跟踪的半监督学习。《国际机器人研究杂志（IJRR）》，31(7)，804–818。

Vintr, T., Yan, Z., Duckett, T., Krajnik, T. (2019)。面向服务机器人中长期人类存在预测的时空表示。载于2018年IEEE机器人与自动化国际会议（ICRA）会议录，加拿大蒙特利尔。

Wang, D. Z., Posner, I. (2015)。在线点云物体检测中的投票再投票。载于机器人学：科学与系统会议录。

Yan, Z., Duckett, T., Bellotto, N. (2017)。面向基于三维激光雷达跟踪中行人分类的在线学习方法。载于2017年IEEE/RSJ智能机器人与系统国际会议（IROS）会议录，加拿大温哥华。

Yan, Z., Sun, L., Duckett, T., Bellotto, N. (2018)。面向移动机器人基于三维激光雷达行人检测的多传感器在线迁移学习。载于2018年IEEE/RSJ智能机器人与系统国际会议（IROS）会议录，西班牙马德里。

Zermas, D., Izzat, I. 和 Papanikolopoulos, N. (2017). 三维点云快速分割：自动驾驶场景下激光雷达数据的处理范式。载于2018年IEEE国际机器人与自动化会议（ICRA）会议论文集。新加坡。

Zhou, Y. 和 Tuzel, O. (2018). Voxelnet：基于点云的端到端三维目标检测学习。载于2018年IEEE计算机视觉与模式识别会议（CVPR）会议论文集（第4490–4499页）。

出版者说明 施普林格·自然对于已出版地图涉及的管辖权主张以及机构隶属关系保持中立。

---

![Image](images/904fc63236ef8fadcd008f64a63dcd18e1f889a55f20bb3aebdd4c809392a899.jpg)

闫智（Zhi Yan）目前是贝尔福-蒙贝利亚尔技术大学（UTBM）分布式人工智能与知识实验室（CIAD）的助理教授（Maître de conférences）。2016年至2017年，他在林肯大学林肯自主系统中心（L-CAS）担任博士后研究员，参与地平线2020项目FLOBOT的研究工作。2013年至2015年，他在里尔杜埃矿业学院（IMT Lille Douai）CAR团队担任博士后研究员。2012年，他在巴黎第八大学获得博士学位。研究方向为自动驾驶、移动机器人学与时间机器人学（chronorobotics）。

汤姆·达克特（Tom Duckett）是英国林肯大学计算机科学教授，担任林肯自主系统中心（L-CAS）主任。他的研究兴趣包括自主机器人、人工智能、机器感知、机器人建图与长期自主运行，研究成果应用于农业食品、野外机器人与服务机器人领域。他此前曾任职于瑞典厄勒布鲁大学应用自主传感器系统中心（AASS），主持该中心学习系统实验室的工作。他在英国曼彻斯特大学人工智能组获得博士学位。在进入学术界之前，他曾担任程序员，为生鲜食品行业开发并维护软件解决方案。汤姆已合作发表超过140篇学术论文，在林肯大学累计获得同行评审科研经费总额1020万英镑，其中910万英镑为他作为首席研究员（PI）主持的项目。他还在成功争取英国政府英格兰扩优（E3）基金630万英镑资助、创建林肯农业机器人中心的过程中发挥了核心作用；林肯农业机器人中心是农业机器人领域的卓越中心，研究如何让机器人在最少人工干预的情况下完成高价值作物的管护、采收与质量检测工作。

![Image](images/f9b8353cf3f3e54d02f488c9310d84fbfcaaccd9e8314946066410c28e46492f.jpg)

![Image](images/610324b25ba1bde33f200a43f8f9bad1724ff80f8b861a11f5f95b066a763731.jpg)

尼古拉·贝洛托（Nicola Bellotto）是林肯大学计算机科学准教授（Reader）。他拥有帕多瓦大学电子工程Laurea学位和埃塞克斯大学计算机科学博士学位。在加入林肯大学之前，他曾在牛津大学从事博士后研究。他还曾在工业界工作多年，负责嵌入式系统的开发与编程。他的研究方向主要聚焦于机器人与智能系统中的人类机器感知，研究范围从底层的检测与跟踪延伸到高层的行为理解与推理，涵盖多传感器数据融合、主动视觉与定性空间表示等方法。目前，他主要主持RASberry和ActiVis两个研究项目。直到不久前，他还一直担任欧盟两项H2020项目FLOBOT和ENRICHME的首席研究员（PI）。