韩廷卯
(中国海洋大学 山东 青岛 266100)
商场、车站、机场等地,人群密集,存在诸多安全隐患,虽然这些领域已广泛采用视觉传感器监控场景,但大部分还停留在人工监控的模式下,浪费人力物力,且容易因为人为的疏忽出现纰漏。因此,实现监控视频的人群自动计数,具有十分重要的意义。
近年来,随着计算机视觉技术的不断发展,各国研究者提出了许多人群计数的方法,但由于互相遮挡,人体行为复杂等原因,一直未能取得满意的效果。这些方法,在检测少量目标时,准确度较高,一旦人群密集,检测效果急剧下降。目前,人群计数的方法主要分为基于人体表观模型的方法[1]和基于人体运动模型的方法[2-4]。在某些特定环境下,二者均有各自的优势。
二者结合的方法,效果更好,但计算费时。受文献[2-3]的启示,在人数较多的情境下,本文给出了一个仅仅使用人体的独立运动信息进行人体计数的框架,取得了较满意的效果。
一个二维图像的特征,在时间轴上对其进行追踪,会得到关于它的一条运动轨迹。检测当前图像中所有可靠的特征点,追踪得到它们的运动轨迹,并分别计算任意两条轨迹之间的相似度 Z(Xi,Yj),得到特征轨迹的相似度矩阵 Z(X1:N)。假设场景中每个人都包含几条特征轨迹,我们的任务就是在所有的特征轨迹中找出最可能的聚类,这样得到的每个特征群都可能代表了一个运动人体。
可靠而准确的聚类是关键,但是如果枚举所有可能的聚类,计算量非常大,不易实现。我们使用运动的基本信息来限制可能聚类的数量,使聚类变得可行。根据这个思想,提出了本文的人群计数的方法,图1是文中算法的整个流程。
可靠的特征,是进行准确人群计数的基础,因此,选取好的特征十分重要。而可靠的特征,必须能够以高可靠性在连续图像中被追踪到,Tomasi-Kanade[5]和Harris角点特征均满足这个条件。我们使用的是Tomasi-Kanade[5]特征,并用分层的光流法进行追踪[6]。而为了在所有检测到的特征中选取能稳定追踪的特征,我们假设独立检测得到的特征在后续的图像中匹配误差不超过一个像素。函数W(Df,n)表示对图像f中得到的特征进行追踪,返回在第幅图像的位置。因此有以下判别式:
图1 人群计数整体过程Fig.1 The whole process of counting crowds
凡是满足上式的特征,选为有用特征。式中Df表示在第f帧图像检测到的所有的特征点。检测特征时,势必会将复杂背景中满足条件点检测为特征点,而这些特征点又完全符合式(1),所以这些点会被作为有用的特征参与后续的处理。但这些点实际是噪声,会在后续的人群计数中影响结果的准确性。因此在特征检测之前,我们通过背景减除法得到前景图像,并以此图像作为特征检测时的掩膜,这样获得的特征点基本都是前景物体上的特征,消除了背景噪声的影响。
对当前图像进行特征检测,并通过式(1)得到满足要求的特征点,然后分别向前、向后的连续30帧图像进行特征追踪。追踪使用的是分层光流法。对于待追踪的特征点,如果在某帧图像中没有追踪到可靠的位置,则使用已知的可靠速度,通过线性插值得到在该帧的位置,然后继续进行追踪。将各个特征点在每帧图像的位置记录下来,得到各个特征的轨迹{X1,X2,…,Xn}。
通过实验发现,距离比较近的特征点,更有可能来自于同一个人体,而距离非常远的点肯定不是来自同一个人体。因此为了限制计算最终聚类时的类(群)数量,我们使用特征点的空间距离信息,进行初次聚类,我们称之为空间聚类。而两个特征点的欧氏距离,是表示空间距离的最直观最可靠的信息。同时,为了加强此次聚类的可靠性,我们使用的是两条特征轨迹的最大距离,即分别求出两个特征点在每一帧的欧氏距离,然后选取最大的一个代表两个特征轨迹的空间距离:
聚类的方法,采用的是最大树聚类法:先将特征点之间的最大距离按升序排列,然后将特征点对逐个放入树中,直至树中刚好包含了所有的特征点。再将树中最长的c-1条边切断,就将整个树分成了c类(群)。其中c值是手动设置的,一般为场景中可能出现的人数的最大值的3-5倍,但是不超过特征点数的1/2。
空间聚类是根据本节开头的假设,只考虑特征点之间的空间距离,进行的比较粗糙的聚类,包含了一些噪声。其中比较严重的情况是:当特征点中噪点比较多时,例如未消除的背景噪点,而且这些噪点之间的距离较大时,它们会占据c类(群)中比较多的部分,从而将运动轨迹完全不同,但是空间距离不是很远的真实特征点归为一类(群)。因此在进行最终聚类之前,要对c类(群)进行分裂处理,即将类(群)中孤立的特征点(点群)从类中分离出去形成一个新类。判断特征点(群)孤立的标准是:与群内其他特征轨迹之间的相似度(下文式3)均小于0.2。0.2是经实验获得,可以根据不同的应用场景,选取不同的值。
该阶段的聚类,是对空间聚类的结果,根据类(群)之间特征轨迹的运动信息,通过挖掘类(群)之间的相似性,决定是否将两个类(群)融合成一个类。理想情况下,来自同一个人体上的特征点的运动轨迹应该是一致的。因此准确地定义轨迹之间的相似度,是本节的关键。
假设:两个独立的特征,当它们轨迹之间的距离的变化更小时,则二者更可能来自于同一个人体。因此我们定义轨迹之间的相似度
其中,Var(Xu,Xv)=Var(dist(Xu,Xv))。 当 2 个特征轨迹来自同一个刚体,而且追踪可靠时,二者的Q值应该是1。实际情况下,由于运动人体不是完全的平行于图像平面,二者的距离不可能完全不变,但是对于非快速运动的人体来说,连续的61帧图像中,在画面中的视觉尺度变化很小,所以这个定义是可靠的。同样,任意两个类(群)之间的相似度,可以用特征轨迹之间的相似度来求得。
2个类Ci,Cj,定义二者之间的相似度为:
二者融合的可靠性:
只有当相似度大于阈值T0,我们才认为两类有融合的可能。然后判断 V(Ci,Cj),只有当它小于阈值 T1时,我们才认为两类的融合是可靠的。T0越大,T1越小,最终的分类噪声越少,但是鲁棒性比较差,所以寻找合适的T0,T1很重要,在我们的实验中,选取T0=0.3,T1=0.12,取得了不错的效果。注意,上述类间相似度的定义,必须是在两类邻近的前提下,当两类距离很远时,计算它们的相似度是没有意义的。我们判断两类邻近的方法是:将两类中心的距离与估计的人体在图像中的视觉尺度做比较,如果大于这个尺度的1.5倍,则认为不临近。
得到了所有类对的相似度之后,还要选择融合类(群)的方法。这里,可以使用任何贪婪算法或者由粗到细的融合算法,但是该算法必须满足下面的3个条件:1)能够实时决定从哪一个类对开始融合;2)停止融合的标准要可靠,且不重复计算;3)对于两人之间,边缘共享的特征点,做出合理且准确的分类。 在实验中,我们使用符合条件(P(Ci,Cj)>T0,V(Ci,Cj)<T1)的类对来构造最小生成树,单个类也算是一棵树。当一棵树中包含的特征点的数量不少于3个,且不共线时,则认为它是一个人体。
文中实验选取了CAVIAR数据库中的两段视频,判断邻近时使用的横纵方向的距离阈值为,X方向50 pixel,Y方向80 pixel;T0为 0.3,T1为 0.12。
图2 实验结果图,左侧为Q阵,右侧为计数结果Fig.2 Result of experiments, left is the Q matrix,right is the counting result
结果显示,通过本文算法进行人体计数,基本达到了区分独立运动人体的要求。需要注意的是,有几个关键点对最终的结果有较大的影响:1)前景特征点的检测要准确,尽量减少背景噪点的影响;2)人体存在相对运动,相对运动变化较大的部分可能被识别为不同的人体,通过选择视频拍摄的角度,尽量获取头肩部位的特征点;3)运动轨迹相同且邻近的人体,被识别为一个人体,可以通过人体表观特征加以区分。
文中利用物体的独立运动信息,提出了用两次聚类进行人体计数的框架。检测运动物体上可靠的特征点,进行追踪,获得特征的运动轨迹。先对这些特征做空间聚类,然后定义轨迹相似度和类间相似度,并进行运动一致性聚类。实验发现,该方法在识别独立运动时,取得了较好的效果。对消除背景噪点以及处理人体各部分相对运动的情况,该算法的处理结果还需要进一步提高,这也是下一步工作的目标。
[1]Zhao T,Nevatia.Tracking multiple humans in crowded environment[C]//CVPR,2004:406-413.
[2]Rabaud V,Belongie S.Counting Crowded Moving Objects[C]//CVPR,2006:705-711.
[3]Gabriel J B,Roberto C.Unsupervised bayesian detection of independent motion in crowds[C]//CVPR,2006:594-601.
[4]Chan A B,Vasconcelos N.Counting people with low-level features and bayesian regression[J].IEEE Transactions on Image Processing,April 2012:2160-2177.
[5]Tomasi C,Kanade T.Detection and tracking of point features[R].TechnicalReport CMU-CS-91-132.Carnegie Mellon University,1991.
[6]Bradski G.Opencv:Examples of use and new applications in stereo,recognition and tracking [C]//Proceedings of the International Conference on Vision Interface,2002:347.
[7]梁博渊.基于离散小波多分辨率分析的电网谐波检测法[J].陕西电力,2010(8):53-56.LIANG Bo-yuan.Power system harmonic detection based on discrete wavelet Multi-resolution analysis[J].Shaanxi Electric Power,2010(8):53-56.