APP下载

基于改进YOLO算法的密集人群场景下的行人检测

2019-10-31祝庆发陈永生郭玉臣

电脑知识与技术 2019年22期
关键词:网络结构

祝庆发 陈永生 郭玉臣

摘要:针对现有的行人检测算法在密集人群场景下,准确率不高的问题,并结合上海地铁中特有的人群密集场景,本文利用YOLO目标检测算法,提出了在密集人群场景下的改进的YOLO行人检测算法。算法主要针对网络结构和损失函数进行改进,并在人工标注的实际场景下的行人数据集上进行训练与测试。实验结果表明,改进后的算法较YOLO目标检测算法在实际场景下的准确率有明显提高。

关键词:密集人群;YOLO;行人检测;网络结构;损失函数

中图分类号:TP311        文献标识码:A

文章编号:1009-3044(2019)22-0175-02

开放科学(资源服务)标识码(OSID):

近几年来,随着深度学习的飞速发展[1]以及城市轨道交通的发展[2],为密集人群场景下的行人检测[3]提供了技术和数据支持。在密集人群场景下,因为行人密度高以及行人与行人之间的相互遮挡较为严重,使得当前最优的目标检测算法在密集人群场景下的检测效果不佳。针对密集人群场景下行人检测存在的问题并结合上海地铁监控系统的实际情况,本文提出基于改进YOLO[4]算法的密集人群场景下的行人检测算法。该算法主要针对特征提取网络和损失函数两方面进行改进,较原算法(YOLO)提高了在密集人群场景下检测的准确率。

1 YOLO算法

1.1 网络结构

YOLO目标检测算法总体使用卷积神经网络来实现,并在Pascal VOC检测数据集[5]上进行评估。网络的初始卷积层从图像中提取特征,而全连接层预测输出概率和坐标。网络架构受到GoogLeNet图像分类模型的启发[6]。网络有24个卷积层,后面是2个全连接层。网络只使用1×1降维层,后面是3×3卷积层,该设计与文献[7]中的结构类似,而不是像GoogLeNet一样使用Inception模块。完整的网络如图1所示。

1.2 损失函数

YOLO的损失函数中边界框x和y坐标参数化为特定网格单元位置的偏移量,所以它们的值在0和1之间,这样设置方便网络的优化。同样的,损失函数使用了平方和误差,因为很容易进行优化,但是这并不完全符合最大化平均精度的目标。分类误差与定位误差的权重是一样的,这并不理想。因为,在每张图像中,许多网格单元不包含任何对象。如果不假思索地将这些单元格的“置信度”分数推向零,通常压倒了包含目标的单元格的梯度。这可能导致模型不稳定,从而导致训练早期发散。为了改善这一点,损失函数增加了边界框坐标预测损失,并减少了不包含目标边界框的置信度预测损失。YOLO使用两个参数λcoord和λnoobj来完成这个工作。并根据经验设置λcoord=5和λnoobj=.5。

YOLO每个网格单元预测多个边界框。在训练时,每个目标只需要一个边界框预测器来负责。指定一个预测器“负责”根据哪个预测与真实值之间具有当前最高的IOU来预测目标。这导致边界框预测器之间的专业化。每个预测器可以更好地预测特定大小,方向角,或目标的类别,从而改善整体召回率。

其中S 代表最终特征图的网格尺寸; B 代表每个网格的预测框个数;( x ,y )代表代表框的中心坐标; c 代表框的置信度 (confidence); 代表目标是否出现在网格单元i中,代表网格单元i中的第j个边界框预测器“负责”该预测。

2数据集

由于国内外没有开源的密集人群场景下的行人检测数据集,同时考虑到算法的实际应用场景较为特殊,本文采用的数据集,是在算法实际应用场景下采集的视频图像,进行手工标注而来。图片大小归一化到416X416,训练数据1000张,测试数据300张。

考虑到密集场景下人群遮挡较为严重,标注框只包含行人的头部和肩部,而不是包含整个行人。因为密集人群场景下只能看到行人的头部和肩部,这样有利于提高算法检测的准确率。同时,为了简化算法,提高算法的检测速度,标注框根据实际情况,采用了三个固定大小的尺寸,分别为70X70,55X55和30X30。三个尺寸的标注框可以合适的标注变化不大的行人的头部和肩部。

3改进的YOLO算法

3.1 网络结构

改进的YOLO算法的网络结构借鉴YOLOv3算法[8],其中特征提取网络为62层的ResNet[9],结构如图3所示。相比YOLO算法的24层,改进的YOLO算法网络更加深,这样有利于特征的提取与语义表达。同时引入了特征金字塔结构,这样有利于提高检测效果。网络使用步长为2的卷积层代替池化层。算法在实验中采用416X416尺寸的输入图片,特征提取网络最后一层的尺寸为 13X13。

3.2 多尺度预测

改进的YOLO算法采用了anchor[10]的设计方式,并利用网络第62,53和36层输出的feature map进行多尺度预测。因为算法训练采用的数据集的ground truth仅有三个尺寸,恰好可以设计三个不同预测层的bounding box的大小为70X70,55X55和30X30。

3.3 损失函数

改进的YOLO算法采用了专有的数据集进行训练与测试,并且因为bounding box的大小与ground truth刚好相等,所以改进的YOLO算法不需要计算bounding box和ground truth之间的长宽误差,所以损失函数的表达式为如图4所示。

4实验

4.1实验参数

本文实验代码采用开源的轻量级深度学習框架Darknet[11]编写,软硬件相关配置参数如表1所示。

4.2 实验结果分析

本文算法检测目标为单一目标,算法的衡量指标以行人检测的准确率为准,实验结果对比的基线为原始的YOLO算法;参考对比实验为,在本实验数据集上进行训练的修改相应参数的YOLO算法,并将其命名为:重新训练的YOLO算法。对比结果如表2所示。

从表2可以看出使用实验中的数据集对YOLO算法进行重新训练可以小幅提高检测的准确率,从中可以看出使用特定的数据集对特定的问题的检测效果会比使用通用数据集的算法的检测准确率要高。改进的YOLO算法的准确率较其他两个实验有大幅提升,从中可以看出越深层的神经网络,检测的效果也越好。 5结论

本文针对上海地铁独特的密集人群场景,对YOLO目标检测算法进行改进,提高了算法的准确率。通过对YOLO算法进行网络结构和损失函数的改进可以看出,增加网络的深度可以提高现有检测算法的准确率。但从算法最后的准确率可以看出仅仅增加网络的深度对算法检测的准确率的提高是有限的,人群严重遮挡的情况,仍然没有很好的提高准确率的解决方法。后续仍然需要针对密集人群场景下的行人检测做进一步的理论分析和实际测试。

参考文献:

[1] 侯宇青阳,全吉成,王宏伟.深度学习发展综述[J].舰船电子工程,2017,37(4):5-9+111.

[2] 刘小明出席中国国际铁路与城市轨道交通大会指出:开放合作创新引领 推进城市轨道交通高质量发展[J].交通企业管理,2018(6):23.

[3] Sabzmeydani P,Mori G.Detecting pedestrians by learning shapeletfeatures [C] . Computer Vision and Pattern Recognition,2007.CVPR07.IEEE Conference on.IEEE2007:1-8.

[4] Redmon J, Divvala S, Girshick R, et al. You only look once: unified, real time object detection [C]// Computer Vision and Pattern Recognition. 2016: 779-788.

[5] M. Everingham, S. M. A. Eslami, L. Van Gool, C. K. I. Williams, J. Winn, and A. Zisserman. The pascal visual object classes challenge: A retrospective. International Journal of Computer Vision, 111(1):98–136, Jan. 2015. 2

[6] C. Szegedy, W. Liu, Y. Jia, P. Sermanet, S. Reed, D. Anguelov, D. Erhan, V. Vanhoucke, and A. Rabinovich. Going deeper with convolutions. CoRR, abs/1409.4842, 2014. 2

[7] M. Lin, Q. Chen, and S. Yan. Network in network. CoRR, abs/1312.4400, 2013. 2

[8] Redmon J,Farhadi A. YOLOv3: An Incremental Improvement [C]//IEEE Conference on Computer Vision and Pattern Recognition. 2018.

[9] K. He, X. Zhang, S. Ren, and J. Sun. Deep residual learn- ing for image recognition. In Proceedings of the IEEE con- ference on computer vision and pattern recognition, pages 770–778, 2016.

[10] W. Liu, D. Anguelov, D. Erhan, C. Szegedy, S. Reed, C.- Y. Fu, and A. C. Berg. Ssd: Single shot multibox detector. In European conference on computer vision, pages 21–37. Springer, 2016.

[11] Redmon J. Darknet: Open Source Neural Networks in C [DB/OL]. [2017-10-25]. http://pjreddie. com/darknet/.

【通聯编辑:唐一东】

猜你喜欢

网络结构
一种改进深度学习网络结构的英文字符识别
对不同承发包模式下工程供应链的网络结构分析
基于广义混合图的弱节点对等覆盖网络结构
体系作战信息流转超网络结构优化
大型火力发电厂烟气脱硫控制网络结构渐变趋势
基于互信息的贝叶斯网络结构学习
知识网络结构维对于创新绩效的作用机制——远程创新搜寻的中介作用
沪港通下A+ H股票网络结构演化的实证分析
复杂网络结构比对算法研究进展
美西南蛛网式航线网络结构特点分析