2. 福建师范大学 医学光电科学与技术教育部重点实验室, 福州 350007;
3. 福建师范大学 福建省光子技术重点实验室, 福州 350007;
4. 福建师范大学 福建省光电传感应用工程技术研究中心, 福州 350007
2. Key Laboratory of Optoelectronic Science and Technology for Medicine (Ministry of Education), Fujian Normal University, Fuzhou 350007, China;
3. Fujian Provincial Key Laboratory of Photonic Technology, Fujian Normal University, Fuzhou 350007, China;
4. Fujian Provincial Engineering Technology Research Center of Photoelectric Sensing Application, Fujian Normal University, Fuzhou 350007, China
近年来, 深度学习方法在图像分类、目标检测和文本识别等计算机视觉领域获得了显著的成功[1-3]. 卷积神经网络通过自底向上构建多层卷积和下采样, 用来获得不同分辨率的特征表示, 在计算机视觉任务模型构建中已然成为一种范例. 在目标检测任务中, 由于不同目标的尺度多变, 在不同环境中的同一类别目标尺度不一, 如何识别多尺度目标一直是目标检测模型的一个难题, 为了提升目标检测的效果, 研究人员在目标检测模型的多个方面进行改进.
在各类计算机视觉任务中, 通过构建特征金字塔形式的结构逐渐成为一种通用模式. 其中最具代表性的结构为Lin等人提出的FPN[4], FPN通过增加自上而下的路径和横向连接来增强底层特征图的语义信息. 后续基于FPN改进的PAFPN[5]和BiFPN[6]等均通过增加额外的信息传递路径来丰富各阶段特征图的信息内容; 为了更充分的传递信息, FPG[7]设计了深度多层的网络结构. 不同于上述手工设计特征融合路径的方式, NASFPN[8]采用神经结构搜索的方法让网络自行寻找最优的特征融合方式. DFP[9]和BFP[10]考虑到不同阶段特征的信息鸿沟, 将各阶段特征图先进行融合再来传递全局信息. 然而多数改进的FPN模型往往具有更长的信息传递路径, 这极大地稀释了FPN基础结构中传递的语义信息. 针对长路径特征融合带来的信息稀释问题, 本文提出多路径特征融合模块(multi-path feature fusion module, MPFFM), 用来增强输入阶段到输出阶段特征图间信息的传递, 通过缩短信息传递路径来缓解信息稀释.
为了获得更好的特征表示, 注意力机制广泛应用于各类深度学习任务中[11-14]. SENet[11]通过建立特征图通道的权重函数学习各个通道的重要性, CBAM[12]在SENet[11]的基础上在特征图空间维度引入注意力, 从而进一步提升特征表示能力. Li等人提出的SKNet[13]通过建立多路具有不同感受野特征图的权重函数, 使卷积神经网络能够自行选择不同感受野大小来适应多尺度目标. 但其结构中含有多层全连接网络来生成注意力权重, 这占用了大量参数, 并且采用了空洞卷积来提取不同尺度的特征, 这可能会导致特征信息的不连续, 影响目标的定位效果. 本文通过改进SKNet结构并将其引入到目标检测模型中, 称为尺度感知模块(scale-aware module, SAM), 相比SKNet, SAM在减小参数量的同时增加了相邻通道间信息的传递, 通过建立输入输出特征的残差连接防止特征信息被过度处理, 来进一步完善模块的特征表征能力. 本文将SAM嵌入到MPFFM中, 在特征图的通道中增加尺度感知信息, 来增强模型对不同尺度目标的识别能力.
本文运用多路径特征融合模块, 通过建立跨尺度跨路径连接, 来增强输入特征到输出特征的信息传递; 并改进了SKNet[13]的结构, 在避免信息丢失的同时增加了特征图通道的信息交互, 通过建立残差连接缓解特征信息被过度处理的弊端; 最后通过在公开的基准数据集PASCAL VOC[14]和MS COCO[15]上进行测试, 相对于基线方法, 本文提出的尺度感知的多路径特征融合目标检测算法取得了更优的结果.
2 尺度感知的多路径特征融合模型 2.1 网络结构本文提出的尺度感知多路径特征融合模型结构如图1所示.
整体的网络结构主要包含了4个部分: 骨干网络、尺度感知模块(SAM)、多路径特征融合模块(MPFFM)和检测头模块. 模型在训练和评估时其他部分的结构设计如区域建议网络、检测头模块和损失函数等均与模型Faster RCNN[16]保持一致. 输入的图片在经骨干网络提取特征后, 取出不同尺度的4个阶段特征图来构建特征金字塔, 由于每个阶段特征图内的目标尺度同样具有差异, 因此各阶段特征图首先送入尺度感知模块实现多尺度特征提取, 让每个阶段特征图自行选择感受野大小来适应不同尺度的目标, 然后再进行下游的特征融合部分. 由卷积神经网络的性质可知, 浅层特征图拥有高分辨率和强定位信息, 深层特征图具有低分辨率和强语义信息, 为了使深层和浅层特征图信息之间能够相互补充, 本文提出了多路径特征融合模块, 强化输入特征图到输出特征图的语义信息传递, 同时多路径的设计使深层特征图的语义信息和浅层特征图的定位信息在整个模块中得到充分融合.
2.2 多路径特征融合模块 MPFFM图2展示了几种不同的特征金字塔结构, 对比各子图可以发现, 虽然BiFPN[6]对PAFPN[5]结构进行了有效的改进, 但由于其结构中输入特征到输出特征的映射路径繁杂, 基于FPN[4]的自上而下的语义增强路径到输出特征图时被稀释, 淹没在众多信息流中. 因此本文提出了多路径特征融合模块(MPFFM), 如图2(d)所示, 由3部分组成: 自上而下路径、残差跨尺度连接和自下而上路径, 通过在输入特征图与输出特征图之间建立跨尺度连接, 来增强不同尺度特征图之间的信息传递, 缓解特征信息在传递时的稀释问题, 从而突出输入的本征特征的重要性. MPFFM中{C2, C3, C4, C5}是骨干网络如ResNet[17]的4个阶段的输出特征图, 特征图{P2, P3, P4, P5}由维度为1×1×256的卷积层将特征图{C2, C3, C4, C5}通道统一为256, 特征层P6由P5经步长为2尺寸为3×3的卷积层下采样得到.
自上而下路径得到的特征图M3、M4、M5和N2由式(1)计算:
$ \left\{ {\begin{gathered} {M_5} = Conv\left( {{P_5} + Conv\left( {{f_u}\left( {{P_6}} \right)} \right)} \right) \\ {M_i} = Conv\left( {{P_i} + Conv\left( {{f_u}\left( {{M_{i + 1}}} \right)} \right)} \right), i \in \left\{ {3, 4} \right\} \\ {N_2} = Conv\left( {{P_2} + Conv\left( {{f_u}\left( {{M_3}} \right)} \right)} \right) \\ \end{gathered}} \right. $ | (1) |
残差跨尺度连接和自下而上路径获得的特征图N3、N4、N5和N6由式(2)计算:
$\left\{ { \begin{gathered} {N_i} = Conv\left( \begin{gathered} {P_i} + {M_i} + {f_d}\left( {{N_{i - 1}}} \right) + \\ Conv\left( {{f_u}\left( {{P_{i + 1}}} \right)} \right) \\ \end{gathered} \right), i \in \left\{ {3, 4} \right\} \\ {N_5} = Conv\left( {{P_5} + {M_5} + {f_d}\left( {{N_4}} \right)} \right) \\ {N_6} = Conv\left( {{P_6} + {f_d}\left( {{N_5}} \right)} \right) \\ \end{gathered}} \right. $ | (2) |
各层特征图的维度由式(3)表示:
$ {P_i}{\text{, }} {M_i}{\text{, }} {N_i} \in {\mathbb{R}^{C \times \tfrac{H}{{{{\text{2}}^i}}} \times \tfrac{W}{{{{\text{2}}^i}}}}} $ | (3) |
在式(1)和式(2)中, fu(·)为上采样函数, 采用尺度因子为2最近邻插值的方法, fd(·)为下采样函数, 通过步长为2尺寸为3×3的卷积层实现, Conv为保持特征图输入输出分辨率不变的3×3卷积运算. 每次上采样之后会紧跟一层卷积用来特征对齐, 同时跨尺度特征相加时的卷积层用来消除混叠效应. 式(3)中参数C、H和W分别表示为特征图的通道数、高和宽, 参数 i 代表特征图的不同阶段, 从而对应着特征图不同的尺度.
2.3 尺度感知模块 SAM
对于目标的多尺度问题, RFB[18]通过组合不同感受野大小的特征图能够有效地适应多尺度目标, 但这些特征图进行融合时往往具有相同的权重, 这样的设计可能造成很多冗余的信息被保留, 导致模型不能辨别不同大小感受野特征图各自的重要性. SKNet[13]通过建立单个通道上不同感受野特征图的权重函数, 让卷积神经网络自行判断不同感受野各自的重要性, 将其嵌入在骨干网络中用来增强模型多尺度特征提取能力, 在图像分类任务中获得了提升.
为了增强目标检测模型对不同尺度目标的感知能力, 本文通过改进SKNet结构使其适用于目标检测任务, 使模型只需要增加少量的参数就能捕获到不同尺度的信息. 如图3所示, 本文提出的尺度感知模块(SAM)不同于SKNet使用多路空洞卷积来获取多尺度特征, 而是采用卷积层级联的形式获取多尺度特征, 从不同的节点输出以实现输出不同感受野大小的特征图, 如尺寸为5×5卷积核的感受野可由两个级联形式的3×3卷积核代替, 这样的设计实现了参数共享并且避免了使用空洞卷积可能带来的信息不连续等问题. 图3中输入特征图向量X∈
$ \begin{gathered} {G^c} = {f_g}\left( {{O^c}} \right) = \dfrac{1}{{H \times W}}\sum\limits_{i = 1}^H {\sum\limits_{j = 1}^W {{O^c}\left( {i, j} \right)} } , \; c \in \left\{ {1, 2, \cdots , C} \right\} \\ \end{gathered} $ | (4) |
其中, Gc代表向量G ∈
$ E = {f_e}\left( G \right) = \sigma \left( {Conv1{{d}}\left( G \right)} \right) $ | (5) |
其中, Conv1d本文采用尺寸为1×5的一维卷积,
图3中将向量H ∈
$ \left\{ \begin{gathered} {a_i} = \dfrac{{{{\rm{e}}^{{a_i}}}}}{{{{\rm{e}}^{{a_i}}} + {{\rm{e}}^{{b_i}}}}}, \; i \in \left\{ {1, 2, \cdots , C} \right\} \\ {b_i} = \dfrac{{{{\rm{e}}^{{b_i}}}}}{{{{\rm{e}}^{{a_i}}} + {{\rm{e}}^{{b_i}}}}}, \; i \in \left\{ {1, 2, \cdots , C} \right\} \\ \end{gathered} \right. $ | (6) |
经权重分配后的向量a和b再经广播机制后维度变为a ∈
3 实验及分析
本节给出了本文的模型分别在目标检测数据集PASCAL VOC和MS COCO上的评估结果. PASCAL VOC数据集包括20种类别, 数据的训练集和测试集的划分根据通用做法[16], 在VOC2007和VOC2012训练集的联合集上对所有模型进行训练, 并在VOC2007测试集上进行评估, 模型评估采用平均精度(average precision, AP)和均值平均精度(mean average precision, mAP)作为精度性能评估指标. MS COCO数据集包含80种类别, 其中含有数量为118k张图片(train-2017)用于训练和5k张图片(val-2017)用于验证, 性能评估指标AP50和AP75分别为交并比为0.5和0.75时的平均精度, AP为综合的性能评估指标, 并且对大、中、小3种尺寸目标的识别能力分别进行了评估. 同时本节给出了本文方法与其他基于FPN的改进方法的对比结果, 并通过消融实验验证了各模块的有效性.
3.1 实验细节为了公平对比实验结果, 本文实验是基于PyTorch框架在开源模型库mmdetection上实现, 使用模型库中公开的骨干网络, 并采用预训练模型微调, 在单卡GeForce GTX 1080 Ti上进行训练. 在训练PASCAL VOC数据集时, 本文采用SGD作为优化器, momentum为0.9, weight_decay为0.0001, batch_size为2, 初始学习率为0.00125, 总训练轮数为12, 训练到第9轮时学习率乘以0.1. 对于训练MS COCO数据集, 初始学习率为0.0025, 在第8和第11轮时学习率均乘以0.1, 其他的超参数均与训练PASCAL VOC数据集时保持一致. 在训练过程中采用随机翻转等数据增强技术, 以增强模型的鲁棒性和泛化能力.
3.2 消融实验为了分析本文提出的两种模块的有效性, 本节设计了消融实验. 所有评估过程均在数据集PASCAL VOC2007 test上进行, 基线采用主干网络为ResNet-50-FPN的目标检测框架Faster RCNN. 实验结果如表1所示, 为了详细对比各模块对检测结果的提升效果, 基线模型在仅加入尺度感知模块(SAM)时, 检测精度提升了0.5%, 仅将多路径特征融合模块(MPFFM)代替FPN时, 模型检测精度提升了0.7%. 同时应用两个模块时, 检测精度相对于基线提升了1.3%, 而且两个模块组合使用时获得了额外的提升, 验证了尺度感知模块和多路径特征融合模块的有效性.
3.3 实验结果
表2详细对比了改进前后模型在数据集PASCAL VOC2007 test上对20类目标的检测结果, “*”表示本文复现的FPN和BiFPN结构. 为公平对比, 本文复现的BiFPN和MPFFM均未设置权重, 同时均使用普通卷积. 在相同的标准下, 本文提出的MPFFM相比BiFPN和FPN精度分别提升了0.4%和0.7%, 明通过增加额外的跨尺度连接可以有效提升目标检测效果, 也表明了由骨干网络输入的特征图信息对相邻尺度输出阶段特征图的重要性. 同时将本文提出的SAM与SKNet进行了比较, 在均使用MPFFM结构时, 模型的检测精度分别达到了82.2%和81.8%, 表明改进的注意力模型SAM具有更优秀的性能. 从表2的最后一行可以看出, 本文的方法在多个类别目标的识别精度上都能取得最优的结果.
表3对比了本文方法与主流算法在MS COCO上的检测结果, 同时对各种方法的参数量进行了比较, 并且在骨干网络为ResNet-50和ResNet-101时分别进行了实验验证, 表中“*”表示在mmdetection中复现的结果. 通过对比可以发现, 相对于基线方法, 当使用ResNet-50作为骨干网络时, 本文的方法在引入少量参数(+5.1M)的同时精度得到有效提升(+0.6%), 在各个尺度目标上的检测精度均有提升, 特别是对小目的精度提升最明显(+1.4%). 当骨干网络为ResNet-101时, 虽然模型检测精度仅比基线提升0.4%, 但对小目标的检测效果依旧能获得更高的精度提升(+1.6%). 综合对比各尺度目标检测精度的提升效果可以看出, 本文方法比基线方法更能适应目标尺度的变化, 并且在使用轻量的骨干网络时, 本文算法相对于其他主流的方法具有更高的效益, 同时对小目标的检测始终保持着较高精度.
图5展示了本文算法与基线方法进行目标检测的可视化对比图, 本文从MS COCO数据集中选出了4张极具挑战性的图片进行对比实验. 在图5(a)和图5(b)中, 本文方法相比基线方法能够识别出更多的小目标, 这得益于尺度感知模块的设计, 使得模型能自行选择感受野大小, 能够对小尺寸感受野分配更大的权重. 对比图5(c)中的结果, 对于部分遮挡的目标, 如图中观众席坐着的观众和左下角被遮挡的目标均能够被识别出来, 而且比基线方法识别出更多, 说明本文的模型能充分利用环境中的语义信息进行推测, 被遮挡目标的特征信息经多路径特征融合模块后, 得到深层特征的语义信息补充从而能被成功识别. 对比图5(d)结果, 本文检测出来的目标具有更高的分类得分而且定位精度更高, 这得益于本文的多路径特征融合模块的设计, 能够充分传递语义信息和定位信息.
图6为模型改进前后的训练损失曲线图, 可以发现, 与原Faster RCNN FPN模型相比, 本文改进后的模型在整个训练过程的前段和后段始终保持着更低的损失, 表明本文的方法相较于原方法具有更好的收敛效果.
4 结论
本文提出了一种基于尺度感知的多路径特征融合的目标检测算法, 其中包含了多路径特征融合模块和尺度感知模块两个主要部分. 多路径特征融合模块通过增加输入输出特征图之间的跨尺度连接, 增强了各尺度特征图之间的信息传递, 有效地缓解了信息在长路径传递时的稀释问题. 同时通过改进注意力模型而提出的尺度感知模块, 使模型在进行非线性变换时, 减少了信息的丢失, 加强模型的特征利用能力. 将尺度感知模块嵌入到多路径特征融合模块中, 能够有效增强模型的尺度鲁棒性和特征复用能力. 通过在通用的目标检测任务数据集上验证本文算法, 本文方法与基线方法相比在多种类别和各尺度大小目标上的检测精度均获得了提升, 同时本文方法与其他同类方法相比具有更高的效益, 并且对小尺度目标识别保持优异的性能, 验证了本文模型的有效性.
[1] |
Krizhevsky A, Sutskever I, Hinton GE. ImageNet classification with deep convolutional neural networks. Proceedings of the 25th International Conference on Neural Information Processing Systems. Lake Tahoe: Curran Associates Inc., 2012. 1097–1105.
|
[2] |
Simonyan K, Zisserman A. Very deep convolutional networks for large-scale image recognition. arXiv:1409.1556, 2014.
|
[3] |
LeCun Y, Bottou L, Bengio Y, et al. Gradient-based learning applied to document recognition. Proceedings of the IEEE, 1998, 86(11): 2278-2324. DOI:10.1109/5.726791 |
[4] |
Lin TY, Dollár P, Girshick R, et al. Feature pyramid networks for object detection. Proceedings of the 2017 IEEE Conference on Computer Vision and Pattern Recognition. Honolulu: IEEE, 2017. 936–944.
|
[5] |
Liu S, Qi L, Qin HF, et al. Path aggregation network for instance segmentation. Proceedings of the 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Salt Lake City: IEEE, 2018. 8759–8768.
|
[6] |
Tan MX, Pang RM, Le QV. Efficientdet: Scalable and efficient object detection. Proceedings of the 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Seattle: IEEE, 2020. 10778–10787.
|
[7] |
Chen K, Cao YH, Loy CC, et al. Feature pyramid grids. arXiv:2004.03580, 2020.
|
[8] |
Ghiasi G, Lin TY, Le QV. NAS-FPN: Learning scalable feature pyramid architecture for object detection. Proceedings of the 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Long Beach: IEEE, 2019. 7029–7038.
|
[9] |
Kong T, Sun FC, Tan CB, et al. Deep feature pyramid reconfiguration for object detection. Proceedings of the 15th European Conference on Computer Vision (ECCV). Munich: Springer, 2018. 172–188.
|
[10] |
Pang JM, Chen K, Shi JP, et al. Libra R-CNN: Towards balanced learning for object detection. Proceedings of the 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Long Beach: IEEE, 2019. 821–830.
|
[11] |
Hu J, Shen L, Sun G. Squeeze-and-excitation networks. Proceedings of the 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Salt Lake City: IEEE, 2018. 7132–7141.
|
[12] |
Woo S, Park J, Lee JY, et al. CBAM: Convolutional block attention module. Proceedings of the 15th European Conference on Computer Vision (ECCV). Munich: Springer, 2018. 3–19.
|
[13] |
Li X, Wang WH, Hu XL, et al. Selective kernel networks. Proceedings of the 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Long Beach: IEEE, 2019. 510–519.
|
[14] |
Everingham M, van Gool L, Williams CKI, et al. The PASCAL visual object classes (VOC) challenge. International Journal of Computer Vision, 2010, 88(2): 303-338. DOI:10.1007/s11263-009-0275-4 |
[15] |
Lin TY, Maire M, Belongie S, et al. Microsoft COCO: Common objects in context. 13th European Conference on Computer Vision. Zurich: Springer, 2014. 740–755.
|
[16] |
Ren SQ, He KM, Girshick R, et al. Faster R-CNN: Towards real-time object detection with region proposal networks. Proceedings of the 28th International Conference on Neural Information Processing Systems. Montreal: MIT Press, 2015. 91–99.
|
[17] |
He KM, Zhang XY, Ren SQ, et al. Deep residual learning for image recognition. Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas: IEEE, 2016. 770–778.
|
[18] |
Liu ST, Huang D, Wang YH. Receptive field block net for accurate and fast object detection. Proceedings of the 15th European Conference on Computer Vision (ECCV). Munich: Springer, 2018. 404–419.
|
[19] |
Wang QL, Wu BG, Zhu PF, et al. ECA-Net: Efficient channel attention for deep convolutional neural networks. 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). Seattle: IEEE, 2020. 11531–11539.
|
[20] |
Lin TY, Goyal P, Girshick R, et al. Focal loss for dense object detection. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2020, 42(2): 318-327. DOI:10.1109/TPAMI.2018.2858826 |
[21] |
Luo YH, Cao X, Zhang JT, et al. CE-FPN: Enhancing channel information for object detection. Multimedia Tools and Applications, 2022.
|
[22] |
Chen Q, Wang YM, Yang T, et al. You only look one-level feature. Proceedings of the 2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Nashville: IEEE, 2021. 13034–13043.
|