
# 面向移动机器人和头戴相机的实时RGB-D行人检测与跟踪

奥米德·侯赛尼·贾法里 $^{1}$, 丹尼斯·米策尔 $^{1}$, 巴斯蒂安·莱贝 $^{1}$

摘要——本文提出了一种适用于移动机器人和头戴相机的基于实时RGB-D的多人检测与跟踪系统。我们的方法将RGB-D视觉里程计估计、感兴趣区域处理、地平面估计、行人检测和多假设跟踪组件整合为一个鲁棒的视觉系统，在笔记本电脑上的运行帧率可超过20fps。由于目标检测是这类集成系统中最耗时的组件，我们投入了大量工作来最大限度利用可用的深度信息。具体来说，我们针对不同距离范围提出使用两种不同的检测器。对于近距离范围（最远可达5-7米），我们提出了一种极快的基于深度的上半身检测器，在应用于Kinect传感器时，可在单个CPU核心上实现视频速率的系统性能。为了覆盖更远的距离范围，我们可选地添加了基于外观的全身HOG检测器（在GPU上运行），该检测器利用场景几何结构限制搜索空间。我们的方法既可以处理室内场景的Kinect RGB-D输入，也可以处理室外场景的立体深度输入。我们在具有挑战性的室内和室外序列上对方法进行了定量评估，结果表明我们的方法在大量不同场景下都取得了当前最优性能。我们的代码已公开。

## 一、引言

本文从移动观察者的视角，研究了基于RGB-D的人员检测与跟踪问题。我们聚焦于两种场景：一是在繁忙城市环境[^1]或室内购物区导航的移动机器人，二是为未来增强现实（Augmented Reality）应用佩戴头戴式相机系统的移动人员（图1）。这些场景存在特殊挑战，使得鲁棒的人员跟踪难度很大。在繁忙环境中，由于图像边界遮挡，许多靠近相机的人员在视野中仅部分可见。这对移动机器人应用来说是一项格外突出的挑战，因为靠近机器人的人员恰恰是动态避障最需要跟踪的目标。同时，现有最先进的目标检测器[^2]、[^3]无法很好处理这类情况，在遮挡条件下经常失效。这个问题在头戴相机场景中更为严重，该场景下靠近镜头的人员还会因高位视点产生额外的透视畸变。

第二个核心问题是计算成本。要满足机器人导航决策和移动AR的应用需求，人员跟踪必须能够以尽可能少的计算量实现实时运行。尽管视觉领域已经提出了不少实时检测方案[^4]、[^5]、[^6]，但这些方法通常依赖GPU处理，这意味着

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

<div style="text-align: center;">Fig. 1. Our people detection and tracking approach is suitable for mobile robots and head-worn cameras and can work with both stereo data for outdoor settings (left) and with Kinect RGB-D input for indoor scenarios (right). At its core is an extremely fast depth-based upper-body detector that allows robust performance in busy settings (middle).</div>

能耗更高，因此会降低机器人的自主续航能力。我们提出，在机器人应用场景中，目标检测应当充分利用所有可用的场景信息，减少检测器本身需要完成的计算量。

因此，本文工作旨在充分利用RGB-D传感器提供的现有深度信息，降低目标检测的工作量。我们考虑了两类此类传感器配置：面向户外场景的立体深度方案与面向室内环境的Kinect RGB-D数据，并开发了一种可适配两类输入的方法。本文方法的核心思路是：在深度测量结果可靠的近距范围内，利用深度信息进行感兴趣区域（ROI）提取与快速人体检测；同时外推场景几何信息，约束远距范围内基于外观的目标检测的搜索空间。我们构建了一套鲁棒高效的ROI处理流水线，将上述步骤与视觉里程计估计、多假设跟踪整合执行。基于Kinect RGB-D输入，仅考虑近距检测时，我们的系统可在单核CPU上达到视频帧率（无需GPU参与），添加远距检测器后仍可达到18 fps（含GPU处理）。我们已将代码完整集成到ROS中，并为研究用途公开了该代码。

### II. 相关工作

移动平台的多目标检测与跟踪是移动机器人与自主车辆诸多应用的核心能力。目前已有多种框架被提出用于解决该任务。[^7]提出的方法采用

---

该方法集成了基于多线索的检测器组，并在RJ-MCMC跟踪器中融合检测器输出。[^8] 提出了一种跟踪框架：该框架首先利用视觉里程计和地平面将检测 bounding box 放置在三维时空体积中，随后通过扩展卡尔曼滤波连接各帧的检测结果生成轨迹假设。为了得到最终的轨迹假设集合，他们在MDL框架中执行模型选择。但这两种方法的计算开销都非常大，无法达到实时运行速度。

目前已有多种最先进的目标检测器，例如 [^2]、[^3]，这类检测器对完全可见的行人能够得到精度极高的检测结果。但在我们的应用场景中，行人经常被图像边界遮挡，这些检测器的表现很差。此外，这些方法计算开销大，需要经过专门的优化才能适配移动平台 [^9]。

针对检测存在部分遮挡的行人，[^10] 提出根据目标的期望可见度，将完整目标检测器和多个目标部件检测器整合到专家混合模型中。[^11] 利用立体视觉和光流线索支撑训练得到的局部身体部件检测器，并将这些检测器整合在专家混合框架中。为了解决遮挡问题，[^12] 提出使用结合了HOG和LBP特征的改进SVM框架。但所有这些方法在特征提取或分类器评估阶段都需要很高的计算开销。

[^13]: propose a multiresolution model that employs DPM for detecting pedestrians that are close to the camera and a rigid template for finding small instances of objects. The detections are re-scored using geometrical constraints, such as that pedestrians are standing or moving on a ground plane. We use a similar strategy when applying two different detectors for different distance ranges.

为了降低目标检测的计算量，目前已经提出了多种方法，将检测器的运行仅限制在少数几个感兴趣区域（ROI）中，这些感兴趣区域例如可基于立体测距数据[^14]、[^15]、[^16]、[^17]、运动信息[^18]以及场景几何结构[^19]、[^6]、[^20]提取得到。我们采用类似的策略，基于立体信息开展感兴趣区域处理，从而缩小本文近距上身检测器的搜索空间。此外，我们还为远距全身检测器利用了场景几何信息。最终，我们既降低了计算量，也减少了可能的假阳性数量，因为仅对大概率包含目标物体的图像区域进行评估。

现有多种方法都融入了立体信息来提升检测性能。[^16]利用深度线索先提取感兴趣区域，通过测量学习得到的形状轮廓模型与输入图像之间的倒角距离生成检测假设。[^21]提出了一种使用RGB-D Kinect相机稠密深度数据的全身行人检测器。基于HOG的思路，他们引入方向深度直方图作为一种新特征，其计算流程与HOG完全相同。[^7]提到的上述方法使用了检测器集成方案，其中一个检测器是二元

![Image](images/47198daed21c79f9068ae8c789ceaba3e35df5fb90560f4edffc6fd3bbcce026.jpg)

<div style="text-align: center;">Fig. 2. Overview of our full detection and tracking framework.</div>

深度模板，用于测量到观测人体形状的距离。然而，正如[^17]中已经表明的，使用连续归一化深度模板可获得显著更优的性能，本文我们通过提出的扩展进一步提升了该性能。

### III. 概述

图2简洁展示了我们提出的检测与跟踪系统的整体框架。对于每一个新输入的RGB-D帧，我们首先执行结构标注，将3D点划分为三个不同类别：目标、地平面和固定结构。固定结构点会被直接过滤掉，分类为地平面的点会被送入地平面估计模块，该模块使用RANSAC算法为这些点拟合平面。属于目标类的点会被送入ROI处理模块，该模块通过将3D点投影到地平面，再将生成的团块分割为单个目标来提取ROI。对于每个提取得到的3D ROI，我们通过反向投影在图像平面生成对应的ROI。得到的2D ROI会被送入基于深度的上半身检测器，该检测器在ROI上滑动训练好的上半身模板，计算得到由模板和每个重叠归一化深度图像片段之间欧氏距离构成的距离矩阵。该上半身检测器仅基于深度信息工作，因此作用范围受限于深度传感器（例如Kinect）的可用探测距离，通常最远为5米。为了也能检测更远距离的行人，我们使用了groundHOG，这是由[^6]提出的GPU优化检测器。该检测器基于HOG特征，可让我们利用估计得到的场景几何信息（地平面）将图像中的搜索区域缩小到仅能包含几何有效检测结果的最小区域。最后，我们在视觉里程计组件中估计相机运动，随后在跟踪模块中结合该运动、地平面以及两个检测器的输出进行处理：在跟踪模块中，边界框会被转换为地平面坐标，再通过扩展卡尔曼滤波（EKF）和多假设处理方案关联为轨迹。完整系统包含图2中除groundHOG外的所有组件，在游戏本的单CPU上可达到24fps的运行速度（配置为Intel i7-3630QM、12GB RAM、NVIDIA GeForce GT650m）。加入groundHOG后需要NVIDIA GPU支持，在同一台游戏本上我们可以达到18fps。所有模块都已移植到

---

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

![Image](images/047a566f67e95cc575af5d23a32cedeedf970d71e763676a66ea634c425b6637.jpg)

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

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

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

<div style="text-align: center;">Fig. 3. Visualization of our elevated structures classification. (a) Height histogram. (b) Labeling of the 3D points according to the different height bands (green - ground plane band, red - object band, yellow - free space band, blue - elevated structure band). (c) Final classification result of points into three classes.</div>

ROS 已在我们课题组的网页上公开发布（<http://www.vision.rwth-aachen.de/software>）。

### 四、ROI 处理

### A. 点云标注

针对机器人领域的静态障碍物检测，目前已有多种方法被提出[^22]，[^23]，这类方法将一个时间窗口内来自3D传感器的点云进行融合，再将融合后的3D点投影到地平面上，构建得到占据图。我们可以通过动态规划从占据图中计算出机器人可通行的自由空间。本文采用类似的思路，利用视觉里程计估计得到的相机运动，在参考坐标系中融合点云（也可使用机器人里程计）。融合后的3D点会被分割为三个不同类别：目标、地平面和固定结构。得到该分割结果后，我们可以在提取ROI之前剔除固定结构上的3D点，这能够减少商场橱窗反光场景中常见的行人误检测问题。

在分类步骤之前，我们首先需要得到准确的地平面估计。为此，我们先基于采集车辆的相机高度得到地平面的粗略估计，再将高度范围在2米以内的所有3D点投影到该粗略估计面上，从融合点云计算得到占据图。剔除高密度栅格内的3D点后，剩余点中的大部分都属于真实地平面上的点，我们再使用RANSAC算法进行平面拟合，得到最终的地平面估计[^24]。

分类流程如图3所示。输入点云在5-10帧的时间范围内进行融合，累积得到的3D点被投影到2D地平面占用直方图中。对于2D直方图的每个网格单元，我们根据对应点计算得到一个高度直方图。该高度直方图分为四个高度带：地平面带、目标带、自由通道带和高架结构带，如图3(b)所示。自由空间通道对分类性能有显著影响。对高架结构进行分类最简单的方法，是将高架结构带中点密度较高的网格单元内的点标记为固定目标。但在商业街场景中，这种方法常会因为建筑悬挑部分导致目标错标。引入自由空间通道后，我们假设在行人头部与

![Image](images/ccb3270969db7bbee91f771c309f7348a906bbeefb23c1699cbbe87ff20792d5.jpg)

![Image](images/346166ed0630b911412bba878e84c331bc4fd8db9d86194048874b686ea5fb45.jpg)

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

![Image](images/f6f30fee1a2de63d0abf627d2502a5da5c3ecf5c70e6e1430b12e55cbbb163d4.jpg)

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

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

![Image](images/8859889ab38a1fd1459a8ea32bfec6c86e0ae0a0f8e31be56e77654c422106fc.jpg)

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

<div style="text-align: center;">Fig. 4. Visualization of our stereo ROI extraction and segmentation procedure. (a) Original image. (b) Projection onto ground plane of the five persons. In the upper right corner is the corresponding connected component of the histogram. (c) Segmentation of the ROI into individual object clusters using the Quick Shift algorithm [^25]. (d) Corresponding point cloud segmentation projected back into the image.</div>

建筑物或树木的悬挑部分之间始终存在一段自由空间（高度为2m-2.3m）。这意味着，如果2D直方图中某个网格单元的自由空间通道点密度较低（低于融合帧数），则该网格中目标带的点会被标记为目标，自由空间网格和高架网格内的点会被标记为固定结构。尽管我们将第三个带称为自由空间带，意味着该带本应没有点，但我们仍假设，由于深度输入和视觉里程计输入存在噪声，仍然会有部分点落入该区域内。对于自由空间通道带点密度较高（点数高于融合帧数）的网格单元，其内所有点都被标记为固定结构类别。最终得到的点分类结果如图3(c)所示。可以看到，我们对所有三个类别的标记都准确无误。被标记为固定结构的3D点会被排除在后续处理之外。

### B. ROI 提取

遵循[^15]、[^14]、[^17]提出的方法，我们将所有标记为目标的三维点投影到地平面上。我们将这些点收集到二维直方图中，并根据它们到相机的二次距离对其加权，以补偿下述情况：距离更远的目标包含的点数量更少，因此会在后续处理步骤中被剔除。直方图的网格单元（图4(b)）首先使用高斯滤波器平滑（x方向为$\sigma = 2.0$，z方向为$\sigma = 3.0$），随后进行阈值处理，去除噪声产生的无关区域。阈值处理后剩余的网格单元通过8邻域法分组为连通分量。对于三维空间中的每个ROI，我们在ROI的质心处构建一个矩形：矩形宽度等于ROI宽度，高度等于对应网格单元范围内最高点的高度，方向平行于相机平面。将该矩形投影到图像上，即可得到可供检测器后续评估的对应图像区域。我们已在之前的工作[^17]中成功应用了该ROI提取机制，通过限制搜索空间不仅降低了检测器的计算量，还减少了误报的数量。

---

### C. ROI 分割

从图4(b)中可以看出，近距离相邻行走的行人在地面投影中通常会融合为一个连通分量。这意味着，在应用我们的上半身检测器时，我们需要对模板进行重新缩放，以补偿行人不同尺寸带来的影响。由于多尺度方法会在真实正确检测结果的周围得到多个来自相邻尺度的检测结果，因此使用多尺度方法时需要采用非极大值抑制流程。为了避免重新缩放，我们提出改用原始直方图的平滑版本，将连通分量进一步分割为不同的区域（参见图4(c)）。我们采用Quick Shift算法进行分割 [^25]，该算法是Mean-Shift [^26]的快速变体。Quick Shift通过将每个点 $P(x)$移动到密度值更高的最近邻点 $x_i$，来找到密度 $y_i$的众数。其形式化定义如下：

 $$ y_{i}=\underset{j:P_{j}>P_{i}}{\operatorname{a r g m i n}}d(x_{i},x_{j}),\quad P_{i}=\frac{1}{N}\sum_{j=1}^{N}\theta(d(x_{i},x_{j})) $$

其中 $P_i$是带核函数 $x_i$时点 $\theta$的密度估计，$d(x_i, x_j)$是点 $x_i$和点 $x_j$之间的距离。我们对地面投影直方图中的每个点启动Quick Shift，将每个点链接到其对应密度最高的邻点，直到到达一个众数。通往该众数路径上的所有点都会自动关联到该众数。如图4(c)所示，Quick Shift流程将ROIs分割为单个目标，图4(d)展示了对应的分割后点云。

### 五、行人检测

### A. 基于深度的上半身检测器（近距离）

近距离行人检测模块基于我们提出的基于深度的上半身检测器[^17]，我们通过引入多项新颖扩展对该检测器进行了大幅改进。在介绍这些扩展之前，我们先简要回顾原检测器的核心思路（参见图5）。该检测器的核心是归一化深度模板，该模板由标注结果对边界框内容取平均生成。在每一帧中，该模板会在感兴趣区域（ROI）上滑动，并通过欧氏距离与覆盖区域进行比对。初始模板尺度根据二维ROI的高度估算，该高度由人群中身高最高的行人决定。由于ROI可能包含多名距离相近的行人，因此模板会重新缩放以适配不同身高的行人。通过这种多尺度处理流程，实际行人位置周围会生成多个阳性检测结果，随后通过非极大值抑制（NMS）流程剪枝得到最终检测结果。

原检测器所采用的滑动窗口流程仍然需要在大量候选子窗口上评估分类函数。一种可能的提速方式是增大位置步长，这会减少分类器评估的次数，但会导致目标定位不精确，还会增加错误

![Image](images/ebe5ffeae8f75be25221284fdff1116c6171c23e1d525ea7824ce84291401727.jpg)

![Image](images/187417ba4931b395121d5a87d46346c373e53bb9eadd7119d7effa344d79512b.jpg)

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

![Image](images/84febe7a7dc4e623c045b70eac5067ca28767eef2d5c9babd3d7f46c9a5d417a.jpg)

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

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

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

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

<div style="text-align: center;">Fig. 6. Overview of the contour based approach for upper body detection using local maxima. (a) Original image. (b) Corresponding depth image crop. (c) Resulting contour with the extracted local maxima. (d) Resulting detections.</div>

缺点。相反，我们仅将模板评估限定在轮廓的局部最大值处，这些局部最大值从图6(c)所示的对应ROI中提取。轮廓由每个x位置处的最大y值表示，该值从ROI对应的深度图像中提取（参见图6(b)）。为了减少深度图像中由噪声产生的多余局部最大值，我们在提取最大值前先使用高斯平滑轮廓。从图6(c)可以看出，提取出的局部最大值并不对应人头中心的准确位置。因此，对于每个尺度，深度模板不仅会在局部最大值处进行评估，也会在局部最大值周围的一定邻域内进行评估。我们的实验表明，加入局部最大值扩展后，该方法的性能显著优于原始检测器。此外，它还将计算时间从30ms缩短至24ms（$\approx$ 在Intel i7-3630QM单CPU、12GB RAM配置下可达41fps），耗时包含ROI候选生成、目标检测和跟踪全过程。

如前所述，利用提取的ROI深度图像中的局部最大值寻找行人的正确尺度需要对模板进行重缩放。但经过ROI分割后，得到的每个ROI仅包含一个行人，这使得我们可以固定模板的尺度，仅需应用一次模板。因此，将局部最大值与ROI分割相结合，我们得到的检测性能优于在原始ROI上使用局部最大值的方法，同时还进一步将每帧计算时间从24ms缩短至23ms（ $\approx$ 43fps）。

### B. Ground HOG（远距离）

对于远距离行人检测器，我们采用了由[^6]提出的基于GPU的全身HOG检测器。与[^2]最初提出的经典滑动窗口HOG检测器不同，[^6]利用估计得到的场景几何信息来限制检测器的搜索空间。假设行人站立在地面平面上，且身高范围为$\in [s_{min}, s_{max}]$（参见图7(a)），[^6]推导得到了每个检测器尺度下需要评估的最小像素范围的闭式表达式，仅返回几何有效的检测结果（参见图7(b-c)）。由于ROI可以在每个图像尺度下非常高效地计算得到，且它们能大幅减少

---

![Image](images/f1b2c51efb2349b805c514bb18e5495740e29373afe072f6f963fa9f78ad1cc9.jpg)

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

![Image](images/abcb15b9bb356885d001017a3739a4d5f71f0d3e9d483cf9252fdedf1a85ceb6.jpg)

![Image](images/67d02fb17cf80cb7688f9995846b158bc24cbc4b4c8fd3eea05298865c9a9f4b.jpg)

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

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

![Image](images/23adb58237ba9fafce6b806deb368192c08d6dc5fcbfb504eafef76cac0dcb6c.jpg)

<div style="text-align: center;">Fig. 5. Depth based detection pipeline. (a) Backprojected 3D ROI. (b) Apply depth template in sliding window manner. (c) Corresponding distance matrix. (d) Final detections after Non-Maximum-Suppression.</div>

![Image](images/f0bb862277874c19543c8a0fa7ae065ee3b6b9765d5c79519530fe4c9f188c62.jpg)

![Image](images/aa8f230f400d0bb634887a29e67beec0a78d810d26649bdea4767f23da70b552.jpg)

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

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

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

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

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

<div style="text-align: center;">Fig. 7. Visualization of the groundHOG approach. (a) By assuming that pedestrians stand on a ground plane and have a known height range, groundHOG derives a closed-form expression for the minimal search corridors at each detection scale that can contain geometrically valid detections (b-c).</div>

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

![Image](images/fade53134e340220479b7f2a18f7146f4d405416cd2df386959be68ac51d55d7.jpg)

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

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

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

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

<div style="text-align: center;">Fig. 8. Multi-hypothesis tracking pipeline. (a) Object detections coming from the upper body detector (b) Hypothesis Generation process where the detections are linked together using a bi-directional Extended Kalman Filter under constraints of motion and appearance. (c) Hypothesis Selection.</div>

需要执行特征计算的图像空间，相比经典滑动窗口方法，我们获得了2-4倍的加速（在所有代码级优化的基础上）。具体来说，在我们的游戏笔记本上，处理所有尺度的运行时间为40ms（25fps）。但由于在我们的完整系统中，基于深度的上半身检测器已经对近距离行人（最远7米距离）实现了出色的性能，因此我们仅对从7米开始的更远距离应用groundHOG。这意味着我们大幅减少了需要评估的尺度数量，进一步将GPU上的计算量降低到每帧30ms（33fps）。

### 六、行人跟踪

在跟踪组件中，我们将一组轨迹与由我们的上半身检测器和groundHOG检测得到的三维行人位置进行拟合。目标是选出能够最佳解释观测证据的轨迹假设子集。我们采用了由[^27]提出的鲁棒多人跟踪框架的扩展版本。简而言之，该跟踪框架执行以下两个步骤：首先通过轨迹生长生成候选轨迹（使用双向EKF将新检测结果关联到现有时空轨迹）（参见图8(b)），此外还为每个新检测结果反向时间起始新轨迹，以便根据新证据恢复之前丢失的轨迹。在两种情况下，EKF都由特定于行人的运动和外观模型引导（恒定-

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td colspan="2">Average run-time in ms</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Visual Odometry</td><td style='text-align: center; word-wrap: break-word;'>15</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>ROI processing</td><td style='text-align: center; word-wrap: break-word;'>10</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ground plane estimation</td><td style='text-align: center; word-wrap: break-word;'>4</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Upper-body detector</td><td style='text-align: center; word-wrap: break-word;'>7</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>groundHOG - GPU</td><td style='text-align: center; word-wrap: break-word;'>14</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Multi-hypothesis tracker</td><td style='text-align: center; word-wrap: break-word;'>6</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Total w/o groundHOG</td><td style='text-align: center; word-wrap: break-word;'>42</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Total w/ groundHOG</td><td style='text-align: center; word-wrap: break-word;'>56</td></tr></table>

<div style="text-align: center;">TABLE I</div>

速度）。轨迹生长过程会生成过完备的轨迹集合，随后通过假设选择将其剪枝为最优子集。在这一步中，我们采用了[^27]提出的MDL模型选择框架，该问题最终等价于求解一个二次布尔问题。正如我们的实验所示，该跟踪框架通过过滤掉误检，并利用EKF插值补偿漏检，大幅提升了检测性能。

### 七、实验结果

我们针对三种不同相机设置采集的三个不同序列给出了详细的实验评估结果。

### A. 数据集

第一个数据集是来自苏黎世移动行人语料库的SUNNY DAY序列 [^22]，该序列于户外采集，由安装在婴儿推车上的立体设备（帧率14fps，分辨率为$640\times480$）在繁忙的市中心步行区移动拍摄得到。SUNNY DAY共包含999帧，其中354帧为行人标注了共1867个边界框。第二个数据集由Bumblebee2头戴式相机装置采集，在[^17]中被命名为HEAD MOUNTED CAMERA数据集。图像以15fps的帧率在步行购物区拍摄，其评估集包含2543帧，共有19461个行人标注。该数据集的难点在于，图像边缘处的严重遮挡导致许多行人仅部分可见。除了这两个现有数据集，我们还提供了一个包含三个序列的新数据集（总计604帧），所有序列均采集自我校建筑入口大厅的室内环境。三个序列全部使用华硕Xtion RGB-D传感器录制，其中两个由固定装置采集，包含大量从镜头前经过的行人；第三个序列再次采用[^17]中所述的头盔装置采集，由佩戴头盔的人员步行移动拍摄。

---

![Image](images/b607e587091a37c446b950b51803569ea32d297da1b203d0dbe9c4047a22a539.jpg)

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

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

![Image](images/dafe5bc5f16d7eb5f70cb0e6e0b3d9e4221aa291712fc9c92a4d0347e7ec278c.jpg)

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

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

<div style="text-align: center;">Fig. 9. Quantitative detection performance in recall vs. (fppi) on our HEAD MOUNTED CAMERA dataset presented in [^17]. (a) Depth based upper detector [^17] vs. local maxima extension. (b) local maxima extension vs. combination of local maxima and ROI segmentation. (c) Comparing results of local maxima, combination of local maxima and groundHOG, and groundHOG.</div>

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

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

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

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

![Image](images/039fdfff22efde5ae8888784743282fa2b25c04b1b5d4c2b79c0c1ec1cbd3a17.jpg)

<div style="text-align: center;">Fig. 10. Quantitative detection performance in recall vs. (fppi) on three sequences of our new ENTRANCE HALL dataset. In all the sequences we compare the performance of only using groundHOG (for all scales), with the performance when using only our upper body detector and then also combination of both.</div>

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

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

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

![Image](images/52879b6d5248d8d21ff8a747616a070ce94076adf6a73a15176d329aba475d87.jpg)

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

<div style="text-align: center;">Fig. 11. (a) Quantitative detection performance in recall vs. (fppi) on the SUNNY DAY sequence. (b) Illustration of typical failure cases of our approach: (top) false positives due to similar-looking background structures; (bottom) missing detection due to incomplete depth information outside the Asus Xtion sensing range.</div>

画面中包含成群的行人。在全部三个序列中，我们沿用前述两个数据集的标注方式，共为2280名行人标注了边界框。

### B. 评估

为开展定量评估，我们在每一帧中计算检测得到的bounding box与标注bounding box的重叠度，并绘制召回率随每幅图像误检数变化的曲线。图10展示了我们新的ENTRANCE HALL数据集三个序列的性能。图10(a)为第一个序列的性能，该序列包含距离相机较近（最远4米）的行人。由于深度传感器在近距离范围内可输出良好的深度数据，我们的上半身检测器取得了出色性能：在仅为0.4的极低fppi率下，召回率就达到了96%。但groundHOG的性能明显差得多，这很容易理解，因为它是作为全身行人检测器训练的，无法检测大多数距离相机较近的行人。当我们观察图10(b)的曲线时，情况发生了改变：该图展示的是ENTRANCE数据集第二个序列的性能，该序列中所有行人都完全可见，且多数行人距离相机超过6米。因此groundHOG的性能显著优于我们的上半身检测器，原因在于对于大多数行人

---

我们无法从深度传感器获得任何深度信息。但如果将我们的上半身检测器与groundHOG结合（5米以内使用上半身检测器，5-15米使用groundHOG），我们得到的性能会显著优于单独使用groundHOG（例如，在fppi为0.5时，召回率高出9%）。最后，在第三个序列中，三种组合的性能相近（参见图10(c)），这可以用以下事实解释：该序列中的所有行人都完全可见，且仍然处于深度传感器能够提供深度信息的距离范围内。

在图9(a-b)中，我们评估了对原始基于深度的上半身检测器[^17]（图中标注为上半身深度检测器）提出的扩展方案的效果。如图9(a)所示，添加局部极大值滤波步骤显著提升了所有距离范围的检测性能。在原始方法中，当深度模板在全部提取出的ROI上滑动时会产生若干假阳性结果，而将评估限制在局部极大值范围内即可避免这类问题。类似地，添加ROI分割步骤后我们获得了额外的性能提升（参见图9(b)），该步骤有助于将人群分割为对应单个行人的ROI。图9(c)的结果也印证了我们在ENTRANCE HALL数据集评估中得到的结论：将近距离上半身检测器与针对远距离的groundHOG结合后，检测性能得到了显著提升。HEAD CAMERA数据集包含许多被图像边界遮挡的行人，这也解释了为何groundHOG在此数据集上表现不佳，而上半身检测器的表现则要好得多。通过结合两种检测器，我们可以将性能进一步提升10%以上。

最后，我们在图11中展示了SUNNY DAY序列的评估结果。在该序列中，大多数行人完全可见，且所有行人都已完成标注。我们在整个距离范围内同时运行了groundHOG检测器和我们提出的上半身检测器。一个值得注意的观察结果是，即使在远距离区域，我们的上半身检测器性能也显著优于groundHOG。这一现象可以由不同的传感器设置解释：立体相机之间的基线为40cm，该设置使得最远20m距离的深度测量都更为精确。此外，我们给出了添加跟踪组件后的性能表现（检测输入来自带有局部极大值滤波的上半身检测器），该组件通过过滤误报结果并在检测失败时对轨迹进行插值，进一步提升了整体性能。与已发表的基准方法[^14]、[^15]、[^28]的对比表明，我们的方法达到了当前最优的跟踪性能。图12展示了来自不同数据集的部分定性检测与跟踪结果，部分失败案例如图11(b)所示。

### C. 计算性能

我们当前完整系统，包含ROI处理（结构标注与地平面估计）、视觉里程计、上半身目标检测与跟踪，运行帧率为24fps，接近华硕Xtion RGBD传感器输出的帧率。该性能是在搭载Intel i7-3630QM处理器、12GB RAM、NVIDIA GeForce GT650m显卡的游戏笔记本上，使用我们的ENTRANCE HALL数据集测得的。加入基于GPU的groundHOG检测器后，整体帧率降至18fps，但我们也可以对远距离范围的行人进行检测与跟踪，而上半身检测器会因缺少深度信息无法在该区域工作。表I列出了我们完整系统各单独组件的运行耗时。视觉里程计部分我们采用了[^29]提出的基于RGB-D的方法。

### 八、结论

本文提出了一种完全集成的实时检测与跟踪系统，可达到当前最优性能。该集成方案的核心思路是最大程度利用现有立体传感器和RGB-D传感器可直接获取的深度信息，以此简化检测流程、提升检测速度。为此，我们提出了一种运行于ROI之上、基于深度的超快速上半身检测器。与以往方法相比，我们对ROI处理流水线提出了多项扩展，实验证明这些扩展可同时提升运行效率与检测性能。通过将基于外观的全身检测器与上半身检测器结合——前者在更远距离范围的表现显著更优——我们将跟踪系统的空间作用半径提升至最远15米，使该系统适用于多种移动机器人任务。

致谢：本研究得到欧洲研究理事会（ERC）启动基金项目CV-SUPER（ERC-2012-StG-307432），以及欧盟项目STRANDS（ICT-2011-600623）和SPENCER（ICT-2011-600877）的部分资助。

## 参考文献

[^1]: R. Kuemmerle, M. Ruhnke, B. Steder, C. Stachniss, and W. Burgard, "A Navigation System for Robots Operating in Crowded Urban Environments," in ICRA, 2013.

[^2]: N. Dalal and B. Triggs, "Histograms of oriented gradients for human detection," in CVPR, 2005.

[^3]: P. Felzenszwalb, B. Girshick, D. McAllester, and D. Ramanan, "Object Detection with Discriminatively Trained Part-Based Models," PAMI, vol. 32, no. 9, 2010.

[^4]: R. Benenson, M. Mathias, R. Timofte, and L. V. Gool, “Pedestrian Detection at 100 Frames per Second,” in CVPR, 2012.

[^5]: V. Prisacariu and I. Reid, “fastHOG – a Real-Time GPU Implementation of HOG,” Technical Report 2310/09, Dept. of Engineering Science, University of Oxford, 2009.

[^6]: P. Sudowe and B. Leibe, “Efficient Use of Geometric Constraints for Sliding-Window Object Detection in Video,” in ICVS, 2011.

[^7]: W. Choi, C. Pantofaru, and S. Savarese, “A General Framework for Tracking Multiple People from a Moving Camera,” PAMI, 2013.

[^8]: A. Ess, B. Leibe, K. Schindler, and L. V. Gool, “Object Detection and Tracking for Autonomous Navigation in Dynamic Environments,” IJRR, vol. 29, no. 14, 2010.

[^9]: H. Cho, P. Rybski, A. Bar-Hillel, and W. Zhang, “Real-time Pedestrian Detection with Deformable Part Models,” in Intel. Vehicles Symp., 2012.

[^10]: C. Wojek, S. Walk, S. Roth, and B. Schiele, “Monocular 3D Scene Understanding with Explicit Occlusion Reasoning,” in CVPR, 2011.

[^11]: M. Enzweiler, A. Eigenstetter, B. Schiele, and D. M. Gavrila, “Multi-Cue Pedestrian Classification with Partial Occlusion Handling,” in CVPR, 2010.

[^12]: X. Wang, T. X. Han, and S. Yan, “An HOG-LBP Human Detector with Partial Occlusion Handling,” in ICCV, 2009.


## [^13]: D. Park, D. Ramanan, and C. Fowlkes, “Multiresolution models for object detection,” in ECCV, 2010.


---

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

<div style="text-align: center;">Fig. 12. Experimental results showing detection results for SUNNY DAY (1st row), ENTRANCE HALL (2nd row) and HEAD CAMERA (3rd row). In the last row, we show tracking results on the ENTRANCE HALL dataset.</div>

[^14]: M. Bansal, S. H. Jung, B. Matei, J. Eledath, and H. S. Sawhney, "A Real-time Pedestrian Detection System based on Structure and Appearance Classification," in ICRA, 2010.

[^15]: M. Bajracharya, B. Moghaddam, A. Howard, S. Brennan, and L. Matthies, “A Fast Stereo-based System for Detecting and Tracking Pedestrians from a Moving Vehicle,” IJRS, vol. 28, no. 11-12, 2009.

[^16]: D. Gavrila and S. Munder, “Multi-Cue Pedestrian Detection and Tracking from a Moving Vehicle,” IJCV, vol. 73, no. 1, 2007.

[^17]: D. Mitzel and B. Leibe, “Close-Range Human Detection for Head-Mounted Cameras,” in BMVC, 2012.

[^18]: M. Enzweiler, P. Kanter, and D. Gavrila, “Monocular Pedestrian Recognition Using Motion Parallax,” in Intel. Vehicles Symp., 2008.

[^19]: D. Geronimo, A. Sappa, D. Ponsa, and A. Lopez, “2D-3D-based On-Board Pedestrian Detection System,” CVIU, vol. 114, 2010.

[^20]: D. Hoiem, A. Efros, and M. Hebert, "Putting Objects Into Perspective," in CVPR, 2006.

[^22]: A. Ess, K. Schindler, B. Leibe, and L. Van Gool, “Improved Multi-Person Tracking with Active Occlusion Handling,” in ICRA, 2009.

[^21]: L. Spinello and K. O. Arras, “People Detection in RGB-D Data,” in IROS, 2011.

[^23]: H. Badino, U. Franke, and R. Mester, “Free Space Computation using Stochastic Occupancy Grids and Dynamic Programming,” in ICCV Workshop on Dynamical Vision, 2007.

[^24]: M. A. Fischler and R. C. Bolles, “Random sample consensus: a paradigm for model fitting with applications to image analysis and automated cartography,” Commun. ACM, vol. 24, no. 6, 1981.

[^25]: A. Vedaldi and S. Soatto, "Quick Shift and Kernel Methods for Mode Seeking," in ECCV, 2008.

[^26]: K. Fukunaga and L. Hostetler, “The Estimation of the Gradient of a Density Function, with Applications in Pattern Recognition,” IEEE Transactions on Information Theory, vol. 21, no. 1, 1975.

[^27]: B. Leibe, K. Schindler, and L. Van Gool, “Coupled Object Detection and Tracking from Static Cameras and Moving Vehicles,” PAMI, vol. 30, no. 10, 2008.

[^28]: D. Mitzel, E. Horbert, A. Ess, and B. Leibe, “Multi-person tracking with sparse detection and continuous segmentation,” in ECCV, 2010.

[^29]: A. S. Huang, A. Bachrach, P. Henry, M. Krainin, D. Maturana, D. Fox, and N. Roy, “Visual odometry and mapping for autonomous flight using an rgb-d camera,” in ISRR, 2011.
