基于多级特征混叠融合的水下小目标检测算法

2022-11-04 04:17黄代琴时慧晶王振飞
探测与控制学报 2022年5期
关键词:特征提取注意力卷积

陈 亮,黄代琴,时慧晶,王振飞

(1.湖南科技大学信息与电气工程学院,湖南 湘潭 411201; 2.昆明船舶设备研究试验中心,云南 昆明 650051)

0 引言

水下探测机器人在动态目标检测过程中,视觉感知是视觉导引与高精度作业的基础与保证[1-2]。传统单阶段多尺度目标检测器SSD(single shot multibox detector)算法[3],其以单阶段预测器YOLO(you only look once)[4]思路设计网络框架,并采用多级输出方法有效提升算法对不同尺度目标的特征反应能力,在PASCAL VOC(the PASCAL visual object classes)以及微软COCO(common objects in context)等通用的公开数据集上取得了比较理想的效果。然而,在水下目标检测过程中,由于光在复杂多变的水声传播过程中容易受到干扰与衰减等影响,指定检测的小目标常容易与干扰信号所产生的斑点、耀点等相混淆,采用普通的目标检测算法检测的精度、查全率等均难以满足实际需求。

针对小目标在水下目标检测特征提取与辨识度差的问题,文献[5]首先采用迁移学习与挤压激励网络,重构超分辨率的拓展图像数据,通过丰富小目标的特征信息,提高其算法检测的精度;但是算法挤压与激励网络采用双线性卷积机构,算法结构相对复杂,训练与检测时间相对较长。文献[6]采用特征金字塔结构对SSD网络进行优化,针对水下鱼群基于尺度过小、光照不足的问题进行了目标检测,精度提升了约2%,但算法中模型参数量过大,训练时间与检测时间也都出现明显降低。文献[7]采用双路径对SSD算法不同层级特征进行融合,有效提升了检测的精度,但算法采用双层特征提取结构[8],结构复杂,训练参数也扩增近1倍,其检测算法与应用部署均存在一定的困难。

综合考虑小型水下探测机器人对小目标检测的实际要求,本文从模型预测的准确性与网络结构的轻量化两个角度出发,提出一种基于多级特征混合融合的深度学习水下小目标检测方案,采用卷积注意力机制对浅层特征进行增强后,构建基于增强特征的多级分层融合的网络结构,通过混合训练以实现通过深层网络输出特征对浅层小目标特征进行补充,提升检测的精度。

1 SSD目标检测原理

SSD算法是当前目标检测算法中主流方法之一,具有结构简单、检测精度高、实时性好等优点[9]。SSD算法的总体结构如图1所示。

图1 SSD网络结构图Fig.1 The SSD network structure diagram

算法首先通过迁移学习的方法,利用ImageNet数据集,完成对特征提取的骨干网络参数的预训练;其后采用级联结构,对不同层级的不同特征图进行提取,并统一输出给检测输出层,并完成统一的训练。在此过程中,SSD算法仍采用锚点机制[10],对不同层级的不同特征图,设置系列固定的锚框,如表1所示。

表1 SSD300各预测层默认框Tab.1 SSD300 default box for each prediction layer

如Conv11-2层其输出的特征图大小为1×1,而其所对应的默认框数量为4个,尺度长宽缩放比分别为[1,1,2,1/2]。整个网络通过6个尺度共8 722个预设锚框实现对各类不同尺度目标进行检测与识别。

由于SSD算法对小目标提取主要依赖浅层结构,而浅层网络特征表达能力与语义信息相比较深层网络要差,因而造成了整个网络在小目标检测时不及大尺度目标。

2 基于多极特征混叠融合的改进SSD算法

2.1 网络结构

在水下巡检机器人动态目标检测过程中,SSD算法由于其浅层网络结构在特征信息表达能力上稍显不足,且没有上下文信息为其作补充,因而在使用时对小目标常容易出现漏检、误检等。针对上述问题,算法首先在网络的浅层输出引入卷积注意力机制,通过该模块完成对浅层特征的增强。同时,在浅层与深层融合过程中,引入多个层级的特征融合结构,完成不同层级在特征提取上的相互补充。

算法网络结构设计如图2所示。

图2 算法网络结构图Fig.2 The network structure diagram of algorithm

输入图片首先经过基础特征提取网络进行特征提取,将经过基础特征提取网络提取后的特征图放入额外的卷积层进行进一步的特征提取;之后取出38×38大小的特征图融入卷积注意力机制中进行进一步处理,同时取19×19以及10×10大小的特征图进行上采样,将获得的上采样特征图与经过卷积注意力机制处理后的特征图通过维度拼接的方式获得处理后的38×38大小的特征图,使用相同的方式获得处理后的19×19的特征图;最后,取处理后的大小为19×19的特征图进行上采样后与维度拼接后的大小为38×38大小的特征图再进行一次维度拼接后送入检测网络,此时再将处理后的大小为19×19的特征图以及10×10、5×5、3×3以及1×1的特征图也送入分类与检测器中。

在整个深度学习网络中,算法仍采用VGG16作为基础特征提取网络,并且通过增加额外卷积层来获取不同分辨率的特征图。选取网络的6种不同分辨率的特征图分别通过一个附加的卷积层来匹配输出通道,每个网络预测包含回归任务以及分类任务的输出。而为了给用于检测较小目标的浅层特征图添加高层特征图的高语义信息,网络采用了特征融合的方式将高层特征图与低层特征图融合后,使用融合后的特征图代替原来的低层特征图来检测较小的目标,即将含有高语义信息以及上下文信息的高层特征图通过反卷积操作得到与低层特征图大小相等的特征图。最后,对反卷积之后得到的特征图进行批量归一化以及ReLU操作后与低层特征图通过维度拼接的方式达到特征融合的目的。

2.2 卷积注意力机制模块

卷积注意力机制是一种用于前馈卷积神经网络的简单而有效的注意力模块,其主体结构是由通道注意力模块以及空间注意力模块串行连接而成。通过从通道和空间两个维度计算特征图(feature map)的注意力图(attention map),然后将注意力图(attention map)与输入的特征图(feature map)相乘来进行特征的自适应学习。在训练时,将特征提取网络输出的特征图输入给卷积注意力机制模块,然后依次从通道和空间两个不同的维度推算注意力图,最后将得到的注意力图与输入特征图相乘,以此进行自适应特征细化。卷积注意力机制结构如图3所示。

图3 卷积注意力机制Fig.3 The convolutional attention mechanism

由图3可知,特征提取网络输出的特征图首先会通过一个通道注意力模块,得到加权结果之后,再经过一个空间注意力模块,最终进行加权得到结果。其中,通道注意力机制主要关注输入图像中兴趣点,本质上是一个基于通道的注意力模型,表示的是各个特征通道的重要程度,通过训练可以完成对不同任务的通道进行增强或者抑制。空间注意机制关注的重点是位置信息,本质上是将原始图片中的空间信息通过空间转换模块,变换到另一个空间中并保留关键信息,为每个位置生成权重掩膜(mask)并加权输出,从而增强感兴趣的特定目标区域同时弱化不相关的背景区域。

卷积注意力机制结合了通道注意力机制以及空间注意力机制的优点,因而使得网络的特征提取能力更强。同时,卷积注意力机制还是一种轻量级的通用模块,在不需要增加过多额外开销的同时还可以同卷积神经网络一起进行端到端的训练。

2.3 特征融合结构

由于SSD网络采用缺乏语义信息以及上下文信息的低层特征图对水下的小目标进行检测,因而检测精度低、稳定性差。为了向缺乏语义信息的浅层特征图中添加高层特征图的高语义信息以及上下文信息,本文采用了多级特征混合融合的方式,使得用于检测较小目标的特征图中包含高语义信息以及上下文信息进而达到提升网络对水下较小目标的检测精度。

对于深度学习模块,其特征向量为图像目标的抽象表征,不同层级的特征所表征的目标也存在一定的差异性,而训练的对象是全图所有目标信息,因此,可以通过将两个或者多个特征图调整到相同尺度后进行对应位置特征值相加,也可以通过将不同特征图进行维度的拼接最终形成新的高阶特征图实现特征融合。考虑本文融合的特征图具有不同的尺度,因此使用维度拼接的方式可以有效保留不同阶层所表达的信息,完成对各尺度特征的真实预测。特征融合的结构图如图4所示。

图4 特征融合结构Fig.4 Structure for feature fusion

图4中,高层特征在特征融合之前需经过上采样操作,使其与目标特征图拥有相同的大小,之后,通过批量归一化以及ReLU操作之后在调整其维度信息后使用维度拼接法实现目标特征与上下文特征的融合。通过这样的特征融合方式,使得原本SSD网络中用于小目标检测的低层特征图中融合了高语义信息以及上下文信息,从而达到了提升网络对水下较小目标的检测精度的目的。

2.4 损失函数

目标检测的任务主要包括对目标图像位置的检测与目标属性的判别,因此,其损失函数包括分类损失与回归损失。两部分按照权重相加得到最后的损失,其计算公式为

(1)

式(1)中,N为先验框的数量,Lconf(x,c)为分类损失,Lloc(x,l,g)为回归损失,α为权重参数值。α取值过大容易造成分类识别与目标框预测之间的冲突,综合网络对分类任务与回归任务平衡需求,α取中间值0.5时网络检测与识别整体效果相对较好。

分类损失本质是对当前目标属性概率的判别,因而交叉熵损失函数通过信息论能较好地反映其概率分布,计算公式为

(2)

(3)

回归损失是位置偏差校正的重要参数。由于尺度的多样化,位置训练过程中容易出现异常点,而采用Smooth L1 Loss函数,其对异常点具有较强的鲁棒性,同时也能保证其在原点具有可导性。Smooth L1 Loss函数公式为

(4)

式(4)中,x值为两个偏移量之间的差值。

此外,在训练过程中,系统需要根据任务对分类任务与回归任务的精度要求灵活调整分类损失与回归损失之间的权重值。

3 实验结果与分析

FA-SSD算法是文献[11]针对小目标进行的SSD结构优化,其采用残差注意力机制完成对不同层级特征的融合。为了验证本文算法的有效性,实验将通过定量与定性等多重评价指标对本文算法与FA-SSD算法、传统SSD算法进行比较。

实验使用的是2020年全国水下机器人目标抓取大赛提供的水下数据集。该数据集包括海参、海胆、扇贝和海星4类水下目标,数据总数约6 000张,算法选择其中20%为测试集,80%为训练集,最后再以8∶2的比例将训练集分为训练集和验证集。在相同环境下不同网络各训练40 000次,目标检测效果如图5所示。

图5 算法检测效果Fig.5 Detection performance of different object detection algorithm

图5中,三类算法对相同的目标均完成了位置的检测与属性的判别,但通过对比可以发现,本文算法在类别判别的置信度相比于FA-SSD网络以及SSD网络更高,且位置估计也更加精确。

平均精度均值(mean average precision,mAP)是目标检测中定量模型评估的重要指标,计算公式为

(5)

式(5)中,P为准确率,R为召回率。mAP通过计算每个类别的准确率与召回率曲线所形成图形的面积平均值,可直接反映网络对所有被检目标的综合检测能力。

本实验分别使用同一个数据集在不同的网络下进行训练,并综合比较其检测速度与精度。实验采用GPU GTX1070Ti进行训练,同时采用CUDNN加速。

为验证不同算法结构对实验效果的影响,消融实验效果对比如表2所示。其中检测精度mAP由各模型使用1 024张不同的图片进行检测获得。

表2 不同算法效果对比Tab.2 Comparison of the performance of different object detection algorithms

从表2可以明显得出:FA-SSD网络相对于SSD网络检测精度提升了3.35%,而本文算法相对于FA-SSD检测精度提升了2.48%;从检测时间来看,FA-SSD相对于SSD网络增加了24 ms,而本算法相对于FA-SSD只增加了8 ms。因此,算法虽然增加了多个注意力模块与特征融合模块,但在检测精度提升的同时检测速度的影响相对较小。

召回率与准确率也是目标检测的重要指标,召回率表示目标检测的查全情况,即是否对小目标存在漏检等情况,而准确率则表示检测与识别是否与实际吻合。三种算法在海参、海胆、扇贝和海星四种类别上的P-R曲线如图6所示。图中,横轴为召回率,纵轴为准确率,准确率与召回率所形成的面积为该目标检测的mAP值。

图6 不同算法性能对比图Fig.6 The performance comparison diagram of object detection algorithms

从图6中可以明显看出:四种类型的海产品检测时,本文算法的P-R曲线值要高于SSD以及FA-SSD算法;此外,在相同的视野中,海胆、扇贝相比于海参和海星尺寸上稍大,而本文算法在扇贝与海胆检测中的召回率与精度较FA-SSD提升相对较小;而在尺度更小的海参与海星检测中,召回率相同时,本文算法的检测精度提升更为明显;在精度相同时,本文算法的召回率即查全率也更高。当算法在应用部署于基于嵌入式内核的机器系统上时,检测结果也更加可靠、稳定。

由上述分析可知,采用多级特征混合融合方法可有效提升水下小目标检测效果,算法的复杂度与计算量的提升相对较小,基本可满足水下机器人水下实时探测要求。

4 结论

针对水下探测机器人在视觉感知过程中采用SSD网络对水下小目标进行检测时精度低、稳定性差等问题,提出一种基于多级特征混合融合的小目标检测网络。网络引入了卷积注意力机制,有效增强了浅层网络的小目标特征提取能力,同时构建了多级分层融合结构,通过高层特征与浅层特征混合训练,有效补充了浅层目标对小目标特征表达能力不足的问题。通过对本文算法与传统SSD算法及其改进的FA-SSD算法进行比较,本文算法在精度上提升了5.86%,在召回率等性能指标上也明显高于传统算法,证明了本文算法的有效性。本文方法为水下作业机器人的视觉感知应用部署提供了理论保障。

猜你喜欢
特征提取注意力卷积
让注意力“飞”回来
基于3D-Winograd的快速卷积算法设计及FPGA实现
卷积神经网络的分析与设计
基于Gazebo仿真环境的ORB特征提取与比对的研究
从滤波器理解卷积
基于Daubechies(dbN)的飞行器音频特征提取
基于傅里叶域卷积表示的目标跟踪算法
“扬眼”APP:让注意力“变现”
Bagging RCSP脑电特征提取算法
A Beautiful Way Of Looking At Things