盛恒 黄铭 杨晶晶
摘 要:针对人员位置相对固定的场景中实时人数统计的管理需求,以普通高校实验室为例,设计并实现了一套基于更快速的区域卷积神经网络(Faster R-CNN)和交并比(IoU)优化的实验室人数统计与管理系统。首先,使用Faster R-CNN模型对实验室内人员头部进行检测;然后,根据模型检测的输出结果,利用IoU算法滤去重复检测的目标;最后,采用基于坐标定位的方法确定实验室内各个工作台是否有人,并将相对应的数据存入数据库。该系统主要功能有:①实验室实时视频监控及远程管理;②定时自动拍照检测采集数据,为实验室的量化管理提供数据支撑;③实验室人员变化数据查询与可视化展示。实验结果表明,所提基于Faster R-CNN和IoU优化的实验室人数统计与管理系统可用于办公场景中实时人数统计和远程管理。
关键词:卷积神经网络;目标检测;更快速的区域卷积神经网络;人数统计;交并比
中图分类号: TP183
文献标志码:A
Abstract: Aiming at the management requirement of real-time personnel statistics in office scenes with relatively fixed personnel positions, a laboratory personnel statistics and management system based on Faster Region-based Convolutional Neural Network (Faster R-CNN) and Intersection over Union (IoU) optimization was designed and implemented with an ordinary university laboratory as the example. Firstly, Faster R-CNN model was used to detect the heads of the people in the laboratory. Then, according to the output results of the model detection, the repeatedly detected targets were filtered by using IoU algorithm. Finally, a coordinate-based method was used to determine whether there were people at each workbench in the laboratory and store the corresponding data in the database. The main functions of the system are as follows: ① real-time video surveillance and remote management of the laboratory; ② timed automatic photo, detection and acquisition of data to provide data support for the quantitative management of the laboratory; ③ laboratory personnel change data query and visualization. The experimental results show that the proposed laboratory personnel statistics and management system based on Faster R-CNN and IoU optimization can be used for real-time personnel statistics and remote management in office scenes.
Key words: Convolutional Neural Network (CNN); object detection; Faster Region-based Convolutional Neural Network (Faster R-CNN); personnel statistics; Intersection over Union (IoU)
0 引言
較之传统的室内人数统计技术,利用目标检测技术实现的室内人数统计技术能够实现对目标的实时检测与统计。因此,该类室内人数统计技术越来越广泛地被运用在智能监控领域,该技术的运用能够有效地提升对室内相关人员的监督管理作用。如何利用目标检测技术改进和提高室内实时人数统计技术是许多研究工作者关注的热点。
文献[1]提出基于区域深度特征的人头检测方法;文献[2]提出基于骨架特征的人数统计;文献[3]提出自适应增强(Adaptive boosting, Adaboost)与背景差分级联的室内人数统计方法;文献[4]提出基于多特征协同的人头检测方法。这些方法都是基于人工提取图像特征的目标检测方法,无论是检测准确率,还是适用范围,均有较大的局限性。近年来,随着深度学习的发展,利用深层神经网络提取图像特征越来越成为目标检测领域主流的研究方向。自Girshick等[5]提出了基于区域的卷积神经网络(Region-based Convolutional Neural Network, R-CNN)的目标检测方法,Fast R-CNN[6]、Faster R-CNN[7]、YOLO(You Only Look Once)[8]、单发多盒检测器(Single Shot multibox Detector, SSD)[9]等一系列具有较高准确率的基于深度学习的目标检测算法被相继提出。其中,Faster R-CNN在检测速度较快的同时达到了较高的检测准确率,因此,在实际场景中运用较多[10-13]。
针对室内人员固定、工位固定这一常见办公场景,本文以普通高校实验室为例,提出了一种基于Faster R-CNN和交并比(Intersection over Union, IoU)优化的室内人数统计方法。该方法利用深度神经网络提取图像中的人头特征,具有更高的检测准确率;此外,提出了基于坐标定位的方法,能够较为精确地确定实验室每个工作台上是否有人。最后,利用训练好的检测模型设计并开发了一套实验室人数统计与管理系统,较好地实现了实验室远程化、自动化、智能化管理。实验结果表明,该系统可应用于常见的室内办公场景。
1 Faster R-CNN检测原理
Fast R-CNN作为R-CNN模型的改进,虽然提升了检测速度,但它和R-CNN一样,采用选择性搜索(Selective Search, SS)方法[14]提取图像的候选目标区域(Proposal),因此依然存在检测步骤繁琐、时间和内存消耗较大等问题。而Faster R-CNN则在模型中引入区域建议网络(Region Proposal Network, RPN)提取候选目标区域,实现了卷积层特征共享,极大地提升了候选目标区域的生成速度。
Faster R-CNN网络结构如图1所示,主要由RPN和Fast R-CNN检测器构成,其中RPN的输入是经过一系列卷积所提取的图像特征。
诸如Alex神经网络(Alex Neural Network, AlexNet)[15]、极深卷积神经网络(Visual Geometry Group Neural Network, VGGNet)[16]、谷歌神经网络 (GoogLe Neural Network, GoogLeNet)[17]等传统的深度神经网络可以通过增加网络层数来增加提取到的图像特征数量。但是在深层网络能够收敛的情况下,随着网络层数的增加,网络的检测准确率会出现饱和甚至下降的現象,即网络的“退化”现象[8]。He等[18]提出的残差网络(Residual Neural Network, ResNet)能够有效解决网络“退化”现象,并且具有更为优秀的图像特征学习能力。因此本文选取残差网络作为Faster R-CNN的特征提取网络。
残差网络的单元结构如图2所示,假设网络单元的原始映射输出为H(x),即H(x)=F(x)+x,则F(x)= H(x)-x。因此,深层网络的每一层卷积输出将变为拟合残差。可以简单理解为,残差网络在传统的深层卷积网络中增加了一些“跨层连接”(图2中的x) [19],当训练误差随着网络的深入而增大时,残差网络将会跳过某些卷积层,直接将原始数据输入到之后的卷积层,既保证了数据传递的完整性,又相对降低了训练误差,减少了深层网络的训练难度。
1.2 区域建议网络
传统的候选目标区域提取方法都存在着非常耗时的问题,如Adaboost[20]中使用的滑动窗口和图像金字塔、 R-CNN和Fast R-CNN中使用的SS。而Faster R-CNN所使用的RPN将候选目标区域的提取嵌入到网络内部,并通过共享卷积层特征参数的方式提升了候选目标区域的生成速度。
本文中,结合目标区域的实际像素大小,为了获得多尺度的检测框, RPN使用一个3×3的卷积核,在特征提取网络输出的特征图上滑动,并将卷积核中心对应的区域映射回原始输入图像,生成4种尺度{160.5,16,161.5,162}和3种长宽比{0.5,1,2}共12个的锚点(anchor),如图3所示。因此,在每一个滑动窗口的卷积核中心对应有12个建议区域。
RPN是一种全卷积网络,其输入的是特征提取网络输出的原始图像卷积特征图,主要结构如图4所示。每个锚点所对应的建议区域经过中间层的卷积计算输出512维的特征向量,然后分别被送入分类层和位置回归层。其中,分类层输出对应锚点中目标的分类信息,包括背景的置信度和目标类别的置信度;位置回归层输出锚点中目标的位置信息,包括目标区域的中心点坐标、长度和高度。最后,采用非极大值抑制(Non-Maximum Suppression, NMS)算法 [21],根据所有锚点的分类信息和位置信息,对候选目标区域进行筛选,从而得到2000个质量较高的目标候选区域。
1.3 Fast R-CNN检测网络
对于RPN中生成的目标候选区域,需要送到Fast R-CNN检测器中作进一步的精确分类和坐标回归。由于这些目标候选区域的尺寸大小不一,它们首先将被送入到感兴趣区域(Region of Interest, RoI) 池化层进行处理,从而得到统一大小的目标候选区域。
从图1中可以看出,RoI池化层结合特征图和目标候选区域进行坐标映射,输出固定大小的目标候选区域。接着,这些目标候选区域被送到Fast R-CNN检测器中进行训练,得到包括分类信息和坐标信息在内的最终检测结果。
2 实验过程与结果分析
2.1 数据产生与训练
本文的实验数据利用实验室内顶部的单目摄像头采集。顶部摄像头所拍摄到的画面,人体各部位存在着较多的遮挡,因此选定人体头部作为检测目标,进而确定实验内人员数量和位置分布。共采集到约6000张原始图片,经过翻转、对称,数据集扩展到约24000张。图片尺寸统一为1510×860像素,每张图片中人数从1到10不等。按照10∶1的比例将数据集随机分为训练集和测试集。数据集图像示例如图5所示。
本文的实验环境为Windows10,GeForce GTX 1080Ti,并利用主流的深度学习框架TensorFlow[22]实现网络模型,采用ResNet101[18]作为整个模型的特征提取网络。批文件大小为4,初始学习率为0.0003,迭代到40000次后学习率降到0.00003,迭代到80000次后学习率降到0.000003,共迭代200000次。
2.2 结果分析
本文中,经过训练,Faster R-CNN模型在测试集上的mAP(mean Average Precision)[23]达到了98.49%。训练过程中的损失值(loss)[7]曲线如图6所示。
1)实验室内场景背景单一,人员流动性小,人员和背景变化都较少,图像特征更为突出;
2)训练数据样本较多,训练集包含有2万多张图片,共约7万个标记的人体头部样本;
3)针对不同尺度的目标,采用4种尺度、3种长宽比,共计12种的锚点,能够较好地检测不同尺度的目标;
4)模型利用RPN生成高质量的目标候选区域,为后续Fast R-CNN网络提供了质量较高训练数据。
为了进一步研究模型的泛化能力,即在实际场景中的检测性能,从摄像头拍摄的画面中采集105张图片作为增量测试集,测试不同置信度下模型的检测性能。检测模型最常用的评价指标是精确率和召回率。调用模型进行检测时存在着以下四种情况:1)实际上是目标,检测认为是目标;2)实际上是目标,检测认为不是目标;3)实际上不是目标,检测认为是目标;4)实际上不是目标,检测认为不是目标。
2.3 IoU优化
本文实现的模型准确率和泛化能力都比较突出,检测结果较为良好,如图8所示。但也会出现如图9所示的误检情况,图9中,检测模型将图中左下角的一个人体头部检测成了两个。针对这种情况,本文利用IoU算法作进一步的优化。
2.4 人员定位
针对实验室内人员流动性小、环境单一,以及人员位置相对固定的特点,本文提出基于坐标定位的方法来确定每个工作台上是否有人,并将相应数据存入数据库,为实验室的科学管理提供可靠的数据支撑。如图12所示,预先将监控区域划分为12个矩形区域,分别代表其区域内的工作台。首先利用模型检测输出的人员目标位置信息确定人体头部的质心,然后逐一进行判別,质心落在在哪个区域则认为哪个区域的工作台上有人。如图12所示,可认为2、3、4、6、8号区域的工作台上有人。
3 系统实现与展示
系统利用开源Web开发框架Django[24]开发而成,系统主要有两大功能模块:系统历史数据查询与展示模块和实时视频监控与检测模块。系统基于B/S模式开发而成,具备远程管理功能。授权用户在校园网范围内,通过PC端浏览器登录系统均可进行访问。
在每天6:30—23:30,系统服务器每分钟自动拍摄一张实验室监控画面,并调用检测模型对其进行检测;然后对检测结果进行人员定位,确定每个工作台是否有人;最后将相应数据存入数据库,以便实验室管理员查询。图13为实验室内单日人数变化与一段日期内人数变化查询页面;图14为实验室内历史监控画面查看页面与查看结果;图15为实验室各个工作台的详细使用情况查询页面(以6号工作台为例)。本系统已在实验室稳定运行半年,其推广应用价值被验证。
4 结语
针对常见办公场景中人员固定、工位固定的特点,以普通高校实验室为例,提出了基于Faster R-CNN和IoU优化的室内人数统计方法。实验结果表明,所提方法具有良好的检测准确效果。然后,结合检测结果,采用基于坐标定位的方法确定室内每个工作台是否有人。最后,利用Django框架,开发了一套实验室人数统计与管理系统,实现了实验室的远程管理、自动管理和智能管理。但本文所研发的系统存在系统人员定位依赖于人员位置相对固定这一前提条件的问题,当人员位置发生移动时系统无法作出准确的判断。因此,接下来将在保证检测精度的前提下进一步开展视频帧之间的目标跟踪算法研究,通过绘制人员的移动轨迹进而实现人员的动态定位。
参考文献 (References)
[1] 何扬名,杜建强,肖贤波.基于区域深度特征的人头检测方法[J].微电子学与计算机,2013,30(11):39-42.(HE Y M, DU J Q, XIAO X B. Detecting human head by depth characteristics of regions [J]. Microelectronics & Computer, 2013, 30(11): 39-42.)
[2] 夏菁菁,高琳,范勇,等.基于骨架特征的人数统计[J].计算机应用,2014,34(2):585-588.(XIA J J, GAO L, FAN Y, et al. People counting based on skeleton feature [J]. Journal of Computer Applications, 2014, 34(2): 585-588.)
[3] 叶锋,洪斯婷,郑德城,等.基于Adaboost与背景差分级联的室内人数统计方法[J].福建师范大学学报(自然科学版),2017,33(1):7-13.(YE F, HONG S T, ZHENG D C, et al. A people counting method based on Adaboost and background subtraction in indoor environment [J]. Journal of Fujian Normal University (Natural Science Edition), 2017, 33(1):7-13.)
[4] 张晓琪,宋钢.基于多特征协同的人头检测新方法[J].西南师范大学学报(自然科学版),2018,43(7):46-52.(ZHANG X Q, SONG G. A new head detection method oriented for vertical monocular camera way [J].Journal of Southwest China Normal University (Natural Science Edition), 2018, 43(7): 46-52.)
[5] GIRSHICK R, DONAHUE J, DARRELL T, et al. Rich feature hierarchies for accurate object detection and semantic segmentation [C]// Proceedings of the 2014 IEEE Conference on Computer Vision and Pattern Recognition. Washington, DC: IEEE Computer Society, 2014: 580-587.
[6] GIRSHICK R. Fast R-CNN [C]// Proceedings of the 2015 IEEE International Conference on Computer Vision. Washington, DC: IEEE Computer Society, 2015: 1440-1448.
[7] REN S Q, HE K M, GIRSHICK R, et al. Faster R-CNN: towards real-time object detection with region proposal networks [C]// NIPS 2015: Proceedings of the 28th International Conference on Neural Information Processing Systems. Cambridge, MA: MIT Press, 2015: 91-99.
[8] REDMON J, DIVVALA S, GIRSHICK R, et al. You only look once: unified, real-time object detection [C]// Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition. Washington, DC: IEEE Computer Society, 2016: 779-788.
[9] LIU W, ANGUELOV D, ERHAN D, et al. SSD: single shot multibox detector [C]// Proceedings of the 2016 European Conference on Computer Vision, LNCS 9905. Cham: Springer, 2016: 21-37.
[10] 王黎,陆慧娟,叶敏超,等.Faster R-CNN的癌症影像检测方法[J].中国计量大学学报,2018,29(2):136-141.(WANG L, LU H J, YE M C, et al. A cancer image detection method based on Faster R-CNN [J]. Journal of China University of Metrology, 2018, 29(2): 136-141.)
[11] HUANG W Q, HUANG M Z, ZHANG Y T. Detection of traffic signs based on combination of GAN and faster R-CNN [J].Journal of Physics: Conference Series, 2018, 1069(1): 012159.
[12] 戴陳卡,李毅.基于Faster R-CNN以及多部件结合的机场场面静态飞机检测[J].计算机应用,2017,37(z2):85-88.(DAI C K, LI Y. Aeroplane detection in static aerodrome based on faster R-CNN and multi-part model [J]. Journal of Computer Applications, 2017, 37(z2): 85-88.)
[13] 胡炎,单子力,高峰.基于Faster R-CNN和多分辨率SAR的海上舰船目标检测[J].无线电工程,2018,48(2):96-100.(HU Y, SHAN Z L, GAO F. Ship detection based on Faster R-CNN and multiresolution SAR [J]. Radio Engineering, 2018, 48 (2): 96-100.)
[14] UIJLINGS J R R, van de SANDE K E A, GEVERS T, et al. Selective search for object recognition [J]. International Journal of Computer Vision, 2013, 104(2): 154-171.
[15] KRIZHEVSKY A, SUTSKEVER I, HINTON G E. ImageNet classification with deep convolutional neural networks [C]// NIPS 2012: Proceedings of the 25th International Conference on Neural Information Processing Systems. North Miami Beach, FL: Curran Associates Inc., 2012: 1097-1105.
[16] SIMONYAN K, ZISSERMAN A. Very deep convolutional networks for large-scale image recognition [J]. arXiv Preprint, 2014, 2014: arXiv. 1409.1556.
[17] SZEGEDY C, LIU W, JIA Y Q, et al. Going deeper with convolutions [C]// Proceedings of the 2015 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, NJ:IEEE, 2015: 1-9.
[18] HE K M, ZHANG X Y, REN S Q, et al. Deep residual learning for image recognition [C]// Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2016: 770-778.
[19] 彭剛,杨诗琪,黄心汉,等.改进的基于区域卷积神经网络的微操作系统目标检测方法[J].模式识别与人工智能,2018,31(2):142-149.(PENG G, YANG S Q, HUANG X H, et al. Improved object detection method of micro-operating system based on region convolutional neural network [J]. Pattern Recognition and Artificial Intelligence, 2018, 31(2): 142-149.)
[20] LIENHART R, MAYDT J. An extended set of Haar-like features for rapid object detection [C]// Proceedings of the 2002 International Conference on Image Processing. Piscataway, NJ: IEEE, 2002: 900-903.
[21] NEUBECK A, van GOOL L. Efficient non-maximum suppression [C]// ICPR 2006: Proceedings of the 18th International Conference on Pattern Recognition. Washington, DC: IEEE Computer Society, 2006: 850-855.
[22] 李嘉璇.TensorFlow技术解析与实战[M].北京:人民邮电出版社,2017:12-16.(LI J X. TensorFlow Technology Analysis and Practice [M]. Beijing: Posts and Telecom Press, 2017: 12-16.)
[23] EVERINGHAM M, van GOOL L, WILLIAMS C K I, et al. The pascal Visual Object Classes (VOC) challenge [J]. International Journal of Computer Vision, 2010, 88(2): 303-338.
[24] 刘长龙.Python高效开发实战:Django、Tornado、Flask、Twisted [M].北京:电子工业出版社,2016:175-177.(LIU C L. Efficient Python Development Practices: Django, Tornado, Flask, Twisted [M]. Beijing: Publishing House of Electronics Industry, 2016: 175-177.)