APP下载

基于卷积神经网络的人流量统计

2017-05-18张雅俊高陈强

关键词:人流量人头检测器

张雅俊,高陈强,李 佩,刘 江,程 华

(1.重庆邮电大学 信号与信息处理重庆市重点实验室,重庆 400065;2.中国舰船研究设计中心,湖北 武汉 430064)

基于卷积神经网络的人流量统计

张雅俊1,高陈强1,李 佩1,刘 江1,程 华2

(1.重庆邮电大学 信号与信息处理重庆市重点实验室,重庆 400065;2.中国舰船研究设计中心,湖北 武汉 430064)

在密集场景中,人流量统计往往因无法可靠地检测行人而使得统计精度不高。针对这一问题,在利用卷积神经网络技术基础上,采用基于头部检测的方法进行人流量统计。该方法采用级联的Adaboost检测器对人头目标进行初步筛选,再用迁移学习技术训练卷积神经网络,并用由卷积神经网络和支持向量机构成的人头分类器模型对初步筛选得到的人头目标进行精细识别,提高检测精度率,利用航迹关联对人头目标进行跟踪统计。实验结果表明,该方法能准确快速地定位到单个行人并具有较高的统计精度。

人流量统计;卷积神经网络(CNN);Adaboost;迁移学习;航迹关联

0 引 言

人流量统计是视频监控系统的关键技术之一,其任务是利用视频图像分析技术自动统计在某个时间段内通过某一场景的行人数量。由于行人信息是许多行业中的一个重要信息,因此,该技术可以广泛应用于商业、金融业、餐饮业以及交通运输业等领域。

到目前为止,国内外学者对人流量统计技术展开了大量的研究,相关技术逐步加强。但是该技术在实际应用中仍然面临诸多困难,如光照变化、低分辨率、图像视角变化、复杂背景以及行人遮挡等。这些不确定的因素使得人流量统计技术的研究变得异常困难。

当前,学术界关于人流量统计研究方法有很多。其中,基于先检测后跟踪的计数方法是当前一种常用的方法。该方法利用已经训练好的检测器模型先检测后跟踪,进而对通过检测线或进入感兴趣区域(region of interest, ROI)的行人计数。根据检测部位不同,检测模块通常可以分为头部检测、头肩检测以及全身检测。文献[1]采用基于头部检测和跟踪的人流量统计方法。通过提取人头Haar特征[2],训练级联的Adaboost[3]检测器,之后用此检测器检测ROI内的人头目标并进行跟踪统计。文献[4]同样通过头部检测的方法进行人流量统计。不过,由于此方法需要运用人体几何特征进行分割,因此,并不适合于拥挤情况。文献[5]则是结合RGB-D图像信息,通过对人头检测及跟踪从而达到人流量统计目的。虽然此方法能非常准确地进行人流量统计,但是该方法所使用的深度相机安装并不方便,且拍摄视角有限,因此,不适应于较大的应用场景。文献[6-7]则采用基于头肩检测和跟踪的方法实现人流量统计。该方法使用具有一定倾斜视角的相机获取监控图像,这虽然能避免某些场景下的遮挡问题,但在人群密集的情况下仍然无法避免难以精确检测和计数的问题。文献[8]采用基于全身检测和跟踪的方法实现人流量统计。该方法通过设置在顶端的摄像机获取监控图像,利用基于面积和颜色分析的方法对行人实现双向计数。该方法在单人或行人稀少、相互不接触的情况下可以取得较好的检测效果,但在拥挤情况下,检测精度率则会下降。文献[9]同样采用基于全身检测和跟踪的方法实现人流量统计,仍然不能有效地处理严重遮挡的情况。

基于先检测后跟踪的方法非常依赖于前期目标检测的效果。可靠性的目标检测往往对整个算法的人流量统计有决定作用。针对当前算法在拥挤情况下人流量统计精度不高的问题,本文提出了一种基于卷积神经网络(convolutional neural network, CNN)的人流量统计方法。为最大程度避免拥挤情况下行人目标遮挡问题,本文针对行人头部进行检测。为可靠进行人头目标检测,我们吸取了目标检测和图像分类研究领域优秀研究成果,采用两级目标检测方案,即基于Adaboost的快速目标检测和基于CNN与支持向量机(support vector machine, SVM)结合的目标识别确认。不同于我们先前工作,即自己设计CNN结构并利用正负样本训练CNN模型,最终用于本校教室智能人数分析,在此,我们并不完全重新训练CNN分类器模型。由于重新训练CNN需要标注大量样本,且会造成以往知识的浪费,为解决样本不足和数据可重用性问题,采用迁移学习技术将教室人数统计任务学习知识用于现有人流量统计任务上,增强模型训练效果。最后,通过航迹关联方法对人流跟踪计数,消除了文献[10]仅针对单张图像进行处理的局限性。实验结果表明,该方法在实际密集监控场景下可以取得较好的效果。

1 算法框架

本文算法框图如图1所示,基于头部检测的人流量统计方法主要包括3个模块:离线训练模块、在线检测模块以及跟踪计数模块。在离线训练模块阶段,正样本和负样本来自于应用场景图像以及网络图像,用来训练级联的Adaboost人头检测器模型和CNN-SVM人头分类器模型。其中,在训练CNN-SVM人头分类器模型时引入迁移学习技术,扩大样本知识,减少正负样本标注,增强训练效果。在线检测模块阶段,利用已经训练好的级联Adaboost人头检测器模型和CNN-SVM人头分类器模型依次对待检测的视频图像序列进行检测,得到最终的人头目标。在跟踪计数模块阶段,对人头目标进行区域限制和特征匹配,得到关联的人头航迹,通过航迹信息进行人流量统计。

图1 本文算法框图Fig.1 Paper algorithm framework

2 级联的Adaboost快速人头检测器

2.1 训练样本准备

训练级联的Adaboost人头检测器所需的正样本大部分来源于网络图片,少量来自训练集图片。通过手工标注这些图片中包含不同视角的人头区域得到正样本,其样本数为4 408,将其尺寸归一化到大小为24×24。负样本同样大部分来自于网络图片,而少量来自于训练集,他们均为不包含人头样本的背景和其他干扰物图片,样本数为4 173。图2a和图2b分别为部分训练正样本及负样本的代表图像。

图2 用于训练级联的Adaboost人头检测器的训练样本Fig.2 Training samples which are used for training cascade Adaboost head detector

2.2 训练及检测过程

在准备好正、负样本以后,提取这些正、负样本方向梯度直方图(histogram of oriented gradient, HOG)特征,利用Adaboost算法进行训练。训练时,通过调节不同的内部训练参数,使得粗检测具有较高的召回率。当得到级联的Adaboost人头检测器模型后,利用级联的Adaboost人头检测器进行人头区域检测。检测时,通过多尺度遍历整幅图像产生多个子窗口。提取这些子窗口特征,并输入到Adaboost人头检测器模型中检测,得到检测目标。在检测过程中,排除非人头区域时,待检测样本必须通过每层检测器设置的阈值才能够进入下一阶段的判断。这样可以大大降低虚假目标的存在,同时也提高了检测的速度。

虽然级联的Adaboost人头检测器具有较高召回率,但它并不能有效排除虚假目标的存在,因而需要对检测目标进一步分类剔除。

3 CNN-SVM人头分类器

由于CNN具有较好的特征学习能力,因此,本文采用CNN作为特征提取器,以实现对初步检测目标的分类处理。在此,并不直接使用CNN作为分类器,而仅将CNN作为特征提取器,用来训练基于CNN特征的线性SVM分类器。由于训练CNN-SVM人头分类器模型需要大量训练样本,而完全重新标注会耗费大量人力,并且在数据资源有限的情况下,所标样本中往往包含很多类似的样本,这不利于分类器模型的训练。因此,使用迁移学习技术将文献[10]已训练好的CNN人头检测模型应用到我们的实验中。迁移学习,在此顾名思义是为了将从文献[10]中学习到的样本知识用来帮助现有人流量统计学习任务。这样,有效减小了重新收集数据资料并大量标注样本的必要性。实验表明,这种通过迁移学习技术扩大训练样本学习知识后的CNN-SVM人头分类器模型具有良好的分类效果。

3.1 训练样本准备

用于训练CNN-SVM人头分类器模型的正样本与用于训练级联的Adaboost检测器的正样本一致,其样本数为4 408,不同的是,其尺寸为28×28。而全部负样本则从级联的Adaboost人头检测器负样本中挖掘得到,其样本数为7 867。同样地,将其尺寸归一化到大小为28×28。图3a和图3b分别为部分训练正样本和负样本的代表图像。

图3 用于训练CNN-SVM人头检测器的训练样本Fig.3 Training samples which are used for training CNN-SVM head detector

3.2 训练及检测过程

测试集图像经过级联的Adaboost人头检测器后,得到大量候选人头区域。将这些候选人头区域输入到CNN-SVM人头分类器模型,即可得到最终人头目标。在此,为了扩大学习数据样本知识,受文献[11]的启发,使用迁移学习方法微调已有CNN结构模型。由于CNN结构前几层特征具有通用性,能够适用于大多数数据集及任务,只是后几层网络特征与特定数据有关,因此,通过初始化CNN前面几层网络结构,而保持后几层网络结构不变,使之具有增强性。其网络结构主要包括2层卷积层(分别记为Conv1和Conv2)和3层全连接层。Conv1由20个5×5×3的滤波器组成,Conv2由50个5×5×20的滤波器组成。图像在分别经过卷积处理后,会经由大小为2×2的卷积核进行下采样得到相应的特征图,最后通过全连接层处理后变成500维的特征向量。具体学习过程见算法1。

算法1 CNN-SVM学习训练算法。

输入:训练样本集S{(x1,y1),(x2,y2),…,(xm,ym)},其中,m为样本总数,yi={-1,+1}。

输出:最终CNN-SVM分类器f(x)。

1)加载预训练CNN模型hθ(x)。

2)Fori=1,…,trainingepochs

3) Forj=1,…,numberofbatches

②反向传播阶段:通过梯度下降法极小化残差更新后面几层网络参数θ。

4) End For

5)End For

7)提取样本全连接层特征得T{(z1,y1),(z2,y2),…,(zm,ym)}。

8)将T放入线性SVM中进行训练得到CNN-SVM分类器f(x)。

4 跟踪计数

在获得人头检测目标后,接下来就是采用跟踪算法。在人流量统计方法中常用的跟踪算法有Kalman滤波[12]、Meanshift[13]以及粒子滤波[14]等。其中,Kalman滤波算法和粒子滤波算法计算复杂度较高,会严重影响运行时间,并不适用于实时人流量统计。虽然Meanshift算法跟踪速度很快,但由于该算法主要利用目标的颜色信息进行预测,特征太过单一,且人头目标颜色信息区分度不高,因此,也并不太适合在复杂场景下的人流量统计。为均衡计算时间复杂度以及跟踪效果,本实验采用简单的区域限制以及特征匹配方法进行人流量统计。

在经过CNN-SVM分类器模型检测得到最终的人头检测目标后,以当前检测目标为中心,对此检测目标进行欧氏距离限制,得到候选关联人头匹配区域。由于相邻2帧之间行人在时空域上变化不大,本文选取区域限制半径K=20,当前一帧人头目标满足(1)式时,成为候选关联人头

s.t. dist≤K

(1)

(1)式中:dist代表当前帧与前一帧人头目标之间的距离;(x1,y1)和(x2,y2)分别代表当前帧和前一帧的人头目标的坐标。

在确定候选关联人头后,提取对应的CNN人头特征向量,分别将这些特征向量与当前帧中指定人头的特征向量作相似性度量,得到人头相关性系数,相关性系数公式为

(2)

5 实验结果及分析

在此首先介绍实验数据集,其次分别对比本文使用迁移学习技术和使用文献[10]方法即未使用迁移学习技术时的检测结果及人流量统计结果。由于可靠性的目标检测往往对整个算法人流量统计有决定性作用,因此,我们同时与当前最好的检测算法之一,即可变形部件模型(deformable part model, DPM)[15]进行了实验对比,用于评估本实验检测算法性能。

5.1 监控视频图像场景数据集

本实验数据集来自于火车站、广场等复杂场所。该数据集包含多种不同图像背景、人群密集程度、拍摄视角以及人流方向等。为充分说明所提出的算法框架在较复杂场景下的检测及统计效果,本实验选用8个场景简单、人群稀疏的视频序列作为训练集;4个包含多种情况的较复杂场景视频序列作为测试集,其中测试集每种场景均为300帧图像。4种不同情况的测试集代表图像如图4所示。

图4 4种不同场景代表图像Fig.4 Representative images of four different scenarios

5.2 检测结果及分析

图5a为Adaboost检测结果示意图,可以明显看出,在保证较高召回率的情况下,检测结果存在大量虚假目标;图5b和图5c为经过CNN-SVM分类器处理后的检测结果。经过对比可知,图像在经过CNN-SVM分类器处理后能剔除大量的虚假目标,与此同时,仍存有少量虚假目标,这部分虚假目标大多与人头目标非常类似,比如阴影,很难识别,但是在后期匹配跟踪计数过程中,这些虚假目标会因无法匹配而被丢弃,从而不会影响实验结果。比较图5b和图5c可以看出,使用迁移学习技术后的CNN-SVM分类器具有更高的检测精度率,分类效果更优。

本文以精确率(Precision)和召回率(Recall)作为评价人头检测指标。

(3)

(4)

(3)式和(4)式中:TP为真实正例;FP为错误正例;FN为错误负例。即精确率指检测到的真实人头目标在所有检测结果中的比例。召回率指检测到的真实人头目标在所有人头目标中的比例。当精确率越高,说明在所有检测目标中检测到的真实人头概率越大;而召回率越高,说明检测到的真实人头目标越多。表1给出了4种不同场景视频序列数据集的评估结果,其中,TL和NO_TL分别为使用和未使用迁移学习技术时的评估结果。

从表1可以看出,使用迁移学习技术后的CNN-SVM分类效果比未使用时的效果在精确率和召回率上都普遍要高很多。这是因为引入迁移学习技术后,扩大了样本学习知识,使得分类效果更强。另外,本实验检测算法在召回率上优于DPM算法,即检测到的真实人头目标相较DPM模型要多。说明DPM在拥挤情况下检测分辨率较低的人头目标并不适宜。

图5 人头检测结果代表图Fig.5 Representative images of head detection results

scene1scene2scene3scene4PrecisionTL0.58010.43980.59730.5107NO_TL0.35130.20760.45710.4215DPM0.56930.39660.56220.4973RecallTL0.68850.72970.72320.7368NO_TL0.61630.67710.59260.6982DPM0.62740.64010.27200.3486

5.3 人流量统计结果及分析

用Matlab和C++混合编程的方式在2.6 GHz CPU (E3400),4 GByte RAM的PC机上执行程序。具体为,Adaboost算法以及计数跟踪模块用C++执行得到,而CNN-SVM人头分类器模型训练则是通过Matlab执行得到。图6为人流量计数场景,只有当行人越过检测线时才会进行计数。最终,通过对4种不同场景视频序列图像进行测试,得到人流量统计结果。

表2和表3分别为4种不同场景人流量统计结果和系统测试时间,其中,GT代表真实值,Res表示统计值,Accu表示准确率,即统计值与真实值的比值。

从表2可以看出,使用迁移学习技术后的人流量统计准确率均在0.72以上,且普遍比不使用迁移学习技术时的准确率要高。表3所示为4种不同场景系统测试时间,其单位为每帧消耗的时间(s)。从表3系统时间上来看,使用迁移学习技术后,系统运行时间大多相对较少,但仍存在少数不稳定现象。结合表1和表2来看,本系统在跟踪过程中,部分虚假目标并不会关联计数,影响计数结果,不过某些类似人头目标的干扰物仍有参与匹配计数。从总体上来看,本系统能比较准确快速地实现人流量统计。

表2 4种不同场景人流量统计结果

表3 4种不同场景系统测试时间

6 结 论

本文采用基于检测的方法实现人流量统计。首先,通过级联的Adaboost人头检测器实行人头粗检测;然后,通过迁移学习技术,利用CNN-SVM人头分类器再次识别,剔除大量的虚假目标,保证了较高的检测精度率;最后,根据人头信息,对待关联人头目标通过区域限制以及特征匹配方法准确地找到关联人头,得到确定的航迹,大大提高了计数准确率。

实验表明,本文所提出的方法不仅能快速准确定位到单个行人,而且能对不同的监控应用场景的人流量实现统计,具有广泛的实用价值。将来我们会对复杂场景人流量进一步研究,以期在未来的工作中能更加有效解决严重遮挡以及阴影等干扰问题,使得检测和计数更加准确,实时性进一步提高。

[1] HAO D, FENG X, FAN W, et al. A fast pedestrians counting method based on haar features and spatio-temporal correlation analysis[C]//ACM International Conference Proceeding Series. Zhangjiajie: Association for Computing Machinery, 2015: 300-303.

[2] MITA T, KANEKP T, HORI O. Joint haar-like features for face detection[C]//Computer Vision. Beijing: IEEE, 2005: 1619-1626.

[3] FREUND Y, SCHAPIRE R E. A decision-theoretic generalization of on-line learning and an application to boosting[J]. Journal of computer and system sciences, 1997, 55(1): 119-139.

[4] HU Y, ZHOU P, ZHOU H. A new fast and robust method based on head detection for people-flow counting system[J]. International Journal of Information Engineering, 2011, 1(1): 33-43.

[5] GAO C, LIU J, FENG Q, et al. People-flow counting in complex environments by combining depth and color information[J]. Multimedia Tools and Applications, 2016, 75(15): 9315-9331.

[6] XU H, LV P, MENG L. A people counting system based on head-shoulder detection and tracking in surveillance video[C]// International Conference on Computer Design and Applications (ICCDA). Qinhuangdao: IEEE, 2010: V1394-V1398.

[7] ZENG C, MA H. Robust head-shoulder detection by pca-based multilevel hog-lbp detector for people counting[C]//International Conference on Pattern Recognition (ICPR). Istanbul: IEEE, 2010: 2069-2072.

[8] CHEN T H, CHEN T Y, CHEN Z X. An intelligent people-flow counting method for passing through a gate[C]//Conference on Robotics, Automation and Mechatronics. Bangkok: IEEE, 2006: 1-6.

[9] WANG Y, ZHANG H. Pedestrian detection and counting based on ellipse fitting and object motion continuity for video data analysis[M]. Intelligent Computing Theories and Methodologies. Intelligent Computing Theories and Methodologies. Switzerland: Springer International Publishing, 2015: 378-387.

[10] GAO C, LI P, ZHANG Y, et al. People counting based on head detection combining Adaboost and CNN in crowded surveillance environment [J]. Neurocomputing, 2016, 208(4):108-116.

[11] YOSINSKI J, CLUNE J, BENGIO Y, et al. How transferable are features in deep neural networks?[C]//Advances in Neural Information Processing Systems. Montreal: IEEE, 2014: 3320-3328.

[12] GREWAL M S. Kalman filtering[M]. International Encyclopedia of Statistical Science. Berlin Heidelberg: Springer International Publishing, 2011:705-708.

[13] 袁霄, 王丽萍. 基于 MeanShift 算法的运动人体跟踪[J]. 计算机工程与科学, 2008, 30(4): 46-49. YUAN Xiao, WANG Liping. Tracking Moving People Based on the MeanShift Algorithm[J]. Computer Engineering and Science, 2008, 30(4): 46-49.

[14] FU Y, LONG X. Pedestrian Tracking Based on Improved Particle Filter Under Complex Background[C]//Advanced Materials Research. Nanjing: Trans Tech Publications Ltd, 2013: 4103-4109.

[15] FELZENSZWALB P, MCALLESTER D, Ramanan D. A discriminatively trained, multiscale, deformable part model[C]// Computer Vision and Pattern Recognition. Anchorage: IEEE, 2008: 1-8.

(编辑:田海江)

Pedestrian counting based on convolutional neural network

ZHANG Yajun1, GAO Chenqiang1, LI Pei1, LIU Jiang1, CHENG Hua2

(1. Chongqing Key Laboratory of Signal and Information Processing, Chongqing University of Posts and Telecommunications,Chongqing 400065, P. R. China;2. China Ship Development and Design Center, Wuhan 430064, P.R.China)

In crowded scenes, pedestrian counting often cannot get high statistical accuracy because of the unreliable detection. To solve this problem, in this paper, based on the use of convolutional neural network(CNN) technology, we carry out the pedestrian counting according to head detection. Firstly, this scheme uses the cascaded Adaboost detector to get the preliminary head proposals; Then, it uses transfer learning technology to retrain CNN, after that, the head classification model constructed by CNN and SVM (Support Vector Machine) is used to fine recognize the head, in order to improve the detection accuracy rate; Finally, the track association is used for tracking and counting the head targets. Experimental results show that our proposed method can locate to a single pedestrian quickly and accurately, and the method has fairly high statistical accuracy.

pedestrian counting; convolutional neural network(CNN); Adaboost; transfer learning; track association

10.3979/j.issn.1673-825X.2017.02.019

2016-05-12

2016-10-21 通讯作者:张雅俊 1519908189@qq.com

国家自然科学基金(61571071,61102131); 重庆市科委自然科学基金(cstc2014jcyjA40048); 重庆邮电大学文峰创业基金(WF201404)

Foundation Items:The National Natural Science Foundation of China (61571071,61102131); The Natural Science Foundation of Chongqing Science and Technology Commission (cstc2014jcyjA40048); The Wenfeng innovation and start-up project of Chongqing University of Posts and Telecommunications (WF201404)

TP391;TN911

A

1673-825X(2017)02-0265-07

张雅俊(1992-),女,湖北天门人,硕士研究生,主要研究方向为计算机视觉和行为识别。E-mail: 1519908189@qq.com。

高陈强(1981-),男,重庆人,教授,博士,主要研究方向为图像处理、视觉分析、目标检测、行为识别和事件检测。E-mail: gaocq@cqupt.edu.cn。

李 佩(1989-),女,湖北荆州人,硕士研究生,主要研究方向为计算机视觉和行为识别。E-mail: lipeisww@gmail.com。

刘 江(1994-),男,江苏南京人,本科生,主要研究方向为计算机视觉、行为识别和检测。E-mail: liujiang4work@outlook.com。

程 华(1982-),男,湖北赤壁人,博士,主要研究方向为船舶电气和图像处理。E-mail: hchenghuab@163.com。

猜你喜欢

人流量人头检测器
山西省立法禁止野外用火成效显著 林草防火责任明确到山头地头人头
自动门人流量检测系统设计
假人头防盗大法
基于二次否定剪切选择的入侵检测方法*
提高高职院校图书馆现刊阅览室人流量的策略研究
朋友圈
三级客运汽车站服务能力影响因素分析
车道微波车辆检测器的应用
一种柱状金属物质量检测器的研究
一种雾霾检测器的研究与设计