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

# 基于三维LiDAR的在线学习人体检测：点云聚类与分类方法的实验分析

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

收稿日期：2018年4月25日 / 录用日期：2019年8月3日

© 施普林格科学+商业媒体有限责任公司，施普林格自然旗下机构 2019

## 摘要

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

关键词 在线学习 · 人体检测 · 点云分割 · 基于三维LiDAR的跟踪 · 数据集

数学主题分类 68T40 · 93C85

## 1 引言

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

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

近年来，三维LiDAR传感器在机器人和自动驾驶车辆中的应用得到了大幅增长，可单独使用（Navarro-Serment et al. 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激光雷达扫描中实现人体检测仍然极具挑战性，尤其是当目标人员距离机器人过近或过远时。此外，由于增大感知范围也会扩大需要检测的区域，进而增加该区域内可能存在的人数，因此基于3D激光雷达的人体检测的计算成本非常高。最后，以往方法通常需要大量人工标注的训练数据，以离线学习得到人体分类器（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激光雷达点云是一项繁琐的工作，且容易出现人为错误，尤其是当需要对不同姿态、外形和尺寸的人体进行正确分类时。对于复杂的真实场景，以及系统需要针对不同运行环境重新训练的情况，离线人工标注也并不适用。

本文扩展了我们近期在人体分类领域的研究工作（Yan et al. 2017），在该工作中我们开发了一套用于对3D激光雷达扫描中的人体进行分类的在线学习框架，该框架借助了一套成熟的多目标跟踪系统（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-expert），另一类修正假正例以生成新的负训练样本（N-expert）。随后我们证明，通过迭代修正分类器的误差，其性能得到了明显提升。

与Yan et al. (2017)的工作相比，本文包含以下几项新贡献。

- 首先，我们基于三维激光雷达改进了人体分类方法，引入了一种新型低成本特征，该特征将点云中的人体轮廓与距离变化相结合，从而提升了分类器对远离机器人的样本的灵敏度。

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

- 第三，我们对本文提出的3D激光雷达点云聚类算法进行了全面评估，包括与其他现有最优方案的对比，评估内容覆盖准确率和运行时性能两个方面。

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

本文其余部分的组织结构如下：第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），以及二维传感器（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）。尽管三维激光雷达能够提供精准的距离信息，但使用激光雷达时面临的主要挑战之一在于：点云相对稀疏，且没有额外的色彩信息，因此很难从中识别出人体。

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

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

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

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

离线方法的缺点在于，当机器人转移到不同环境时，预训练分类器并不总能发挥作用，因此通常需要进行微调或重新训练。为了将用户从这些繁琐的工作中解放出来，已有研究人员提出了需要更少标注的方法。例如，Teichman和Thrun（2012）提出了一种用于多目标分类的半监督学习方法，该方法只需要少量手工标注的种子目标轨迹即可训练分类器。但该方法需要由人类专家提供大规模的背景目标训练集（即不包含行人、骑行者、车辆等的训练集）才能实现良好的分类性能。另有研究人员提出了无分类器的方法。

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

---

动态目标，该方法同样依赖运动线索，因此不适用于行人这类慢速和静止的目标。

尽管人体检测领域亟需低标注量或无分类器的方法，但优质数据集对于验证新方法并将其与已有方法进行对比而言十分重要。遗憾的是，目前利用RGB和RGB-D相机采集的数据集十分丰富，$^{1}$ 可供学术界使用的3D LiDAR数据集却为数不多（Spinello等人，2011；Teichman等人，2011；Deuge等人，2013；Geiger等人，2012），面向移动服务机器人的这类数据集更是稀少。本文提出的数据集兼具多种新颖的实用特性，适用于大空间室内环境中基于3D LiDAR的人体检测与跟踪，我们在第6节中将该数据集与现有数据集进行了对比。

综上所述，从当前的研究进展来看，开发一种有效的低标注量方法对于3D LiDAR扫描中的人体检测而言显然具有很高的价值。本文的工作满足了这一需求：我们证明了，对于移动机器人而言，将跟踪与在线学习相结合能够提升人体检测性能，即使在高动态环境中该结论也成立；同时证明了该方法能够取得与以往方法相当甚至更优的结果。

## 3 在线学习通用框架

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

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

样本生成器利用了聚类、轨迹和标签的全部信息。标签通常会受到两类错误的影响：假阳性和假阴性。样本生成器通过两个独立的“专家”纠正这些错误，两个专家会交叉验证分类器和追踪器的输出结果。基于专家的判断，样本生成器生成新的训练数据。具体而言，图2中的P专家将假阴性转换为正样本，N专家则将假阳性转换为负样本。当足够多的新样本

![Image](images/22f9f9275a9cad5fa9e15d12444d992ad4db2418404943b00a484e226d9f34f8.jpg)

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

生成后，它们会被用于重新训练分类器，因此系统能够从过往错误中学习并改进。本文将在第5.2节详细介绍该流程和专家模块。

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

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

图2所示的本文提出系统包含两个核心组件：聚类检测器和多目标追踪器。聚类检测器实时从三维LiDAR数据中检测点云聚类。追踪器同样实时估计这些聚类的位置和速度，且该过程独立于聚类是否属于人类的判断。下文将给出这两个模块的详细介绍。

---

### 4.1 点云聚类检测器

聚类检测器的输入是三维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所示。因此我们根据实际扫描距离r对阈值$d^{*}$进行调整，方法如下：

![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/86da4dcb33948db52a29a1d5eb59143f1069832817afcf1ed69e97bd19e30ada.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>

---

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

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

 $$ \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和Hu，2009、2010）。我们在对应平坦地面的二维平面上跟踪行人聚类，估计目标在固定世界参考坐标系下的水平坐标和速度。在当前实现中，我们没有考虑聚类的三维尺寸，不过在更具挑战性的跟踪场景中，三维尺寸可能会带来帮助。

估计的预测步骤基于以下匀速运动模型（Li和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，已知该方法性能优于标准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>

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

因此非常适合我们提出的在线学习框架。此外，已知该算法在非线性分类问题中表现良好，且已成功应用于基于3D LiDAR的人体检测（Navarro-Serment et al. 2009; Kidono et al. 2011）。

为了训练SVM，我们从每个点云聚类中提取了7种不同的特征，如表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}$：

件这类新增正样本需要满足的条件如下：

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

   $$ 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. 聚类的速度不为零，同时不超过人类常规步行速度 $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$是通过实验经验确定的。本文还在7.2节讨论并评估了P–N专家模型在在线学习过程稳定性方面的性能。

## 6 系统设置与数据集

我们的框架以高模块化程度完全集成到ROS（Robot Operating System，机器人操作系统）中（Quigley等，2009）。所有组件均可下载$^{2}$，供其他研究人员使用。我们在某大型高校建筑内，使用搭载Velodyne VLP-16 3D LiDAR的移动机器人采集得到的数据集$^{3}$上对该框架进行了评估。

### 6.1 数据记录平台

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

在本研究中，三维激光雷达设置为10Hz转速（即600RPM），最大扫描范围为100米。机器人的最大速度设置为2.52km/h，最大转弯速度设置为140°/s。机器人和传感器均连接到同一平台上搭载的嵌入式PC，该PC配备Intel i7-4765T处理器和8GB内存。此外，三维激光雷达顶部还安装了鱼眼相机，通过WiFi连接到PC，以便获取全景

![Image](images/875ae93bc5b509f87d22650aa7158dfb8f87b8684ac188553401a1d54918a3de.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/f0c2bd58375c2c88a3760a84210d341b155af8b2190848c3c0ba5d2845037bf5.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所示，该数据集捕捉到了许多具有挑战性的场景，例如人群、儿童、推行李车的人员等，这类场景组合在同类数据集中很少出现。

表3对比了我们的3D LiDAR数据集与其他同类数据集。据我们所知，这是唯一一个由移动和静止机器人在室内采集的此类数据集。虽然Velodyne VLP-16的扫描通道和分辨率低于其他型号，但我们传感器提供的数据质量完全适用于大多数室内应用，能够支持我们检测和跟踪距离机器人最远25米的人员。我们的数据集还拥有数量第二多的激光扫描，存储为两种文件格式，即适用于ROS的bag格式和适用于点云的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/a2786066a7f92db96c62190afaa077db14fa25e9fac7a76b06e01273a4ae5336.jpg)

![Image](images/054ec23d3396f38923cde7d0b51e116a1e9c97c1fd2b15dc165d1a8dc882036a.jpg)

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

![Image](images/ba32ee9793dac1b38fe9b0b2a5bc7ed099abc338ae1682eff2e93b874e1ef1fa.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/7bd51f4d2f9d4592d181fc951cb546657698e07e2e7df09b55744eb1e4c01ce4.jpg)

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

![Image](images/73a94a6f7a229439af10ee58722fa2cda1ade0aa6a0021201e4afdb91cc18156.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>

Library (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的结果显示，运行频率随距离增加而降低，在前几米区间尤为明显，从约50Hz大幅下降至约20Hz。这是因为距离传感器越远，被纳入计算的激光点数量就越多。具体来说，前几米范围内的障碍物（例如行人）更少，因此聚类算法需要处理的、由障碍物反射的激光束也更少。得益于部分代码优化，我们的结果相比此前的

<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/4ae53949bee4e502e0d5657effdd06d046b173328a5582986d17a667c93cd34e.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）有了大幅提升，结果表明我们的聚类频率远高于人体跟踪通常要求的最低5Hz标准（Bellotto和Hu，2010）。

我们随后将本文方法与当前最先进的方法在精度和运行时间方面进行了对比。针对精度测试，我们设置了一个开阔实验场景：一人从距离3D LiDAR传感器25米处出发，向传感器方向步行至距离传感器1米处；另一人分别在距离传感器19米和11米的位置从一侧步行至另一侧。图13展示了该实验场景的一个瞬间。整个过程持续17秒，3D LiDAR以10Hz的频率运行。总共采集了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-segmented)</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/ed90d3dde52b7aaffe4f2c7ed6c7bac69cad3432d851cbe5856445bec73c66fa.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}{rl}-Precision of P-expert&P^{+}=n_{t}^{+}/(n_{t}^{+}+n_{f}^{+})\\-Recall of P-expert&R^{+}=n_{t}^{+}/\beta\\-Precision of N-expert&P^{-}=n_{t}^{-}/(n_{t}^{-}+n_{f}^{-})\\-Recall of N-expert&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 分类性能

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

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

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

测试集包含从我们18分钟的静止机器人数据集中随机选取的50帧扫描数据（排除了用于离线分类器人工训练的扫描数据）。测试集中同时包含站立和坐下的人体。具体而言，测试集共有567个单人实例，对应的点簇包含5到2122个点，距离传感器的距离从0.5 m到25 m不等。

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

![Image](images/affa1dddc1e14ee3511922c3e0fbab5ee7f3484900f3b067d9a23b6ef0164cf4.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.1节相同的设置在线训练了一个分类器，但训练过程不包含P-N专家。只有满足式10、式11和式12的人体轨迹才会被作为正样本学习，负样本为随机选取的背景样本。该实验的目的是探究P专家和N专家失效时的模型表现：在这种情况下，SVM会在存在一定数量假阳性和假阴性的条件下重新训练。实验结果如图15（中列）所示。可以看到，分类性能随训练轮数的增加而提升。但如果没有专家帮助在线修正错误，性能提升缓慢且十分有限。

#### 7.3.2 不确定性下的在线分类

我们针对12分钟的移动数据开展了另一项实验。我们运行了完整系统（即配备P-N专家的系统），并对Sect. 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值（准确率）指标上优于其他现有最优方案，且精确率和召回率与其他方案相当。

整个系统按照模块化设计在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). 将提升特征用于二维距离数据中的人体检测。收录于2007年IEEE国际机器人与自动化会议（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)论文集 (pp. 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)论文集 (pp. 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)论文集 (pp. 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)论文集 (pp. 3354–3361).

González, A., Villalonga, G., Xu, J., Vázquez, D., Amores, J., & López, A.M. (2015). 结合RGB与激光雷达数据的行人检测多视图局部专家随机森林. 见：2015年IEEE智能车辆研讨会(IV)论文集 (pp. 356–361).

Häselich, M., Jöbgen, B., Wojke, N., Hedrich, J., & Paulus, D. (2014). 非结构化环境下基于置信度的三维激光测距行人跟踪. 见：

---

2014年IEEE/RSJ智能机器人与系统国际会议(IROS)论文集 (pp. 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)。基于三维激光雷达数据的行人检测与跟踪。载：《第七届野外与服务机器人会议（FSR）论文集》（第103–112页）。

Premebida, C.、Carreira, J.、Batista, J.、Nunes, U. (2014)。结合RGB和密集LIDAR数据的行人检测。载：《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). 面向人类生活环境日常操作的语义三维物体地图. 博士学位论文，德国慕尼黑工业大学（Technische Universität Muenchen）计算机系.

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年，他于巴黎第八大学获得博士学位，研究方向包括自动驾驶、移动机器人学和时间机器人学。

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

![Image](images/3475b01e5f76ad05d1334f553b4d5eabd53790fcd96d28764f411ec7a204c1dd.jpg)

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

Nicola Bellotto是林肯大学计算机科学副教授（英国职称：Reader）。他拥有帕多瓦大学电子工程学士学位，以及埃塞克斯大学计算机科学博士学位。加入林肯大学之前，他曾在牛津大学从事博士后研究，还曾在工业界工作多年，开发和编程实现嵌入式系统。他的研究主要聚焦于机器人与智能系统中的人类机器感知，覆盖从底层检测、跟踪到高层行为理解与推理，相关研究方法包括多传感器数据融合、主动视觉和定性空间表示。目前他主要主持两个研究项目RASberry和ActiVis，不久之前还曾作为首席负责人主持两个欧盟地平线2020项目FLOBOT和ENRICHME。