开放科学(资源服务)标志码(OSID):
行人检测[1-3]作为目标检测中的重要任务,在无人驾驶、视频监控等领域得到广泛应用。传统的行人检测方法主要使用人工设计的梯度方向直方图(Histogram of Oriented Gradients,HOG)[4]、小波变换(Haar)[5]、聚合通道特征(Aggregated Channel Features,ACF)[6]等特征提取器来提取行人特征,并使用支持向量机(Support Vector Machines,SVM)[7]、自适应提升(Adaptive Boosting,AdaBoost)[8]等分类器来判断区域是否有目标。随着深度学习的不断发展,Faster-RCNN(Faster Region-based Convolutional Neural Networks)[9]、SSD(Single Shot Detection)[10]、YOLO(You Only Look Once)[11]等目标检测算法相继被提出,使得行人检测方法得到较快发展[12-14]。但是,此类可见光单模态检测算法无法应对光照不足的情况,从而导致行人检测模型在夜间表现效果不佳。如何提高行人检测模型在光照不足情况下的鲁棒性是亟待解决的问题。
红外相机基于红外光反射成像,在夜间光照不足条件下也能获取到图片的特征,其能够对可见光模态进行信息补充,使得夜间行人检测[15]成为可能。但是,由于红外光图像的纹理信息较少,在光照良好的条件下,可见光模态行人检测模型效果更优。因此,近年来有大量红外光与可见光多模态相融合的行人检测算法被提出。文献[16]提出KAIST数据集,其包括一一匹配的可见光和红外光图片,该文提出可见光与红外光融合的ACF+T+THOG(Aggregated Channel Features+Thermal+Thermal Histogram of Oriented Gradients)行人检测器,实验结果表明,融合后的行人检测器在性能上优于可见光或红外光的单模态行人检测器,但是,因为其使用传统方法,检测准确率依然太低。文献[17]使用深度卷积神经网络,并提出前期融合(Early Fusion)和后期融合(Late Fusion)2种特征融合策略。文献[18]进一步探讨基于深度卷积神经网络的可见光与红外光图像特征融合结构,并提出比前期融合和后期融合更好的中层融合(Halfway Fusion),再次提升了检测性能。文献[19]在Halfway Fusion的基础上使用区域推荐网络(Region Proposal Network,RPN)作为特征提取模块,并使用BDT(Boosted Decision Trees)进行分类,提升了行人检测器的性能。但是,上述多模态行人检测算法在进行特征提取时忽略了行人图像的多尺度问题,只对单独的特征层进行融合,这使得算法对多尺度行人尤其是小目标行人的检测效果不佳。此外,这些算法所使用的融合方案为简单的concat级联融合,忽略了白天和夜晚不同光照条件下各模态的特征信息差异,导致检测效果较差。
本文在YOLO算法的基础上,提出针对可见光和红外光双模态输入的行人检测算法,并对其他算法模态融合时所使用的concat级联融合进行改进,设计结合注意力机制的模态加权融合方法。
1 YOLO算法本节对YOLO算法进行介绍,包括其进行目标检测的基本原理和用于特征提取的Darknet53框架网络结构。基于YOLO网络的检测方法直接从图像中提取特征,再端到端地回归以得到结果。Darknet53通过1×1和3×3卷积核的交替堆叠来完成特征提取,通过步长为2的卷积核完成下采样过程。
1.1 YOLO算法原理YOLO将输入图片缩放为416×416,再分成
$ s=P\left({C}_{i}\right)\times P\left(O\right)\times I $ | (1) |
当预测框中存在物体时,
Darknet53是REDMON J在YOLOv3[20]中提出的用于特征提取的主干网络,网络的基本单元由卷积层、批归一化层(Batch Normalization)和Leaky ReLU激活函数组成,其加深了网络层数,增强了特征提取能力,又借鉴了残差网络residual network[21],能够避免由于网络层数过深导致的模型退化问题。网络结构中有5个残差模块,分别为
![]() |
Download:
|
图 1 Darknet53网络结构 Fig. 1 Network structure of Darknet53 |
在本文所提基于YOLO的多模态加权融合行人检测算法模型中,先进行多模态特征提取,再对提取后的特征进行特征加权融合和注意力机制加强,最后使用多尺度的特征图进行目标检测,以预测出行人目标的位置和概率。
行人检测算法模型整体流程框架如图 2所示。选取一一对应的可见光与红外光图片作为输入,分别送入特征提取网络Darknet53中,提取出2个模态的多尺度特征图,并将提取后的特征依次送入模态加权融合层MAM中进行模态加权融合,再将融合结果送入CBAM(Convolutional Block Attention Module)模块进行注意力机制加强。在完成以上2个步骤后,可以获得多尺度的加权融合特征图,最后将多尺度的加权融合特征图依次级联并送入YOLO层完成目标检测任务。本文算法对YOLO的输入端进行修改,使得模型可以使用一一对应的多模态图像对作为输入,为了对不同模态的特征图进行加权融合,使用模态加权融合模块MAM和注意力机制模块CBAM。
![]() |
Download:
|
图 2 基于YOLO的多模态加权融合行人检测算法流程 Fig. 2 Procedure of YOLO-based multi-modal weighted fusion pedestrian detection algorithm |
本文使用双路Darknet53作为特征提取网络,提取可见光图片特征的部分记为Darknet-V,提取红外光图片特征的部分记为Darknet-I。对于大小为416×416的输入图片,特征提取网络的2个分支分别在
![]() |
Download:
|
图 3 特征提取模块架构 Fig. 3 Architecture of feature extraction module |
从图 4的白天可见光-红外光行人图像对和图 5的夜晚可见光-红外光行人图像对可以看出,白天可见光图片中行人目标纹理清晰,特征丰富,红外光行人目标仅具有轮廓信息,而夜晚在光照不充分的条件下,可见光图片行人目标难以辨认,红外光图片行人特征明显易于识别。在白天、夜晚不同的光照环境下,2个模态的数据呈现出不同的特点,因此,要针对不同模态的数据设置加权特征融合模块。
![]() |
Download:
|
图 4 白天场景中行人目标的可见光和红外光图像 Fig. 4 Visible and infrared images of pedestrian targets in daytime scenes |
![]() |
Download:
|
图 5 夜晚场景中行人目标的可见光和红外光图像 Fig. 5 Visible and infrared images of pedestrian targets in nighttime scenes |
其他的多模态融合行人检测算法采用直接concat的级联融合方式[17-19],这种做法默认了2个模态提供的信息相等。本文先通过NIN(Network in Network)[22]层对可见光模态特征图与红外光模态特征图进行维度压缩,然后使用图 6所示的MAM(Modal Attention Module)模块对2个模态的特征图进行加权,再对加权后的2个模态特征图实现级联,以在赋予不同模态权重的情况下保证融合特征图的通道数和单模态特征图的通道数相等,使得模型可以重用后续目标检测模块中的参数。可见光多尺度特征图记为
$ {M}_{i}={f}^{\mathrm{c}\mathrm{a}\mathrm{t}}\left({f}^{\mathrm{n}\mathrm{i}\mathrm{n}}\right({V}_{i})\times {A}_{v}/({A}_{m}), {f}^{\mathrm{n}\mathrm{i}\mathrm{n}}({I}_{i})\times ({A}_{i}/\left({A}_{m}\right)\left)\right) $ | (2) |
![]() |
Download:
|
图 6 MAM注意力机制结构 Fig. 6 The structure of MAM attention mechanism |
在通过MAM层对特征图进行加权融合之后,加入CBAM注意力机制[23],以优化特征融合模块,对特征图的通道和空间进行选择。CBAM层的输入为多尺度加权融合特征图
$ {M}_{Ai}={f}^{\mathrm{s}\mathrm{a}\mathrm{m}}\left({f}^{\mathrm{c}\mathrm{a}\mathrm{m}}\left({M}_{i}\right)\right) $ | (3) |
其中,
![]() |
Download:
|
图 7 CBAM注意力机制结构 Fig. 7 The structure of CBAM attention mechanism |
加权融合特征图的通道分别来自可见光特征图和红外光特征图,通道注意力机制(Channel Attention Module)可以利用通道间的关系学习一个权重,将其乘以对应的通道,以实现在不同模态之间的特征选择。在通道注意力机制中,输入的多模态融合特征图
$ F{'}=F\times \mathrm{s}\mathrm{i}\mathrm{g}\mathrm{m}\mathrm{o}\mathrm{i}\mathrm{d}\left(\mathrm{M}\mathrm{L}\mathrm{P}\right(\mathrm{A}\mathrm{v}\mathrm{g}\mathrm{p}\mathrm{o}\mathrm{o}\mathrm{l}\left(F\right))+\mathrm{M}\mathrm{L}\mathrm{P}(\mathrm{M}\mathrm{a}\mathrm{x}\mathrm{p}\mathrm{o}\mathrm{o}\mathrm{l}\left(F\right)\left)\right) $ | (4) |
空间注意力机制(Spatial Attention Module)利用不同空间位置之间的关系学习空间权重图,并将其与对应的空间位置相乘,可以加强图像对中的目标遮挡、光照不足等特征较弱部分的学习。以经过通道注意力机制加强的特征图
$ \begin{array}{l}F{'}{'}=F{'}\left(\mathrm{s}\mathrm{i}\mathrm{g}\mathrm{m}\mathrm{i}\mathrm{o}\mathrm{d}\right({f}^{7\times 7}\left({f}^{\mathrm{c}\mathrm{a}\mathrm{t}}\right(\mathrm{M}\mathrm{a}\mathrm{x}\mathrm{p}\mathrm{o}\mathrm{o}\mathrm{l}\left(F\right), \\ \;\;\;\;\;\;\;\mathrm{A}\mathrm{v}\mathrm{g}\mathrm{p}\mathrm{o}\mathrm{o}\mathrm{l}\left(F\right)\left)\right)\left)\right)\end{array} $ | (5) |
完整的特征融合模块如图 8所示,其中,V代表可见光特征图,I代表红外光特征图,M代表融合特征图,MA代表经过注意力机制加强后的融合特征图。
![]() |
Download:
|
图 8 特征融合模块结构 Fig. 8 Feature fusion module structure |
在获得了经过注意力机制加强后的可见光与红外光融合的多尺度特征图之后,将特征图依次融合并送入YOLO层进行目标检测。
![]() |
Download:
|
图 9 多尺度目标检测网络结构 Fig. 9 Multi-scale target detection network structure |
本文实验环境设置如下:CPU型号为I7-5930k,内存为32 GB,显卡为GeForce 1080 Ti,显存为11 GB。在该实验环境下本文检测器的检测速度达到19.8 frame/s,具有一定的实时性。
3.1 数据集与评价标准本文使用KAIST公开数据集训练和评价行人检测模型,KAIST[16]数据集是由HWANG等人建立的可见光图片与红外光图片一一对应的数据集,图片尺寸为640像素×512像素,有白天、夜晚2种场景,其中包含多尺度、被遮挡、光照条件不足等复杂环境下的行人目标。实验过程中使用平均精度(Average Precision,AP)作为评价指标,当检测框和任一标签框的IOU大于等于50%时记为正确检测样本,IOU小于50%时则记为误检样本,若标签框与任一检测框的IOU都不大于50%时记为漏检样本。
3.2 实验参数设置本文基于深度学习框架pytorch构建网络结构,设置每批训练可见光-红外光图片对数为B=4,采用随机梯度下降法(SGD)进行训练。初始学习率设为0.001,随着训练轮次的增加,减小学习率为0.000 1以接近模型最优解。由于YOLO算法默认anchor的尺寸是在COCO数据集中得到的,不适用于行人检测任务,行人目标多为狭长的个体,因此本文通过聚类算法得到尺寸分别为[48,157][34,104][84,50]、[27,80][26,63][25,40]、[18,54][16,44][13,24]的anchor并作为大、中、小行人目标的检测框。
3.3 不同融合策略对比实验结果不同融合策略的精度对比实验结果如表 1所示,其中,concat代表其他多模态行人检测算法常用的直接concat融合方法,MAM代表本文融合模块所使用的模态加权融合方法,MAM+CBAM代表在MAM算法中加入了CBAM注意力机制。
![]() |
下载CSV 表 1 不同融合模块对比实验结果 Table 1 Comparison experiment results of different fusion modules |
通过表 1可以看出,本文使用的加权融合机制较其他算法使用的直接concat方法有较大性能提升,CBAM注意力机制也对多模态行人检测任务有所帮助。
白天部分检测效果如图 10所示,夜晚部分检测效果如图 11所示,上排为直接concat的检测结果,下排为MAM+CBAM的检测结果,图中矩形为检测结果框,椭圆形为漏检的行人目标。图 10中因为目标过小和互相遮挡而难以检测的目标被准确检测,图 11中因为行人目标过于密集、衣服颜色与背景颜色过于接近而导致的特征较弱的目标也都被检测出来,证明本文算法所进行的特征加权融合和注意力机制能够提升行人检测器的性能。
![]() |
Download:
|
图 10 不同融合方法在白天时的检测结果对比 Fig. 10 Comparison of detection results of different fusion methods in daytime |
![]() |
Download:
|
图 11 不同融合方法在夜晚时的检测结果对比 Fig. 11 Comparison of detection results of different fusion methods at night |
本文算法与其他可见光与红外光融合的行人检测算法的对比结果如表 2所示,其中,各对比算法的结果来自文献[24]。通过表 2可以看出,本文算法的精度较对比算法有所提升,且在准确率接近的算法中本文算法的速度有较大优势。
![]() |
下载CSV 表 2 不同多模态算法的检测结果对比 Table 2 Comparison of detection results of different multi-modal algorithms |
将仅使用可见光进行行人检测的算法记为YOLO-Vis,在面对光照不足的问题时,有学者通过曝光增强[25-26]的方式对低照度图像进行预处理,将对图片曝光增强后再进行行人检测的算法记为YOLO-Enhancement。将本文多模态加权融合行人检测算法与上述2种算法进行对比,结果如表 3所示。
![]() |
下载CSV 表 3 3种算法性能对比结果 Table 3 Performance comparison results of three algorithms |
从表 3可以看出,可见光单模态行人检测算法在速度上具备优势,但在精度上不如本文多模态加权融合算法,尤其是在夜晚,其表现效果较差。在对图片进行曝光增强的预处理后算法精度有所提高,但精度仍然低于利用了红外光信息作为补充的本文算法。
本文算法与单模态算法的部分实验结果如图 12所示。其中,第1排为YOLO-Vis及YOLO-Enhancement的检测结果,第2排为本文算法的检测结果。图中矩形为检测结果框,椭圆形为漏检的行人目标。从检测结果可看出,对于白天由于阴影而导致目标亮度不足的行人,曝光增强后有效提升了其辨识度。在夜晚图片中,曝光增强虽然提升了亮度,使得最左方黑衣行人区别于黑夜背景,变得更加清晰,但最右方靠近车灯的小目标行人由于车灯亮度干扰而无法有效提高辨识度,然而利用了红外光信息作为补充的本文多模态行人检测算法可以有效识别出目标。
![]() |
Download:
|
图 12 3种算法检测结果对比 Fig. 12 Comparison of detection results of three algorithms |
为验证本文算法的泛化能力,使用仅在KAIST数据集上训练得到的模型,在OTCBVS Benchmark Dataset数据集[27]的子数据集OSU Color-Thermal Database上进行验证,该数据集中包含一一对应的可见光与红外光图像对,图像尺寸为320像素×240像素,由2组固定的监控摄像头拍摄所得。部分实验结果如图 13所示,从检测结果可以看出,对于被树枝遮挡和阴影中的行人,本文算法依然可以将其检测出来,证明本文算法具备一定的泛化能力。但是,由于未在验证集中进行训练,且验证集使用的图片大小仅为训练所用图片的23%,导致部分小目标检测效果不佳。
![]() |
Download:
|
图 13 OTCBVS数据集上的检测结果 Fig. 13 Detection results on the OTCBVS dataset |
为解决可见光图片在光照不足、信息缺失情况下检测效果不佳的问题,本文基于YOLO算法提出一种可见光与红外光融合的行人检测算法。对传统检测算法常用的级联融合方式进行改进,引入模态加权融合层MAM和CBAM注意力机制。实验结果表明,在KAIST多模态行人检测数据集上使用级联融合时,AP值为82.78%(全天)、83.31%(白天)和82.24%(夜晚),在使用本文结合注意力机制的模态加权融合时,AP值达到92.60%(全天)、93.39%(白天)和91.54%(夜晚)。本文算法在1080Ti上的检测速度可达19.8FPS,但与单模态行人检测算法的检测速度(35.7FPS)之间仍然存在一定的差距,因此,下一步将对模型进行压缩,构造更好的轻量级网络结构用于模型训练,从而提升网络模型的实时性。
[1] |
ZHANG C, TAN N L, LI G Z, et al. Pedestrian detection algorithm for infrared image based on multi-level features[J]. Computer Engineering, 2020, 46(4): 260-265. (in Chinese) 张驰, 谭南林, 李国正, 等. 基于多级特征的红外图像行人检测算法[J]. 计算机工程, 2020, 46(4): 260-265. |
[2] |
NGUYEN D T, LI W, OGUNBONA P O. Human detection from images and videos: a survey[J]. Pattern Recognition, 2016, 51(C): 148-175. |
[3] |
GAO Z, LI S B, CHEN J N, et al. Pedestrian detection method based on YOLO network[J]. Computer Engineering, 2018, 44(5): 215-219, 226. (in Chinese) 高宗, 李少波, 陈济楠, 等. 基于YOLO网络的行人检测方法[J]. 计算机工程, 2018, 44(5): 215-219, 226. |
[4] |
DALAL N, TRIGGS B. Histograms of oriented radients for human detection[C]//Proceedings of IEEE Conference on Computer Vision and Pattern Recognition. Washington D.C., USA: IEEE Press, 2005: 886-893.
|
[5] |
VIOLA P, JONES M J. Robust teal-time face detection[J]. Journal of Computer Vision, 2004, 57(2): 137-154. DOI:10.1023/B:VISI.0000013087.49260.fb |
[6] |
DOLLÁR P, WOJEK C, SCHIELE B, et al. Pedestrian detection: an evaluation of the state of the art[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2011, 34: 743-761. |
[7] |
CHEN P H, LIN C J, SCHLKOPF B. A tutorial on ν-support vector machines[J]. Applied Stochastic Models in Business and Industry, 2005, 21(2): 111-136. DOI:10.1002/asmb.537 |
[8] |
FREUND Y, SCHAPIRE R E. Adecision-theoretic generalization of on-line learning and an application to boosting[J]. Journal of Computer and System Sciences, 1997, 55(1): 119-139. DOI:10.1006/jcss.1997.1504 |
[9] |
REN S, HE K, GIRSHICK R, et al. Faster R-CNN: towards real-time object detection with region proposal networks[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2017, 39(6): 1137-1149. |
[10] |
LIU W, ANGUELOV D, ERHAN D, et al. SSD: single shot multibox detector[C]//Proceedings of European Conference on Computer Vision. Berlin, Germany: Springer, 2016: 21-37.
|
[11] |
REDMON J, DIVVALA S, GIRSHICK R, et al. You only look once: unified, real-time object detection[C]//Proceedings of CVPR. Washington D.C., USA: IEEE Press, 2015: 779-788.
|
[12] |
LU R Q, MA H M. Semantic head enhanced pedestrian detection in a crowd[EB/OL]. [2020-05-10]. https://arxiv.org/pdf/1911.11985.pdf.
|
[13] |
ZHANG S, YANG X S, LIU Y X, et al. Asymmetric multi-stage CNNs for small-scale pedestrian detection[J]. Neurocomputing, 2020, 409: 12-26. DOI:10.1016/j.neucom.2020.05.019 |
[14] |
DAI J, ZHANG P P, LU H C, et al. Dynamic imposter based online instance matching for person search[J]. Pattern Recognition, 2020, 100: 45-67. |
[15] |
GE J, LUO Y, TEI G. Real-time pedestrian detection and tracking at nighttime for driver-assistance systems[J]. IEEE Transactions on Intelligent Transportation Systems, 2009, 10(2): 283-298. DOI:10.1109/TITS.2009.2018961 |
[16] |
HWANG S, PARK J, KIM N, et al. Multispectral pedestrian detection: benchmark dataset and baseline[C]//Proceedings of IEEE Conference on Computer Vision and Pattern Recognition. Washington D.C., USA: IEEE Press, 2015: 1037-1045.
|
[17] |
WAGNER J, FISCHER V, HERMAN M, et al. Multispectral pedestrian detection using deep fusion convolutional neural networks[C]//Proceedings of European Symposium on Artificial Neural Networks. Berlin, Germany: Springer, 2016: 509-514.
|
[18] |
LIU J, ZHANG S, WANG S, et al. Multi-spectral deep neural networks for pedestrian detection[C]//Proceedings of British Machine Vision Conference. Berlin, Germany: Springer, 2016: 1-13.
|
[19] |
KONIG D, ADAM M, JARVERS C, et al. Fully convolutional region proposal networks for multispectral person detection[C]//Proceedings of Computer Vision and Pattern Recognition Workshops. Washington D.C., USA: IEEE Press, 2017: 243-250.
|
[20] |
YOLOv3: an incremental improvement[EB/OL]. [2020-05-10]. https://export.arxiv.org/pdf/1804.02767.
|
[21] |
HE K M, ZHANG X Y, REN S Q, et al. Deep residual learning for image recognition[C]//Proceedings of 2016 IEEE Conference on Computer Vision and Pattern Recognition. Washington D.C., USA: IEEE Press, 2016: 770-778.
|
[22] |
LIN M, CHEN Q, YAN S, et al. Network in network[EB/OL]. [2020-05-10]. https://arxiv.org/pdf/1312.4400.pdf.
|
[23] |
WOO S, PARK J, LEE J Y, et al. CBAM: convolutional block attention module[C]//Proceedings of European Conference on Computer Vision. Berlin, Germany: Springer, 2018: 3-19.
|
[24] |
GUAN D Y. Research on pedestrian detection methods via fusing visible and long-wave infrared images[D]. Hangzhou: Zhejiang University, 2019. (in Chinese) 官大衍. 可见光与长波红外图像融合的行人检测方法研究[D]. 杭州: 浙江大学, 2019. |
[25] |
LIU S, ZHANG Y. Detail-preserving underexposed image enhancement via optimal weighted multi-exposure fusion[J]. IEEE Transactions on Consumer Electronics, 2019, 45: 17-35. |
[26] |
ZHANG Q, NIE Y, ZHANG L, et al. Underexposed video enhancement via perception-driven progressive fusion[J]. IEEE Transactions on Visualization & Computer Graphics, 2016, 22(6): 1773-1785. |
[27] |
RIAD I. OTCBVS benchmark dataset collection[EB/OL]. [2020-05-10]. http://vcipl-okstate.org/pbvs/bench/.
|