每周文章分享-142
2024-1-13 06:0:55 Author: 网络与安全实验室(查看原文) 阅读量:9 收藏

2024.01.08-2024.01.14

每周文章分享

标题: Underwater object detection algorithm based on attention mechanism and cross-stage partial fast spatial pyramidal pooling

期刊: Frontiers in Marine Science, vol. 9, Nov 17 2022, Art no. 1056300, doi:10.3389/fmars.2022.1056300.

作者: J. H. Yan, Z. Zhou, D. J. Zhou, B. H. Su, X. Y. Zhe, J. L. Tang, Y. T. Lai, J. J. Chen, and W. X. Liang.

分享人: 河海大学—时文静

研究背景

水下目标检测是指对水下场景中的特定目标进行定位和识别。该技术广泛应用于水下电缆铺设、石油勘探、打捞救援、海洋鱼类探测、海底养殖、水下导航、智慧渔业养殖、水下打靶等领域。虽然针对地面目标的目标检测算法已经比较成熟,但对水下环境中的水下目标的检测仍然面临着许多挑战。主要原因是水下介质、水下光条件、水下海底环境等比水面环境更复杂。由于不同波长的光在水中的不同衰减,浮游生物和水中悬浮颗粒对光的散射,使得水下图像和视频中的目标变得模糊,色差严重,严重影响了目标的特征,给水下目标的特征学习和识别理解造成了严重的障碍。因此,水下目标检测仍然面临着巨大的挑战。针对常规目标检测算法在水下复杂环境下获取的图像存在图像模糊、背景复杂等现象,导致模型特征提取困难、目标遗漏检测等问题,提出了一种改进的YOLOv7模型,以提高水下目标检测模型的准确性和实时性。

关键技术

为了提高对水下环境中模糊水下目标和水下小目标的检测,同时保持算法的效率,保证对模型的良好检测。本文在YOLOv7框架的基础上,引入卷积块注意模块(CBAM)注意机制和三维跨级部分快速空间金字塔池化(SPPFCSPC)模块,提出了一种适用于水下环境下的目标检测模型,具有较强的特征提取能力和较快的水下场景检测速度。

主要贡献:

1)在对YOLOv7进行改进的基础上,提出了一种水下环境目标探测网络模型。其中融合了YOLOv7模型中的CBAM注意机制和SPPFCSPC模块,有效地提高了模型对水下模糊目标和小目标的检测精度,为水下目标检测任务提供了一种有效的解决方案。

2)在URPC数据集上,ACFP-YOLO的MAP值为80.62%,检测速度FPS为64.21。在水下垃圾检测数据集上,MAP值为74.92%,检测速度FPS值为65.56。在这两个数据集上,ACFP-YOLO算法具有最高的检测精度和较好的推理速度。

3)通过大量的对比实验和消融实验,从不同角度定量和定性地验证了该模型在水下环境目标探测任务中的优势。详细的实验为其他研究人员提供了详细的思路和重要的参考依据。

算法介绍

(1)水下目标探测的网络模型

在给网络输入图像之前,首先将原始输入图像进行无失真仿射变换,变成640×640大小的图像,然后将其作为模型的输入。融合后的整体网络框架模型如图1所示,其中,(A)表示用于特征提取的骨干网络,(B)表示用于特征融合的颈部网络,(C)表示用于获得模型预测结果的检测网络,以及C表示数据集中的类别数目。标有红框的模块是模型融合的部分。输入的图像首先通过骨干网络进行特征提取。为了保留多尺度信息,骨干网络提供各种不同的尺度,并将多尺度特征图输出到颈部网络,作为颈部网络的输入。经过颈部网络,包含浅层细粒度信息和深层语义信息的特征图融合在一起,从而增强网络的表达能力,并将多尺度学习任务分配给不同规模的多个检测网络。最后,特征信息被整合并转化为检测预测输出。

图1  模型的总体架构图

主干网络用于图像的特征提取,如图像的纹理、颜色和形状。它可以提供多种标度、多种感知场大小组合和中心步长,从而满足不同标度和类别的要求。主干网络的提取过程如图1A所示,首先经过4个CBS模块进行卷积、归一化和激活,然后经过E-ELAN模块和MP模块交替提取特征,导致最后3个E-ELAN模块的输出作为颈部的输入。其中,E-ELAN模块由多个卷积层组成,MP模块由MaxPool和CBS模块组成,如图2C、D所示。

图2  模块的模型部分结构图

如图1B,颈部网络是一个PAFPN结构,由改良的FPN和PANet结构组成,用于提取特征并融合。PAFPN结构与YOLOV5的结构基本相同,只是YOLOv7的PAFPN结构使用E-ELAN-L模块进行特征提取和融合,并使用MP模块进行向下采样,这使得该结构比以前的PAFPN结构更能够强化特征。最后,通过主干网络和颈部网络对输入图像进行两次特征提取后,采用1×1卷积法对特征信息进行整合,转化为最终的预测信息,如图1C所示,得到模型的预测结果。

(2)注意机制和跨阶段部分快速空间金字塔集合的SPPFCSPC模块

图3  (A)表示SPPCSPC结构图,(B)表示SPPFCSPC结构图

SPPCSPC结构和SPPFCSPC结构如图3所示。YOLOv7中的SPPCSPC结构使用三个独立的池化层,用不同大小的池化核来计算空间金字塔池化结构。相关的池化部分如公式(1)所示,但三个池化的输入相同,较大的池化核的结果可以在较小的池化核输出结果的计算结果上计算,在不改变模块的感知场的情况下减少了计算量。

对SPPFCSPC结构进行优化,池化部分的计算如式(2)、(3)、(4)、(5)所示,链接三个独立的池化对较小池化核的池化层输出结果使用较少的计算,得到较大池化核的池化层结果,在保持知觉场不变的情况下获得速度提升。

(3)注意机制和跨阶段部分快速空间金字塔集合的注意力模块

图4  CBAM注意机制的总体结构

CBAM是一个融合了特征通道信息和特征空间信息两个维度的注意力机制模块。如图4所示,CBAM通过通道注意机制和空间注意机制分别处理传入的特征层,并通过学习自动获得每个特征通道和特征空间的重要性等级,并利用获得的重要性等级来增强特征,抑制对当前任务不重要的特征。CBAM的总体方程概括为公式(6)(7)所示:

CBAM的工作过程是首先通过通道注意机制将输入特征层F和得到的Mc与输入特征层F相乘,得到对通道F’的增强和抑制输出,然后将F’作为空间注意机制的输入,将得到的Ms与F’相乘,得到在通道内容和空间位置上的增强和抑制的最终输出F”。

用于通道注意机制的模块如图5A所示,它由MaxPool、AvgPool和Shared MLP组成。相关方程式如方程式(8)所示:

对于输入的单一特征层F(H×W×C),分别在H×W维上执行MaxPool和AvgPool,将特征层压缩到1×1×C。MaxPool压缩后的一维参数保留了原始特征层的特征纹理,并汇聚了区分目标特征的重要信息。AvgPool压缩的一维参数保留了压缩前H×W的全局视觉信息,具有更大的感知区域。然后,将MaxPool和AvgPool的结果送入共享MLP网络进行处理,然后将两个处理结果相加,得到特征映射通道权重。

用于空间注意机制的模块如图5B所示,它由MaxPool、AvgPool和Conv层组成。相关方程如图(9)所示:

(4)损失函数

本文所有的实验都是在没有辅助训练头的情况下进行训练,因此,下面我们只描述在没有辅助训练头的情况下进行训练时的损失函数,整体损失计算公式如式(10)所示:

实验分析

1.实验环境和超参数设置

本文的所有实验数据都是在同一环境下测量的。硬件环境使用英特尔(R)酷睿(TM)[email protected] GHz CPU,16GB内存,NVIDIA GeForce RTX 3080 Ti显卡。系统环境为Windows 10专业版。Python版本3.8,PyTorch版本1.12.0,CUDA版本11.6。

实验中的相关参数如表1所示。用于更新卷积核参数的梯度下降优化器为Adam,优化器Momentum为0.937,训练过程中的学习率更新方式为step,最大学习率为0.001,冻结训练的批次大小为8,冻结训练的批次大小为4,解冻训练的epoch为50,所有实验只加载骨干网络部分的预训练权重,其他部分从头训练,总训练 epoch为100。冻结训练模型只训练除骨干网络以外的其他部分,解冻训练时则训练整个网络模型。

表一  与实验相关的超参数设置

2.注意机制的兼容性

如图5所示,与其他注意机制的可视化结果相比,CBAM注意机制的热图整体覆盖面积更大,说明模型在有目标的位置关注的学习区域更大,对目标的整体特征提取更充分,有利于对小目标的检测,红色区域也变大,说明有效的目标特征信息得到增强,模型更关注本应关注的目标信息。从实验结果可以看出,CBAM注意机制的引入使模型更加关注待识别目标的特征信息,抑制了因水下背景复杂而不明显的目标特征的影响,与其他注意机制相比表现出更好的效果。

图5  不同注意机制的热图

只改变了注意机制模块,然后测量每个模型的mAP值,并比较不同模型的mAP值,以评估不同注意机制与模型的兼容性,比较实验的数据见表2。

表2  不同注意机制的MAP测量

3.消融实验

本实验设计了三个模型与改进后的模型进行比较,其中实验1代表原始的YOLOV7模型,实验2在实验1的基础上加入了CBAM注意机制,实验3用实验1的SPPFCSPC模块替换了SPPCSPC模块,实验4是改进后的模型。实验数据如表3所示。

表3  模型不同模块的融合对指标的影响

4.与主流算法的比较

Efficientdet使用D1模型进行实验,FAST-RCNN使用VGG骨干网和ResNet50骨干网进行实验。所有模型对比实验测量结果如表4所示。

表4  主流目标检测算法在URPC数据集中的性能度量值

在水下垃圾检测数据集的实验中,选取了一致的模型进行比较,测量了不同模型的MAP值、GFLOPS值、PARAMS值和FPS,并通过不同的指标定量分析了各个模型的性能。实验中的所有对比实验测量结果如表5所示。

表5  主流目标检测算法在水下垃圾检测数据集中的性能指标值

总结

本文针对水下地图图像的模糊和颜色偏差问题,提出了ACFP-YOLO目标检测模型,解决了图像质量差导致目标特征信息提取困难的问题。该模型引入CBAM注意力机制,在通道和空间维度上对提取的特征进行增强,减少了特征提取过程中的信息损失,提高了网络的整体特征提取能力,使引入注意力机制的YOLOv7模型在水下目标场景中具有更高的检测精度。SPPFCSPC模块的替换将原来的三个独立的池层连接在一起,在保持感知场不变的情况下,减少了模型计算量,获得了更快的模型推理。通过在YOLOv7上融合上述两部分,改进的ACFPYOLO模型在水下目标检测中具有更好的性能,在一定程度上解决了水下场景目标重叠、背景复杂给水下目标检测带来的困难。

END

==河海大学网络与安全实验室==

微信搜索:Hohai_Network

联系QQ:1084561742

责任编辑:何宇


文章来源: http://mp.weixin.qq.com/s?__biz=MzI1MTQwMjYwNA==&mid=2247499534&idx=1&sn=ee1609d4f1a910a0b1603778bf1d819d&chksm=e8d81fb5350f06b2f92d92854f3306fe1beba588da41c7981e977bd8505d50ce1210146f9a30&scene=0&xtrack=1#rd
如有侵权请联系:admin#unsafe.sh