
# 基于Ω形特征的快速鲁棒人体检测与跟踪

李敏、张兆祥、黄凯奇、谭铁牛

模式识别国家重点实验室，

中国科学院自动化研究所

{mli, zxzhang, kqhuang, tnt}@nlpr.ia.ac.cn

## 摘要

本文提出了一种基于人体头肩部Ω形特征的快速鲁棒人体检测与跟踪新方法。该方法包含两个模块：第一个模块结合Viola-Jones型分类器与基于局部HOG（方向梯度直方图）特征的AdaBoost分类器，可快速有效地完成头肩检测；第二个模块中，每个检测到的头肩目标由粒子滤波跟踪器跟踪，该跟踪器使用局部HOG特征对目标外观建模，在人群拥挤、背景干扰和部分遮挡场景下均表现出出色的鲁棒性。实验结果证明了本文所提方法的有效性与高效性。

索引词——头肩检测、跟踪、HOG

### 1. 引言

人体检测与跟踪可广泛应用于诸多领域，包括公共场景中的人数统计与安全监控。然而，全身人体检测[^1]通常会受到个体间遮挡问题的困扰，且在很多场景中人员并不一定处于站立姿态。因此，近年来许多研究转而聚焦于人体上半部分。

目前已有大量基于头部的人体检测与跟踪研究工作。在[^2]中，研究者通过对运动区域进行轮廓分割和椭圆拟合检测头部，再使用粒子滤波跟踪器对每个检测到的头部进行跟踪。在[^3]中，通过快速霍夫变换和形状匹配定位头部，再采用分散式跟踪器完成跟踪。Qu等人[^4]提出了一个将头部检测与粒子滤波相结合的自动系统，可实现实时多头部跟踪。然而，这些方法存在一定局限性：在监控场景中头部通常尺寸过小难以检测，且不同发型会导致头部形状差异很大。

如图1所示，几乎在所有视角下头肩部分都具有独特的类Ω形状，因此部分研究者聚焦于基于头肩的人体检测与跟踪。Wu等人[^5]提出了一种基于边缘特征的头肩检测方法，通过对检测结果进行数据关联实现跟踪。但这种基于检测的跟踪方法非常耗时。在[^6]中，研究者提出了一种基于提升局部HOG特征的有效头肩检测方法，该方法在拥挤场景中表现良好，但处理一张$320 \times 240$图像需要数秒，对于实际应用来说速度过慢。

![Image](images/95ab6cb8e10105b59430a7b5b2229b8cd92c3b3a73e7dbd8350d940154b48e3b.jpg)

#### 图 1. 头肩样本及其类Ω形状

本文提出了一种新颖的快速鲁棒基于头肩的人体检测与跟踪方法。首先，基于[^6]中的研究工作，我们采用结合了Viola-Jones型分类器与基于HOG特征的Ad-aBoost分类器的快速检测模块，在预定义的"入口"区域中快速检测头肩区域。随后，每个检测到的头肩都由粒子滤波器跟踪器进行跟踪，该跟踪器使用局部HOG特征对目标外观建模，在人群拥挤、背景干扰和部分遮挡的场景中均表现出优异的鲁棒性。

本文其余部分结构安排如下：第2节介绍快速头肩检测方法，第3节阐述粒子滤波器跟踪器跟踪每个头肩的具体细节，第4节给出实验结果与分析，最后第5节总结全文。

### 2. 头肩检测

It is known that Haar feature based Viola-Jones type classifier can work very fast [^7], but has poor classification performance [^6] in head-shoulder detection. On the contrary, HOG feature based Adaboost classifier has much better performance [^6], but works very slowly. Thus, as shown in Fig. 2, we introduce a detection strategy which can tremendously increase the working speed of the head-shoulder detector proposed by [^6] while keeping its classification performance. First, a Viola-Jones type classifier [^7] with very high detection rate (nearly

---

98%）但误报率也相对较高（每窗口误报超过2%）的Viola-Jones型分类器，快速排除明显不是头肩的图像块。随后，剩余的少量候选图像块由分类性能更优的基于局部HOG特征的AdaBoost分类器进行分类。最终通过对每个目标周围的正窗口取平均得到检测结果。

![Image](images/d40c20e74fd7f2b7c4f75e861215d8ce8aeb44e9d18844935c2d9bfa308d0146.jpg)

<div style="text-align: center;">Fig. 2. The flowchart of our head-shoulder detection module</div>

Viola-Jones级联分类器的训练细节可参见[^7]。图3展示了局部HOG特征的提取流程：1）将每个样本划分为64个单元；2）每4个相邻单元组成一个块，块步长为1个单元（共49个块）；3）对每个块中的每个单元，计算8个梯度方向区间的直方图（见$0^{\circ}-360^{\circ}$），并在块内进行归一化处理。基于局部HOG特征的Adaboost分类器的训练细节可参见[^6]。

![Image](images/94c84bea0862641cdfb39a331a89b9678024eb98971b031e1cff5023fe7e972d.jpg)

<div style="text-align: center;">Fig. 3. Illustration of local HOG feature extraction</div>

### 3. 基于粒子滤波的视觉跟踪

每个检测到的头肩的跟踪问题可以转化为隐状态变量马尔可夫模型中的推理任务。状态变量$X_t$描述了t时刻跟踪目标的运动参数。给定一组观测值$\mathcal{O}_t = \{O_1, O_2, ..., O_t\}$，根据贝叶斯定理，后验概率可表示为[^8]：

 $$ p(X_{t}|\mathcal{O}_{t})\propto p(\mathcal{O}_{t}|X_{t})\int p(X_{t}|X_{t-1})p(X_{t-1}|\mathcal{O}_{t-1})d X_{t-1} $$

跟踪过程由观测模型$p(O_t|X_t)$和两个状态之间的动态模型$p(X_t|X_{t-1})$共同决定。本文采用采样重要性重采样（SIR）[^8]粒子滤波来近似目标位置的分布。

#### 3.1. 动态模型

状态变量由三个运动参数组成：$X_t = \{x_t, y_t, s_t\}$，其中$x_t, y_t, s_t$分别表示t时刻的x平移、y平移和尺度。我们采用带有高斯噪声模型的自适应速度来描述动力学模型：$X_t = X_{t-1} + v_t + \omega$，其中$v_t$是目标在最近$N_v$帧中的平均速度，$\omega \sim N(0, \Sigma)$是高斯噪声。

#### 3.2 观测模型

观测模型$p(O_t|X_t)$衡量采样观测属于被跟踪目标模型的概率，通常它包含三个重要部分：目标表示、距离度量和模型更新。

目标表示：指如何对采样块的外观进行建模。在本文工作中，对于由$I_{t}$确定的图像块$X_{t}$，我们从该块中提取局部HOG特征，并用其对外观建模（$O_{t}$）。

距离度量：指如何计算新观测与目标模型之间的距离。假设t时刻的目标模型为$\hat{O}_{t}$，t时刻任意给定采样（候选目标）的观测为$O_{t}$，我们使用Bhattacharyya系数[^9]衡量两个特征向量之间的相似度，如下所示：

 $$ S(O_{t},\hat{O}_{t})=\sum_{u=1}^{m}\sqrt{\hat{O}_{t}^{u}O_{t}^{u}} $$

式(2)的几何意义是m维单位向量$(\sqrt{\hat{O}_{t}^{1}}, \ldots, \sqrt{\hat{O}_{t}^{m}})^{\top}$与$(\sqrt{O_{t}^{1}}, \ldots, \sqrt{O_{t}^{m}})^{\top}$之间夹角的余弦值。

利用式(2)，任意给定观测$O_t$与目标模型$\hat{O}_t$之间的距离可以定义为：$d(O_t, \hat{O}_t) = \sqrt{1 - S(O_t, \hat{O}_t)}$。因此，观测模型$p(O_t | X_t)$可表示为：

 $$ p(O_{t}|X_{t})\propto e x p(-d(O_{t},\hat{O}_{t})). $$

模型更新：为了稳健跟踪目标，目标模型$\hat{O}_t$需要随时间更新以适应外观变化。设$\{X_t^{(i)},\omega_t^{(i)}\}_{i=1}^{N_s}$为t时刻的粒子集合，其中权重$\omega_t^{(i)}$基于观测模型计算得到：$\omega_t^{(i)} = p(O_t^{(i)}|X_t^{(i)})$。我们通过权重最高的采样估计t时刻的目标状态：$\hat{X}_t = X_t^{(j)}|_{\omega_t^{(j)}=max(\omega_t)}$。随后，目标模型按如下方式更新：

 $$ \hat{O}_{t+1}=\beta\hat{O}_{t}+(1-\beta)O(\hat{X}_{t}) $$

其中$\beta$为遗忘因子。

### 4. 实验结果

本节共开展了三组实验。每个测试视频的分辨率为$320 \times 240$。粒子数量

---

 $N_s$和每个跟踪器的遗忘因子$\beta$分别设置为150和0.99。所有程序均采用C++实现，在搭载P4 2.5 GHz CPU的计算机上运行。

第一组实验中，我们在[^6]提供的公开头肩数据集上，对比了本文头肩检测器与[^6]提出的检测器的性能。为简便起见，我们将本文检测器称为“VJ+HOG”检测器，将[^6]的检测器称为“HOG”检测器。两种检测器的ROC曲线如图5所示。可以看出，“VJ+HOG”检测器的分类性能与“HOG”检测器几乎相当，但“VJ+HOG”检测器的运行速度远快于“HOG”检测器。如表1所示，对一张$320 \times 240$分辨率的图像进行密集扫描（25000个子窗口）时，“HOG”检测器耗时8600ms，而“VJ+HOG”检测器仅耗时290ms；进行稀疏扫描（2500个子窗口）时，二者耗时分别为840ms和40ms。图6展示了本文最终检测器在部分照片中的一些检测结果。

![Image](images/abd11bb77a02961a5069e28024fda05b900fc3bf498fc31a744be5d4f81e7ef7.jpg)

<div style="text-align: center;">Fig. 5. Classification performance comparison of the "VJ+HOG" detector and the "HOG" detector</div>

<div style="text-align: center;">Table 1. Time consuming on a 320 × 240 image</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Detector Type</td><td style='text-align: center; word-wrap: break-word;'>Dense Scan</td><td style='text-align: center; word-wrap: break-word;'>Sparse Scan</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>&quot;HOG&quot;</td><td style='text-align: center; word-wrap: break-word;'>8,600 ms</td><td style='text-align: center; word-wrap: break-word;'>840 ms</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>&quot;VJ+HOG&quot;</td><td style='text-align: center; word-wrap: break-word;'>290 ms</td><td style='text-align: center; word-wrap: break-word;'>40 ms</td></tr></table>

![Image](images/320c787ece1b7c7dfa6415af23b6184431c3d75c52c9d1ba9becf4f74fabe503.jpg)

<div style="text-align: center;">Fig. 6. Some detection results of our final detector</div>

在第二个实验中，我们旨在独立评估基于局部HOG特征的粒子滤波跟踪器的性能。由于人群拥挤和遮挡是实际应用中导致跟踪失败最常见的两个因素，我们采用一段（如图4所示）人物在极度拥挤场景中行走且偶尔发生遮挡的序列来测试我们的跟踪器。作为对比，我们还给出了基于均值漂移的跟踪算法[^10]的结果。该方法将特征评价机制嵌入均值漂移跟踪系统，自适应选择排名靠前的颜色特征进行跟踪，对遮挡具有鲁棒性，且在一定程度上可抵抗干扰物的影响，我们将其称为OFS（在线特征选择）方法。如图4所示，基于颜色特征的OFS方法在第127帧之前就已经无法在拥挤场景中跟踪目标，而我们的跟踪器即使在出现遮挡的情况下（#245、#274），仍然能够始终正确跟踪目标直至测试序列结束。这是因为在存在大量干扰物的拥挤场景中，颜色特征往往不具备区分度。而局部HOG特征可以捕捉到独特的几何结构，因此在拥挤场景的头肩跟踪中表现更优。

![Image](images/803e741eb9d6de797234e301c005fec1f54dff2257c0fd273cb930e8b35573c5.jpg)

![Image](images/2190cfc6f778ad7874a072a0773a3943c4a78dd604e239da1cccc76ff60b1268.jpg)

![Image](images/66076666e6e95305048f9432382b109fec02b8ccbfb1040561a3ea47435da652.jpg)

<div style="text-align: center;">Fig. 7. Detection and tracking results of our method in a video from a real surveillance scene (the big yellow rectangles in each sub figure are the "Entrance" zones)</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Module</td><td style='text-align: center; word-wrap: break-word;'>Time</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Detection</td><td style='text-align: center; word-wrap: break-word;'>15ms</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Tracking</td><td style='text-align: center; word-wrap: break-word;'>27ms/object</td></tr></table>

在第三个实验中，我们采用一段来自实际监控场景的高难度视频，测试本文提出的整套头肩检测与跟踪方法。如图7所示，头肩检测仅在预

---

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

<div style="text-align: center;">Fig. 4. Tracking results of our tracker (Row 1) and the OFS method $^{[10]}$ (Row 2) in a sequence in which the target is walking in an overcrowded scene and undergoing occasional occlusions</div>

定义的“入口”区域内执行；之后，每一个检测到的头肩都会由基于局部HOG特征的粒子滤波跟踪器进行跟踪。可以看到，该视频中的目标分辨率低，且外观非常相似。但我们的系统成功检测出了10个出现的目标中的9个，仅漏掉了1个——该目标的头肩形状因为与6号目标的躯干融合（#88）而无法观测。所有被检测到的目标都得到了鲁棒跟踪，直至消失，即使在以下复杂场景中也不例外：人群拥挤（#52，1号目标超过0号和4号目标，与之产生严重的形状重叠）、背景干扰（#88，3号目标的头肩区域几乎与颜色相近的背景物体区域融合）以及快速移动（#151，7号目标正在骑车）。此外，我们的系统运行速度很快。如表2所示，我们的检测模块仅消耗15 ms/帧，跟踪模块每帧每个目标约消耗27 ms/object。因此，当跟踪目标数量少于4个时，本文方法的处理速度可以达到10帧/秒以上。

演示视频可见于[^11]。

### 5. 结论

本文提出了一种基于类Omega形状特征的快速鲁棒人体检测与跟踪方法。该方法包含两个模块：一个是头肩检测模块，结合Viola-Jones类型分类器与基于AdaBoost分类器的局部HOG特征，实现快速有效的目标检测；另一个是基于粒子滤波的视觉跟踪模块，采用局部HOG特征对目标外观建模，在人群拥挤、背景干扰和部分遮挡场景中都表现出很强的鲁棒性。由于该方法可以自动快速检测并鲁棒跟踪人体头肩，因此可应用于多种实际场景。

## 致谢

本工作得到了中国国家基础研究计划（2004CB318110）、国家科学基金（60605014、60875021）、中国国家自然科学基金（60736018、60723005）以及模式识别国家重点实验室（2008NLPRZY-2）的研究经费资助。作者也感谢匿名审稿人提出的宝贵意见。

### 6. 参考文献

[^1]: N. Dalal and B. Triggls, "Histograms of oriented gradients for human detection," in Proc. CVPR'05, 2005.

[^2]: Y. Jin and F. Mokhtarian, “Data fusion for robust head tracking by particles,” in IEEE Inter. Workshop on VS-PETS, 2005.

[^3]: J. S. C. Yuk, K. K. Wong, and et al., “Real-time multiple head shape detection and tracking system with decentralized trackers,” in Proc. ISDA'06, 2006.

[^4]: W. Qu, N. Bouaynaya, and D. Schonfeld, “Automatic multi-head detection and tracking system using a novel detection-based particle filter and data fusion,” in Proc. ICASSP'05, 2005.

[^5]: B. Wu and R. Nevatia, “Tracking of multiple humans in meetings,” in Proc. CVPRW'06, 2006.

[^6]: M. Li, Z. Zhang, K. Huang, and T. Tan, “Estimating the number of people in crowded scenes by mid based foreground segmentation and head-shoulder detection,” in Proc. ICPR'08, 2008.

[^7]: P. Viola and M. J. Jones, “Rapid object detection using a boosted cascade of simple features,” in Proc. CVPR'01, 2001.

[^8]: M. S. Arulampalam, S. Maskell, N. Gordon, and T. Clapp, "A tutorial on particle filters for online nonlinear/non-gaussian bayesian tracking," IEEE Trans. on Signal Processing, vol. 50, no. 2, pp. 174–188, 2002.

[^9]: D. Comaniciu, V. Ramesh, and P. Meer, “Real-time tracking of non-rigid objects using mean shift,” Proc. CVPR’00, 2000.

[^10]: R. T. Collins, Y. Liu, and M. Leordeanu, “Online selection of discriminative tracking features,” IEEE Trans. PAMI, vol. 27, no. 10, pp. 1631–1643, 2005.

[^11] 作者，"Demos," <http://limin81.cn/hsdemos.zip>.