基于注意力机制的SK-YOLOv5海洋目标检测分类算法
李斌1,2, 文莉莉2,3, 邬满2, 刘画宁4, 许贵林2     
1. 广西自然资源职业技术学院商贸管理系, 广西崇左 532100;
2. 广西科学院, 广西近海海洋环境科学重点实验室, 广西人机交互与智能决策重点实验室, 数字孪生新技术研究院, 广西南宁 530007;
3. 广西壮族自治区药用植物园, 信息产业办, 广西南宁 530023;
4. 广西壮族自治区机构编制和绩效管理数据中心, 业务部, 广西南宁 530012
摘要: 基于遥感影像的海洋目标图像具有多尺度、形状变化大、颜色暗淡、目标边界不清、图像模糊等特点,需要在现有的目标检测算法上进行改进,以满足遥感影像海洋目标检测及分类需要。针对这些问题,在You Only Look Once version 5 (YOLOv5)的网络架构中引入Selective Kernel Networks (SKNet)注意力模块,提出一种新的SK-YOLOv5网络,增强网络对多尺度复杂海洋目标的特征提取和自适应能力。经对比实验测试,在相同的海洋目标数据集上,改进后的网络比原网络整体检测及分类准确率提升了约9%。
关键词: 注意力机制    SKNet    YOLOv5    海洋目标检测    特征提取    
SK-YOLOv5 Ocean Target Detection and Classification Algorithm Based on Attention Mechanism
LI Bin1,2, WEN Lili2,3, WU Man2, LIU Huaning4, XU Guilin2     
1. Department of Business Management, Guangxi Vocational and Technical College of Natural Resources, Chongzuo, Guangxi, 532100, China;
2. Guangxi Key Laboratory of Marine Environmental Science, Guangxi Key Laboratory of Human-machine Interaction and Intelligent Decision, New Technology Research Institute on Digital Twin, Guangxi Academy of Sciences, Nanning, Guangxi, 530007, China;
3. Information Industry Office, Guangxi Botanical Garden of Medicinal Plants, Nanning, Guangxi, 530023, China;
4. Business Department, Guangxi Zhuang Autonomous Region Organization Establishment and Performance Management Data Center, Nanning, Guangxi, 530012, China
Abstract: The ocean target image based on remote sensing image has the characteristics of multi-scale, large shape change, dim color, unclear target boundary and fuzzy image.Therefore, the existing target detection algorithm needs to be improved to meet the needs of ocean target detection and classification of remote sensing image.Aiming at this problem, the Selective Kernel Networks (SKNet) attention module is introduced into the network architecture of You Only Look Once version 5 (YOLOv5), and a new SKYOLOv5 network is proposed to enhance the feature extraction and adaptive ability of the network to multi-scale complex ocean targets.Through comparative experimental tests, on the same ocean target data set, the overall detection and classification accuracy of the improved network is improved by about 9% compared with the original network.
Key words: attention mechanism    SKNet    YOLOv5    ocean target detection    feature extraction    

2017年以来,国家海洋督察组、中央生态环境保护督察组针对海域使用及海洋环境问题开展了轮番督察督办,加大了相关部门对海洋资源、海洋环境监测监管的压力与需求。在海域监管方面,通常是利用卫星遥感、无人机航拍、现场拍照和远程视频监控等多种手段,对海岸带现状和海洋工程建设运营情况进行监视监测,及时发现和遏制非法用海、破坏生态、污染海洋环境等活动,提升海域监管和海洋保护能力。但随着无人机和卫星遥感影像数据的暴发式增长,监测图像的审核工作量日益增加,基于人工智能的海洋目标检测与识别技术对提高海洋监管效率显得尤为重要。

图像目标检测技术在交通、安防、金融、国土等领域早已成熟应用[1],但在海洋领域的应用还处在比较初级的阶段。一方面,海洋监测应用场景复杂,监测目标有着多样化、多尺度、时空关联的复杂特征;另一方面,目前交通、安防、自然场景等领域均有大量的公开数据集供研究人员使用,便于研究人员测试各种算法模型,但海洋领域目前几乎没有公开的图像数据集,而自己建立数据集是一项工作量巨大、成本高昂的工作。因此,探索利用人工智能技术,自动对海量的海洋监测图像进行目标自动提取及识别,对提高海洋的综合监管能力和开展人工智能技术在海洋中的应用研究具有重要意义。在目前的目标检测算法中,快速区域卷积神经网络(Faster Region-Convolutional Neural Networks,Faster R-CNN)和You Only Look Once version 5 (YOLOv5)算法在检测率上有着出色的表现[2],但是对于背景复杂、目标尺度跨度大的海洋场景来说,其算法性能尚有较大的提升空间。其中,Faster R-CNN属于two-stage算法,比较耗时,而YOLOv5属于one-stage算法,效率更高。因此,本研究利用注意力机制对复杂特征出色的提取能力,将其引入YOLOv5网络结构中,提升网络对复杂海洋场景的目标检测能力。

1 相关算法 1.1 注意力机制

注意力机制是模拟人脑快速获取图像关键信息、过滤无用信息的一种视觉焦点机制,即快速提取图像的关键特征[3]。在机器视觉领域,注意力机制常用来增强神经网络的特征提取能力,通过对输入权重分配的关注,增强或放大图像的有效特征信息,可以看作是一种含参数的池化方法[4]。目前常用的注意力机制模块有Convolutional Block Attention Module(CBAM)、Squeeze-and-Excitation Networks(SENet)、Selective Kernel Networks (SKNet)等[5]。其中,CBAM将注意力过程分为通道注意力和空间注意力两个独立的模块,减少了参数也节约了计算力,但需要手动设计池化、多层感知器等复杂操作[6];SENet是针对特征图的通道注意力机制,通过结合全局上下文对不同通道权值的重标定,实现对通道依赖的调整[7];SKNet是针对卷积核的注意力机制,根据不同大小的目标对不同大小的卷积核敏感度不同,SKNet对不同的图像动态生成不同的卷积核,尝试找到最适合大小的卷积核[8]。因此,SKNet具有目标尺度自适应的特点,对多尺度目标检测较其他注意力机制模块具有更好的效果[9]。SKNet模块的处理主要包括以下3步。

① Split:使用两个大小不一样的卷积核对输入的特征图进行Group Convolution(efficient grouped、depthwise convolutions、batch normalization、ReLU function)等操作,如使用3×3、5×5的卷积核同时进行处理,得到两个不同的特征图,主要测试不同卷积核对目标的敏感度,以提高检测精度。

② Fuse:对上一步得到的两个不同的特征图进行融合,其思路是通过门来控制多个分支的信息流。这里使用element-wise summation来融合两个分支的结果, 其中Fgp为全局平均池化操作,Ffc为先降维再升维的两层全连接层。

③ Select:使用两个不同的权重矩阵分别对两路结果进行加权处理,然后求和得到输出向量。由于整个过程中采用了不同的卷积和,因此该模块具有自适应地调整自身感受野的能力,对多尺度目标具有更高的检测能力和精度(图 1)。

图 1 SKNet结构 Fig. 1 Structure of SKNet

1.2 YOLOv5网络

YOLO系列目标检测算法是基于深度学习的回归方法,目前已经经历了YOLOv1、YOLOv2、YOLOv3、YOLOv4、YOLOv5共5代的发展[10]。YOLO没有显示求取region proposal的过程,相对于Faster R-CNN等算法,具有更高效的检测效率[11]。YOLOv4是YOLO家族的集大成者,在COCO数据集上已经具有非常优异的表现[12]。YOLOv5是在YOLOv4的基础上改进[13],其模型更加轻量化,且速度与精度都得到极大提升,其主要改进思路如下:

① 在模型训练阶段实现了Mosaic数据增强、自适应锚框计算、自适应图片缩放等功能;

② 在基准网络中引入Focus结构与CSP结构等其他算法的思路;

③ 在BackBone与最后的Head输出层之间添加了FPN+PAN结构;

④ 在Head输出端改进了训练时的损失函数GIOU_Loss,以及预测框筛选的DIOU_nms。

YOLOv5算法包括YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x 4个版本[14],下面以YOLOv5s为例进行分析。该网络结构分为输入端、基准网络、Neck网络、Head输出端4部分(图 2)。重点改进的模块CSP1_X、CSP2_X的结构图如图 3所示。

图 2 YOLOv5网络结构 Fig. 2 Structure of YOLOv5 network

图 3 CSP1_X和CSP2_X模块结构 Fig. 3 Structure of CSP1_X and CSP2_X module

① 输入端:输入图片的预处理。该阶段首先将输入的图片缩放到该网络的输入大小,即608×608,并进行归一化、Mosaic数据增强、自适应锚框计算等操作[15]

② 基准网络:该阶段通常是用一些性能优异的分类器网络,如CSPDarknet53结构,提取一些通用的特征表示。在YOLOv5中使用Focus结构作为基准网络,该结构的主要思想是通过slice操作来对输入图片进行裁剪[16]

③ Neck网络:YOLOv5中使用了SPP模块、FPN+PAN模块来进一步提升特征的多样性和鲁棒性[17]。该模块位于基准网络和头网络中间。该模块采用借鉴CSPnet设计的CSP2结构,从而加强网络特征融合能力。

④ Head输出端:用来完成目标检测结果的输出,通常包含一个分类分支和一个回归分支。YOLOv5中采用GIoU_Loss做Bounding box的损失函数[18]

另外,图 2还包括一些基本计算单元,如CBL、CSP1_X(X代表有X个此模块,如CSP1_1、CSP1_3)、CSP2_X(同CSP1_X)、Focus、SPP等。其中,CBL模块由Conv+BN+Leaky_relu激活函数组成;CSP1_X是借鉴CSPNet网络结构,由CBL模块、Res unit模块及卷积层Concat组合而成;CSP2_X也是借鉴CSPNet网络结构,由卷积层和2X个CBL模块Concat组合而成;Focus结构首先将多个slice结果Concat起来,然后将其送入CBL模块中;SPP单元采用1×1、5×5、9×9和13×13的最大池化方式,进行多尺度特征融合。

2 引入注意力机制的SK-YOLOv5网络 2.1 改进的思路及理由

遥感影像由于年份、数据来源、季节、分辨率、拍摄角度不同等多种原因,会导致同类目标颜色明暗、图像清晰度、目标尺寸等差异大的问题。同时不同类型的海洋目标本身也具有多尺度、形状变化大、目标边界不清、特征复杂等问题,如养殖池塘和红树林具有形状多样、特征复杂、多尺度等特性。由于上述原因,基于遥感影像的海洋目标检测具有其独特的复杂性。SKNet可对不同的图像动态生成不同的卷积核,对复杂的多尺度目标检测较其他注意力网络具有更强的适应性和特征提取能力;另外,当前在目标检测领域,YOLOv5网络在检测精度和训练收敛性上均具有优异的表现。因此,本研究将SKNet引入YOLOv5网络中,提出一种可进一步增强网络多尺度自适应能力及检测精度的SK-YOLOv5网络。

2.2 改进的CSP结构

为了抑制网络中的无用特征,SK-YOLOv5在CSP1_X和CSP2_X中引入SKNet模块,以增加网络深度并提升特征提取能力。网络在保持轻量化的同时,将CSP1_X、CSP2_X与SKNet结合,形成新的SCSP1_X、SCSP2_X单元(图 4)。

图 4 SCSP1_X和SCSP2_X模块结构 Fig. 4 Structure of SCSP1_X and SCSP2_X module

图 4可知,改进后的CSP结构利用新引入的SKNet模块增强特征图的有效特征,弱化无用特征,使网络对复杂、多尺度目标图像的适应能力明显提升。网络的深度有所增加,但基本可以忽略。

2.3 SK-YOLOv5结构

该结构仍然是由输入端、基准网络、Neck网络、Head输出端4部分组成。其中,输入端和输出端跟YOLOv5完全一样,在基准网络和Neck网络中,使用改进的SCSP1_X、SCSP2_X单元分别替代原网络中的CSP1_X、CSP2_X单元,其他处理单元及网络结构不变(图 5)。因此,改进后的SK-YOLOv5网络整体结构与原YOLOv5网络基本保持一致,只是改进了CSP模块的内部结构,提升了网络的整体特征提取和自适应能力。SK-YOLOv5网络既保持了YOLOv5网络的轻量、计算快速的优点,又具备其他one-stage目标检测算法不具备的多尺度目标自适应能力。

图 5 SK-YOLOv5网络结构 Fig. 5 Structure of SK-YOLOv5 network

2.4 损失函数

SK-YOLOv5网络中采用BECLogits损失函数计算目标性评分(Objectness score)的损失,采用BCEclsloss损失函数计算类别概率评分(Class probability score),以及使用GIoU Loss来评价预测框与真实框的位置损失。假设p1、p2为预测框的左上和右下两个顶点,l1、l2为真实框的左上和右下两个顶点,预测框与真实框的位置如图 6所示。

图 6 预测框与真实框的位置示意图 Fig. 6 Location schematic diagram of prediction frame and real frame

GIoU Loss的计算公式如下:

$ \begin{array}{l} \;\;\;S_1=\left(\min \left(x_{p 2}, x_{l 2}\right)-\max \left(x_{p 1}, \right.\right. \\ \left.\left.x_{l 1}\right)\right) \times\left(\min \left(y_{p 2}, y_{l 2}\right)-\max \left(y_{p 1}, y_{l 1}\right)\right), \end{array} $ (1)
$ \begin{array}{l} \;\;\;S_2=\left(x_{p 2}-x_{p 1}\right) \times\left(y_{p 2}-y_{p 1}\right)+\left(x_{l 2}-\right. \\ \left.x_{l 1}\right) \times\left(y_{l 2}-y_{l 1}\right)-S_1, \end{array} $ (2)
$ \begin{array}{l} \;\;\;S_3=\left(\max \left(x_{p 2}, x_{l 2}\right)-\min \left(x_{p 1}\right.\right. ,\\ \left.\left.x_{l 1}\right)\right) \times\left(\max \left(y_{p 2}, y_{l 2}\right)-\min \left(y_{p 1}, y_{l 1}\right)\right), \end{array} $ (3)
$ I o U=\frac{|A \cap B|}{|A \cup B|}=\frac{S_1}{S_2}, $ (4)
$ \begin{array}{l} \;\;\;G I o U=I o U-\frac{|C \backslash(A \cup B)|}{|C|}= \\ I o U-\frac{S_3-S_2}{S_3}, \end{array} $ (5)
$ { GIoU\;{\rm{Loss}} }=1-G I o U \text {, } $ (6)

其中, IoU表示预测框与真实框的交集与并集面积的比值,也称交并比;A表示预测框,B表示真实框,C表示AB的最小包围框;S1表示AB重叠区域的面积(图 6红色部分),S2表示AB求相并后的面积(图 6蓝色+红色+黄色部分),S3为包围AB的最小矩形框的面积(图 6蓝色虚线框包含的面积);GIoU Loss表示最终求得的位置损失。

由上述公式可知,S3-S2表示蓝色虚线框中既不属于A也不属于B的白色区域,(S3-S2)/S3则表示这个区域占虚线框区域的面积比,这个比值越小,说明预测框与真实框距离越近、重叠度越高,反之则表示距离越远,即误差越大。GIoU是为克服IoU作为损失函数时梯度无法计算的缺点而提出的,当AB完全无重叠时,IoU的值为0,则GIoU为负值;当AB无重叠且距离无限远时,GIoU的值为-1;当AB完全重叠时,则GIoU的值为1。这种损失计算方式解决了当AB无重叠时IoU恒为0的问题。

3 实验与结果分析 3.1 数据来源及数据集说明

本次实验采用的数据集是基于本团队利用大疆精灵4航飞的无人机高清影像,以及91卫图助手遥感影像制作的海洋目标样本库,影像分辨率为0.2-5.0 m。选取船舶、蚝排、红树林、养殖池塘这4种常见且尺度变化大、特征复杂的海洋目标作为测试对象。每张图像分辨率为400×400像素,共建立训练样本库8 000张,其中各类目标(船舶、蚝排、红树林、养殖池塘)各2 000张,测试样本库2 000张。数据分布如表 1所示。

表 1 不同类别海洋目标数据统计 Table 1 Statistics of different types of marine target data
目标类别
Target category
训练集
Training set
验证集
Validation set
测试集
Test set
Vessel 1 200 800 500
Mangrove 1 200 800 500
Oyster raft 1 200 800 500
Pond 1 200 800 500

由于数据集的像素维度各不相同,需要进一步对图像进行变换处理。实验采用YOLOv5自带的Mosaic数据增强与图片缩放功能对图片进行预处理。

3.2 实验环境及过程设计

本次实验基于Pytorch深度学习框架,集成开发及测试工具采用PyCharm,系统环境为deepin 20.4,GPU硬件环境为Tesla T4。针对预处理后的归一化数据,采用上文设计的SK-YOLOv5深度学习网络模型对样本进行训练与测试。本实验包括两个主要步骤:①利用原YOLOv5网络对样本进行训练及测试;②利用2.3节提出的SK-YOLOv5网络对同样的样本进行训练及测试;③分别统计两种网络对相同样本的检测准确率。本实验选用相同的网络参数,预加载模型为yolov5x.pt,epochs设置为300,batch-size为32,img-size为[400 400],除数据集和目标类别外,其他参数均保持YOLOv5的默认参数不变。

3.3 结果与分析

本实验针对4类目标首先用两种网络进行测试,测试数据集从4类目标中随机抽取各500张,两组测试均使用一组相同的图片,测试结果如表 2所示。由测试结果可知,改进后的网络整体检测准确率有明显提升,针对上述数据集整体可提升8.6%左右。

表 2 原网络与改进后网络的对比测试结果 Table 2 Comparative test results of the original network and the improved network
网络模型
Network model
正确数量
Correct quantity
错误数量
Number of errors
准确率(%)
Accuracy (%)
YOLOv5 418 82 83.6
SK-YOLOv5 461 39 92.2

然后再用改进后的网络分别对4类目标的测试数据集进行测试,每类500张测试图片,测试结果如表 3所示。在这4类目标的单独测试中,船舶由于特征明显,检测准确率最高;蚝排次之;如图 7所示,红树林由于边界模糊、特征不明显、形状变化大等原因,检测准确率相对最低,只有87.2%。

表 3 改进后算法分类测试结果 Table 3 Classification test results of improved algorithm
类别
Category
正确数量
Correct quantity
错误数量
Number of errors
准确率(%)
Accuracy (%)
Vessel 483 17 96.6
Mangrove 436 64 87.2
Oyster raft 471 29 94.2
Pond 440 60 88.0

图 7 基于遥感影像的目标识别效果图 Fig. 7 Effect picture of target recognition based on remote sensing image

在海域管理中,通过对遥感影像进行分块识别,提取关注的海洋目标、类别及其地理坐标,并结合空间规划数据,可以实现对疑似非法用海的目标进行预警分析。目标提取测试结果如图 7所示,另外,还可以结合空间规划数据对海洋目标进行预警分析,通过该方法可以快速发现在空间规划禁止区进行养殖的蚝排。由此可见,基于深度学习的海洋目标智能提取方法可以应用于大范围海域的快速管理中,为智慧海洋建设提供技术支持。

4 结论

本研究通过引入SKNet注意力模块,改进了YOLOv5算法的网络结构,在不影响其轻量级和便捷性的同时,增强了其针对特征复杂、边界模糊目标图像特征的提取能力和多尺度目标自适应能力,提升了其对复杂海洋目标的检测及分类准确率。经与原算法对比测试表明,改进后的算法总体检测及分类准确率和鲁棒性更强。该算法可实现对大范围海域的快速、智能监管,为智慧海洋建设提供技术基础。另外,自然资源领域监管中的图像(影像)审查工作量巨大,基于目标检测技术,结合海洋空间规划数据,实现对区域内海洋目标的用海合法性进行预警分析,对提高自然资源的综合监管能力和效率有着至关重要的作用。

参考文献
[1]
张鹏, 孔韦韦, 滕金保. 基于多尺度特征注意力机制的人脸表情识别[J]. 计算机工程与应用, 2022, 58(1): 182-189.
[2]
赖振意, 陈人和, 钱育蓉. 结合空洞卷积的CNN实时微表情识别算法[J]. 计算机应用研究, 2020, 37(12): 3777-3780.
[3]
WU H, ZOU Z, GUI J, et al. Multi-grained attention networks for single image super-resolution[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2020, 31(2): 512-522.
[4]
王书献, 张胜茂, 朱文斌, 等. 基于深度学习YOLOV5网络模型的金枪鱼延绳钓电子监控系统目标检测应用[J]. 大连海洋大学学报, 2021, 36(5): 842-850.
[5]
贺琳, 张雨, 巴韩飞. 基于注意力机制和深度学习模型的外来海洋生物命名实体识别[J]. 大连海洋大学学报, 2021, 36(3): 503-509.
[6]
袁景凌, 丁远远, 盛德明, 等. 基于视觉方面注意力的图像文本情感分析模型[J]. 计算机科学, 2022, 49(1): 219-224.
[7]
金雨芳, 吴祥, 董辉, 等. 基于改进YOLO v4的安全帽佩戴检测算法[J]. 计算机科学, 2021, 48(11): 268-275.
[8]
周治平, 张威. 结合视觉属性注意力和残差连接的图像描述生成模型[J]. 计算机辅助设计与图形学学报, 2018(8): 1536-1542, 1553.
[9]
TRUONG Q T, LAUW H W. VistaNet: visual aspect atten-tion network for multimodal sentiment analysis [C]//The Thirty-Third AAAI Conference on Artificial Intelligence (AAAI-2019). Honolulu, Hawaii state, USA: AAAI, 2019: 306-312.
[10]
YANG C, WANG Z, SHEN H, et al. Multi-modality image manipulation detection [C]//IEEE International Conference on Multimedia and Expo (ICME). Shenzhen, China: IEEE, 2021: 1-6. DOI: 10.1109/ICME51207.2021.9428232.
[11]
袁红春, 张硕. 基于Faster R-CNN和图像增强的水下鱼类目标检测方法[J]. 大连海洋大学学报, 2020, 35(4): 612-619.
[12]
许虞俊, 李晨. 基于YOLO优化的轻量级目标检测网络[J]. 计算机科学, 2021, 48(11A): 265-269.
[13]
李婕, 周顺, 朱鑫潮, 等. 结合多通道注意力的遥感图像飞机目标检测[J]. 计算机工程与应用, 2022, 58(1): 209-217.
[14]
ZHANG T, WANG G, ZHUANG Y, et al. Feature enhanced centernet for object detection in remote sensing images [C]//Proceedings of IEEE International Geoscience and Remote Sensing Symposium. Waikoloa, HI, USA: IEEE, 2020: 1639-1642. DOI: 10.1109/IGARSS39084.2020.9323116.
[15]
MANDAL V, MUSSAH A R, ADU-GYAMFI Y. Deep learning frameworks for pavement distress classification: a comparative analysis [C]//IEEE International Conference on Big Data. Atlanta, GA, USA: IEEE, 2020: 5577-5583. DOI: 10.1109/BigData50022.2020.9378047.
[16]
HU J, SHEN L, ALBANIE S, et al. Squeeze-and-excitation networks[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2020, 42(8): 2011-2023.
[17]
覃晓, 黄呈铖, 施宇, 等. 基于卷积神经网络的图像分类研究进展[J]. 广西科学, 2020, 27(6): 587-599.
[18]
王亚朝, 赵伟, 徐海洋, 等. 基于多阶段注意力机制的多种导航传感器故障识别研究[J]. 自动化学报, 2021, 47(12): 2784-2790.