APP下载

结合多尺度反馈的行人头部检测

2021-12-08金兰英路锦正

小型微型计算机系统 2021年12期
关键词:尺度行人尺寸

金兰英,路锦正,2

1(西南科技大学 信息工程学院,四川 绵阳 621010) 2(特殊环境机器人技术四川省重点实验室,四川 绵阳 621010) E-mail:1351877395@qq.com

1 引 言

随着深度学习的发展,基于深度学习的行人检测技术研究逐渐成为研究热点并得到了快速发展.当前行人检测技术广泛应用于智能视频监控跟踪、人脸识别、人群计数等诸多领域,对城市商业建设规划、人流量或交通流量管控、公共区域安全维护等具有重要的现实意义.

当前基于深度学习的目标检测方法主要分为以R-CNN系列[1-3]、SPPNet[4]、R-FCN[5]等为代表的Two-Stage目标检测算法和以SSD[6]、YOLO系列[7-9]、DenseBox[10]等为代表的One-Stage目标检测算法两类.Two-Stage目标检测算法将物体定位和识别分为两步完成,识别错误率低,漏检率较低,但速度较慢,在实时检测场景下效果较差.随之产生的One-Stage目标检测算法将物体定位和物体分类在一个步骤中完成,实现了对图像端到端的检测,整体流程较为简单,检测速度快,但检测准确率相比于Two-Stage模型略低.

基于以上讨论可知,当前的目标检测技术无论是在检测精度上还是检测速度上都具有较大的进步空间,目标检测算法研究依然是一项非常具有挑战性的课题.当下行人检测面临的困难主要包括如下几个方面:1)检测目标体态的多样性:行人由于运动造成身体姿态的多样性和拍摄角度造成的人体形态多样性最终导致的行人遮挡等;2)检测目标尺度的多样性:密集人群的小尺度行人检测和稀疏人群的大尺寸行人检测;3)目标检测场景的多样性:天气、光照、地理位置等使监控视频采集的数据具有多样性,如场景中的具有与行人相似特征的物体易被错误地识别为人.

针对以上几点困难,Li Y等人[11]提出Trident网络,采用尺度感知规则训练网络,Li H等人[12]提出使用SSD进行行人头部检测,但在对小尺度目标的检测识别上仍有许多进步空间.Chen K等人[13]以Faster R-CNN为网络原型提出新增锚点框来实现对不同尺度目标的检测,Ji等人[14]针对性地对锚点框进行尺度修改以降低漏检率.为有效提升对行人的检测精度和检测速度,受文献[15]启发,本文提出基于YOLOv3改进的行人头部检测方法来实现对行人的检测.通过新增尺寸为输入图像尺寸四分之一的特征图以提升对小尺度行人的识别;采用多尺度反馈以引入全局上下文信息来提升对高密度人群的识别能力;最后,对INRIAPerson[16]、PASCALVOC2012[17]、WiderFace[18]等数据集进行行人头部标注,制作头部数据集进行训练测试,验证了该算法的有效性.

2 YOLOv3算法

2016年,Redmon等人提出的YOLO算法率先实现了网络端到端的学习.该算法中只有单个网络[19],不需要提取候选区域,计算量大量减少,极大地提高了检测速度,从而引领了目标检测网络框架的新风潮.2017年提出的YOLOv2算法创新性地使用了Darknet-19作为骨干网络,引入了Batch Normalization(BN)[20]模块,该模块加速了网络收敛并能防止过拟合,最终在检测速度上得到了极大的提升.2018年,YOLOv3正式被提出.

相比于YOLOv2,YOLOv3首先调整了它的网络结构,由YOLOv2的Darknet-19扩展至Darknet-53,即包含有53个卷积层,加深了网络的深度.Darknet-53网络借鉴了ResNet[21]的残差结构,该种结构使训练深层网络的难度大大减小,使之可以具有更深的网络结构,从而提升了检测精度.其次,为了增强网络对小目标的检测效果,YOLOv3在YOLOv2的一个尺度预测上新增两个尺度成为三尺度特征预测,结合特征金字塔的思想,利用特征提取器生成的3个不同尺寸的特征图进行目标预测.在对目标的分类预测上,YOLOv3用logistic分类取代softmax分类,这样能够支持对同一目标的多标签分类,有利于处理更复杂的情况.

3 本文方法

3.1 特征提取器

在基于卷积神经网络的目标检测中,特征提取骨干网络的选取往往决定着提取出的特征质量,从而直接影响目标检测的效果.本文采用Darknet-53作为特征提取器的骨干网络.该网络模型在分类准确度和效率的平衡上,比ResNet-101、ResNet-152和Darknet-19表现得更好.YOLOv3网络结构使用3种尺寸的特征图来检测不同大小的目标,即在5倍下采样、4倍下采样和3倍下采样处创建特征映射.由特征金字塔网络(Feature Pyramid Networks,FPN)思想可知,深层卷积网络生成的特征图虽然拥有较高的语义信息,但是在卷积过程中会丢失目标的位置信息,不利于小型目标的检测;而浅层卷积得到的特征图虽然语义信息不够丰富,但是却保留了目标较为精确的位置信息.

因此,为了提升对密集人群中小尺寸行人的检测能力,我们在特征提取网络中新增了一个特征输出层,它通过两倍下采样得到,位于浅层网络.当输入图像尺寸为416×416时,它的特征图尺寸为104×104.此时我们得到4个尺寸的特征图:13×13,26×26,52×52,104×104.尺寸为52×52和104×104的特征图位于网络的较浅层,感受野较小,包含较强的目标位置信息,可以捕获低级特征,适用于小尺寸目标检测;尺寸为26×26,13×13的特征图位于网络较深处,感受野较高,包含更为丰富的语义信息,适用于大中目标的检测.本文特征提取网络结构如图1所示.该网络在一定程度上减轻了行人尺寸变化剧烈带来的检测困难问题,使得对于不同密度的人群也能得到较好的检测效果.

图1 基于Darknet-53的特征提取器Fig.1 Feature extractor based on Darknet-53

3.2 多尺度反馈

对于多尺度特征提取,存在的问题是高分辨率特征图由于缺乏上下文信息而在辨别人上表现受限.比如容易把行人所处环境中的四周与人具有相似特征的景或物错误地检测识别为行人.为了提升对高密度人群中行人的识别能力,我们把较高感受野和高感受野联合起来以引入全局上下文信息到各个尺度分支中.整个行人检测模块如图2所示.

分析图2可以看出,对于特征提取网络的4个不同尺寸的特征图输出,端口2为1/32的输入尺寸连接,该层特征图输出由于位于网络最深处,没有接受来自其他层的反馈输入,但它会生成反馈分支分别连接到1/16、1/8和1/4尺度分支上,然后通过6个DBL和最后一层卷积层得到相应的预测.而对于剩下3个尺度分支,都加入了多尺度反馈.多尺度反馈通过高分辨率分支接收来自较低分辨率尺度分支的反馈连接来实现.例如,对于1/4尺度分支,它将接受来自1/8,1/16以及1/32这3个分支的反馈链接;对于1/8尺度分支,它将接受来自1/16以及1/32两个尺度分支的反馈链接并生成反馈分支连接到1/4尺度分支上.从图2中可以看出,在接收到不同尺寸的反馈分支后,将进行反馈处理.对于反馈处理,是让每个反馈输入经过一个转置卷积层,以对反馈特征图进行上采样从而使反馈特征尺寸与当前特征尺度分支保持一致.然后将这些上采样处理后的分支与当前尺寸分支进行张量拼接(concat)操作,最后经过一系列DBL结构,再通过一层卷积层,做出相应的预测.最后得到4个不同尺寸的预测层y1,y2,y3,y4.

图2 行人检测整体框架图Fig.2 Overall framework of pedestrian detection

通过多尺度反馈处理将全局上下文信息驱动到其他尺寸分支不仅可以提升对行人的检测识别能力,还有助于抑制虚假检测.

3.3 边界框预测

对于边界框的预测,采用直接预测相对位置的方法预测出边界框相对于左上角的相对坐标.首先采用k-means聚类方法生成12个先验框(anchor box prior).YOLOv3中先验框为9个.先验框与预测框的关系如图3所示.

虚线框为先验框,实线框为预测边界框.预测框通过对先验框进行平移缩放得到.在经过特征提取器获得4个不同尺寸的特征图后,将输入图像根据特征图尺寸划分成相应大小的s×s个网格单元(grid cell).当某个目标的中心坐标落在某个grid cell中,则由该grid cell预测该目标.每个网格单元会预测3个边界框,每个边界框包含4个坐标信息和1个置信度信息.

对于边界框的坐标预测计算公式具体如下.

bx=σ(tx)+cx

(1)

by=σ(ty)+cy

(2)

bw=pwetw

(3)

bh=pheth

(4)

Pr(object)×IOU(b,object)=σ(to)

(5)

网络模型预测得到4个坐标偏移输出tx,ty,tw,th.σ为激活函数Sigmoid,将网络预测值tx,ty映射到0-1区间内.cx,cy是特征图中单元网格相对于图像左上角的偏移量.pw,ph为先验框尺寸.最终通过上述坐标偏移公式得到预测边界框的中心坐标为bx,by,宽高为bw,bh.σ(to)为预测框的置信度,它通过预测框的概率和预测框与真实框的IOU 值相乘计算得到.通过对σ(to)设定阈值,滤除掉低分预测框,再对剩下的预测框进行非极大值抑制(NMS,Non-Maximum Suppression)[22]得到最终的预测.对于目标的类别预测采用逻辑回归分类.当图像经特征提取后的某一类输出经逻辑回归分类器后若大于0.5,则表示属于该类.

4 实验结果与分析

4.1 实验环境

本文实验环境使用Ubuntu18.04操作系统,中央处理器为Intel®CoreTM i7-7700K CPU @4.20GHz x 8,运行内存32G,显卡使用NVIDIA GeForce GTX 1080Ti,显存11G.使用的深度学习框架为Keras+Tensorflow.

4.2 数据集

本文使用WiderFace、INRIAPerson和PASCALVOC2012 3个数据集对提出的结合多尺度反馈的行人头部检测方法进行行人检测效果测试.又由于本文是基于行人头部的检测,所以需要制作行人头部数据集.本文采用标注工具LabelImg对INRIAPerson,PASCALVOC2012和WiderFace数据集进行标注,生成.xml文件.

3个数据的具体参数特征如表1所示.WiderFace数据集由61种人群事件类别组成,如家庭聚会、办公室会议等.PASCALVOC2012数据集有20个目标类别,本实验抽取该数据集中的Person类别进行实验.3个各具特点的人群数据集包含了丰富的人群特征信息,使得本文模型具有较强的鲁棒性.数据集中部分示例图像如图4所示.

表1 行人数据集参数描述Table 1 Pedestrian data set parameter description

4.3 实验结果分析

为了验证本实验模型的有效性,将本文算法与YOLOv3算法的行人检测效果进行对比.使用本文方法和YOLOv3算法训练得到的模型进行实验得到的部分效果图如图5所示.从图5(a)的几幅图对比分析可以看出,当行人躯干被遮挡时,基于全身的检测方法存在明显的漏检现象,而本文建立的行人头部检测模型降低了躯干遮挡对检测的影响,且在视觉上更容易定位行人;图5(b)由于行人较密集,存在较多小尺寸行人,YOLOv3算法对小尺寸行人的检测效果较差,本文采用的多尺度反馈结构及四尺度检测提升了对小尺度人群的检测效果;图5(c)对比可看出,YOLOv3算法将玻璃橱窗中的行人倒影和路边标志牌误识为了人,在复杂的背景环境中,本文算法改善了对于具有与行人相似特征的物体的误检现象,有效提升了对行人的识别能力,降低了误检率.综上对不同条件下行人检测结果的对比分析可知,本文的算法明显改善了对小尺寸行人的检测效果,降低了躯干遮挡带来的漏检影响以及相似特征环境带来的行人识别干扰影响,降低了漏检率,提升了算法的检测精度.

图5 YOLOv3模型与本文模型检测效果对比图Fig.5 Comparison of the YOLOv3 model and the model detection effect of this article

对于检测性能的评估,本文选取平均准确率(AP,Average Precision)和检测速度作为评价指标,分别对在几种数据集上的检测结果进行对比分析.平均准确率的计算与准确率(P,Precision)、召回率(R,Recall)有关.准确率是指预测出的所有目标中正确的比例,召回率是指被正确定位识别的目标占总的目标数量的比例.对于行人检测,准确率是指检测出来的行人中确实是行人所占的百分比,召回率是指正确检出的行人数量占行人总数的百分比.由于P和R常是一对矛盾,P高、R低,或者R高、P低,故使用AP作为来权衡模型的综合效果.计算公式如下:

(6)

(7)

(8)

在INRIAPerson,PASCALVOC2012和WiderFace数据集上进行了测试,把本文算法和Faster-RCNN、YOLOv2、YOLOv3、SSD-Head几种算法进行了比较,几种检测算法性能比较结果如表2所示.IPerson指代INRIAPerson数据集,VOC2012指代PASCALVOC2012数据集,WF-Meet、WF-F_G和WF-Sur分别指代WiderFace数据集中的Meeting、Family_Group、Surgeons类别.

表2 不同算法准确率和速度对比Table 2 Comparison of accuracy and speed of different algorithms

表2展示了在不同数据集上采用不同方法的行人检测精度和速度对比.Faster-RCNN、YOLOv2和YOLOv3算法是针对行人整体进行检测,SSD-Head[12]算法是基于SSD改进的行人头部检测方法.从检测准确率来看,本文算法最高,其次依次为SSD-Head、YOLOv3、Faster-RCNN、YOLOv2.从检测速度来看,最快的是YOLOv2,其次依次为本文算法、YOLOv3、SSD-Head、Faster-RCNN.由于本文算法的网络模型比YOLOv2更复杂,所以速度要慢一些,但综合检测精度和速度,本文算法是一个较好的行人检测方法.由于不同数据集中人群密度、人群所处环境等有所差异,所以它们的检测精度和速度也有所差异.从表2可以看出,本文检测模型在INRIAPerson和VOC2012数据集上的准确率略低于WiderFace数据集所选示例类别,这是因为前两者数据集中的图片中行人与其相比,行人所处环境更为复杂,遮挡程度、拍摄距离、行人尺度等因素使得检测难度有所上升,但总体上获得了较高的检测准确率.对于WiderFace数据集,不同的类别检测效果也不同.总体上来说,本文提出的算法在检测精度和检测速度上都得到了一定幅度的提升.

图6展示了YOLOv3算法和本文检测算法在数据集WiderFace中 Surgeons类上的P-R曲线.YOLOv3算法的AP值为82.20%,本文检测算法的AP值为88.10%,提升了5.9%,在该类数据集上获得了检测准确度的最大提升幅度.

图6 WiderFace-Surgeons 上的P-R曲线Fig.6 P-R curve on WiderFace-Surgeons

5 结 论

针对密集人群对小尺寸行人检测识别困难、遮挡的问题,本文提出基于行人头部的检测算法,以YOLOv3算法为网络基础模型,新增1/4尺寸的检测层,建立多尺度反馈网络,制作丰富的训练集.实验结果表明,最终得到的目标检测模型与YOLOv3算法相比,在检测精度和检测速度上都得到了提升,在不同数据集上体现了较好的检测性能和鲁棒性.同时本文仍有许多地方需要改进,如在检测拍摄距离较远的模糊小尺寸行人时,检测精度和速度明显有所下降.如何提升复杂环境下行人的检测精度和速度将是未来的主要研究方向.

猜你喜欢

尺度行人尺寸
环境史衰败论叙事的正误及其评判尺度
CIIE Shows Positive Energy of Chinese Economy
毒舌出没,行人避让
路不为寻找者而设
我是行人
佳石选赏
佳石选赏
以长时间尺度看世界
9
尺寸