APP下载

基于多级特征金字塔网络的目标检测研究*

2021-11-24梁礼明钱艳群蓝智敏

传感器与微系统 2021年11期
关键词:金字塔尺度特征

梁礼明, 钱艳群, 熊 文, 蓝智敏

(江西理工大学 电气工程与自动化学院,江西 赣州 341000)

0 引 言

近年来,卷积神经网络(convolutional neural network,CNN)在图像分类、目标定位与检测等计算机视觉领域取得了显著的成就。与分类任务不同,目标检测在范围很广的尺度上定位和检测多个目标时存在着自身的挑战。目前最先进的单级目标检测器(DSSD[1],RetinaNet[2]和RefineDet[3])和两级目标检测器(Mask R-CNN[4]和DetNet[5])普遍使用特征金字塔来处理不同物体尺度变化的问题。尽管这些检测器取得令人振奋的检测效果,但面对目标检测中尺度范围太广,对各个不同范围的目标检测效果不明显这一难点,仍然不能很好地解决。造成这种现象的原因主要是:1)检测器中所设计的特征金字塔原用于分类识别任务,对于检测任务来说特征表示能力不足;2)特征金字塔中每个预测的特征图仅来自一个或两个层,不能充分地利用各个层的特征[6]。

本文提出一种基于多级特征金字塔网络结构的目标检测算法。网络通过将主干网络的特征不断进行深层提取,融合不同尺度的特征进行检测。通过实验表明,本文所提出的算法模型能够更好地解决目标检测中的尺度变化所带来的问题。

1 算法模型

1.1 总体结构

网络由3个不同的模块组成(如图1所示),分别是特征融合模块、8个U型模块以及尺度特征聚合模块。

图1 多级特征金字塔网络的目标检测模型

首先,特征融合模块1融合主干网络提取的特征形成基础特征,这些特征具有丰富的信息和代表性;其次,每个U型模块通过生成一组多尺度特征,与特征融合模块2交替连接,融合的特征送入下一个U型模块,进行更深层地提取特征;最后,尺度特征聚合模块通过尺度级联的特征操作和自适应的注意机制将不同等级的特征按照相同的尺度进行合并,集成为多层次的特征金字塔网络。

1.2 特征融合模块

如图2(a)所示,特征融合模块1从主干网络中融合了不同层次的特征。采用VGG的Conv4_3和Conv5_3两种不同尺度的特征作为输入,使用1×1卷积层来进行通道降维,并通过2x上采样操作将深度特征重新缩放到相同的尺度,使用连接操作来聚合这些特征形成基础特征。特征融合模块2如图2(b)所示,与特征融合模块1的操作类似,每个U型模块的最大输出特征映射与基础特征作为输入,融合的特征送入到下一个U型模块。

图2 特征融合模块

1.3 U型模块

如图3所示,本文设计的U型模块采用一种比FPN[7]更细化的结构,原始的FPN[2]选择ResNet[8]主干中每个阶段最后一层的输出,编码层为一系列步长为2的3×3卷积层,本文设计在解码层分支上进行上采样和Element-wise sum[9]操作后,添加1×1卷积层,以增强学习能力并保持特征的平滑。

图3 U型模块

8个U型模块的输出形成了多层次、多尺度的特征。每个U型模块与特征融合模块2交替叠加,产生多个具有不同尺度的特征图。特征融合模块2将前一个U型模块的最大输出特征图与基础特征融合,融合后的特征图被输入到下一个U型模块。第一个U型模块没有任何其他U型模块的先验知识,所以它只向Xbase学习。输出的多级多尺度特征计算如下

1.4 尺度特征聚合模块

图4 尺度特征聚合模块

在第二阶段中,使用SE[9]注意力机制以自适应的方式聚合特征,将引入一个信道关注模块,以鼓励特性将注意力集中在它们最受益的通道上。使用全局平均池在Squeeze[9]步骤中生成Channel-wise[9]来统计z∈RC。为了完全捕获信道依赖,其激励步骤通过两个完全连接的层来学习注意机制

s=Fex(z,W)=σ(W2σ(W1z))

(2)

1.5 损失函数

针对正负样本数量不平衡的问题,本文在训练中不使用所有的负样本包围盒,而是将负样本的损失进行排序,将损失最大的负样本作为最后预测的样本,最终的正负样本比例控制在3∶1[10]。但是为了减少负样本的数量,与SSD(single shot multibox detector)模型不同的是,在预测前会对网络预测产生的包围盒进行前景和背景的二分滤除。损失函数为

2 实验结果与分析

本文实验环境为Ubuntu16.04。 CPU型号为Intel I7—7800,选用 NVIDIA Titan X的GPU。采用VGG16网络来提取图像的特征,模型加载时使用预训练权重。整个模型包含8个U型模块,在检测阶段,对6个金字塔特征分别添加2个卷积层,分别实现位置回归和分类,6个特征图的默认框的检测范围按照原始SSD模型进行设置。本文选用MS COCO[11]数据集和PASCAL VOC数据集。训练阶段使用COCO2014train中图片进行训练,包含82 738张图像。COCO2014val作为验证集,用于在每一轮迭代之后对模型的验证,用COCO2015进行测试,测试结果提交服务器。COCO数据集根据不同的IOU进行评价,并对图像分为3个规模大小进行评价。测试结果与其他主流的目标检测算法对比如表1所示,输入图像为320×320时,本文所提出的模型的AP为33.2 %,APS为14.1 %,APM为37.6 %,不但总体准确率相对于其他模型有明显提升,对中、小目标的检测效果也相对较好。从测试集中随机选取几张包含各个尺度的目标的图片进行测试,结果如图5所示。

表1 MS COCO数据集检测结果

图5 测试图对比

PASCAL VOC数据集共包含20类目标,本文采用PASCAL VOC07+12的训练验证集对模型进行联合训练(共16 551张图片),并在PASCAL VOC2007测试集中进行测试(4 952张图片),使用平均准确率(mAP)作为评价指标。输入的图片大小为512×512,批处理大小为16,初始学习率为10-3迭代60K次,再将学习率降为10-4迭代40K次,最后将学习率降为10-5迭代20K次,使用随机梯度下降法优化参数,动量和权重衰减参数分别为0.9和0.000 5。表2给出了PASCAL VOC07数据集中一些中小目标对比结果,从表2中可以看出,尤其是对像鸟、船、瓶子这类小目标检测的准确率有明显的提升。

表2 PASCAL VOC07中小目标测试结果对比(IOU=0.5)

3 结 论

针对目标检测广泛的尺度变化问题,本文提出了一个有效的特征金字塔网络来对不同尺度的目标进行检测。整个网络模型以端到端的方法进行训练,并且在PASCAL VOC和MS COCO上进行了实验。相比于SSD模型,检测出了远方的小人和小车,对于一些中、小目标的物体检测有所帮助。但是,由于多个U型模块增大了模型的计算量,使得检测速度有所降低。因此,不断优化模型的结构,降低特征信息冗余将是今后主要的研究任务。

猜你喜欢

金字塔尺度特征
“金字塔”
财产的五大尺度和五重应对
Great Vacation Places
如何表达“特征”
海上有座“金字塔”
不忠诚的四个特征
抓住特征巧观察
神秘金字塔
宇宙的尺度
9