第16卷第4期 智能系统学报 Vol.16 No.4 2021年7月 CAAI Transactions on Intelligent Systems Jul.2021 D0:10.11992/tis.202010012 网络出版地址:https:/ns.cnki.net/kcms/detail/23.1538.TP.20210402.1043.004html 基于改进FCOS的拥挤行人检测算法 齐鹏宇,王洪元,张继,朱繁,徐志晨 (常州大学信息科学与工程学院,江苏常州213164) 摘要:针对大规模拥挤场景视频中行人目标小、行人遮挡和行人交叠而导致的检测困难等问题,本文将逐像 素预测目标检测框架一全卷积单阶段目标检测FCOS(fully convolutional one-stage object detection)应用于行人 检测,提出一种改进的主干网络用于提取行人特征,通过增加尺度回归实现目标行人的多尺度检测,同时减少 其他特征层检测的目标数量,进而提升行人检测的能力。在拥挤行人场景数据集CrowdHuman和小目标行人 数据集Caltech上的大量实验结果表明,和目前先进的方法相比,本文的方法对行人的检测精度有所提升,特别 是对于小目标行人检测。与原始FCOS算法相比,在CrowdHuman上平均精度提升接近15%,丢失率降低接近 33.0%:在Caltech上的平均精度提升2%。在复杂拥挤场景下的实际应用也证明本文方法的有效性。 关键词:行人检测:多尺度检测:全卷积单阶段目标检测;拥挤行人场景;训练策略;小目标检测;尺度回归:逐 像素预测 中图分类号:TP391.41文献标志码:A文章编号:1673-4785(2021)04-0811-08 中文引用格式:齐鹏宇,王洪元,张继,等.基于改进FC0S的拥挤行人检测算法.智能系统学报,2021,16(4):811-818. 英文引用格式:QI Pengyu,.WANG Hongyuan,,ZHANG Ji,etal.Crowded pedestrian detection algorithm based on improved FCOSJ.CAAI transactions on intelligent systems,2021,16(4):811-818. Crowded pedestrian detection algorithm based on improved FCOS QI Pengyu,WANG Hongyuan,ZHANG Ji,ZHU Fan,XU Zhichen (School of Information Science and Engineering,Changzhou University,Changzhou 213164,China) Abstract:In view of the detection difficulty resulting from small pedestrian objects,pedestrian occlusion,and pedestri- an overlap in large-scale crowded scene videos,this study applies a pixel-by-pixel prediction object detection frame- work,i.e.,fully convolutional one-stage object detection(FCOS),for pedestrian detection.An improved backbone net- work is proposed to extract pedestrian features,achieve multi-scale detection of object pedestrians by increasing scale regression,reduce the number of objects detected by other feature layers,and thereby improve the ability of pedestrian detection.Several experiments have been performed on the crowded pedestrian scene dataset CrowdHuman and the small object pedestrian dataset Caltech.The results show that compared with current advanced methods,the proposed algorithm makes some improvements in the pedestrian detection accuracy,especially for small object pedestrian detec- tion.Compared with the original FCOS framework,the average precision on CrowdHuman is increased by nearly 15% and the miss rate is decreased by nearly 33.0%.The average precision on Caltech is increased by 2%.Moreover,the ac- tual use in complex,crowded scenarios proves the effectiveness of this algorithm. Keywords:pedestrian detection;multi-scale detection;fully convolutional one-stage object detection;crowded pedestri- an scene;training strategy;small object detection;scale regression;pixel by pixel prediction 行人检测属于计算机视觉领域一个重要的基 领域在实际场景下面临着行人交叠、遮挡等问 础研究课题,对于行人重识别、自动驾驶、视频监 题,此类问题依然困扰很多研究者,也是目前行 控、机器人等领域有重要的意义。而行人检测 人检测面临的巨大挑战。 在现有的目标检测算法中,两阶段目标检 收稿日期:2020-10-14.网络出版日期:2021-04-02. 基金项目:国家自然科学基金项目(61976028,61572085, 测器(如Faster R-CNNISI、R-FCN、Mask R- 61806026,61502058):江苏省自然科学基金项目 (BK20180956). CNN、RetinaNet、Cascade R-CNN精度高但速 通信作者:王洪元.E-mail:hywang@cczu.edu.cn 度稍慢,单阶段目标检测器(如YOLOv211
DOI: 10.11992/tis.202010012 网络出版地址: https://kns.cnki.net/kcms/detail/23.1538.TP.20210402.1043.004.html 基于改进 FCOS 的拥挤行人检测算法 齐鹏宇,王洪元,张继,朱繁,徐志晨 (常州大学 信息科学与工程学院,江苏 常州 213164) 摘 要:针对大规模拥挤场景视频中行人目标小、行人遮挡和行人交叠而导致的检测困难等问题,本文将逐像 素预测目标检测框架—全卷积单阶段目标检测 FCOS(fully convolutional one-stage object detection)应用于行人 检测,提出一种改进的主干网络用于提取行人特征,通过增加尺度回归实现目标行人的多尺度检测,同时减少 其他特征层检测的目标数量,进而提升行人检测的能力。在拥挤行人场景数据集 CrowdHuman 和小目标行人 数据集 Caltech 上的大量实验结果表明,和目前先进的方法相比,本文的方法对行人的检测精度有所提升,特别 是对于小目标行人检测。与原始 FCOS 算法相比,在 CrowdHuman 上平均精度提升接近 15%,丢失率降低接近 33.0%;在 Caltech 上的平均精度提升 2%。在复杂拥挤场景下的实际应用也证明本文方法的有效性。 关键词:行人检测;多尺度检测;全卷积单阶段目标检测;拥挤行人场景;训练策略;小目标检测;尺度回归;逐 像素预测 中图分类号:TP391.41 文献标志码:A 文章编号:1673−4785(2021)04−0811−08 中文引用格式:齐鹏宇, 王洪元, 张继, 等. 基于改进 FCOS 的拥挤行人检测算法 [J]. 智能系统学报, 2021, 16(4): 811–818. 英文引用格式:QI Pengyu, WANG Hongyuan, ZHANG Ji, et al. Crowded pedestrian detection algorithm based on improved FCOS[J]. CAAI transactions on intelligent systems, 2021, 16(4): 811–818. Crowded pedestrian detection algorithm based on improved FCOS QI Pengyu,WANG Hongyuan,ZHANG Ji,ZHU Fan,XU Zhichen (School of Information Science and Engineering, Changzhou University, Changzhou 213164, China) Abstract: In view of the detection difficulty resulting from small pedestrian objects, pedestrian occlusion, and pedestrian overlap in large-scale crowded scene videos, this study applies a pixel-by-pixel prediction object detection framework, i.e., fully convolutional one-stage object detection (FCOS), for pedestrian detection. An improved backbone network is proposed to extract pedestrian features, achieve multi-scale detection of object pedestrians by increasing scale regression, reduce the number of objects detected by other feature layers, and thereby improve the ability of pedestrian detection. Several experiments have been performed on the crowded pedestrian scene dataset CrowdHuman and the small object pedestrian dataset Caltech. The results show that compared with current advanced methods, the proposed algorithm makes some improvements in the pedestrian detection accuracy, especially for small object pedestrian detection. Compared with the original FCOS framework, the average precision on CrowdHuman is increased by nearly 15% and the miss rate is decreased by nearly 33.0%. The average precision on Caltech is increased by 2%. Moreover, the actual use in complex, crowded scenarios proves the effectiveness of this algorithm. Keywords: pedestrian detection; multi-scale detection; fully convolutional one-stage object detection; crowded pedestrian scene; training strategy; small object detection; scale regression; pixel by pixel prediction 行人检测属于计算机视觉领域一个重要的基 础研究课题,对于行人重识别、自动驾驶、视频监 控、机器人等领域有重要的意义[1-3]。而行人检测 领域在实际场景下面临着行人交叠、遮挡等问 题,此类问题依然困扰很多研究者,也是目前行 人检测面临的巨大挑战。 在现有的目标检测算法[4] 中,两阶段目标检 测器 (如 Faster R-CNN[ 5 ] 、R-FCN[ 6 ] 、Mask RCNN[7] 、RetinaNet[8] 、Cascade R-CNN[9] ) 精度高但速 度稍慢,单阶段目标检测 器 (如 YOLOv2[ 1 0 ] 、 收稿日期:2020−10−14. 网络出版日期:2021−04−02. 基金项目:国家自然科学基金项目 (61976028, 61572085, 61806026,61502058);江苏省自然科学基金项目 (BK20180956). 通信作者:王洪元. E-mail: hywang@cczu.edu.cn. 第 16 卷第 4 期 智 能 系 统 学 报 Vol.16 No.4 2021 年 7 月 CAAI Transactions on Intelligent Systems Jul. 2021
·812· 智能系统学报 第16卷 SSD速度快但精度稍低。Zhi等2认为锚框 FCOS在训练中损失定义如下: (anchor)的纵横比和数量对检测性能影响较大,在 需要预设候选框的检测算法中,这些anchor相关 L∑(P.y.Ci+ 参数需要进行精准的调整。而在多数的两阶段算 (1) 法中,由于anchor的纵横比不变,模型检测an- 之24elw chor变化较大的候选目标时会遇到麻烦,特别是 式中:x、y表示特征图上的某一位置;P表示预 对于小目标的物体。多数检测模型需要在不同的 测分类分数;c表示真实分类标签;t,表示回归 检测任务场景下重新定义不同的目标尺寸的an- 预测目标位置;,表示真实目标位置,L是Fo- chor,这是因为模型预定义的anchor对模型性能 cal Loss分类损失,Le是IOU Loss回归损失,并 影响较大。在训练过程中,大多数的anchor被标 且在预先的实验中发现,拥挤行人检测任务中, 记为负样本,而负样本的数量过多会加剧训练中 IOU Loss效果要稍优于GIOU Loss0。N表示 正样本与负样本之间的不平衡。基于无预设候选 正样本的个数,le.表示激活函数,当c,>0时 框(anchor-.free)的检测算法容易造成极大的正负 为1,否则为0。 样本之间不平衡,检测的精度也不如anchor-base 此外,FCOS还具有独特的中心度分支预测,可 算法。而近年来的全卷积网络(fully convolutional 以抑制低质量框的比例。由于逐像素预测,很多 network,.FCNI在众多计算机视觉的密集预测任 像素点虽然处于真值框内,但是越接近真值框中 务中取得了好的效果,例如语义分割、深度估计 心的像素点预测出高质量预测框的概率也越大, 关键点检测1和人群计数等。由于预设候选 因此提出预测中心度损失函数,如式(2)所示: 框的使用,两阶段检测算法取得了好的效果,这 min(,r)、min(r,b) 也间接导致了检测任务中没有采用全卷积逐像素 centerness'= max(,)max(r.b) (2) 预测的算法框架。而FCOS!2首次证明,基于FCN 式中:、r、t、b分别表示当前像素点到真值框边 的检测算法的检测性能比基于预设候选框的检测 界的距离,这里使用开方来减缓中心损失的衰 算法更好。FCOS结合two-stage和one-stage算法 减。中心损失值在范围[0,1],因此使用二值交叉 的一些特点逐像素检测目标,实现了在提高检测 嫡(BCE)损失进行训练,将中心度损失加到训练 精度的同时,加快了检测速度。 损失函数式(1)中。当回归中心在样本中心时, 由于拥挤场景下行人目标会出现交叠、遮挡 中心度损失会尽可能的接近1,而当偏离时,中心 和行人目标偏小等问题,本文提出新的特征提取 度损失会降低。测试时,通过将预测框的中心损 网络提取更具判别性行人特征。对于FCOS检测 失与相应的分类分数相乘来计算最终分数,且该 算法,行人检测中行人尺度问题对模型性能的影 分数用于对检测到的预测框质量进行排序。因 响较大,针对该问题,本文改进多尺度预测用于 此,中心度可以降低远离目标中心的预测框的分 检测小目标行人,有效地解决了行人目标偏小、 数,再通过最终的非极大值抑制(non-maximum 拥挤等场景下行人检测精度不高的问题。 suppression,NMS)过程可以过滤掉这些低质量的 1相关工作 预测框,从而显著提高行人检测性能。相比基于 预设候选框的一类检测算法,FCOS算法实现更 1.1FCOS框架 好的检测性能。 FCOS首先以逐像素预测的方式对目标进行 1.2原始FCOS特征提取网络 检测,无需设置anchor的纵横比,然后利用多级 如图1所示,FCOS算法的特征提取网络采用 预测来提高召回率并解决训练中重叠预测框导致 主干网络(Backbone)加上FPN,Backbone选用 的歧义,这种方法可以有效提高拥挤场景下行人 ResNet2提取特征,在FPN中,P、P.、P,分别由 检测精度,缓解行人拥挤而导致的检测困难的问 C、C4、Cs横向连接产生,P6、P,由P、P6通过步 题。实际上,诸如Unitbox7之类基于DenseBox 长为2的卷积产生。每层检测不同尺度大小的目 的anchor-free检测算法,难以处理重叠的预测框 标,P:层检测当前像素点处满足条件的目标,目 而导致召回率低的问题,该系列的检测算法不适 标公式定义如下: 合用于一般物体检测,FCOS的出现打破这一局 max(,r,t,b)∈[m-1,ml (3) 面。FCOS表明,使用多级特征金字塔网络(fea- 式中:P、r、r、b分别表示当前像素点到真值框边 ture pyramid networks,FPNl)预测可以提高召回 界的距离;[m-1,m]表示P:层回归目标范围,m2、 率,提高检测精度。 m3、m4、m5、m6和m7分别设置为0、64、128、256
SSD[11] ) 速度快但精度稍低。Zhi 等 [12] 认为锚框 (anchor) 的纵横比和数量对检测性能影响较大,在 需要预设候选框的检测算法中,这些 anchor 相关 参数需要进行精准的调整。而在多数的两阶段算 法中,由于 anchor 的纵横比不变,模型检测 anchor 变化较大的候选目标时会遇到麻烦,特别是 对于小目标的物体。多数检测模型需要在不同的 检测任务场景下重新定义不同的目标尺寸的 anchor,这是因为模型预定义的 anchor 对模型性能 影响较大。在训练过程中,大多数的 anchor 被标 记为负样本,而负样本的数量过多会加剧训练中 正样本与负样本之间的不平衡。基于无预设候选 框 (anchor-free) 的检测算法容易造成极大的正负 样本之间不平衡,检测的精度也不如 anchor-base 算法。而近年来的全卷积网络 (fully convolutional network,FCN[13] ) 在众多计算机视觉的密集预测任 务中取得了好的效果,例如语义分割、深度估计[14] 、 关键点检测[15] 和人群计数[16] 等。由于预设候选 框的使用,两阶段检测算法取得了好的效果,这 也间接导致了检测任务中没有采用全卷积逐像素 预测的算法框架。而 FCOS[12] 首次证明,基于 FCN 的检测算法的检测性能比基于预设候选框的检测 算法更好。FCOS 结合 two-stage 和 one-stage 算法 的一些特点逐像素检测目标,实现了在提高检测 精度的同时,加快了检测速度。 由于拥挤场景下行人目标会出现交叠、遮挡 和行人目标偏小等问题,本文提出新的特征提取 网络提取更具判别性行人特征。对于 FCOS 检测 算法,行人检测中行人尺度问题对模型性能的影 响较大,针对该问题,本文改进多尺度预测用于 检测小目标行人,有效地解决了行人目标偏小、 拥挤等场景下行人检测精度不高的问题。 1 相关工作 1.1 FCOS 框架 FCOS 首先以逐像素预测的方式对目标进行 检测,无需设置 anchor 的纵横比,然后利用多级 预测来提高召回率并解决训练中重叠预测框导致 的歧义,这种方法可以有效提高拥挤场景下行人 检测精度,缓解行人拥挤而导致的检测困难的问 题。实际上,诸如 Unitbox[17] 之类基于 DenseBox[18] 的 anchor-free 检测算法,难以处理重叠的预测框 而导致召回率低的问题,该系列的检测算法不适 合用于一般物体检测,FCOS 的出现打破这一局 面。FCOS 表明,使用多级特征金字塔网络 (feature pyramid networks, FPN[19] ) 预测可以提高召回 率,提高检测精度。 FCOS 在训练中损失定义如下: Loss = 1 Npos ∑ x,y Lcls(px,y , c ∗ x,y )+ 1 Npos ∑ x,y I{c ∗ x,y>0}Lreg(tx,y ,t ∗ x,y ) (1) px,y c ∗ x,y tx,y t ∗ x,y Lcls Lreg Npos I{c ∗ x,y>0} c ∗ x,y > 0 式中:x、y 表示特征图上的某一位置; 表示预 测分类分数; 表示真实分类标签; 表示回归 预测目标位置; 表示真实目标位置, 是 Focal Loss 分类损失, 是 IOU Loss 回归损失,并 且在预先的实验中发现,拥挤行人检测任务中, IOU Loss 效果要稍优于 GIOU Loss[20]。 表示 正样本的个数, 表示激活函数,当 时 为 1,否则为 0。 此外,FCOS 还具有独特的中心度分支预测,可 以抑制低质量框的比例。由于逐像素预测,很多 像素点虽然处于真值框内,但是越接近真值框中 心的像素点预测出高质量预测框的概率也越大, 因此提出预测中心度损失函数,如式 (2) 所示: centerness∗ = √ min(l ∗ ,r ∗ ) max(l ∗ ,r ∗ ) × min(t ∗ ,b ∗ ) max(t ∗ ,b ∗ ) (2) l ∗ r ∗ t ∗ b 式中: ∗ 、 、 、 分别表示当前像素点到真值框边 界的距离,这里使用开方来减缓中心损失的衰 减。中心损失值在范围 [0,1],因此使用二值交叉 熵 (BCE) 损失进行训练,将中心度损失加到训练 损失函数式 (1) 中。当回归中心在样本中心时, 中心度损失会尽可能的接近 1,而当偏离时,中心 度损失会降低。测试时,通过将预测框的中心损 失与相应的分类分数相乘来计算最终分数,且该 分数用于对检测到的预测框质量进行排序。因 此,中心度可以降低远离目标中心的预测框的分 数,再通过最终的非极大值抑制 (non-maximum suppression,NMS) 过程可以过滤掉这些低质量的 预测框,从而显著提高行人检测性能。相比基于 预设候选框的一类检测算法,FCOS 算法实现更 好的检测性能。 1.2 原始 FCOS 特征提取网络 Pi 如图 1 所示,FCOS 算法的特征提取网络采用 主干网络 (Backbone) 加上 FPN,Backbone 选用 ResNet[21] 提取特征,在 FPN 中,P3、P4、P5 分别由 C3、C4、C5 横向连接产生,P6、P7 由 P5、P6 通过步 长为 2 的卷积产生。每层检测不同尺度大小的目 标, 层检测当前像素点处满足条件的目标,目 标公式定义如下: max(l ∗ ,r ∗ ,t ∗ ,b ∗ ) ∈ [mi−1,mi] (3) l ∗ r ∗ t ∗ b ∗ [mi−1,mi] Pi 式中: 、 、 、 分别表示当前像素点到真值框边 界的距离; 表示 层回归目标范围,m2、 m3、m4、m5、m6 和 m7 分别设置为 0、64、128、256、 ·812· 智 能 系 统 学 报 第 16 卷
第4期 齐鹏宇,等:基于改进FCOS的拥挤行人检测算法 ·813· 512和∞,其中表示无穷大。这是一个非常有 针对DenseNet做出改进,提出一种新的模块,即 创造性的想法,这样的设计使得FCOS检测算法 一次性聚合(one-shot aggregation.,OSA)模块。 是一个多尺度的FPN检测算法。 OSA模块将当前层的特征聚合至最后一层,每一 卷积层有两种连接方式,一种方式是连接至下一 层,用于产生更大感受野的特征,另一种方式是 连接一次至最终输出的特征图上,与DenseNet不 同,每一层的输出不会连接至后续的中间层,这 样的设计使得中间层的通道数保持不变。VoVNet 采用更加优化的特征连接方式,通过增强特征的 表示能力,提高特征的提取能力,进而提高模型 的检测性能。 2.2SE模块 图1FCOS特征提取网络 本文为了更好地契合复杂的行人特征,在VoVNet Fig.1 FCOS feature extraction network 上使用SE模块2加强特征表示能力,并且在特 征图上使用SE模块进行权重分配,使得深度特 2基于FCOS的行人检测 征更加多样化。 SE模块首先依照空间维度来进行特征压缩, 2.1主干网络VoVNet 将每个二维的特征通道变成一个实数,输出一个 深度学习中,特征提取网络对于模型有着非 二维空间,它的维度与特征通道数相等,即二维 常大的影响,针对不同的数据集可以直接影响其 空间表示对应特征通道上的分布结果。之后生成 检测性能。针对ResNet不足,本文运用VoVNet 一个具有权重的二维空间,表示特征通道间的相 作为行人特征的提取网络。 关性。最后将对应的特征图乘上权重特征,实现 DenseNet!在目标检测任务上展示出了较好 一个特征的权重分配,突出重要的特征,完成在 的效果,特别是基于anchor--free的目标检测模型, 通道维度上对原始特征通道上重要性的重标定。 这是因为相比于ResNet,DenseNet通过特征不断 $E模块类似于注意力机制,本文将其使用在 叠加达到好的效果,其缺点是在后续特征叠加 VoVNet上,如图2所示,在每层特征下采样时, 时,通道数线性增加,参数也越来越多,模型花费 将特征进行SE权重分配。根据VoVNet的特征 时间增加,影响模型速度。 连接方式添加$E模块权重机制,本文方法可以 VoVNet认为在特征提取方面,中间层的聚集 提供更加多元化的特征,使得行人特征更好地表 强度与最终层的聚集强度之间存在负相关,并且 达,提高行人检测的精度。并且SE模块可以在 密集连接是冗余的,即靠前层的特征表示能力越 几乎不增加模型时间复杂度的情况下提升模型的 强,靠后层的特征表示能力则会被弱化。VoVNet 检测性能。 OSA SEModule ■国回 FD-CCO C C; object sizes_of_interest P:e.P. 0,32 [32.64] [64,128] [128,256 [256,512][512,INF 图2修改后框架 Fig.2 Update framework
512 和 ∞,其中 ∞ 表示无穷大。这是一个非常有 创造性的想法,这样的设计使得 FCOS 检测算法 是一个多尺度的 FPN 检测算法。 C5 C4 C3 P3 P4 P5 P6 P7 图 1 FCOS 特征提取网络 Fig. 1 FCOS feature extraction network 2 基于 FCOS 的行人检测 2.1 主干网络 VoVNet 深度学习中,特征提取网络对于模型有着非 常大的影响,针对不同的数据集可以直接影响其 检测性能。针对 ResNet 不足,本文运用 VoVNet 作为行人特征的提取网络。 DenseNet[22] 在目标检测任务上展示出了较好 的效果,特别是基于 anchor-free 的目标检测模型, 这是因为相比于 ResNet,DenseNet 通过特征不断 叠加达到好的效果,其缺点是在后续特征叠加 时,通道数线性增加,参数也越来越多,模型花费 时间增加,影响模型速度。 VoVNet 认为在特征提取方面,中间层的聚集 强度与最终层的聚集强度之间存在负相关,并且 密集连接是冗余的,即靠前层的特征表示能力越 强,靠后层的特征表示能力则会被弱化。VoVNet[23] 针对 DenseNet 做出改进,提出一种新的模块,即 一次性聚合 (one-shot aggregation, OSA) 模块。 OSA 模块将当前层的特征聚合至最后一层,每一 卷积层有两种连接方式,一种方式是连接至下一 层,用于产生更大感受野的特征,另一种方式是 连接一次至最终输出的特征图上,与 DenseNet 不 同,每一层的输出不会连接至后续的中间层,这 样的设计使得中间层的通道数保持不变。VoVNet 采用更加优化的特征连接方式,通过增强特征的 表示能力,提高特征的提取能力,进而提高模型 的检测性能。 2.2 SE 模块 本文为了更好地契合复杂的行人特征,在 VoVNet 上使用 SE 模块[24] 加强特征表示能力,并且在特 征图上使用 SE 模块进行权重分配,使得深度特 征更加多样化。 SE 模块首先依照空间维度来进行特征压缩, 将每个二维的特征通道变成一个实数,输出一个 二维空间,它的维度与特征通道数相等,即二维 空间表示对应特征通道上的分布结果。之后生成 一个具有权重的二维空间,表示特征通道间的相 关性。最后将对应的特征图乘上权重特征,实现 一个特征的权重分配,突出重要的特征,完成在 通道维度上对原始特征通道上重要性的重标定。 SE 模块类似于注意力机制,本文将其使用在 VoVNet 上,如图 2 所示,在每层特征下采样时, 将特征进行 SE 权重分配。根据 VoVNet 的特征 连接方式添加 SE 模块权重机制,本文方法可以 提供更加多元化的特征,使得行人特征更好地表 达,提高行人检测的精度。并且 SE 模块可以在 几乎不增加模型时间复杂度的情况下提升模型的 检测性能。 OSA P2 P3 P4 P5 P6 P7 [0,32] [32.64] [64,128] [128,256] [256,512] [512,INF] object_sizes_of_interest SEModule C2 C3 C4 C5 图 2 修改后框架 Fig. 2 Update framework 第 4 期 齐鹏宇,等:基于改进 FCOS 的拥挤行人检测算法 ·813·
·814· 智能系统学报 第16卷 2.3多尺度检测 使FCOS检测性能提高。 原始模型FPN采用5层不同尺度回归目标, 如图2所示,减小P,层的回归尺度,设置 这5层尺度回归的目标大小分别为[0,64]、 P,层回归尺度为[32,64],减少P,层的检测任务 [64,128]、[128,256]、[256,512]和[512,0],分别对 量;增加P2层,P2层由C2层横向连接和P,层向 应FPN中的P3、P、P,、P6和P。针对行人目标的 下连接组成,P2层回归尺度为0,32]的目标,这样 特点,本文发现,不论是在常用的行人数据集中, 的网络设计既能减少P,层的回归目标数,也能更 还是在真实检测场景中,行人检测的难点在于拥好地利用特征检测小目标行人,提高行人检测精 挤行人和小目标行人的检测。对于FCOS模型, 度。在最终的FPN上,本文的方法在FPN上拥 每层每个像素点都会回归固定尺度大小范围内的 有6层特征图以检测6个不同尺度范围的目标。 目标。相对地,如果目标行人拥挤在某个尺度范 总体网络框架如图3所示,相较于未改进 围内,将会使得检测层的任务过重,导致检测效 FCOS算法,预测特征图由5个增加到6个,而后对 果降低,此问题也是影响模型性能效果的原因之 特征图上每个点进行逐像素预测,每个点均需预 一,在多目标检测场景中会导致FCOS模型的检 测目标回归框、目标类别、目标中心度,以上3种 测性能稍有降低,同时也说明,当检测任务复杂, 预测结果对应图3中3个预测分支,假设当前特 检测目标数量较多时,本文提出的多尺度检测会 征图大小为W×H,则有W×H像素点需要进行预测。 7×8/128 P Head 分类 Hx WxC 13×16/64 P。 -Head 中心度 HxWx1 25×32/32 Head 回归 H×Wx4 50×64/16 Head H×W256HxW256 100×128/8 Head 分类+中心度+回归 200×256/4 Head 800×1024 HxW/s 主干网络 特征金字塔 图3总体框架 Fig.3 Final framework 3数据集和评估 24438张。 本文采用MR2(miss rate)和AP的评估准则 本文实验主要使用CrowdHuman2)和Cal- MR-2表示在9个FPPI(false positive per image)值 tech行人数据集。行人数量多、场景拥挤是行人 下(在值域[0.01,1.0]以对数空间均匀间隔)的平 检测中一个巨大的挑战,针对这一问题,旷视发 均丢失率值,FPPI定义如下: 布CrowdHuman数据集,用于验证检测算法在密 集人群行人检测任务中的性能。CrowdHuman数 FPPI-FP (4) 据集中15000、4370和5000个图片,分别用于训 式中:N表示图片的数量;FP表示未击中任意一 练、验证和测试。针对CrowdHuman数据集,本文 个真值框的预测框数量。MR2是目前衡量行人 只使用全身区域标注用于训练和评估,由于还未 检测一个非常重要的指标,也是本文主要采用的 公布测试集,参考相关文献[25-26]后,实验结果 评价指标。其数值越低说明行人检测模型性能 在验证集上进行测试。Caltech行人数据集时长 越好。 约为10h城市道路环境拍摄视频,数据集中随 AP表示平均精度,PR(Precision-Recall)曲线 机分配训练集、测试集、验证集,其对应比例为 所围成的面积即为AP值大小,AP值越大检测精 0.75:0.2:0.05,3个集相互独立,测试集图片约为 度越高,其中AP、Recall、Precision计算公式如下:
2.3 多尺度检测 ∞ 原始模型 FPN 采用 5 层不同尺度回归目标, 这 5 层尺度回归的目标大小分别 为 [0,64] 、 [64,128]、[128,256]、[256,512] 和 [512, ],分别对 应 FPN 中的 P3、P4、P5、P6 和 P7。针对行人目标的 特点,本文发现,不论是在常用的行人数据集中, 还是在真实检测场景中,行人检测的难点在于拥 挤行人和小目标行人的检测。对于 FCOS 模型, 每层每个像素点都会回归固定尺度大小范围内的 目标。相对地,如果目标行人拥挤在某个尺度范 围内,将会使得检测层的任务过重,导致检测效 果降低,此问题也是影响模型性能效果的原因之 一,在多目标检测场景中会导致 FCOS 模型的检 测性能稍有降低,同时也说明,当检测任务复杂, 检测目标数量较多时,本文提出的多尺度检测会 使 FCOS 检测性能提高。 如图 2 所示,减小 P3 层的回归尺度,设置 P3 层回归尺度为 [32,64],减少 P3 层的检测任务 量;增加 P2 层,P2 层由 C2 层横向连接和 P3 层向 下连接组成,P2 层回归尺度为 [0,32] 的目标,这样 的网络设计既能减少 P3 层的回归目标数,也能更 好地利用特征检测小目标行人,提高行人检测精 度。在最终的 FPN 上,本文的方法在 FPN 上拥 有 6 层特征图以检测 6 个不同尺度范围的目标。 W × H W × H 总体网络框架如图 3 所示,相较于未改进 FCOS 算法,预测特征图由 5 个增加到 6 个,而后对 特征图上每个点进行逐像素预测,每个点均需预 测目标回归框、目标类别、目标中心度,以上 3 种 预测结果对应图 3 中 3 个预测分支,假设当前特 征图大小为 ,则有 像素点需要进行预测。 H×W /s 主干网络 特征金字塔 800×1024 200×256/4 100×128/8 50×64/16 25×32/32 13×16/64 7×8/128 C5 C4 C3 C2 P7 P6 P5 P4 P3 P2 Head Head Head Head Head Head 分类+中心度+回归 H×W /256 H×W /256 H×W /256 H×W /256 分类 H×W×C 中心度 H×W×1 回归 H×W×4 图 3 总体框架 Fig. 3 Final framework 3 数据集和评估 本文实验主要使用 CrowdHuman[25] 和 Caltech 行人数据集。行人数量多、场景拥挤是行人 检测中一个巨大的挑战,针对这一问题,旷视发 布 CrowdHuman 数据集,用于验证检测算法在密 集人群行人检测任务中的性能。CrowdHuman 数 据集中 15 000、4 370 和 5 000 个图片,分别用于训 练、验证和测试。针对 CrowdHuman 数据集,本文 只使用全身区域标注用于训练和评估,由于还未 公布测试集,参考相关文献 [25-26] 后,实验结果 在验证集上进行测试。Caltech 行人数据集时长 约为 10 h 城市道路环境拍摄视频,数据集中随 机分配训练集、测试集、验证集,其对应比例为 0.75∶0.2∶0.05,3 个集相互独立,测试集图片约为 24 438 张。 MR−2 MR−2 本文采用 (miss rate) 和 AP 的评估准则, 表示在 9 个 FPPI(false positive per image) 值 下 (在值域 [0.01,1.0] 以对数空间均匀间隔) 的平 均丢失率值,FPPI 定义如下: FPPI= FP N (4) MR−2 式中:N 表示图片的数量;FP 表示未击中任意一 个真值框的预测框数量。 是目前衡量行人 检测一个非常重要的指标,也是本文主要采用的 评价指标。其数值越低说明行人检测模型性能 越好。 AP 表示平均精度,PR(Precision-Recall) 曲线 所围成的面积即为 AP 值大小,AP 值越大检测精 度越高,其中 AP、Recall、Precision 计算公式如下: ·814· 智 能 系 统 学 报 第 16 卷
第4期 齐鹏宇,等:基于改进FCOS的拥挤行人检测算法 ·815· Precision TP (5) 通过消融实验表明:采用VoVNet相较于采用 TP+FP ResNet,指标MR-2降低26.91%。拥有SE模块的 TP Recall TP+FN (6) 检测模型相较于没有SE模块的检测模型,指标 AP=['P(R)dR (7) MR2降低0.9%。改进多尺度回归后的检测模型 o 相较于未改进的检测模型,指标MR2降低6%。 式中:TP是检测出正样本的概率;FN是正样本检 本文提出的方法相较于原始方法,指标MR2降 测出错误样本的概率;FP是负样本检测出正样本 低了33.62%。实验结果证明,本文的方法在拥挤 的概率。 场景下的行人检测效果提升较为明显。 4实验 表2 CrowdHuman数据集MR-2 Table 2 MR-2 on CrowdHuman 本文实验环境为Ubuntu18.04、Cudal0和 方法 MR-2 Cudnn7.6,使用4块2080Ti的GPU,每个GPU有 APso 11G内存,由于FCOS算法要求较高,存在内存 RetinaNets 63.33 80.83 不够的问题,实验通过线性策略【2】调整了 FPNES 50.42 84.95 batch size大小和IMS_PER BATCH的数量。其 RFB Net1261 65.22 78.33 余参数沿用FCOS在COCO数据集上基础参数配 FCOS+ResNet50 83.62 70.0 置,算法基于detectron框架。 FCOS+VoVNet39 56.71 81.2 4.1 CrowdHuman数据集实验结果 FCOS+VoVNet39+SE 56.09 81.4 如表1消融实验所示,其中6 stage表示多尺 度检测方法,SE表示SE模块。在FCOS上采用 FCOS+VoVNet39+6stage 50.90 84.7 VoVNet作为Backbone起到了极大的提升作用, FCOS+VoVNet39+6stage+SE 50.02 85.1 相较于主干网络为ResNet,APso提升1l.2%。在 如表3所示,针对CrowdHuman数据集, FPN中多添加一个尺度的回归层,对于行人检测 NMS的IOU阈值设定也是不同的,原始FCOS算 的效果有极大的提升,这是因为密集的行人检测 法在COC0数据集上IOU阈值设置为0.7,而针 受尺度变化影响较大。相较于原始FCOS方法, 对拥挤行人场景,本文发现IOU阈值设置为 本文方法在指标AP0上提升了15.0%。针对于不 0.5时,模型整体性能较好。图4(a)表示PR曲线 同主干网络,SE模块在指标AP50上有 0.2%~0.3%的提升,说明SE模块能增强行人特征 图,图4(b)表示MR-FPPI曲线,可以清晰地看到 提取能力。模型由5个尺度增加到6个尺度,指 本文方法总体上提升较大。在采用了VoVNet 标AP0提升3.5%,并且对于模型检测小目标行人 后,对模型性能有了极大的提升,说明VoVNet更 有着极大的提升,可以看到指标APs提升8.5%, 加适合于FCOS在拥挤场景下提取行人特征。多 实验结果也印证多尺度改进能有效地提升模型检 尺度检测方法在拥挤场景下的行人检测也是有效 测小目标行人的性能。 的,提升效果明显。 表1 CrowdHuman数据集AP 表3 CrowdHuman数据集IOU阈值 Table 1 AP on CrowdHuman Table 3 IOU threshold on CrowdHuma 方法 IOU AP APs APM AP AP APso AP7s APs APM APL Faster R-CNNI5] 0.3 55.2 81.0 61.6 33.8 53.6 65.7 36.768.335.223.437.240.4 FCOS+ResNet50 40.170.040.316.339.153.6 0.4 57.2 83.9 63.9 34.2 55.0 68.8 FCOS+VoVNet39 53.681.258.725.552.366.9 0.5 58.3 85.1 64.7 34.5 55.8 70.5 FCOS+VoVNet39+SE 53.681.458.825.252.467.0 0.6 58.4 84.7 65.4 34.4 55.7 71.0 FC0S+VoVNet39+6 stage57.784.764.034.055.070.1 0.7 58.1 83.7 66.0 34.0 55.6 71.1 FC0S+VoVNet3.9+6 stage+SE58.385.164.734.555.870.5 0.8 57.5 81.5 65.7 33.0 54.9 71.2 0.9 54.8 76.2 62.9 29.8 52.1 69.8 CrowdHuman2数据集中采用指标MR-2,本 文采用相同指标并对比了CrowdHuman2中部分 4.2 Caltech数据集结果 实验,表2可以看到,在CrowdHuman数据集上, 如表4所示,在车载摄像头的行人数据集
Precision = TP TP+FP (5) Recall = TP TP+FN (6) AP = w 1 0 P(R)dR (7) 式中:TP 是检测出正样本的概率;FN 是正样本检 测出错误样本的概率;FP 是负样本检测出正样本 的概率。 4 实验 本文实验环境为 Ubuntu18.04、Cuda10 和 Cudnn7.6,使用 4 块 2080Ti 的 GPU,每个 GPU 有 11G 内存,由于 FCOS 算法要求较高,存在内存 不够的问题,实验通过线性策略 [ 2 7 ] 调 整 了 batch_size 大小和 IMS_PER_BATCH 的数量。其 余参数沿用 FCOS 在 COCO 数据集上基础参数配 置,算法基于 detectron 框架。 4.1 CrowdHuman 数据集实验结果 如表 1 消融实验所示,其中 6stage 表示多尺 度检测方法,SE 表示 SE 模块。在 FCOS 上采用 VoVNet 作为 Backbone 起到了极大的提升作用, 相较于主干网络为 ResNet,AP50 提升 11.2%。在 FPN 中多添加一个尺度的回归层,对于行人检测 的效果有极大的提升,这是因为密集的行人检测 受尺度变化影响较大。相较于原始 FCOS 方法, 本文方法在指标 AP50 上提升了 15.0%。针对于不 同主干网络, S E 模块在指 标 A P 5 0 上 有 0.2%~0.3% 的提升,说明 SE 模块能增强行人特征 提取能力。模型由 5 个尺度增加到 6 个尺度,指 标 AP50 提升 3.5%,并且对于模型检测小目标行人 有着极大的提升,可以看到指标 APS 提升 8.5%, 实验结果也印证多尺度改进能有效地提升模型检 测小目标行人的性能。 表 1 CrowdHuman 数据集 AP Table 1 AP on CrowdHuman 方法 AP AP50 AP75 APS APM APL Faster R-CNN[5] 36.7 68.3 35.2 23.4 37.2 40.4 FCOS+ResNet50 40.1 70.0 40.3 16.3 39.1 53.6 FCOS+VoVNet39 53.6 81.2 58.7 25.5 52.3 66.9 FCOS+ VoVNet39+SE 53.6 81.4 58.8 25.2 52.4 67.0 FCOS+ VoVNet39+6stage 57.7 84.7 64.0 34.0 55.0 70.1 FCOS+ VoVNet39+6stage+SE 58.3 85.1 64.7 34.5 55.8 70.5 MR−2 CrowdHuman[25] 数据集中采用指标 ,本 文采用相同指标并对比了 CrowdHuman[25] 中部分 实验,表 2 可以看到,在 CrowdHuman 数据集上, MR−2 MR−2 MR−2 MR−2 通过消融实验表明:采用 VoVNet 相较于采用 ResNet,指标 降低 26.91%。拥有 SE 模块的 检测模型相较于没有 SE 模块的检测模型,指标 降低 0.9%。改进多尺度回归后的检测模型 相较于未改进的检测模型,指标 降低 6%。 本文提出的方法相较于原始方法,指标 降 低了 33.62%。实验结果证明,本文的方法在拥挤 场景下的行人检测效果提升较为明显。 MR 表 −2 2 CrowdHuman 数据集 MR−2 Table 2 on CrowdHuman 方法 MR−2 AP50 RetinaNet[8] 63.33 80.83 FPN[25] 50.42 84.95 RFB Net[26] 65.22 78.33 FCOS+ ResNet50 83.62 70.0 FCOS+ VoVNet39 56.71 81.2 FCOS+ VoVNet39+SE 56.09 81.4 FCOS+ VoVNet39+6stage 50.90 84.7 FCOS+ VoVNet39+6stage+SE 50.02 85.1 如 表 3 所示,针 对 CrowdHuman 数据集, NMS 的 IOU 阈值设定也是不同的,原始 FCOS 算 法在 COCO 数据集上 IOU 阈值设置为 0.7,而针 对拥挤行人场景,本文发 现 I OU 阈值设置 为 0.5 时,模型整体性能较好。图 4(a) 表示 PR 曲线 图,图 4(b) 表示 MR-FPPI 曲线,可以清晰地看到 本文方法总体上提升较大。在采用了 VoVNet 后,对模型性能有了极大的提升,说明 VoVNet 更 加适合于 FCOS 在拥挤场景下提取行人特征。多 尺度检测方法在拥挤场景下的行人检测也是有效 的,提升效果明显。 表 3 CrowdHuman 数据集 IOU 阈值 Table 3 IOU threshold on CrowdHuma IOU AP AP50 AP75 APS APM APL 0.3 55.2 81.0 61.6 33.8 53.6 65.7 0.4 57.2 83.9 63.9 34.2 55.0 68.8 0.5 58.3 85.1 64.7 34.5 55.8 70.5 0.6 58.4 84.7 65.4 34.4 55.7 71.0 0.7 58.1 83.7 66.0 34.0 55.6 71.1 0.8 57.5 81.5 65.7 33.0 54.9 71.2 0.9 54.8 76.2 62.9 29.8 52.1 69.8 4.2 Caltech 数据集结果 如表 4 所示,在车载摄像头的行人数据集 第 4 期 齐鹏宇,等:基于改进 FCOS 的拥挤行人检测算法 ·815·