
# 基于粒子滤波的多立体相机行人检测与跟踪 $^{\star}$

拉斐尔·穆尼奥斯-萨利纳斯 $^{*}$，R. 梅迪纳-卡尼塞尔，F.J. 马德里-奎瓦斯，A. 卡莫纳-波亚托

西班牙科尔多瓦大学计算与数值分析系，科尔多瓦 14071

## 文章信息

文章历史：

2008年8月28日收到

2009年3月17日录用

2009年3月24日在线发布

关键词：

平面视图地图

立体视觉

行人跟踪

粒子滤波

色彩处理

冷凝算法

行人检测

手势识别

## 摘要

本文提出了一种使用多台立体相机进行行人检测与跟踪的新方法。该方法通过三种不同的平面视图地图融合所有可用相机的信息。占据图和高度图分别记录立体相机中可见物体的体积和高度。我们还提出使用一种新型地图，命名为置信图，用于记录每个单元格中投影信息的置信度。所提出的置信图用于融合每台相机捕获的信息，从而在每个单元格中保留最可靠的信息。随后我们提出了一种粒子滤波算法，用于在融合后的平面视图地图中跟踪行人。所采用的观测模型同时考虑了高度、占据度和置信信息，因此每个时刻都会使用来自最可靠相机的信息。开展的实验证明了本文方法的有效性。

© 2009 爱思唯尔公司 保留所有权利。

### 1. 引言

行人检测与跟踪一直是计算机视觉领域十分活跃的研究方向。尽管大部分研究都集中在单相机方案上，但由于遮挡问题，且单相机覆盖的空间对于部分应用而言可能过小，因此这种方案并非多人跟踪的理想解决方案。多相机跟踪方案旨在解决这些问题。

在相关文献中，单目图像的检测与跟踪已是得到广泛研究的课题。然而，将立体视觉用于这些目标则是一个新兴研究领域。相比单目图像，立体视觉具有诸多优势。首先，所有为单目图像跟踪设计的方法都可以沿用，同时还能获得更丰富的每像素信息（颜色或亮度加上深度）。深度信息可用于更精确地跟踪行人，还能更好地理解他们的手势 [^30]。此外，深度信息对于开发鲁棒的背景估计技术而言十分重要 [^6] [^15] [^28]。其次，（用于获取深度的）视差信息受光照变化的影响相对较小。因此，在可能发生突发光照变化的真实场景中，采用立体视觉的系统有望获得更强的鲁棒性。

目前已有多种采用立体视觉的方法被提出，用于解决人体检测与追踪问题。Cipolla和Yamamoto的研究工作[^5]是该领域最早的研究之一。他们提出了一种基于立体视觉的目标追踪方法，采用可视化轨迹法。在[^9]中，Eklundh等人研究了主动视觉的应用，并得出结论：要完成实际场景中的追踪任务，必须整合多种线索。在[^7]中，Darrell等人提出了一种交互式显示系统，该系统通过结合皮肤检测器、人脸检测器和视差图，能够检测并追踪多个人体。Perseus系统[^21]是利用立体视觉实现与人类用户交互的一个突出案例。Perseus能够检测、追踪单个用户，并判断用户指向的位置。Franklin等人[^10]也采用了Perseus的架构，开发出了一款可通过简单手势控制的服务机器人。在[^12]中，Haritaoglu等人提出了一套完整的系统，整合灰度信息与立体信息实现人体追踪。

这些研究的共同特点是，追踪过程直接在相机图像中完成。但已有诸多研究表明，基于地面的立体数据表示方式（称为平面图，即plan-view map）具备多项优势。首先，正交投影可以压缩立体系统生成的海量信息，同时保留对追踪任务有用的关键空间信息。其次，与原始相机图像相比，在地面平面表示中人体更少发生重叠。因此，在该投影下追踪的可靠性更高，也无需使用分割方法来判断相机图像中每个像素属于哪个人体。第三，平面图可以方便地将多个立体传感器提供的信息整合到单个表示模型中。

---

目前关于平面图的大部分研究都集中在单立体相机的场景下。在参考文献[^1]中，Beymer引入了占用图的概念，利用安装在天花板的立体相机统计进入商店的人数。占用图是环境的二维地图，其中每个单元格记录投影到该单元格内的三维点数量。Harville的研究工作[^13]是一个优秀范例，他将平面图用于视频监控任务中的人体检测与追踪，结合了占用图和高度图。高度图用于记录检测到的目标的高度。之后，在参考文献[^14]中，他们证明了高度图可以有效用于学习人体姿态。在[^3]中，Checka等人提出将立体平面图与声音平面图结合使用，融合声音和立体信息来检测会议室中的发言者。Hayashi等人[^16]提出了一套人体检测与追踪系统，其主要贡献是采用可变体素投票方案：立体点被投影到与其误差成正比的区域内。该方法存在一个严重问题：地图计算的复杂度会随立体点的距离呈指数增长。之后，在参考文献[^17]中，同一批作者提出根据人体到相机的距离，使用可变窗口大小来表示人体。因此，当人体远离相机时，会放大窗口大小以适配立体误差。但他们的方案不支持整合多个立体相机。

本文作者针对使用单台立体相机开展人体检测与跟踪提出了多项创新成果。参考文献[^29]提出了一种结合颜色与立体信息的跟踪方法，其中立体信息直接从相机图像提取，而[^28]中的研究提出使用平面视图地图来更高效地表示立体信息。随后，参考文献[^27]提出颜色图来管理颜色信息。

尽管单视角下的立体人体检测与跟踪问题已得到解决，但少有研究针对多视角场景开展相关研究。在[^26]中，Mittal和Davis提出了一种使用多台单目相机进行人体跟踪的概率方法。他们在每台单目相机中单独执行跟踪流程，随后提取立体信息并将其投影到地面地图中。该方法的一大缺点是需要对每一帧多次重复分割过程，直到算法收敛。在[^24]中，Krumm等人展示了一套适用于智能房间的人体跟踪系统，该系统使用一对立体相机。该方法未采用平面视图地图，而是通过对从立体信息中提取的三维团块进行分组来检测人体。平面视图地图投影本可以通过减少信息量来加快计算速度。最后，在参考文献[^34]中，Zhao等人提出了一种使用多台短基线立体相机的人体检测与跟踪方法。每台相机由独立跟踪器确定人体位置，随后局部位置由集中式跟踪器进行融合。

#### 1.1. 所提贡献

多立体视角下的立体人体检测与跟踪仍然是一个开放的研究领域。不同于参考文献[^24] [^26] [^34]，本文提出了一种直接在平面视图地图中检测和跟踪人体的新型解决方案。对于每台立体相机，我们构建了三种不同的平面视图地图：第一种是占据图，每个单元记录投影到对应空间区域的立体信息量；第二种是高度图，每个单元表示对应空间区域内物体的最大高度；最后我们定义了一种名为置信图的新型地图，用于记录前两幅地图中投影信息的可靠性。随后我们融合每台相机的地图，得到全局占据图、全局高度图和全局置信图。上述多立体相机跟踪的现有研究均未考虑立体误差，与此不同，我们提出了一种立体误差模型，用于融合来自多台不可靠立体相机的信息。

我们构建的全局地图被用于人体检测与跟踪。为此我们采用了多粒子滤波方法，即对每个人使用独立的粒子滤波器进行跟踪。本文提出了一种观测模型，融合来自占据图、高度图和置信图的信息，即使在存在严重遮挡和较大立体误差的情况下仍能实现鲁棒跟踪。正如本文所展示的，使用置信信息可以显著降低跟踪误差。为了避免人体相互靠近时的合并问题，粒子权重会通过交互因子[^22]修正。该算法还通过遮挡检测与恢复机制，解决了完全遮挡情况下的合并问题。在多个真实环境中开展的大量实验验证了本文方法的有效性。

本文其余部分结构如下：第2节介绍立体计算的基础，以及三个平面视图的生成与融合方法。第3节介绍本文提出的行人检测与跟踪方案。第4节展示实验内容，第5节给出结论。

### 2. 立体平面视图

本节介绍立体平面视图计算的基础。首先，第2.1节简要介绍立体处理（若要了解领域最新研究进展，感兴趣的读者可参考[^2]）。第2.2节详细介绍平面视图的构建方法。最后，第2.3节介绍如何将每个立体相机生成的平面视图融合为全局平面视图。

#### 2.1. 立体处理

最简单的立体系统由一对相机组成，两个相机的光心$(O_l$和$O_r)$相距距离为b。为简化分析，我们假设两个相机具有相同的光学特性，且光学传感器共面（如图1所示）。立体系统可在同一时刻捕获两张图像$(I_l$和$I_r)$。在本文设定中，所用参考系的原点为参考图像（右图像）的中心$I_r$。

![Image](images/8335b247ec1ead50259f0499ff10c1c76393df6a38b1b4b4e00bd07bd426a3ed.jpg)

<div style="text-align: center;">Fig. 1. Minimal stereo system composed by two cameras.</div>

---

空间中的点$P = (X, Y, Z)$会投影到两个相机图像的同一条扫描线上，得到两个投影位置$(p = (x, y)$和$p' = (x', y))$。该点在两幅图像中的投影位置偏移量称为视差。已知立体系统的内参后，即可重建出已知视差像素的三维结构。深度通过三角测量法计算，公式如下：

 $$ Z=\frac{f b}{d}, $$

式中f为相机的焦距，d为按$d = |x - x'|$计算得到的视差（||表示绝对值）。我们还可以计算出点P三维位置的另外两个分量（X和Y），公式如下：

 $$ X=\frac{x Z}{f};\quad Y=-\frac{y Z}{f}. $$

视差通过立体匹配方法得到。但由于部分区域缺乏纹理，并不一定总能获得视差。能够得到视差的点称为匹配点。令

 $$ P_{c a m}=\bigg\{p_{c a m}^{i}=\Big(X_{c a m}^{i},Y_{c a m}^{i},Z_{c a m}^{i},1\Big)^{T}\Big|i=1\ldots n\bigg\}, $$

表示所有匹配点的集合（用齐次坐标表示）。三维位置$p_{cam}^{i}$是基于立体相机参考系得到的。但为满足本文需求，我们更倾向于将这些点的坐标转换到“世界”参考系中，该参考系位于地平面且与地平面平行。

我们利用图2(a)所示的棋盘格标定板，通过OpenCv库[^18]确定相机的外参。每个相机的外参可用于得到变换矩阵，将三维点从各相机的局部参考系转换到以棋盘格为中心的全局坐标系中。因此所有相机共享同一个参考系。令

 $$ P_{w}=\left\{p_{w}^{i}=\left(X_{w}^{i},Y_{w}^{i},Z_{w}^{i},1\right)^{T}\Big|i=1\ldots n\right\}, $$

表示基于“世界”参考系得到的三维点$P_{cam}$。

图2有助于阐明上述内容。图2(a)展示了立体系统捕获的参考相机图像，图2(b)展示了场景的三维重建结果，上文提到的各个参考系已叠加标注在图2(b)中。

#### 2.2. 占据图、高度图与置信图

从图2(b)中可以观察到，单组立体像对能够获得大量三维点。然而，由于人物沿地平面移动，确定他们在该平面内的二维位置对于多数跟踪应用而言已经足够。因此，更适合将三维信息转换为更简洁的表示模型，在减少信息量的同时保留对跟踪有用的关键空间特性。本文为此采用了俯视图方案。

俯视图将地平面区域划分为一组尺寸固定为$n \times m$的$\delta$个网格单元。本文将地图原点（即单元$(0,0)$）设为世界参考坐标系的原点（参见图2(b)）。因此，三维点$(x^i, y^i)$投影所在的单元坐标$p_w^i$计算如下：

 $$ x^{i}=\left[\frac{X^{i}_{w}}{\delta}\right];\quad y^{i}=\left[\frac{Z^{i}_{w}}{\delta}\right] $$

$\delta$的取值需要综合考虑多个方面。一方面，较大的取值有助于降低计算量和内存占用，副作用是会带来精度损失。另一方面，较小的取值可以提升精度（最高可达立体计算误差限定的极限），但也会提高计算需求。根据本文的实验，我们选择将其设置为$\delta = 3$厘米，这在精度和内存两个需求之间取得了合适的平衡。

每次采集到一组立体像对后，每个单元中投影得到的点集计算如下：

 $$ P_{(x,y)}=\Big\{i|x^{i}=x\land y^{i}=y\land Y_{w}^{i}\in[h_{\mathrm{m i n}},h_{\mathrm{m a x}}]\Big\}, $$

其中$[h_{\min}, h_{\max}]$是高度范围，有两个作用：首先，上限$h_{\max}$可以排除来自天花板或悬挂在天花板上的物体（例如灯具）的点；其次，下限$h_{\min}$可以排除对我们任务无关的低位点（例如地面点）。

本文采用了三种不同的俯视图，分别为占用图$\mathcal{O}$、高度图$\mathcal{H}$和置信度图$\mathcal{C}$。占用图的每个单元$\mathcal{O}_{(x,y)}$表示投影到该单元的点数量，计算方式如式(4)所示。

![Image](images/fccb469716a1bbc32dfa018eb42fe866e882a70e5449c1c011e16abcdf3a8970.jpg)

<div style="text-align: center;">Fig. 2. (a) Reference camera image captured with an stereo system. (b) Three-dimensional reconstruction of the scene showing the reference systems employed in this work. (c) Occupancy map of the scene shown in (a). (d) Height map of (a). (e) Confidence map of (a).</div>

---

 $$ \mathcal{O}_{(x,y)}=\sum_{j\in P_{(x,y)}}\frac{\left(Z^{j}_{cam}\right)^{2}}{f^{2}} $$

该公式背后的核心思路是，每个点对对应单元的增量值与该点在真实场景中占据的表面积成正比。因此，靠近相机的点对应更小的表面积，反之亦然。如果每个单元都采用相同的增量，那么距离相机越远的物体，面积总和就会越低。增量值的这种缩放设计可以补偿观测物体尺寸因到相机距离不同而产生的差异。图2(a)所示场景的占用图如图2(c)所示。在图2(c)中，白色单元表示空区域（即没有点投影到其中的单元），灰色单元表示占用区域。单元颜色越深，投影到该单元的点数量越多。

高度图的单元$\mathcal{H}_{(x,y)}$记录投影到其中的最高点的高度，高度图的计算方式如下：

 $$ \mathcal{H}_{(x,y)}=\left\{\begin{aligned}&\max(Y_{w}^{j}|j\in P_{(x,y)})&&if P_{(x,y)}\neq\emptyset\\ &h_{\min}&&if P_{(x,y)}=\emptyset\end{aligned}\right. $$

图2(d)展示了图2(a)中场景的高度图。在图2(d)中，单元颜色越深，其高度值越大。

最后，本工作定义了置信度图 $\mathcal{C}$，用于记录投影到每个单元格中的立体信息的置信度。正如上一节所述，匹配点的三维坐标由其视差经式(1)求逆得到。因此，点距离相机越远，重建误差就越大。本文提出的置信度图会在每个单元格存储一个置信值，该值表示占据图和高度图对应单元格中所含信息的可靠性。置信度图的计算方式如下：

 $$ \mathcal{C}_{(x,y)}=\begin{cases}{\mathbf{0}}&{{i f~}|P_{(x,y)}|=\mathbf{0}}\\ {\frac{1}{|P_{(x,y)}|}\displaystyle\sum_{j\in P_{(x,y)}}\mathsf{C}\Big(Z_{{c a m}}^{j}\Big)}&{{o t h e r w i s e}}\\ \end{cases} $$

式中 $|$ 表示基数，每个单元格 $\mathcal{C}_{(x,y)}$ 表示投影到该单元格内所有点的平均置信度。点的置信度通过置信度函数 $C(Z_{cam})$ 估计，该函数根据点到相机的距离，在 $(0, 1)$ 范围内分配置信值。靠近相机的点置信度趋近于1，远离相机的点置信度趋近于0。因此，单元格 $\mathcal{C}_{(x,y)}$ 的值较低意味着该单元格要么没有信息，要么信息不可靠；而如果单元格的值接近1，则可以确信投影到其中的信息误差很小。

本工作将置信度函数定义为高斯函数：

 $$ \mathbb{C}(Z_{cam})=\exp\left(-\frac{Z_{cam}^{2}}{2\sigma_{c}^{2}}\right), $$

因此 $C(Z_{cam})$ 随 $Z_{cam}$ 的增大而减小，反之亦然。参数 $\sigma_{c}$ 定义为：

 $$ \sigma_{c}=\frac{Z_{\max}}{3}. $$

因此，当 $Z_{cam} = Z_{max}$ 时，$C(Z_{cam})$ 的值非常小，表示置信度不足。实际上，参数 $Z_{max}$ 可看作一个上限，它表示立体误差大到不可接受的最大距离。由式(1)，我们可以推导出：

 $$ Z_{max}=\frac{fb}{d_{min}}. $$

接下来，$Z_{max}$ 由视差极限 $d_{min}$ 表示。视差极限 $d_{min}$ 必须根据所用立体匹配算法的精度选择。通过实验我们确定，$d_{min} = 3$ 可以得到合适的结果。用 $Z_{max}$ 表示 $d_{min}$ 可以根据各相机的光学特性，为每个相机计算不同的 $Z_{max}$。因此，长焦距相机即使距离物体更远，也能比距离更近、焦距更短的相机获得更高的置信度。

图2(a)所示场景的置信度图如图2(e)所示。白色单元格代表低置信度区域，灰色单元格代表高置信度区域。

颜色信息可通过颜色平面-

视图映射正如参考文献[^27]中所提出。颜色的使用有助于重

低混淆人物身份的可能性，在极-

端遮挡的情况下，但该作用仅在人们穿着不同颜色衣服时生效。

然而，本工作仅聚焦于最小配-

置，该配置能够实现可靠的行人检测与

跟踪，即仅使用占据图和高度俯视图。

尽管如此，扩展本文提出的方法以考

虑颜色图的过程十分简单。为此，需要为每个单独

的颜色图由各相机分别生成，之后它们需要

按照本文阐释的思路融合为一张全局颜色图。

下一节。

#### 2.3. 俯视图地图融合

上文介绍的流程用于为我们系统中的每个立体相机生成占据图、高度图和置信度图。但我们的目标是融合所有相机的信息，得到每种类型的单张地图，即通过融合地图得到单个占据图$\mathbb{O}$、单个高度图$\mathbb{H}$和单个置信度图$\mathbb{C}$。然而，由于立体匹配误差，直接融合信息可能会引发问题。因此，我们的融合方法基于置信度图设计，其核心思路是让融合后的地图每个单元都保留最可靠的信息。通过

 $$ \mathbf{0}=\{\mathcal{O}^{\upsilon}|\upsilon=1\ldots V\} $$

我们用集合表示现有V个立体系统生成的所有占据图，同时用

 $$ \mathbf{H}=\{\mathcal{H}^{v}|\nu=1\ldots V\}, $$

 $$ \mathbb{C}=\{\mathcal{C}^{v}|v=1\dots V\} $$

分别表示高度图集合和置信度图集合。我们定义

 $$ \mathbf{v}_{(x,y)}=\underset{\nu}{\mathrm{a r g m a x}}\mathcal{C}_{(x,y)}^{\nu}, $$

单元$(x, y)$中置信度最高的地图的索引。随后，通过为每个单元取最可靠地图中的信息计算得到融合后的地图，即：

 $$ \mathbb{O}_{(x,y)}=\mathcal{O}_{(x,y)}^{\mathbf{v}_{(x,y)}}, $$

 $$ \mathbb{H}_{(x,y)}=\mathcal{H}_{(x,y)}^{\mathbf{v}_{(x,y)}}, $$

和

 $$ \mathbb{C}_{(x,y)}=\mathcal{C}_{(x,y)}^{\mathbf{v}_{(x,y)}}. $$

图3展示了两台立体相机生成的地图融合后得到的结果。图3(a)和(b)是相机拍摄的场景图像，走廊的相对两端各有一人。每张图像对应的占据图如图3(c)和(d)所示；对应的置信度图如图3(e)和(f)所示。图3(e)展示了融合后的占据图，图3(h)展示了融合后的置信度图。受篇幅限制，高度图已省略。

---

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

![Image](images/3382d873d4559a1468a077fd993cf849057557b66da8ceb55d243933f558b890.jpg)

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

![Image](images/c636465a2c1220433e64a0ce00b5c987282462379a233f5616bf67882ff88b97.jpg)

![Image](images/b6e0c03cce64e99cbcdaca8b24dcc2c2bad0704aea5a91e37ba99698cba042f3.jpg)

<div style="text-align: center;">Fig. 3. (a and b) Camera images. (c) Occupancy map of image (a). (d) Occupancy map of image (b). (e) Fused occupancy map of (c) and (d). (f) Confidence map of (a). (g) Confidence map of (b). (h) Fused confidence map of (f) and (g). See text for discussion.</div>

图3(c-h)展示了远距离情况下立体误差对俯视图的影响。可以看到，当行人距离相机较远时，他们会被投影为分散的点云。理想情况下，两台相机的信息在融合地图中应该重合，但由于立体误差，投影无法重合。不过，置信度图记录了投影信息的可靠程度，下文会说明，该信息会被用于跟踪过程以降低跟踪误差。

### 3. 行人检测与跟踪

本节我们介绍提出的行人检测与跟踪方法。我们选择采用多粒子滤波方案，即为每个目标单独配置一个独立跟踪器。

我们的方法依赖背景模型[^15]，该模型对每个像素结合颜色与深度信息定义了高斯混合模型。采集到立体图像对后，我们会提取前景像素，仅使用这些像素生成俯视图。随后，我们会对已识别的行人进行跟踪，并检测场景中出现的新行人。最后更新背景模型，但更新过程不会考虑属于被跟踪行人的像素。因此，即使行人长时间保持静止，也不会被并入背景。

本节剩余内容分为三个部分：3.1节介绍所用粒子滤波的基础，3.2节介绍本文提出的观测模型，3.3节简要介绍如何检测进入和离开监控区域的行人。

#### 3.1. 多粒子滤波

粒子滤波技术被广泛用于根据动态系统$X(t)$的序贯观测$Z(t)$估计系统状态[^11] [^19] [^20] [^23]。为此，该方法使用一组带权重的粒子$\{(s_j(t), \pi_j(t))\}$，其中$s_j(t)$表示系统的一个可能状态，$\pi_j(t)$是一个称为重要性权重的非负数值因子，代表对观测密度$p(Z(t)|s_j(t))$的估计。

粒子滤波的优势尤为突出，因为它可以自然地处理后验密度和观测密度均为非高斯的系统，并且能够同时处理多个假设。然而，将其直接应用于多目标跟踪存在若干问题：第一，标准粒子滤波没有定义识别单个模态（或目标）的方法；第二，标准粒子滤波的粒子会快速收敛到单个模态，丢弃其余粒子（这通常被称为聚并问题或粒子“劫持”问题）[^4] [^32]；第三，联合粒子滤波的复杂度会随着目标数量的增加呈指数增长[^33]。近年的方法通过使用多粒子滤波（MPF）克服了这些问题[^8] [^22] [^31] [^32]。多粒子滤波为每个目标使用一个独立的粒子滤波（PF），并通过交互因子修改粒子权重，从而避免聚并问题。

每个独立跟踪器的典型结构（基于Condensation算法[^20]）如图4所示。算法初始会获得一个包含N个粒子的初始样本集S(0)，所有粒子的权重相等。在本文中，每个目标的状态向量定义为

 $$ \boldsymbol{X}(t)=\left[x(t),y(t)\right]^{T} $$

针对平面图，作者已有相关的前期工作。您能否将本文工作与这些前期工作进行比较，以说明本文的改进之处？例如，[^27]使用颜色图进行人员定位。

在每次迭代中，算法使用样本集$S(t-1)$生成新的样本集$S(t)$。新样本$s_j(t)$通过有放回地从$s_j'(t-1)$中选取N个样本$S(t-1)$得到。为此，首先计算粒子$c_j(t-1)$的累积概率$s_j(t-1)$。随后，通过二分查找找到累积概率最接近所选随机数r的粒子，从而选出新粒子$s_j'(t-1)$。之后，对于每个选中的样本$s_j'(t-1)$，算法根据模型动力学加上随机噪声计算其下一状态$s_j(t)$。

在本文中，由于人体运动具有随机性，我们采用了随机游走运动模型，部

---

 $$ \begin{array}{r l r}{\mathrm{C o n d e n s a t i o n}}&{{}(S(0)}&{=\quad\{(s_{j}(0),\pi_{j}(0))|j\quad=\quad0\},}\\ {1,\ldots,N\}|\pi_{j}(0)=\frac{1}{N}\mathrm{C o n d e n s a t i o n}}&{{}(S(0))}&{=\quad\{(s_{j}(0),\pi_{j}(0))\mid j=1,2,\ldots,N\}.}\end{array} $$

根据时间步t-1的样本集$S(t-1)$，按如下方式构造新样本集$S(t)$：

1. 按如下步骤从集合$S(t-1)$中选取N个样本：

- 计算每个样本的归一化累积概率

  $$ c_{j}(t-1)=\sum_{i=1}^{j}\pi_{i}(t-1) $$

- 生成一个随机数$r, \mathcal{U}(0,1)$，通过二分查找找到满足$c_k(t-1) \geq r$的最小k。

• 设置$s'_j(t-1) = s_k(t-1)$.

2. 根据目标的运动模型传播每个选中的样本$s'_j(t-1)$，以得到新样本$s_j(t)$。

   $$ s_{j}(t)=\mathsf{A}s^{\prime}_{j}(t-1)+w(t-1) $$

   $$ \pi_{j}(t)=\mathcal{I}_{j}(t)\cdot p(Z(t)|s_{j}(t)). $$

然后进行归一化，使得$\sum_{j=1}^{N}\pi_{j}(t)=1$。

4. 估计状态$S(t)$的均值并计算其权重：

   $$ \begin{align*}\mathcal E[S(t)]=\sum_{j=1}^N\pi_j(t)s_j(t).\end{align*} $$

   $$ \pi_{\mathcal{E}[S(t)]}=p\big(Z(t)|\mathcal{E}[S(t)]\big). $$

5. 如果$\pi_{\mathcal{E}[S(t)]} < \pi_{min}$成立，则说明人员被遮挡：

- 如果人员被遮挡的次数达到最大值，则退出。

• 否则

– 增加粒子数N和$w(t-1)$的标准差

 $$ w(t^{19}\mathrm{~1}) $$

<div style="text-align: center;">Fig. 4. Structure of an independent particle filter tracker.</div>

尤其是当人员相互交互时。假定施加的随机噪声服从高斯分布$N(0, \sigma_{m}^{2})$，其偏差根据人类平均步行速度约为1 m/s（3.6 km/h）这一前提计算得到。那么，如果所提出的系统能够以fps赫兹运行，参数$\sigma_{m}^{2}$的计算方式为：

 $$ \sigma_{m}=\frac{1}{fps}. $$

每个粒子的权重$\pi_j(t)$基于得到的新观测$p(Z(t)|s_j(t))$和交互因子$\mathcal{A}_j(t)$计算得到（见式(14)）。交互因子的取值范围为[^0] [^1]，用于根据粒子与其余目标的距离调整粒子的最终权重。对于靠近其他跟踪器目标位置的粒子，该因子取值接近0，反之则接近1。因此，交互因子可以定义为一个与粒子和目标之间距离成反比的函数。在本研究中，交互因子被定义为高斯函数

 $$ \begin{array}{r}{\mathcal{I}_{j}(t)=1-e^{-\frac{d m^{2}}{2\sigma_{d m}^{2}}},}\end{array} $$

其中dm是到最近目标（不包括自身）的欧氏距离，$\sigma_{dm}$为偏差。偏差被设置为$\sigma_{dm} = 0.5$ m，该值被认为是成年人身体宽度的上限。

计算完所有粒子的权重后，平均估计位置$\mathcal{E}[S(t)]$被认定为当前人员的位置（见式(15)）。然而，人员经常会被其他人员或环境中的结构元素遮挡。尽管标准粒子滤波器能够在部分遮挡的情况下工作，但完全遮挡是一个主要问题。当人员被周围的其他人员或物体挡住视线时，就会发生遮挡。在这种情况下，无法检测到被遮挡人员的3D点，因此人员所在区域的占用图、高度图和置信图都是空的。此时，由于没有可跟踪的信息，无法进行跟踪。由于本研究使用了多个相机，一个相机中的遮挡可以通过其他相机解决，因此这种问题很少发生。但在拥挤场景中，人员可能在所有相机中都被遮挡。如果没有检测和处理遮挡，被遮挡目标的跟踪器最终会错误跟踪剩余可见目标中的一个。为了避免这个问题，我们计算平均估计位置$\pi_{\mathcal{E}[S(t)]}$的似然度（式(16)）。值$\pi_{\mathcal{E}[S(t)]}$反映了地图中估计位置实际被人员占据的程度。因此，当$\pi_{\mathcal{E}[S(t)]}$低于给定阈值$\pi_{\min}$时，就可以检测到遮挡。

当检测到遮挡时，跟踪器会逐步增加粒子数N以及$\sigma_{m}$（每次迭代增加5%）。因此，在目标人物持续处于丢失状态时，会生成更多粒子且分布得更分散，以便覆盖丢失目标可能重新出现的区域。如果经过多次迭代仍未找到目标人物，跟踪器就会停止运行。但如果重新找到目标人物，N和$\sigma_{m}$都会被重置为默认值。

#### 3.2. 观测模型

使用立体俯视图时，可见人物的立体信息会被投影到地图中与其实际尺寸成比例的区域内。通常，手臂部分展开的人体所占矩形区域的尺寸$\zeta_R$在0.4 m到0.6 m之间[?,28]。因此，本文的行人检测与跟踪方法基于对矩形区域的分析（本文研究中所用矩形区域的尺寸为$\zeta_R = 0.5$ m）。设

 $$ \mathcal{R}(x,y)=\left\{i|\max(|x^{i}-x|,|y^{i}-y|)<\frac{\zeta_{M}}{2}\right\} $$

表示以$\zeta_M$为中心、尺寸为$(x, y)$的正方形区域的单元格集合。参数$\zeta_M$是以单元格为单位表示的人体投影尺寸$\zeta_R$。我们用$\mathcal{R}(s_j(t))$表示以粒子$s_j(t)$为中心的区域。

本文提出的观测模型结合了生成俯视图得到的占据信息、高度信息和置信度信息。我们通过定义变量$O_{\mathcal{R}(x,y)}$来处理占据信息，该变量表示区域$\mathcal{R}(x,y)$的占据水平，其计算公式为：

 $$ \begin{align*}&O_{\mathcal{R}(x,y)}=\sum_{i\in\mathcal{R}(x,y)}\mathbb{O}_{(x^i,y^i)}.\end{align*} $$

---

假设占据

 $$ \begin{array}{r}{0_{\mathcal{R}(s_{j}(t))}=0_{j}(t)\sim N\bigl(\mu_{_{0}},\sigma_{_{0}}^{2}\bigr),}\end{array} $$

服从高斯分布，我们将其概率分布函数（pdf）记为：

 $$ p_{o}(O_{j}(t)|s_{j}(t))=\frac{1}{\sigma_{o}\sqrt{2\pi}}\exp\left(-\frac{(O_{j}(t)-\mu_{o})^{2}}{2\sigma_{o}^{2}}\right). $$

参数$\mu_{o}$和$\sigma_{o}$分别表示变量$O_{\mathcal{R}(x,y)}$的均值和标准差。这些参数必须通过实验进行估计。在我们的实验中，取值$\mu_{o}=2500$和$\sigma_{o}=1000$取得了良好的效果。

在我们的模型中，高度信息通过定义变量$H_{\mathcal{R}(x,y)}$来处理，该变量表示区域$\mathcal{R}(x, y)$内的最大高度，其定义为：

 $$ H_{\mathcal{R}(x,y)}=\operatorname*{m a x}(\mathbb{H}_{(x^{i},y^{i})})\forall i\in\mathcal{R}(x,y). $$

 $$ H_{\mathcal{R}(s_{j}(t))} $$

 $$ H_{\mathcal{R}(s_{j}(t))}=H_{j}(t)\sim N\big(\mu_{h},\sigma_{h}^{2}\big). $$

其概率密度函数（pdf）定义如下：

 $$ p_{h}(H_{j}(t)|s_{j}(t))=\frac{1}{\sigma_{h}\sqrt{2\pi}}exp\left(-\frac{(H_{j}(t)-\mu_{h})^{2}}{2\sigma_{h}^{2}}\right). $$

参数$\mu_{h}$和$\sigma_{h}$分别表示人体高度的均值和标准差。在本文研究中，我们采用了$\mu_{h}=1.5$ m和$\sigma_{h}=0.8$ m这两个取值，因为它们对站立和坐姿人物的跟踪都取得了良好的效果。

最后，置信度信息通过定义$C_{\mathcal{R}(x,y)}$来处理，该变量表示区域$\mathcal{R}(x,y)$的置信水平，其计算公式为

 $$ C_{\mathcal{R}(x,y)}=\frac{1}{|\mathcal{R}(x,y)|}\sum_{i\in\mathcal{R}(x,y)}\mathbb{C}_{(x^{i},y^{i})}. $$

其中$|$表示基数。可以看出，$C_{\mathcal{R}(x,y)}$的取值范围为$[0,1]$，取值为0表示该区域没有信息或信息不可靠，而随着区域$\mathcal{R}(x,y)$中信息置信度的升高，其取值会趋近于1。我们定义概率密度函数（pdf）

 $$ C_{\mathcal{R}(s_{j}(t))}=C_{j}(t)\sim i B(f_{c},n), $$

服从我们所称的逆巴特沃斯分布，该分布定义为：

 $$ \varphi(x,f_{c},n)=\begin{cases}\frac{1}{N_{cte}\left(1+\left(\frac{1-x}{1-f_{c}}\right)^{2n}\right)}&if x\in[0,1];\\0&otherwise.\end{cases} $$

在式(24)中，$N_{cte}$是归一化常数，计算公式为

 $$ N_{c t e}=\int_{0}^{1}\frac{1}{1+\left(\frac{1-x}{1-f_{c}}\right)^{2n}}d x, $$

使得

 $$ \int_{-\infty}^{\infty}\varphi(x,f_{c},n)dx=1. $$

图5展示了反巴特沃斯分布在其参数$f_{c}$和n取不同值时的形态。参数$f_{c}$代表一个截止点，当区域置信度低于该值时就会被认为置信度过低。因此，当$C_{\mathcal{R}(S_{j}(t))}$低于$f_{c}$时，$\varphi(x, f_{c}, n)$会取较低的值。但当式(23)计算得到的置信度大于$f_{c}$时，$\varphi(x, f_{c}, n)$会趋近于其最大值。参数n就是该

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

<div style="text-align: center;">Fig. 5. Inverse Butterworth distribution for different values of its parameters.</div>

滤波器的阶数，决定了曲线过渡的平滑程度。接下来，我们定义

 $$ p_{c}(C_{j}(t)|s_{j}(t))=\varphi(x,f_{c},n). $$

我们的思路是，高置信度值始终会被接受。但当一个区域的置信度降到$f_{c}$以下时，分配给粒子的概率也会随之下降。这些参数需要提前确定。在我们的实验中，$f_{c}=0.15$和n=2取得了良好的效果。

利用上述三个概率，状态的总体似然（参见式(14)）可按下式计算：

 $$ p(Z(t)|s_{j}(t))=p_{o}(O_{j}(t)|s_{j}(t))p_{h}(H_{j}(t)|s_{j}(t))p_{c}(C_{j}(t)|s_{j}(t)). $$

在最终实现中，我们可以利用一个特性缩短计算时间：要得到高总体似然，三个似然项都必须为高值。因此，如果计算得到$p_c(C_j(t)|s_j(t))$的值较低，就不需要再计算$p_h(H_j(t)|s_j(t))$和$p_o(O_j(t)|s_j(t))$，因为最终的总体似然仍会较低。

图6(a)展示了将式(26)应用于图3(a、b)走廊示例中每个单元格的结果。如前文所述，该图展示了一次测试得到的平面图：测试中将两台相机放置在走廊两端对两个人进行记录。可以看到，本文提出的观测模型生成了两个清晰的峰值（分别对应两个人）。但需要注意，构建平面图过程中产生的立体误差很大。为了更清楚地展示置信度图的影响，图6(b)展示了不使用置信度信息、即对每个单元格设置$p_c(C_j(t)|s_j(t)) = 1$时应用式(26)得到的结果。在这种情况下，出现了四个不同的峰值。如果不使用置信度信息，立体误差会产生“伪峰”，可能干扰跟踪算法。而使用置信度信息就可以解决这个问题。

#### 3.3 人员进出场景的检测

在使用上述方法进行跟踪之前，需要先完成人员检测。一旦检测到人员，就会为其分配一个独立的跟踪

![Image](images/a3a4b4aa1ba6e0b8573cad870dc0b9d84e41ed43e271b8af0b60d39bb46bcad7.jpg)

<div style="text-align: center;">Fig. 6. (a) Likelihood map of the scene shown in Fig. 3 using confidence information. (b) Likelihood map of the scene shown in Fig. 3 without using confidence information.</div>

---

器来负责跟踪该人员。本文采用的人员检测方法与[^27]中使用的方法类似，但本文还额外考虑了置信度信息。

检测在跟踪步骤之后执行，目的是避免已经检测到的人员被重复检测。在可控环境中，人员从已知区域（例如门）进出场景，这些区域可以预先标注在地图中。人员检测通过将式(26)应用于这些区域的每个单元格来完成。检测过程是在这些处理后的区域中迭代搜索高于阈值$\theta_{e}$的峰值。一旦检测到一个峰值，我们就认为可能有人员进入了场景，并在接下来的迭代中排除峰值周围$\mathcal{R}(x, y)$区域内的单元格。当找不到更多高于$\theta_{e}$的峰值时，搜索过程停止。

检测到的峰值不会直接用于跟踪。相反，我们会在每个时间步维护并更新一个单独的候选检测列表。当同一个候选在多个连续帧中都被检测到时，就认为有新人员进入了场景，系统会添加一个新的追踪器。该策略已被证明可以减少误报的数量。

另一方面，如果一个追踪器检测到某人员重新进入了上述区域之一，随后又在连续多个帧中被遮挡，我们就判定该人员已经离开场景，并删除该人员对应的追踪器。

### 4. 实验与讨论

本节介绍为测试所提算法开展的实验。我们在三种不同场景下录制了多段视频序列。第一个场景是PEIS房间 [^25]，这是一个机器人化公寓，用于研发旨在帮助老年人的移动嵌入式机器人系统。该场景共使用了两套立体系统。第一套安装在天花板上，高度为 $\simeq 4.5$ m，朝向正下方。第二套安装在 $\simeq 3$ m 高度，呈倾斜摆放。相机覆盖的区域大小为 $3 \times 4$ m。两台相机通过软件同步，设置为每秒7帧（fps）录制，分辨率为 $320 \times 240$ 像素。第二个场景总共安装了三台立体相机，安装高度为3 m，覆盖面积约为 $4 \times 4$ m。相机通过软件同步，设置为每秒15帧录制，分辨率为 $320 \times 240$ 像素。最后，第三个场景为图3所示的走廊。两套立体系统安装在2 m高度，分别布置在长15 m走廊的两端。所有实验采用的立体匹配算法是SAD的改进版本，支持亚像素插值。录制序列中的人数从2到4不等。我们要求参与人员在环境中自由移动，因此录制的视频中人员交互和遮挡十分频繁。共有10名不同人员参与了本次实验。

本节分为两个部分。第一部分（4.1节）评估我们所提方案的性能，第二部分（4.2节）分析使用所提置信度图的影响。

#### 4.1 性能评估

本节介绍为评估所提方法两个关键方面开展的实验：第一是确定被跟踪人员位置的误差（跟踪误差），第二是误差随粒子数量增长的变化情况。针对第一个目标，我们在四段不同序列的每一帧中都确定了人员位置，以获得跟踪误差的量化测量结果。我们手动提取了俯视图中人员头部的位置，从所用的1103帧中总共手动提取了4182个位置。对于每个人员，跟踪误差计算为手动标注位置与所提跟踪方法估计位置之间的距离。

关于第二个研究目标，基于粒子滤波的方法性能会随着粒子数量的增加而提升。不过，所使用的粒子数量越多，算法需要的计算量也就越大。此外，粒子数量通常存在一个阈值，超过该阈值后性能不会再有明显提升。我们的目标是研究误差的变化趋势，以确定所提方法获得足够良好性能所需的最小粒子数量。因此，我们在粒子数量递增的记录序列中分析了本文算法的跟踪误差。此外，由于该算法具有随机性，每个测试都使用不同的随机数生成器种子重复进行了10次。

我们的实验结果如图7所示。图7中图表的横轴表示每个跟踪器所用的粒子数量，纵轴表示确定人体位置的均方根误差（RMSE）。该RMSE由序列中所有人员的10次运行误差计算得到。和预期一致，跟踪误差随粒子数量的增加而降低。但可以观察到，粒子数量从15增加到40的过程中，误差下降幅度更大。根据这些结果，我们认为所提方法使用40个粒子时已经能获得良好性能，可得到0.15米的误差。事实上，使用更多粒子也不会带来显著的误差下降。

测试在搭载AMD Turion 3200处理器、配备1 GB内存、运行GNU+Linux系统的便携式计算机上完成。在我们的测试中，背景去除耗时30毫秒，俯视图生成与融合耗时9毫秒。实际上，背景去除是我们算法中计算开销最大的部分，这一不足将是未来工作的改进方向。最后，每个跟踪器使用40个粒子估计人体位置的耗时为2.5毫秒。

接下来，我们展示用于测试所提方案的部分序列图像。图8展示了第一个场景（PEIS房间）中某次测试的图像。如前文所述，监测区域内布置了两台立体相机：一台安装在天花板，另一台呈倾斜布置。第二台由两个低成本网络摄像头组成，使用OpenCv库提供的校正流程[^18]。天花板上的相机是Videre Design生产的立体相机系统。相机图像展示在图8的上两行，每个像素得到的似然值展示在底行。此外，我们的跟踪器估计得到的人员位置

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

<div style="text-align: center;">Fig. 7. Tracking error as the number of particles grow.</div>

---

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

<div style="text-align: center;">Fig. 8. Three people in the PEIS room. People interact, sit and move around the room.</div>

![Image](images/460cf079587a97100c38ff5136222cfdf418cd4eaa4f103e51aa4be4b3cc18be.jpg)

图9：四名人员随机移动并就坐，过程中产生频繁遮挡。

---

![Image](images/3076a4b440ddf127cf7e4fd32385908d156e28d0a6eedcb2330440057c82f28f.jpg)

<div style="text-align: center;">Fig. 10. Four people moving in a corridor causing severe occlusions.</div>

已为不同人员使用不同颜色叠加标注在地图上。图8的场景中，三名人员进入房间后互相自我介绍，接着拿了两把椅子坐下交谈，最后在房间内四处走动参观。在该场景中，人员距离两台相机都较近（ $\simeq$ 3 米），因此没有产生明显的立体误差。值得注意的是，在这种特定布置下，安装在天花板的相机大幅减少了遮挡。不过这种布置需要非常大的拍摄角度和较高的天花板（并非总能满足该条件）。另一方面，倾斜布置的相机比安装在天花板的相机监测范围更广，但遮挡情况也更频繁。

图9展示了第二种场景下测试我们系统所用的其中一个序列。在该场景中，三台Videre立体相机倾斜放置在3米高度处。该序列记录了四个人进入房间、随机移动，偶尔坐在椅子上的过程。在该案例中，相机也靠近人员，因此产生的立体误差较小。但这是一个具有挑战性的跟踪场景，因为遮挡非常频繁。人员有时会被三台、两台相机捕捉到，有时仅能被一台相机捕捉到。测试结果表明，尽管存在频繁遮挡，本文提出的方法仍能可靠地跟踪人员。需要注意的是，如果一人在某一台相机中被遮挡，另一台相机仍可能观测到他/她，因此该人员仍会被投影到地图中。本文提出的融合方法将来自最可靠相机的信息存入全局地图的每个单元格中。但如果只有一台相机能观测到目标，就会使用该相机的信息进行跟踪。因此，某一台相机遇到的遮挡问题可以被其余相机有效解决。

最后，图10展示了走廊场景下开展的其中一项测试。从图中可以看到四个人从走廊一端走向另一端。这是一个难度特别高的跟踪场景，原因有两点：第一，正如前文所示，相机之间的距离会导致较大的立体误差；第二，该场景还存在非常明显且频繁的遮挡。在该场景中，人员会同时被两台相机严重遮挡。但得益于本文采用的遮挡处理流程，跟踪可以恢复正常。

#### 4.2. 置信度图的影响

本节旨在分析跟踪过程中使用置信度信息的影响。为了测试本文提出的置信度图的作用，我们在走廊场景中开展了一项测试。我们选择该场景是因为它范围足够大，能够体现立体误差对跟踪任务的影响。

<div style="text-align: center;">Taracking error difference</div>

![Image](images/be5791afad548af2d9f833a4f52e47025db2ca9f9202c4b51562866e5a6c890a.jpg)

<div style="text-align: center;">Fig. 11. Tracking error difference for the sequence shown in Fig. 12. Positive values indicate higher errors for the tracker that do not employ confidence information.</div>

---

<div style="text-align: center;">With confidence map</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>#118</td><td style='text-align: center; word-wrap: break-word;'>#168</td><td style='text-align: center; word-wrap: break-word;'>#223</td><td style='text-align: center; word-wrap: break-word;'>#244</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>#336</td><td style='text-align: center; word-wrap: break-word;'>#353</td><td style='text-align: center; word-wrap: break-word;'>#365</td><td style='text-align: center; word-wrap: break-word;'>#399</td></tr></table>

<div style="text-align: center;">Without confidence map</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>#118</td><td style='text-align: center; word-wrap: break-word;'>#168</td><td style='text-align: center; word-wrap: break-word;'>#223</td><td style='text-align: center; word-wrap: break-word;'>#244</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>#336</td><td style='text-align: center; word-wrap: break-word;'>#353</td><td style='text-align: center; word-wrap: break-word;'>#365</td><td style='text-align: center; word-wrap: break-word;'>#399</td></tr></table>

<div style="text-align: center;">Fig. 12. A person moves from one extreme of a corridor to the other. Top rows shows the results when confidence map are employed. Bottom rows correspond to the results when no confidence maps are employed. Without confidence information, stereo errors causes tracking errors. Confidence information alleviates the problem.</div>

该测试为单个人员从走廊一端走向另一端。该序列以15 fps的帧率录制，分别在启用和不启用置信度图的条件下，使用共40个粒子进行处理。为了不使用置信度信息，我们假设所有粒子都满足 $p_c(C_j(t)|s_j(t)) = 1$（参见式(26)）。我们还手动处理了该序列，确定了每一帧中人员的位置，从而可以计算跟踪误差。

图12展示了跟踪结果。上方各行展示了启用置信度信息时所有单元格地图的似然度，对应式(26)。跟踪器估计的位置以红色框叠加在地图上。图12的下方各行展示了不启用置信度信息时单元格地图的似然度，同时也叠加了算法的跟踪结果。该序列的跟踪误差如图11所示，图中数值为不使用置信度信息的跟踪器与使用置信度信息的跟踪器之间的误差差值。因此，正值表示不使用置信度的版本误差高于使用置信度信息的版本。

从图12可以注意到，当不使用置信度信息时，得到的似然结果存在“噪声”。如前文所述，这是因为立体视觉误差会产生虚假模态（或称伪模态）。结果清楚表明，使用置信度信息得到的跟踪结果优于不使用置信度信息的结果。当行人位于走廊中间时，这种差异并不明显，在该情况下两个立体系统的置信度相近。但当行人靠近走廊两端时，不使用置信度信息的方案得到的跟踪误差非常高。具体而言，在第360帧，跟踪误差差异接近1 m（参见图11）。

### 5. 结论

本文提出了一种使用多立体相机进行行人检测与跟踪的新颖方法。我们的方案通过平面视图地图融合来自可用相机的信息。在这项工作中，我们将占据地图、高度地图与一种名为置信度地图的新型地图结合使用。置信度地图的单元格记录了投影到占据地图和高度地图对应单元格中信息的可靠性。由于立体误差会随到物体的距离增大而升高，因此远距离物体在地图中产生的置信度较低。

每个相机会生成独立的占据地图、高度地图和置信度地图，随后这些地图的信息会被融合为全局占据地图、全局高度地图和全局置信度地图。融合时每个单元格保留最可靠的信息，也就是来自置信度更高的地图的信息。但如果只有一个相机观测到目标，那么全局地图就采用该相机的信息。因此，一个相机视角下的遮挡可以被其余相机有效解决。

融合后的地图被用于行人检测与跟踪。为此我们采用了多粒子滤波策略（即每个行人使用一个独立的粒子滤波器）。为了保持多模态特性，粒子采用交互因子避免了聚结问题。本文提出的观测模型结合了占据信息、高度信息和置信度信息，实现了鲁棒跟踪。

本文提出的方法已在三种不同场景下的大量实验中完成测试。结果表明，仅使用40个粒子即可实现可靠跟踪，误差约为0.15 m。此外，测试表明，使用本文提出的置信度地图，通过利用来自最可靠相机的信息可以降低跟踪误差。

## 参考文献

[^1]: D. Beymer, Person counting using stereo, in: Intl. Workshop on Human Motion, 2000, pp. 127–133.

[^2]: M.Z. Brown, D. Burschka, G.D. Hager, Advances in computational stereo, IEEE Transactions on Pattern Analysis and Machine Intelligence 25 (2003) 993–1008.

[^3]: N. Checka, K. Wilson, V. Rangarajan, T. Darrell, A probabilistic framework for multi-modal multi-person tracking, in: Conference on Computer Vision and Pattern Recognition Workshop, 2003, pp. 100–107.

[^4]: C. Hue, J.L. Cadre, P. Perez, Sequential monte carlo methods for multiple target tracking and data fusion, IEEE Transaction on Signal Processing 50 (2002) 309–325.

[^5]: R. Cipolla, M. Yamamoto, Stereoscopic tracking of bodies in motion, Image and Vision Computing 8 (1990) 85–90.

[^6]: T. Darrell, D. Demirdjian, N. Checka, P. Felzenszwalb, Plan-view trajectory estimation with dense stereo background models, in: Eighth IEEE International Conference on Computer Vision (ICCV 2001), vol. 2, 2001, pp. 628–635.

[^7]: T. Darrell, G. Gordon, M. Harville, J. Woodfill, Integrated person tracking using stereo, color, and pattern detection, Int. J. Comput. Vis. 37 (2000) 175–185.

[^8]: W. Du, J. Piater, Tracking by cluster analysis of feature points and multiple particle filters, in: IEEE Conference on Advanced Video and Signal Based Surveillance, 2005, pp. 165–170.

[^9]: J.-O. Eklundh, P. Nordlund, T. Uhlin, Issues in Active Vision: Attention and Cue Integration/selection, in: British Machine Vision Conference, 1996, pp. 1–12.

[^10]: D. Franklin, R.E. Kahn, M.J. Swain, R.J. Firby, Happy patrons make better tippers: Creating a robot waiter using Perseus and the animate agent architecture, In Int. Conf. Automat. Face Gesture Recogn. 1996, pp. 14–16.


## [^11]: N. Gordon, D. Salmand, Bayesian state estimation for tracking and guidance using the bottstrap filter, Journal of Guidance, Control Dynamics 18 (1995) 1434–1443.


---

[^12]: I. Haritaoglu, D. Harwood, L.S. Davis, W4: real-time surveillance of people and their activities, IEEE Transactions on Pattern Analysis and Machine Intelligence 22 (2000) 809–830.

[^13]: M. Harville, Stereo person tracking with adaptive plan-view templates of height and occupancy statistics, Image and Vision Computing 2 (2004) 127–142.

[^14]: M. Harville, Li. Dalong, Fast, integrated person tracking and activity recognition with plan-view templates from a single stereo camera, in: Proceedings of the 2004 IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 2004, pp. 398–405.

[^15]: M. Harville, G. Gordon, J. Woodfill, Foreground segmentation using adaptive mixture models in color and depth, in: IEEE Workshop on Detection and Recognition of Events in Video, 2001, pp. 3–11.

[^16]: K. Hayashi, M. Hashimoto, K. Sumi, K. Sasakawa, Multiple-person tracker with a fixed slanting stereo camera. in: Sixth IEEE International Conference on Automatic Face and Gesture Recognition, 2004, pp. 681–686.

[^17]: K. Hayashi, T. Hirai, K. Sumi, K. Sasakawa, Multiple-person tracking using a plan-view map with error estimation, Lecturer Notes on Computer Sciences 3851 (2006) 359–368.

[^18]: Intel. OpenCV: Open source Computer Vision library. Available from: <http://www.intel.com/research/mrl/opencv/>.

[^19]: M. Isard, A. Blake. Countour tracking by stochastic propagation of conditional density, in European Conference on Computer Vision, 1996, pp. 343–356.

[^20]: M. Isard, A. Blake, CONDENSATION—conditional density propagation for visual tracking, Int. J. Comput. Vis. 29 (1998) 5–28.

[^21]: R.E. Kahn, M.J. Swain, P.N. Prokopowicz, R.J. Firby, Gesture recognition using the Perseus architecture, in: IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'96), 1996, pp. 734–741.

[^22]: Z. Khan, T. Balch, F. Dellaert, MCMC-based particle filtering for tracking a variable number of interacting targets, IEEE Transactions on Pattern Analysis and Machine Intelligence 27 (2005) 1805–1819.

[^23]: G. Kitagawa, Monte Carlo filter and smoother for non-gaussian nonlinear state space models, Journal of Computational and Graphical Statistics 5 (1996) 1–25.

[^24]: J. Krumm, S. Harris, B. Meyers, B. Brumitt, M. Hale, S. Shafer, Multi-camera multi-person tracking for easyliving, in: Third IEEE International Workshop on Visual Surveillance, 2000, pp. 3–10.

[^25]: R. Lundh, L. Karlsson, A. Saffiotti, Dynamic self-configuration of an ecology of robots, in: Proc of the IEEE/RSJ Int Conf on Intelligent Robots and Systems (IROS), 2007, pp. 3403–3409.

[^26]: A. Mittal, L.S. Davis, M2 tracker: A multi-view approach to segmenting and tracking people in a cluttered scene, International Journal of Computer Vision 53 (2001) 189–203.

[^27]: R. Muñoz Salinas, A bayesian plan-view map based approach for multiple-person detection and tracking, Pattern Recognition 41 (2008) 3665–3676.

[^28]: R. Muñoz Salinas, E. Aguirre, M. García-Silvente, People detection and tracking using stereo vision and color, Image and Vision Computing (25) (2007) 995–1007.

[^29]: R. Muñoz Salinas, M. García-Silvente, R. Medina-Carnicer, Adaptive multi-modal stereo people tracking without background modelling, Journal of Visual Communication and Image Representation 19 (2008) 75–91.

[^30]: R. Muñoz Salinas, R. Medina-Carnicer, F.J. Madrid-Cuevas, A. Carmona-Poyato, Depth silhouettes for gesture recognition, Pattern Recognition Letters 29 (2008) 319–329.

[^31]: K. Okuma, A. Taleghani, D. De Freitas, J.J. Little, D.G. Lowe, A Boosted Particle Filter: Multi Target Detection and Tracking, Lectures Notes in Computer Science 3021 (2004) 28–39.

[^32]: J. Vermaak, A. Doucet, P. Perez, Maintaining multimodality through mixture tracking, in: Ninth IEEE International Conference on Computer Vision, 2003, pp. 1110–1116.

[^33]: J. Vermaak, S.J. Godsill, P. Perez, Monte carlo filtering for multi-target tracking and data association, IEEE Transactions on Aerospace and Electronic Systems 41 (2005) 309–332.

[^34]: T. Zhao, M. Aggarwal, R. Kumar, H. Sawhney, Real-time wide area multi-camera stereo tracking, in: Computer Vision and Pattern Recognition (CVPR 2005) (2005) 976–983.
