基于通道注意力与特征融合的水下目标检测算法

2022-05-11 07:51张艳李星汕孙叶美刘树东
西北工业大学学报 2022年2期
关键词:残差精度图像

张艳, 李星汕, 孙叶美, 刘树东

(天津城建大学 计算机与信息工程学院, 天津 300384)

水下目标检测在海军沿海防御任务以及渔业、水产养殖等海洋经济中发挥着重要作用。但由于水下环境复杂,水下光学图像存在严重的退化问题,影响了算法的检测精度与可靠性。所以如何有效地优化水下目标检测算法,使其满足水下环境的实际应用场景,提高对水下目标的检测精度,需要进一步研究。

基于传统图像处理的目标检测算法时间复杂度高、检测精度较低,难以满足检测需求。随着卷积神经网络的不断迭代,国内外研究人员提出了许多基于深度学习的目标检测算法,其具有时间复杂度低、检测精度高和泛化性强的特点。基于深度学习的目标检测算法主要分为2类:①基于回归思想的单阶检测算法;②基于生成候选区域的双阶检测算法。双阶检测算法首先从输入图像中提取候选区域,然后利用这些候选区域实现目标分类与位置修正,如R-CNN[1]、Fast R-CNN[2]、Faster R-CNN[3]、Mask R-CNN[4]等。单阶检测算法直接利用卷积神经网络从输入图像中进行目标分类和位置修正,如YOLO(you only look once)[5-7]系列算法和SSD(single shot multibox detector)[8]算法等。与双阶检测算法相比,单阶检测算法由于在进行目标分类和位置修正前无需生成候选区域,极大降低了模型的计算成本,具有较高的实时性,更能满足水下目标快速检测的需求,所以许多研究人员针对基于单阶检测的水下目标检测算法展开研究。赵德安等[9]基于YOLOv3算法结合图像预处理提高了河蟹的检测精度;高英杰[10]基于SSD算法利用深度分离可变形卷积模块进一步提高了水下目标的检测精度;刘萍等[11]基于YOLOv3算法利用GAN(generative adversarial networks)模型实现了海洋生物的识别。但该类算法没有充分利用水下目标的特征,而且当不同尺寸目标存在遮挡、重叠问题时检测精度不佳,仍存在漏检和误检的问题。

一般基于深度学习的目标检测算法在提取特征时采用相同的权重学习特征图,导致模型不能反映图像不同通道特征的重要性。文献[12]提出的注意力机制为各通道特征赋予不同的权重,有选择性地增强显著性特征,使获取的特征图具有更多的有效信息。Woo等[13]提出的CBAM(convolutional block attention module)算法,利用空间信息与通道信息学习得到2个独立维度的注意力特征图,将其与输入特征图相乘自适应地进行特征细化,提高了模型的鲁棒性。Hu等[14]提出的SE-Net (squeeze and excitation networks)算法,通过显式建模通道维度的相关性,提高了模型的检测精度。在复杂背景下的水下图像目标检测任务中,特征提取模块需要对检测目标边缘特征有选择性地突出,以进一步提高模型的检测精度,所以本文在特征提取模块中引入了通道注意力机制。

针对上述水下目标检测中存在的问题,本文提出了一种基于通道注意力与特征融合的水下目标检测算法,该算法通过3个方面提高水下目标的检测精度:①设计了基于通道注意力的激励残差模块,在提取特征时通过显式建模卷积特征通道之间的相互依赖性,调节各通道的权重,使特征提取模块有选择地增强特征信息,提高了网络对特征的可分辨性,有助于网络的回归预测与分类训练,提高网络对水下图像高频信息的提取能力;②设计多尺度特征融合模块,实现浅层特征与深层特征的深度融合,提高特征图的利用率,融合后的特征具有丰富的细节信息与语义信息,提高网络对水下不同尺寸目标的检测精度;③设计基于拼接和融合的数据增强方法,对同一批次内的不同训练图像进行拼接和融合,模拟水下目标的重叠、遮挡和模糊情况,提高模型对水下环境的泛化性能。

1 水下目标检测算法

本文提出的基于通道注意力与特征融合的水下目标检测算法包括特征提取模块(feature extraction module)和多尺度特征融合模块(multi-scale feature fusion module),整体网络结构如图1所示。首先通过特征提取模块获得特征图,然后利用多尺度特征融合模块获得多个不同尺度的特征图,最后对特征图进行解码得到最终的检测结果。

图1 基于通道注意力与特征融合的水下目标检测算法

1.1 特征提取模块

为进一步提高水下目标的特征利用率,本文对YOLOv3检测算法中的特征提取模块DarkNet-53进行改进,设计基于通道注意力的激励残差模块,替代特征提取模块DarkNet-53中的部分残差块,提出基于通道注意力的特征提取模块SE-DarkNet-53,如图1中虚线框所示。SE-DarkNet-53模块由卷积层、残差块和激励残差模块组成,使用激励残差模块作为第一层,并分别在4个残差块后添加激励残差模块。通过激励残差模块对通道间的相关性进行建模,增强卷积层的特征提取能力,增强后的特征被后续卷积层有效利用,进一步增加网络对特征信息的敏感性,提高特征利用率。对于输入的水下图像,SE-DarkNet-53特征提取的具体过程如下:

首先通过卷积层对输入的水下图像x进行特征提取,获得特征图fd,如(1)式所示

fd=Conv(Conv(x))

(1)

式中,Conv表示卷积操作。

然后将获得的特征图fd输入基于通道注意力的激励残差模块(如图2所示),对获得的特征图的各通道分配权重,突出不同通道特征图的显著性,增强相关特征信息并抑制无关信息,提高网络对特征的可分辨性。

图2 基于通道注意力的激励残差模块

在基于通道注意力的激励残差模块中,输入的特征图fd通过卷积层进行特征提取后获得特征图f,如(2)式所示。

f=Conv(Conv(Conv(fd)))

(2)

特征图f将再经过4个步骤完成特征通道的权重分配[14]:

1) 特征图f通过Fsq(·)从空间维度压缩特征信息,将各通道的特征信息转化为一个实数。通过(3)式所示的特征压缩过程可以得到统计量z∈RC,z的第c个元素计算方式如(3)式所示。

(3)

式中:fc表示特征图f的第c个二维矩阵;下标c表示通道;H、W表示该特征图的高度和宽度;i,j表示在该特征图横纵坐标分别为i和j的点。

2) 通过激励操作Fex(·,W)为每个特征通道生成权重参数s,权重生成过程为

s=Fex(z,W)=Sigmoid(W2·ReLU(W1·z))

(4)

3) 通过特征加权操作Fscale(·,·)将各特征通道的权重s与特征图f逐通道相乘,实现特征图各通道的权重分配,获得特征重标定的特征图,记为fe。特征加权操作过程为

fe=Fscale(f,s)=s·f

(5)

4) 将特征优化后的特征图fe与输入特征图fd进行残差连接,得到的特征图记为fE0,残差连接操作如(6)式所示。

fE0=Fres(fd)=fe⨁fd

(6)

式中:Fres(·)表示残差连接函数;⨁表示残差连接。

激励残差模块输出的特征图fE0将经过4组残差块和激励残差模块的组合,各组合的输出结果为fE1,fE2,fE3,fE4,每个阶段的输出分别输入到多尺度特征融合模块。残差块结构如图3所示,用Fresblock表示。对于每一组残差块和激励残差模块的组合,输入特征图fE(i)经过残差块后得到特征图fr(i+1),如(7)式所示。

fr(i+1)=Fresblock(fE(i))

(7)

图3 残差块结构示意图

图3中fE(i)为前一组激励残差模块的输出特征图,首先fE(i)通过残差块,输出特征图fr(i+1),然后特征图fr(i+1)通过该组合中的激励残差模块进行特征提取,并沿通道维度进行特征图的权重分配后获得特征图fE(i+1)。通过组合残差块和激励残差模块,可以更好地拟合通道间的相关性,使用全局信息来选择性地增强特征并缓解增加模型深度引起的梯度消失现象,提高网络对水下图像细节信息的提取能力,进而提高模型的检测精度。

1.2 多尺度特征融合模块

式中:Conv表示卷积操作;Up表示双线性插值的上采样操作;Cat表示级联操作。

通过多尺度特征融合模块,模型获得4种不同感受野的特征图,这些特征图融合浅层特征的细节信息和深层特征的语义信息,能够增强网络对不同尺寸目标的检测性能,有效解决水下目标漏检、误检的问题。

1.3 数据增强

海洋生物在单一图像中存在数量多且分布密集的现象,如图4所示。图中重叠是指相同类别的目标相互覆盖,遮挡则表示不同类别的目标相互覆盖,模糊是由于沉淀物与光照引起的。在分类任务中[15],图像融合已被证明是有效的。自然图像分类中融合的关键思想是通过在训练图像之间进行像素融合,增加训练样本的多样性,进而提升网络的学习效果。受自然图像融合的启发,本文设计了数据增强方法,对训练样本进行像素融合的同时应用了有效的空间变换,通过缩放和拼接图像的方式,扩展了训练样本的分布。该数据增强方法使训练样本具有更加丰富的目标信息,利于网络学习海洋生物在水下光学图像中常见的重叠、遮挡和模糊的现象。如图5所示,该方法通过拼接4张不同的图像生成拼接训练样本,然后进行图像融合生成融合训练样本。

图4 海洋生物遮挡、重叠和模糊的情况

图5 数据增强示意图

首先,将4张不同图像进行缩放操作,再将缩放后的图像依次按左上、左下、右下、右上放入矩形区域中,以左上和右上的图像为例,选取2张图像中长度最大且长度小于矩形最长边的图像,将其固定,再将另一张图像的长度裁剪为矩形最长边减去固定图像的长度,宽度同理。拼接后的图像作为新的训练样本;然后,将该样本利用贝塔分布生成的融合系数进行图像融合[16-17],生成的融合训练样本与原始训练样本尺寸相同。考虑到在训练时若全部使用生成的融合训练样本,将造成网络无法学习正常水下环境中的目标,导致检测效果较差,本文使用阈值对融合训练样本进行控制,生成训练样本时,通过随机函数生成区间为[0,1)的实数,本文阈值设置为0.5,当生成的实数大于等于0.5时生成普通训练样本,反之生成融合训练样本。融合过程为

λ=Beta(α,β)

(12)

(13)

(14)

1.4 损失函数

YOLOv3中使用的损失函数解决了目标分类与位置修正2个问题,实现了端到端的检测,同时加快检测速度,故本文使用该损失函数,如(15)式所示。

2 实验及结果分析

2.1 实验数据集

实验数据集使用URPC官网提供的水下光学图像数据集,该数据集包括海参、海胆、海星和扇贝的水下图像以及对应图像的标注。URPC数据集共有37 463个目标标签,海参类别目标5 246个、海胆类别目标19 458个、海星类别目标6 096个和扇贝类别目标6 663个。

2.2 实验环境及评价指标

模型训练时采用的硬件平台是CPU为Intel(R)Xeon(R)Gold 5115 CPU @2.40 GHz,内存为32 GB,GPU为NVIDIA TiTAN V 12 GB。软件平台为Windows7操作系统,深度学习框架为Pytorch。模型训练时,目标类别数为4,输入图像尺寸为416×416,Batch-Size为8,Epochs为50,初始学习率为10-3,权重的衰减速率为5×10-4,动量设置为0.9,学习率调整策略为固定步长衰减,迭代次数到达4×105与4.5×105时,在前一个学习率的基础上衰减10倍。本文使用召回率、平均精度、平均精度均值以及单张图像推理时间来评估模型的有效性与实时性。

2.3 数据增强融合系数实验

为验证数据增强方法的有效性,测试不同Beta分布的融合系数在URPC数据集的性能,本文使用7组不同的Beta分布进行实验,使用URPC训练集与测试集进行训练与测试,实验结果如表1所示。

表1 7组Beta分布的实验结果 %

根据表1结果可知,Beta(0.3,0.3)效果最差;Beta(0.6,0.6)的检测精度高于其他6组Beta分布,相比Beta(0.2,0.2)、Beta(0.4,0.4)、Beta(0.5,0.5)和Beta(0.7,0.7)平均精度均值分别提高2.10%,0.27%,0.47%和1.57%;Beta(1.5,1.5)所有类别平均精度均略低于Beta(0.6,0.6),相较于Beta(0.6,0.6)平均精度均值下降0.95%。Zhang等[15]指出,增加α,β的强度可以在训练样本的基础上生成更多的融合训练样本,但这也使网络学习变得更加困难。随着α,β的增大,真实数据上的训练误差增大,泛化差距减小,这隐式地影响了网络的学习效果。而且通过选择性实验可以看出,当α,β=0.6时,融合训练样本在网络训练时的训练误差与泛化差距保持相对平衡,所以本文后续实验中数据增强方法融合系数设置为Beta(0.6,0.6)。

2.4 实验结果分析

为研究本文所提模型自身的特征提取能力、小目标检测性能和水下环境中的泛化性能,首先针对不同模型进行消融实验,然后和主流目标检测网络YOLOv4[18]与YOLOv5[19]进行对比实验。实验选取的基准模型为YOLOv3;模型1添加了激励残差模块;模型2添加多尺度特征融合模块;模型3添加激励残差模块和多尺度特征融合模块,训练时未采用基于拼接和融合的数据增强方法;模型4为本文模型,训练时采用基于拼接和融合的数据增强方法。所有消融实验与对比实验基于URPC数据集进行测试,模型的训练参数均相同。5种模型的消融实验结果如表2所示。本文模型和网络YOLOv3、YOLOv4、YOLOv5的对比实验结果如表3所示,检测结果如图6~7所示。

表2 5种模型的消融实验结果

表3 各算法精度对比

从表2可以看出,模型1相比YOLOv3,平均精度均值提高2.67%,说明本文设计的激励残差模块突出了不同通道特征图的显著性,提高了特征信息的相关性。模型2相比YOLOv3,平均精度均值提高1.60%,海参类别平均精度提高3.2%,说明本文改进的多尺度特征融合模块能够有效融合细节信息及语义信息,其包含的不同尺度特征图使模型能够准确地检测不同尺寸的水下目标。模型3相比模型1和模型2平均精度均值分别提高0.65%和1.72%。在不增加推理成本的情况下,本文模型(模型4)相比未采用数据增强方法的模型3,平均精度均值提高2.10%,海参类别平均精度提高6.70%,证明了基于拼接和融合的数据增强方法可以有效提高模型对水下环境的泛化能力。

从表3可以看出,YOLOv4、YOLOv5相比YOLOv3,平均精度均值分别提高2.22%与4.52%,验证了其网络结构的优势性。本文模型相比YOLOv4与YOLOv5,平均精度均值分别提高3.2%与0.9%,在单类别平均精度中,海参、海胆和扇贝目标的检测精度均优于YOLOv4和YOLOv5,证明了本文模型对复杂的水下环境下出现的海洋生物目标具有较高的检测精度。本文模型通过激励残差模块,在增强网络特征提取能力的同时缓解了网络层数较深时的梯度消失问题。同时,通过多尺度特征融合模块与基于拼接和融合的数据增强方法,利用其大尺度特征图具有较小感受野的特性与海洋生物频繁出现重叠与遮挡的现象,使得网络在检测水下小尺寸目标时减少易出现的误检、漏检问题,进一步提高了网络对水下环境中重叠、遮挡的海洋生物目标的泛化性能。

图6a)和图7a)标出的边界框均为真实标签框。图6a)中共有40个目标且存在重叠、遮挡和模糊的情况,进一步增加了检测难度。图7a)中海胆尺寸较小,并且由于水下环境的光照条件导致部分海胆目标较为模糊,增加了检测难度。图6和图7的检测结果分别如表4和表5所示。

图6 目标密集的水下图像检测结果图

图7 目标较小的水下图像检测结果图

表4 目标密集的水下图像检测结果

表5 目标较小的水下图像检测结果

从图6和表4可以看出,在检测数量较多且存在重叠和遮挡的目标时,本文模型在水下复杂环境中获得了较准确的检测结果。对于海参目标,YOLOv3、YOLOv4与YOLOv5均检测到7个,而3种模型均出现误检的问题。相比之下,本文模型共检测到6个海参目标,仅漏检1个目标,无误检目标。对于重叠的海胆目标,YOLOv4共检测到17个,但存在误检多个海胆目标的情况,而本文模型仅误检1个,优于其他3种模型。对于扇贝目标,YOLOv4共检测到17个扇贝目标,但将检测结果和真实标签框对照,发现仍存在误检扇贝的情况,且4种模型均存在不同程度的漏检问题。而本文模型仅漏检1个扇贝目标,证明了本文模型对重叠和遮挡目标检测的有效性。

从图7和表5可以看出,在检测较为模糊的目标时,YOLOv3与YOLOv4均存在漏检海胆和误检海星的问题,YOLOv5漏检2个海胆目标,而本文模型仅漏检1个海胆目标,共检测到8个海胆目标,未出现误检目标的情况。综上所述,本文方法通过校对特征通道间的相关性,提高了网络生成特征的质量;通过多尺度特征融合模块与基于拼接和融合的数据增强方法,提高了网络对水下复杂环境下不同尺寸目标的检测精度。

3 结 论

本文提出一种面向于水下复杂环境的基于通道注意力与特征融合的水下目标检测算法,设计基于通道注意力的激励残差模块,改善通道之间的相关性,增强模型的表征能力;利用多尺度特征融合模块,有效地解决水下环境中小尺寸目标检测难的问题;通过基于拼接和融合的数据增强方法,增加训练样本的多样性,增强模型对水下环境的适应性。实验表明,本文算法与YOLOv3、YOLOv4和YOLOv5算法相比,平均精度均值分别提高了5.42%,3.20%和0.9%,单类别平均精度最高提升了12.00%。本文算法在保证实时性的前提下,提高了水下目标的检测精度,下一步工作将继续研究高效的目标检测算法,使用轻量化注意力模块提高网络的特征提取能力,以应用于未来水下机器人的自主检测。

猜你喜欢
残差精度图像
基于不同快速星历的GAMIT解算精度分析
数字化无模铸造五轴精密成形机精度检验项目分析与研究
基于残差-注意力和LSTM的心律失常心拍分类方法研究
用于处理不努力作答的标准化残差系列方法和混合多层模型法的比较*
融合上下文的残差门卷积实体抽取
浅析p-V图像中的两个疑难问题
巧用图像中的点、线、面解题
基于残差学习的自适应无人机目标跟踪算法
以工匠精神凸显“中国精度”
名人语录的极简图像表达