手机版
您的当前位置: 恒微文秘网 > 范文大全 > 专题范文 > 基于改进Deformable-DETR,的水下图像目标检测方法

基于改进Deformable-DETR,的水下图像目标检测方法

来源:专题范文 时间:2024-11-03 08:38:01

崔颖,韩佳成,高山,陈立伟

哈尔滨工程大学 信息与通信工程学院,黑龙江 哈尔滨 150001

水下目标检测技术是水下探测任务中的重要技术[1]。由于水下环境的复杂性和待检测目标的多样性,常规的目标检测方法在水下环境中通常缺乏足够的能力处理这些问题[2]。深度学习技术在多个领域的任务中表现出了良好的效果。在目标检测领域,常见的深度学习算法经过多年间不断的更新和优化,已经可以在多种目标检测任务上表现出良好的检测效果[3−5]。基于区域的卷积神经网络(regions with CNN features,RCNN)系列[6−8]目标检测方法是将卷积神经网络(convolutional neural networks, CNN)引入到检测领域的开山之作,其引入的卷积网络能大幅提升检测的准确度。在此之后,YOLO(you only look once)系列[9−12]的检测方法是应用较为广泛的一类检测技术,有着较快的推理速度和较好的检测精度,被广泛用于各种各样的检测任务中。类似的一阶段或二阶段检测方法还有很多[13−14],大多会引入预先设计好形式的锚框或者感兴趣区域作为检测的基准位置。近些年来,随着硬件条件不断的提升,训练一个较为复杂的模型已经成为检测任务的常态了[15−18],将Transformer 模块由自然语言处理任务引入到检测中的DETR(detection transformer)类方法就是这样的类型。DETR 类方法通常有着简单的模型结构设计和相对较多的模型参数,其各个部分之间较低的耦合性使其很容易同一些性能较好的单个组件或者模块进行结合,以提升模型整体的性能。除此之外,DETR 类的方法没有预设的锚框,其采用查询向量作为一种软锚框的形式以获取目标的位置。但是由于这样的设计,软锚框通常不能较快的收敛,这导致了原始的DETR 方法通常需要较长的训练时间。为了解决这样的问题,研究者们提出了较多的改进方法,这使得模型的收敛速度大大提升。在大量的改进弥补方法自身存在的一些问题后,DETR 类方法成为一类较为新颖且相对成熟的一类检测方法。目前很少有研究者将这一类的方法引入到水下检测的任务中。本文将其引入水下目标检测并进行改进,以提高模型在水下检测任务中的性能。

为了实现水下光学图像目标检测任务,解决由于水下复杂环境造成的检测精度低的问题,本节将主要介绍基于改进Deformable-DETR 水下检测模型设计。

1.1 改进的Deformable-DETR 模型总述

Deformable-DETR 模型是DETR 模型的一个性能良好的改进模型Deformable-DETR-DA。本文以此为基础改进并设计水下检测模型。模型结构主要包含主干网络、深度特征金字塔、改进编码器组、解码器组和用于预测的预测头。具体结构如图1 所示。模型输入经过预处理后的图像,由主干网络部分进行特征提取,为了平衡模型的参数量和训练时间,这里选择ResNet-50 作为模型的主干网络,并输出4、8、16、32 倍下采样的特征图。经过一个用于增加模型深度的深度特征金字塔模块后,将多级特征分别进行序列化后进行拼接,获得特征向量。在获得特征图的同时也对其进行位置编码并序列化及拼接,这里沿用了可学习位置编码的形式。将特征向量和编码向量叠加输入到添加了注意力引导模块的编码器进行特征的强化,并将结果输入解码器中进行预测,最终获得模型预测的预测框和类别,经过用于匹配的匈牙利算法获得最后的检测结果。

图1 改进后的 Deformable-DETR-DA 模型结构

1.2 深度特征金字塔模块

在模型中设计了一个容易嵌入的深度特征金字塔(deep feature pyramid networks,DFPN)模块,用于增加模型的深度,同时此模块也容易嵌入到其他的模型中以获得性能上的提高。

DFPN 部分的主要结构如图2(a)所示,采用了通常特征金字塔的结构设计,使用标准的Transformer 编码器块作为深度特征的强化部分,这里设置N为6。获得的深度强化特征经过上采样后同输入的多级特征进行融合,经过嵌入空间注意力模块进行融合,多次重复这个过程直到获得深化的多级特征。其中,用于融合特征的空间注意力模块是深度可分离卷积同SAM[19]模块的结合,其结构如图2 (b) 中的空间注意力(spatial attention,SA)模块所示。SA 模块首先是由一个3×3 的深度可分离卷积作为输入部分,输出的结果形式为(b,c,h,w), 分别经过通道方向的均值池化和最大值池化后进行维度拼接,获得通道方向经过压缩的结果,为(b, 2,h,w)。接下来经过1×1 卷积和Sigmoid 激活函数后,获得空间维度的注意力权重,为(b, 1,h,w)。将注意力权重和深度可分类卷积的输出相乘即可获得注意力强化后的特征。将强化过的特征由残差连接后得到的结果即为模块输出。

图2 DFPN 结构及空间注意力结构

SA 部分的计算过程如下:对于特征图C∈RN×C,线性映射后分别经过通道方向的一维自适应最大值池化层和一维自适应均值池化层,获得2 个尺寸为N×1的向量w1和w2。将二者在通道方向进行拼接,而后经过全连接层压缩通道维度,获得空间注意力权重向量, 并使用Sigmoid 函数对其规范化。空间注意力权重生成过程如下式所示:

式中:Cin由C经过线性映射获得。

将获得的权重WC同特征向量Cin相乘获得强化空间关注的特征Cout,如下式所示:

1.3 使用注意力引导改进的编码器模块

DETR 类模型中编码器部分主要的作用是增强主干网络部分提取的多尺度特征,而在编码器中起主要作用的是多头自注意力(multi-head selfattention, MHSA)部分。虽然MHSA 能够使模块对特征中的重要部分给予更多的关注。但是,MHSA 的设计上仍然存在一些问题。MHSA 的计算过程可以分解成几个部分:由输入向量生成用于计算的Q、K、V共3 个向量;
分别将Q、K、V多次线性映射而后计算自注意力,即“多头”设计;
将每个“头”计算获得的注意力结果进行通道维度的拼接;
对拼接后的结果进行线性映射,获得输出。在整个过程中,“多头”设计能够较明显地降低计算时所需的内存。但是,“多头”设计同样会使高维特征的不同通道组之间降低关联性,不同的“头”对物体关注的倾向性不同,这制约了编码器部分对特征有效部分的增强和特征整体的关注性。DETR 类模型在注意力部分后级联了一个前馈神经网络(feed-forward networks,FFN)结构,用于调整通道特征。普通的FFN 结构虽然能扩展和重组单一特征并聚合信息,但其忽略了某一通道或某一“头”的特征的重要程度。Deformable-DETR 模型作为DETR 类模型中比较高效的模型之一,其MHSA 部分使用可形变注意力进行改进,但类似“多头”和FFN 的设计仍然有所保留,因此Deformable-DETR 模型同样存在上述问题。

为了解决这个问题,提高模型的精度和鲁棒性,Deformable-DETR-DA 模型设计了一个改良的编码器块进行替代。改良编码器块的具体结构如图3 所示,其将原始Deformable-DETR 模型的编码器部分转变成一个全注意力结构。具体来说,改良编码器块的结构设计上仍然保留了多尺度可形变注意力部分,用于在空间维度强化特征。不同的是,改良编码器块在FFN 部分额外添加了一个通道注意力引导结构,用于在通道维度聚合特征信息。这样的设计能促进FFN 部分形成更多的特征组合形式,使模块充分考虑每个通道特征的重要性,并赋予重要信息更高的权重。受卷积注意力机制模块启发,结合通道注意力引导机制(channel attention guided mechanism,CAGM)的通道注意力引导前馈神经网络FFN-CAGM 如图4所示,对应的计算过程如下:

图3 改良编码器部分结构

图4 通道注意力引导前馈神经网络部分结构

模块使用多尺度可形变注意力部分的输出作为FFN-CAGM 部分输入的特征向量D∈RN×C,其中N指的是输入特征向量的长度,C表示特征向量的通道数目。特征向量D分别经过一维的自适应最大值池化层和一维的自适应均值池化层,并分别经过全连接层进行映射,获得带有不同通道权重信息的向量D1和D2,将二者叠加后作为特征向量D通道方向的权重,并使用Sigmoid 函数对其进行规范化。通道权重的生成过程如下式所示:

输入向量D还需要经过FFN 处理。FFN 部分由两个全连接层结合一个线性整流(rectified linear units,ReLU)激活函数组成,FFN 首先对输入向量D的通道维度进行扩展,其中,通道维度的扩展系数设置为4。扩展后的向量D经过激活函数处理后增添了非线性因素,再次通过全连接层将通道维度压缩至初始大小,输出FFN 处理后的特征向量。这一过程中,FFN 对向量D的特征进行了丰富和重组。最后,将处理后的特征向量与权重WD相乘,实现通道注意力引导的过程。这个过程如下式所示:

2.1 水下目标检测数据集及数据预处理

本文使用URPC2020 水下目标检测数据集作为实验用的数据集。URPC2020 是由大连市人民政府和鹏城实验室等共同主办的URPC 2020(大连)水下目标检测算法赛中提出的真实水下环境目标检测数据集,数据来源于真实水下环境中拍摄,涵盖包括海参、海胆、扇贝和海星4 个目标类别。本文使用的训练集共有5 543 张图片,测试集共有800 张图片。

本文的模型使用多尺度训练的方式。模型首先使用随机翻转。随机选择以下2 种方式:一种是使用随机图像大小调整。这个过程先将图像的短边调整大小,随机选择[480, 768]中每隔32 的取样数值之一作为短边的长度,长边依照原图像的纵横比进行放缩。设置最大长边尺寸为768,若放缩后图像长边大于768,则改变图像大小调整方式为长边调整至768,短边依原图纵横比进行调整。另一种方式是先使用随机尺寸调整,将图像的短边调整至[400, 500, 600]其中之一,长边依比例调整。之后使用随机剪裁,将剪裁的结果依照第一种图像大小调整的方式再次进行调整,获得输入图像。模型使用上述过程进行训练集的数据增强并归一化。针对测试集,模型将测试图像的尺寸固定至768×768 并归一化。

2.2 实验环境和参数设置

本文中所有模型均使用PyTorch 框架和Python语言构建,在Pycharm 平台中进行模型的训练和评估。硬件环境包括Intel i7-10700 处理器(CPU),64 GB 内存,NVIDIA GeForce GTX 3060(12 GB)图形处理器(GPU),操作系统为Window10。程序运行环境具体版本如下:Python 版本为3.9.12,Pytorch-gpu 版本为1.11.0,CUDA 版本为11.2。

模型参数设置上,批处理大小(batch_size)设置为1,主干网络使用ResNet-50,加载torchvision中其在ImageNet 数据集上训练的权重,并给这部分权重设置学习率为1×10−5。设置模型的其余部分参数的初始学习率为1×10−4,训练代数(epoch)设置为50,在40 epoch 的时候将这部分参数的学习率下降至原来的0.1 倍。模型使用AdamW 作为优化器,dropout 设置为0.1,随机数种子设置为42。模型设置编码器和解码器的深度均为6 层。FFN 中线性层的扩张维度设置为1 024,每一尺度的特征图通道维度统一调整至256,设置查询向量的尺度为300。

2.3 损失函数设置

Deformable-DETR-DA 模型中延续了原始Deformable-DETR 模型中使用的组合损失函数。DETR 类模型是一类集合匹配模型,这类方法预测的结果同真实值之间主要存在两方面的差异:一方面,DETR 类模型通常使用Hungarian 匹配方法将预测值和真实值关联,这个过程存在较大的匹配误差;
另一方面,DETR 类模型预测的目标框坐标同真实的标注框坐标之间存在一定误差。这2 个方面直接影响模型的检测效果,因此损失函数对这2 个方面进行约束,以提高模型性能。此外,由于DETR 类模型中通常会一次性预测大量的目标,这些预测目标中有效的正样本只有少数部分,更多预测目标是错误的或者重复的负样本,因此损失函数中引入了聚焦损失(focal loss)解决这类预测目标中正负样本数量差异较大的问题。

匈牙利损失(Hungarian loss)是DETR 类模型损失组成中的关键部分,其来源于DETR 类模型预测目标和真实值之间的匹配过程。Hungarian loss 的计算公式为

式中:y和分别为真实的标注集合和预测的目标集合;
N为匹配的目标数目,表示目标的预测类别;
为预测目标集合和真实值集合的最佳匹配;
为最佳匹配时目标的预测坐标;
bi为对应的标注坐标。

DETR 类模型预测集合中的元素包含2 部分:一部分是目标预测类别及置信度;
另一部分是目标预测框的坐标。而Hungarian loss 主要包含类别的预测损失和预测框的坐标损失2 个部分。对于类别的预测损失,使用最佳匹配下的预测目标置信度计算focal loss,计算公式为

对于预测框的坐标损失,使用广义交并比损失(GIoU loss)和L1 损失进行衡量。其计算过程公式为

式中:B(bi,)为同时包含标注框和预测框的最小矩形框;

λiou和 λL1分别为GIoU loss 和L1 损失的权重,默认值为λiou=2和λL1=5。

2.4 评价指标

在本文中使用coco 数据集的评价指标形式对模型的检测效果进行评价,以目标的预测框和实际标注框之间的交并比(intersection over union,IoU)为阈值进行划分。平均准确度(average precision,AP)指的是交并比在[0.50,0.95]中每隔0.05 取样后计算准确度的平均值。AP50、AP75分别表示IoU 阈值为0.5、0.75 时的AP 测量值。APS、APM、APL分别表示像素面积小于32×32、大于32×32且小于96×96、大于96×96的目标框的AP 测量值,用于评估小目标、中型目标和大型目标。AP 的计算公式为

式中mAP是以查全率(recall)为横轴、查准率(precision)为纵轴构成的P-R 曲线下的面积。AP 数值越大,说明目标检测的性能越好。其中,查全率mrecall、查准率mprecision计算公式为

式中:NTP为IoU 大于设定阈值的检测框数目,NFP为IoU 小于设定阈值的检测框和对同一个标注多余的检测框数目,NFN为未检出的被标注目标数目。

2.5 URPC2020 数据集上目标检测的实验情况

本文将模型在URPC2020 数据集上进行测试并同一些DETR 类检测方法进行比较,结果如表1 所示。其中,表1 中的“模型尺度”一栏表示方法中模型主干网络输出的特征图形式,multi 表示多尺度特征图,F5 表示输入特征图尺寸为原尺寸的32 倍下采样。表1 可见,与原方法相比,改进后的方法AP 值提升1 左右。此外,改进后的模型在URPC2020 数据集上获得了最佳的AP 值,即有着最好的检测效果。和多数对比方法相比,在小目标的检测APS以及粗略检测AP50上均有着一定的提升。

表1 URPC 数据集的多模型检测效果定量比较

本文还将各个方法的水下检测结果进行可视化,如图5。图5 中表明改进后的方法有着更好的准确率,检测框的准确度更好。除此之外,改进后的方法同其他的方法相比误检率有所降低。在质量较低的水下图像中,没有使用图像增强之类的预处理方式,模型也有较好检测效果。

图5 各种对比方法的可视化结果

2.6 消融实验

本文针对各部分的改进设计消融实验进行验证,结果如表2 和图6 所示,其中图6 中红色框代表标注,黄色框代表检测结果。

表2 Deformable-DETR-DA 模型中改进模块的有效性实验结果比较%

图6 URPC 数据集上消融实验效果比较

由表2 可知,单独添加CAGM 部分能对模型的检测效果有着一定的提升。而单独添加DFPN对检测的效果几乎没有提升,这和Deformable-DETR论文中提到的相同,均由于可形变注意力具有融合多级特征的能力,可以替代特征金字塔的作用。但是,在DFPN 和CAGM 模块同时添加后,模型的性能又能在仅添加CAGM 的基础上有所提升,这是因为CAGM 模块带来更多的通道方向的关注,使得DFPN 在通道方向对模型产生更深的影响,可以进一步针对通道方向进行调节,从而提升模型性能。由图6 可见,在添加了DFPN和FFN-CAGM 之后,模型的漏检和误检有所下降。这也可以体现模型改进的有效性。

针对水下光学图像目标检测问题,本文将DETR 类检测方法引入到水下检测任务中并加以改进。通过添加设计的DFPN 和FFN-CAGM 部分以提升模型的性能;
通过在水下数据集上的对比实验和消融实验证明本文所用方法的有效性和设计改进的有效性,并通过可视化结果进一步体现。DETR 类方法在水下目标检测任务上值得进一步探索。后续研究可进一步完善检测模型,针对模型的参数量和计算量进行轻量化设计,进一步提升模型的实用性,也可以通过添加图像增强等预处理方法进一步提升模型性能。

猜你喜欢 编码器注意力预测 无可预测黄河之声(2022年10期)2022-09-27选修2-2期中考试预测卷(A卷)中学生数理化(高中版.高二数学)(2022年4期)2022-05-25选修2-2期中考试预测卷(B卷)中学生数理化(高中版.高二数学)(2022年4期)2022-05-25让注意力“飞”回来小雪花·成长指南(2022年1期)2022-04-09基于FPGA的同步机轴角编码器成都信息工程大学学报(2018年3期)2018-08-29“扬眼”APP:让注意力“变现”传媒评论(2017年3期)2017-06-13不必预测未来,只需把握现在中学生数理化·八年级物理人教版(2017年11期)2017-04-18基于PRBS检测的8B/IOB编码器设计电子设计工程(2017年20期)2017-02-10A Beautiful Way Of Looking At Things第二课堂(课外活动版)(2016年2期)2016-10-21JESD204B接口协议中的8B10B编码器设计电子器件(2015年5期)2015-12-29

恒微文秘网 https://www.sc-bjx.com Copyright © 2015-2024 . 恒微文秘网 版权所有

Powered by 恒微文秘网 © All Rights Reserved. 备案号:蜀ICP备15013507号-1

Top