基于YOLOv7模型改进的轻量级鱼类目标检测方法

梅海彬,黄政,袁红春

(上海海洋大学 信息学院,上海 201306)

摘要:为了解决商业渔船电子监控系统中鱼类检测和识别依赖于人工完成的问题,提出一种基于YOLOv7的轻量级鱼类实时检测模型YOLOv7-MRN,将YOLOv7的骨干网络替换为MobileNetv3骨干网络,以降低运算量,并添加了感受野模块RFB来增强网络的特征提取能力;通过引入基于归一化的注意力机制模块NAM,重新设计颈部特征融合网络,以抑制无关紧要的权重。结果表明:在HNY768远洋渔船电子监控视频渔业数据集上,YOLOv7-MRN模型的mAP@0.5为86.5%,运算量仅为原模型YOLOv7的9.8%,模型在GPU和CPU上的推理速度分别提高了121.69%和219.09%;相较于其他模型,YOLOv7-MRN模型的实际检测效果更好,尤其是在强日光场景下。研究表明,本文中提出的YOLOv7-MRN模型对鱼类的检测效果好,消耗的计算资源更少,可将该模型部署在电子渔船监控系统中。

关键词YOLOv7;基于归一化的注意力机制;深度可分离卷积;鱼类目标检测

近年来,世界水产品消费量增长显著,2020年人均水产食品的消费量达到20.2 kg,渔业将在提供食物和营养方面发挥越来越重要的作用[1]。2020年,全球捕捞渔业产量为9 030万t,估计价值为1 410亿美元。然而,过度捕捞、管理不善等因素正威胁着海洋生态系统和海洋渔业的可持续发展。为了防止远洋渔业资源被过度开发,对其有效监管和制定监管标准迫在眉睫[2-3]。区域渔业管理组织要求渔船报告捕捞量统计数据[4],通常情况下,这些统计数据由渔业观察员手动记录。渔业观察员制度在一定程度上对于保护海洋生态系统和维护渔业资源的可持续性发挥了重要作用,但也存在人力资源不足、观察员安全难以保障和经济成本较高等方面的挑战[5-6]。自21世纪初起,电子监控系统已成为现有渔业渔获监测计划的一种经济高效的补充手段。渔业电子监测通过提供准确、实时的捕鱼活动监控视频,使专家无需登船即可观察渔获情况[7],能够降低人力成本,减少非法行为,并促进渔业生产的透明和公正,对科学、可持续和有效的渔业管理具有重要意义。因此,在电子监控系统中,迅速而准确地完成鱼类的检测与识别意义重大。

在商业渔船电子监控系统中,传统的鱼类检测和识别方式是将其交由具备专业知识的审核员进行人工辨别。然而,这种处理方式存在着人员成本高和耗时长的问题,由于鱼类种类繁多,其中一些鱼类非常相似,较难通过肉眼分辨,同时也需要花费大量时间。为此,许多学者提出了基于深度学习的更加方便且高效的鱼类检测和识别方法来替代人工辨别。如French等[8]提出了一种基于Mask R-CNN模型的鱼类识别算法,该方法能够达到63%的平均精度均值,但是细粒度的分类效果较差且存在较多漏检和误检情况,不能满足实际应用需求。为了解决这些问题,Sung等[9]提出了一种基于卷积神经网络的鱼类识别算法,该方法通过在原始鱼类图片上进行训练来提取颜色和纹理特征,达到了65.2%的平均精度均值。然而,受复杂背景影响,检测精度仍然较低。Salman等[10]提出了一种利用卷积神经网络的鱼类识别算法,结合了光流法和背景减法技术,这种方法使模型能够抵抗复杂的场景变化,在LifeCLEF 2015鱼类数据集上达到了80.02%的检测准确率。

以上的鱼类检测方法都是在经典深度学习网络模型的基础上进行了改进。然而,这些模型通常具有深层网络结构,计算和参数量相对较大。因此,在计算能力较低的设备上部署时,需要更多的计算资源且速度较慢,无法满足实时性的需求。为了解决此问题,研究人员提出了一些轻量级模型,如YOLOv7-tiny模型[11]和YOLOv4s模型[12],但这两个模型分别存在特征表达能力不足和小目标敏感性低的问题,容易导致漏检。另外,一些学者提出了针对鱼类分类的轻量级检测模型。如Cai等[13]提出了一种方法,该方法使用MobileNetv1作为YOLOv3模型的特征提取网络,并根据感受野原理重新设计了锚框,在真实养殖场环境中获得了78.63%的平均精度均值。Li等[14]引入了ShuffleNetv2作为YOLOv5的骨干网络,设计了一种轻量实时的水下鱼类检测方法,在Fish4Knowledge数据集上达到了98.1%的平均检测精度。尽管这些方法在水下鱼类检测方面表现出色,但经过试验发现,其无法有效地完成商业渔船复杂环境中的鱼类检测任务,且容易出现较多的漏检和误检。为解决商业渔船环境中的鱼类检测问题,袁红春等[15]在YOLOv8网络中引入了GSConv卷积和SIOU损失函数,在FishNet数据集的L2标签上实现了52.7%的平均精度均值,然而,试验发现该方法在强光照环境下的检测效果较差。

综上所述,商业渔船监控系统中的鱼类检测和识别方法存在以下问题:一是,在真实渔船生产环境中可用的鱼类检测模型数量较少;二是,基于深度学习的鱼类检测方法存在检测精度较低的问题,容易出现漏检和误检;三是,高精度的大型模型需要消耗大量计算资源,速度较慢,无法满足实时性要求;四是,通用的轻量化模型和现有的鱼类轻量化模型的泛化性不够强,无法在商业渔船生产环境中取得良好效果。因此,迫切需要设计一种适用于真实商业渔船生产环境的轻量且高效的鱼类识别检测模型。

本研究中,对YOLOv7模型在骨干网络、头部的特征提取网络上进行了改进,将MobileNetv3的骨干网络作为特征提取的骨干网络,以降低模型参数和提高检测速度;在骨干网络后添加RFB[16](receptive field block,简称“RFB”)模块,以加强主干网络的特征提取能力;利用基于归一化的注意力机制[17](normalization-based attention module,简称“NAM”)重新设计了颈部特征融合网络,通过抑制无关紧要的权重来提高神经网络性能,并对提出的轻量级鱼类检测模型在远洋渔船电子监控视频渔业数据集上进行了验证,以期为该检测方法在商业渔船电子监控系统中的应用提供依据。

1 商业渔船监控数据集

本研究中的数据集为2 800张含有渔获的电子监控图片。数据集共包含了6种类别:长鳍金枪鱼、大眼金枪鱼、黄鳍金枪鱼、月亮鱼、鲨鱼和其他鱼类。由于海上渔船不稳定,渔船监控视频截取的图片多数较模糊,且监控摄像头上会有污渍和水滴,随着时间的变化图片亮度也会不同。为了让训练出的模型更具有鲁棒性和贴近实际生产环境,本研究中通过Albumentations框架对HNY768远洋渔船电子监控视频中截取含有渔获的图片和网络获取的渔船监控图片进行增强,采用翻转、随机亮度和模糊处理(图1)等方法,将采集到的图像从1 200幅扩充到2 800幅。按照8∶1∶1的比例将2 800幅图片划分成训练集、验证集和测试集,进行鱼类检测试验。部分数据集图片如图2所示。

图1 数据集增强

Fig.1 Data augmentation

图2 部分数据集图片

Fig.2 Partial images from the dataset

2 轻量级鱼类目标检测模型YOLOv7-MRN

基于YOLOv7模型,YOLOv7-MRN模型引入了MobileNetv3骨干网络作为特征提取网络,以减小模型参数和运算量的同时提高检测速度;在骨干网络的最后一层添加了一个RFB模块,RFB模块利用不同大小的卷积核获得不同感受野的特征图,使模型更好地适应不同尺度和复杂度的视觉信息,有助于提高检测精度;在头部的特征融合网络中的前两层ELAN-H层后分别添加了一层NAM轻量级注意力机制模块,该注意力机制兼顾了通道信息和空间信息的获取,降低不太显著的特征权重,从而提高了检测精度。改进后的YOLOv7-MRN模型结构如图3所示。

图3 YOLOv7-MRN的网络结构

Fig.3 Network structure of YOLOv7-MRN model

2.1 YOLOv7模型

YOLOv7模型由输入部分、主干特征提取网络和头部网络3部分组成。输入部分将图像尺寸转化为640×640×3。主干特征提取网络采用ELAN和MP结构,通过ELAN实现了不同特征层之间的增强交互,而MP结构则实现了特征层的压缩和融合。此外,头部网络由SPPCSPC模块、ELAN-H模块和RepConv[18]模块组成。SPPCSPC模块在SPP的基础上添加“残差边”,以减少运算量并提高速度和精度。ELAN-H模块类似于ELAN结构,进一步增强了特征的学习能力。RepConv模块则采用了重参数化卷积架构,在训练期间通过特征提取和平滑操作及特征叠加实现高效的特征表示。

2.2 利用MobileNetv3改进的主干特征提取网络

YOLOv7的骨干网络采用了Darknet-53网络结构,这种深层的网络结构增加了模型的复杂性和计算量需求。然而,MobileNetv3采用了较浅的网络结构,并通过使用深度可分离卷积替代传统的卷积操作,从而具有更少的参数和运算量(图4)。这一设计使得MobileNetv3能够在保持较高检测性能的同时减少模型的复杂性,对于资源受限的环境或需要实时运行的场景具有重要意义。此外,参数量的降低也有助于降低过拟合风险,提升模型的迁移性,进而促进商业渔船鱼类检测方法的推广和使用。

图4 MobileNetv3的bneck结构

Fig.4 Bneck structure of MobileNetv3

YOLOv7-MRN的骨干网络为1层普通卷积层和11层bneck结构(表1)。bneck模块融合了倒残差结构,将输入特征矩阵和输出特征矩阵在相同维度上进行数值相加(图3),先利用大小为1×1的卷积进行升维,将低维的压缩特征映射到高维空间中,再利用深度可分离卷积进行特征提取,在这后面添加了SE模块,再经过卷积核大小为1的卷积进行降维。

表1 骨干网络结构

Tab.1 Backbone network architecture

结构structure输出维度output dimension卷积核大小kernel size步幅strideConv2d1632bneck1632bneck7232bneck8831bneck9652bneck24051bneck24051bneck12051bneck14451bneck28852bneck57651bneck57651

深度可分离卷积由两个独立的层组成,深度卷积层(depthwise convolution)可进行过滤(图5),逐点卷积(pointwise convolution)层可进行合并(图6)。用深度可分离卷积代替普通卷积,能够大幅减少运算量和参数数量。

图5 深度卷积

Fig.5 Deep convolution

图6 逐点卷积

Fig.6 Pointwise convolution

2.3 引入RFB结构优化的感受野

在远洋渔船的生产环境下,当渔船监控拍摄距离较近的鱼时,目标占据整张图片的比例较大,模型只关注了局部特征,整体特征被忽略;当待检测的鱼较小时,待检测鱼所占的像素比较小,细节信息难以利用。过大或过小的感受野都会影响模型的检测性。RFB模块的引入可以很好地解决这些问题,其设计灵感来自人类视觉系统中的感受野,其可以自适应地调整感受野的大小和位置,以更好地适应不同尺度和复杂度的视觉信息。RFB模块通过自适应地调整感受野的大小和位置,有效提取不同尺度和分辨率的特征。

本试验中,使用的RFB模块利用1×1卷积进行通道降维,再使用不同大小的卷积核进行卷积,在普通卷积之后串联着膨胀率不同的空洞卷积,再把这些并行卷积得到的特征图进行拼接操作后,经过卷积核大小为1×1的卷积层,与原始特征图进行短路连接,并通过通道融合得到特征图(图7)。

图7 RFB结构

Fig.7 RFB structure

2.4 基于归一化的NAM特征融合网络

渔船甲板生产环境复杂,注意力机制通过抑制无关紧要的权重来提高神经网络性能,以减少复杂环境对渔获检测的影响。

NAM注意力机制利用批量归一化(Batch normalization,BN)中的缩放因子来计算每个通道和空间的重要性,它们反映了特征的方差。缩放因子和偏移量越大,说明通道或空间的特征越显著。批量归一化计算公式为

(1)

式中:μB为最小批次的均值;σB为最小批次的方差;γβ为可训练的参数;BoutBin分别为输出特征和输入特征;BN为计算批量归一化缩放因子的函数。在通道注意力机制中,Wi为比例因子γi的权重,其反映了各个通道变化的大小并表示通道的重要程度。通道注意力具体流程如图8所示,通道注意力模块的输出(Mc)计算公式为

图8 NAM注意力机制

Fig.8 NAM attention mechanism

Mc=sigmoid(Wi(BN(F1)))。

(2)

式中:Mc为输出的特征图;F1为输入的特征图;Wi为各个通道的权重。

在空间注意力机制中,同样将批量归一化中的比例因子用于衡量空间像素的重要性(图8)。空间注意力机制的输出(Ms)计算公式为

Ms=sigmoid(Wj(BN(F2)))。

(3)

式中:Ms为输出的特征图;Wj为空间像素的权值;F2为输入的特征图。

2.5 损失函数

本研究中,使用CIoU作为模型的损失函数,其是IoU的扩展,可以更准确地度量预测边界框和真实边界框之间的相似度。CIoU考虑了两个边界框中心点之间的距离、宽度和高度的差异,以及对角线的差异,综合考虑这些因素可以更准确地反映两个边界框之间的相似度。损失函数计算公式为

lossCIoU=IoU-ρ2-(V-a2)/V+α×ρ2

(4)

式中:IoU为传统的交并比;ρ为边界框中心点之间的欧氏距离;V为边界框的体积,即宽度乘以高度;a为边界框的对角线长度;α为一个平衡因子。

3 鱼类检测试验

3.1 试验环境和训练过程

模型检测试验时,使用计算机操作系统为Ubuntu1 6.04,框架选用PyTorch 1.13.1,Cuda版本为Cuda 11.6,Python 版本为3.8,CPU的配置为AMD Ryzen 95950X 16Core Processor,GPU为NVIDIA GeForce RTX 3090。

模型训练时使用的部分超参数设置:初始学习率为0.01,batch_size为32,迭代次数为200,优化器为随机梯度下降算法。模型训练过程的损失曲线如图9所示,模型在训练轮次达到200轮时基本已经收敛。

图9 训练损失函数曲线

Fig.9 Training loss curve

3.2 评价指标

使用模型参数中的每秒浮点运算次数(FLOPs)、每秒传输帧数(FPS)、平均精度均值(mAP)和F1值等指标来评价鱼类目标检测模型的性能。

其中,mAP数值越大,模型的检测精度越高;FPS越大,模型的检测速度越快;FLOPs越小,模型的运算量越小;F1值越大,模型性能越好。

3.3 YOLOv7-MRN与原模型的检测结果比较

从表2可见,YOLOv7-MRN与原模型YOLOv7在目标检测方面均表现出良好的效果,YOLOv7-MRN与YOLOv7模型能够对各种鱼类进行有效检测,并基本满足任务需求。具体而言,YOLOv7-MRN模型在检测大眼金枪鱼、月亮鱼、黄鳍金枪鱼和鲨鱼的平均精度上比YOLOv7模型分别高出2.2%、8.8%、0.6%、1.0%。然而,在检测长鳍金枪鱼和其他鱼类时的平均精度相对较低,分别比YOLOv7模型低3.0%和6.4%。这可能是因为YOLOv7-MRN模型采用了不同的骨干网络,导致提取图像特征时具有较弱的表示能力,而其他鱼类的形态差异较大,轻量化模型在该类别的特征捕捉能力略有下降。

表2 YOLOv7和YOLOv7-MRN模型在商业渔船监控数据集上的检测结果

Tab.2 Detection results of YOLOv7 and YOLOv7-MRN models on the commercial fishing vessel monitoring dataset

种类speciesYOLOv7YOLOv7-MRN准确率/%precision召回率/%recallF1值F1 score平均精度/%AP准确率/%precision召回率/%recallF1值F1 score平均精度/%AP长鳍金枪鱼 albacore tuna88.483.685.986.792.881.086.583.7大眼金枪鱼 bigeye tuna85.580.582.987.482.787.184.889.6月亮鱼 moonfish100.035.452.284.086.650.163.492.8鲨鱼 shark90.3100.094.998.597.0100.098.599.5黄鳍金枪鱼 yellowfin tuna80.471.175.472.886.671.178.973.4其他鱼类 other89.470.478.786.585.979.282.480.1平均 average89.074.080.586.088.678.183.086.5

就模型的均衡性而言,YOLOv7-MRN模型的平均F1值比YOLOv7模型高出2.5%。在具体类别中,YOLOv7-MRN模型在长鳍金枪鱼、大眼金枪鱼、月亮鱼、其他鱼、鲨鱼和黄鳍金枪鱼中的F1值比YOLOv7模型分别高出0.6%、1.9%、11.2%、3.7%、3.6%、3.5%。综上,与YOLOv7模型相比,YOLOv7-MRN模型在商业渔船监控数据集上的检测效果更加出色,并在目标定位和分类方面具备较高的准确性和鲁棒性。

3.4 消融试验

为了验证各种改进方法的有效性,本研究中设计了一组消融试验,来验证不同模块对网络模型性能的提升。

从表3可见:将骨干网络替换为MobileNetv3的网络后,与原始YOLOv7模型相比,参数量减少了30.37×106,模型的FLOPs减少了95.0×109,同时检测速度有了较大提升,在GPU环境下的FPS提升了70.59 f/s,在CPU环境下的FPS提升了13.53 f/s,但是由于参数量的大幅减小,平均精度均值降低了10.6%;在替换了MobileNetv3骨干网络的模型上添加RFB模块后,参数量和FLOPs分别仅上涨了0.44×106和0.6×109,在GPU和CPU环境下的FPS分别下降了20.61、5.32 f/s,但平均精度均值有较大提升(7.2%);在替换了MobileNetv3骨干网络的模型上引入NAM注意力机制后,参数量和FLOPs分别仅上涨了0.06×106和0.1×109,在GPU和CPU环境下的FPS分别下降了12.15、0.8 f/s,较替换骨干网络后的模型平均精度均值有较大提升(5.0%);同时更改主干特征提取网络为MobileNetv3网络的主干网络、添加RFB模块和引入NAM注意力机制后,与原始的YOLOv7模型相比,参数量减少了29.92×106,模型的FLOPs计算量减少了94.4×109,同时检测速度有了很大的提升,在GPU环境下的FPS提升了51.4 f/s,在CPU环境下的FPS提升了10.58 f/s,平均精度均值也提升了0.5%。上述消融试验表明,将YOLOv7的骨干网络替换为MobileNetv3的骨干网络,能够在大幅降低模型参数量和运算量的同时提高模型的检测速度,尤其是在CPU环境下的检测速度大幅提升(280.1%),但平均精度会大幅下降;而随着RFB模块的引入和利用NAM注意力机制对头部网络的重新设计,能够弥补参数量下降所带来的精度亏损,最终模型能够在不损失平均精度的情况下完成轻量化,同时极大地提高了检测速度,尤其是在CPU环境下的检测速度。

表3 消融试验结果

Tab.3 Results of ablation experiments

MobileNetv3RFBNAM平均精度均值/%mAP@0.5每秒传输帧数FPS/(f·s-1)GPUCPU浮点运算次数FLOPs参数量quantity of parameter86.042.244.83104.7×10936.50×106√75.4112.8318.369.7×1096.13×106√√82.692.2213.0410.3×1096.57×106√√80.4100.6817.569.8×1096.19×106√√√86.593.6415.4110.3×1096.58×106

为了更加直观地验证添加NAM注意力机制的有效性,本研究中进行了特征图的可视化试验(图10)。图10(b)展示了原模型最后一层网络特征图的可视化结果,而图10(c)则展示了引入NAM注意力机制后的模型最后一层特征图的可视化结果。从图10(b)可见:原YOLOv7模型更多地关注渔船工人的帽子及右上角的时间水印;而引入NAM注意力机制后,模型对无关环境的关注得到了极大的抑制,同时模型对待检测鱼的关注度也大大提升,注意力集中在右下角待检测鱼上。由此可见,NAM的引入降低了不太显著的特征权重,从而有利于模型对待检测鱼类的定位和识别。

图10 特征图可视化对比

Fig.10 Feature map visualization comparison

3.5 引入不同注意力机制的检测对比试验

为了进一步验证在模型中引入NAM注意力机制的有效性,在已替换骨干网络和添加RFB模块的YOLOv7-MRN模型的基础上引入不同的注意力机制,并进行了一系列试验。从表4可见,引入不同的注意力机制并不一定会提高模型的检测效果,引入CA[19]、SE[20]和CBAM[21]注意力机制后,导致模型的平均精度均值和检测速度均出现了显著下降,而NAM的引入则提高了模型的平均精度均值。此外,本研究中还观察到模型参数量的增加并不一定导致检测速度的下降,引入CA、SE和CBAM注意力机制会增加模型的参数量,它们在不同程度上降低了模型的检测速度。相比之下,引入NAM注意力机制后,模型的参数量虽有增加,但模型的检测速度却有所提升。这是因为NAM注意力机制的注意力权重计算是基于输入特征的相似度矩阵进行的,而相似度矩阵的计算可以通过并行操作在多个位置上同时进行。这种并行计算能够有效地利用硬件资源,从而加快计算速度。

表4 引入不同注意力机制的YOLOv7-MRN模型试验结果

Tab.4 Introducing the YOLOv7-MRN model with different attention mechanisms experimental results

模型model平均精度均值/%mAP@0.5每秒传输帧数 FPS/(f·s-1)GPUCPU浮点运算次数FLOPs参数量quantity of parameter不添加注意力机制82.692.2213.0410.3×1096.57×106+CA77.665.007.0910.0×1096.69×106+SE73.725.133.3710.4×1096.70×106+CBAM55.537.793.5610.4×1096.70×106+NAM86.593.6415.4110.3×1096.58×106

综上所述,本研究中在YOLOv7-MRN模型中引入NAM注意力机制后,虽有较小的参数量增加,但模型精度和检测速度均有提高。

3.6 不同模型的检测对比试验

为了验证本研究中提出的鱼类检测模型的有效性,选用了原始的YOLOv7、FasterRCNN模型和以YOLOv8n为基础模型的Yolov8n-MRN模型,以及一些轻量化模型进行检测对比试验。从表5可见,改进后的YOLOv7-MRN模型相较原模型YOLOv7,运算量降低了90.16%,参数量降低了81.97%,在GPU和CPU上的检测速度分别提升了121.69%、219.09%,实现了模型的提速和轻量化。

表5 不同模型检测性能对比

Tab.5 Comparison of detection performance by different models

模型model平均精度均值/%mAP@0.5每秒传输帧数 FPS/(f·s-1)GPUCPU浮点运算次数FLOPs参数量quantity of parameterFasterRCNN87.138.700.21402.0×109143.76×106YOLOv4s77.649.7015.9712.9×1098.68×106YOLOv786.042.244.83104.7×10936.50×106YOLOv7-tiny67.646.303.4713.1×1096.00×106YOLOv7-MRN86.593.6415.4110.3×1096.58×106YOLOv3-MobileNet83.773.4610.7839.8×10921.90×106YOLOv5-ShuffleNetv269.583.4214.215.9×1093.20×106Yolov8n-MRN73.6100.2120.396.3×1092.66×106Yolov8n-GCBlock-GSConv79.497.0919.847.7×1092.96×106

与轻量化模型YOLOv4s、YOLOv7-tiny、YOLOv3-MobileNet、YOLOv5-ShuffleNetv2、Yolov8n-GCBlock-GSConv和Yolov8n-MRN相比,YOLOv7-MRN模型的mAP@0.5分别高8.9%、18.9%、2.8%、17%、7.1%和12.9%,检测速度比Yolov8-GCBlock-GSConv和Yolov8n-MRN模型略低,但快于其他模型;与经典的FasterRCNN模型相比,虽然FasterRCNN模型的mAP@0.5比YOLOv7-MRN模型高0.6%,但YOLOv7-MRN模型的运算量是FasterRCNN的2.5%。

当以YOLOv8n为基础模型,并采用与本研究中相同的改进策略时,相比于以YOLOv7为基础模型的YOLOv7-MRN模型,YOLOv8n-MRN模型的检测效果较差。主要原因如下:首先,本试验数据集中包含许多体型较小的鱼类目标,由于YOLOv8n是一种无锚框的目标检测算法,而YOLOv7是基于锚框的目标检测算法,YOLOv7-MRN的预设锚框可以帮助模型更准确地定位体型较小的鱼;其次,在将NAM注意力机制添加到Yolov8n的C2f结构后,模型可能过度关注某些局部区域或特征,导致失去了全局视野,从而产生了漏检现象。相比之下,YOLOv7中的多分支多特征层堆叠块结合NAM注意力机制更能够关注全局信息,因此,具有更好的检测效果。综上,YOLOv7-MRN模型虽然运算量略高于YOLOv8n-MRN模型,但更适合完成远洋渔船甲板的鱼类检测任务。

为了直观展示各模型的检测效果,在HNY768远洋渔船甲板渔获数据集上进行了测试,在白天、夜间、多目标和强日光4种情况下,不同模型的检测效果如图11所示。从图11(d)可见,在强日光情况下,除YOLOv7-MRN模型之外,其他模型均存在不同程度的漏检和误检,相比之下YOLOv7-MRN模型的检测效果更好。这是因为YOLOv7-MRN模型中的RFB模块扩大了感受野,NAM注意力机制能够抑制无关环境,从而提高了对强日光下目标的检测效果。

图11 不同模型的检测效果

Fig.11 Detection results of different models

通过以上测试对比可以看出,本研究中提出的轻量级鱼类检测模型YOLOv7-MRN有着较低的运算量,在白天、夜间、强日光和多目标的情况下有着较好的检测效果。在兼顾准确性的情况下实现了模型的轻量化,较大程度地提升了模型的检测速度,适合在实际渔业生产环境中完成高效和准确的鱼类检测任务。

4 讨论

4.1 引入注意力机制对模型的影响

为了提高目标检测的准确性,模型需要根据图像特征的重要性加权选择关注的区域,并减少背景噪声的干扰。在模型中引入注意力机制是主要的手段之一,常用的注意力机制有SE、CA、CBAM和NAM等。最近,方文博等[22]提出了一种YOLOv5s模型结合CA注意力机制的大豆虫洞目标检测算法,CA注意力机制使网络可以自动学习每个通道的重要性,使得模型能够更加关注对任务有用的通道,并减少对无关通道的依赖,CA注意力机制的引入使模型平均精度均值提高了1.72%。李小波等[23]在YOLOv5s模型的特征提取网络中分别引入了NAM、CA、CBAM和SE 4种注意力机制,使原网络的平均精度均值分别提高了6.7%、6.5%、6.9%、5.8%,虽然引入NAM所提升的精度均值略低于CBAM,但是NAM的参数量远小于CBAM。因此,通过在网络中引入NAM注意力机制,可在略微增加参数量的情况下提高模型的检测精度。然而,模型不能仅仅追求精度的提升,还需要考虑所需的代价。在实际生产环境中,需要采用一种均衡的方法,综合考虑模型的精度和所带来的额外开销,以便更好地应用于实际场景。

4.2 网络模型轻量化对检测效果的影响

现在主流的模型轻量化思路是用轻量化的网络作为特征提取网络或将普通卷积模块替换为深度可分离卷积模块。吴志高等[24]在YOLOv7模型的基础上提出了一种轻量级微藻实时检测模型YOLOv7-MA,将GhostNet作为主干特征提取网络,同时将特征融合网络中的普通卷积模块替换成深度可分离卷积模块,进一步降低模型的计算复杂度,参数量和FLOPs计算量分别降低了39.29%和63.38%。Li等[14]提出了一种用ShuffleNetv2骨干网络作为YOLOv5特征提取网络的实时鱼类检测方法,改进后的模型体积减小了76.64%,参数个数减少了81.60%,运算量减少了81.22%。本研究中,通过引入MobileNetv3轻量骨干特征提取网络,降低了模型的复杂度和检测速度,根据之前研究结果,替换普通卷积模块可以进一步降低模型复杂度,在后续的研究中应深入探索此类方法。

4.3 感受野对模型检测性能的影响

合理调整感受野大小可提高模型的适应性,增强上下文信息的获取能力,并提升特征表征能力,从而改善目标的检测准确性和鲁棒性。张廓等[25]提出了一种基于感受野和特征增强的遥感图像实时检测方法,该方法在特征提取网络后添加了感受野扩增模块,有效地提高了对复杂目标和小目标的检测能力,经试验,在RSOD遥感图像数据集的平均检测精度均值提高了1.12%。杨国亮等[26]提出的改进YOLOv5的交通标志检测算法,在YOLOv5的颈部网络之后添加了ACM 感受野扩增模块,增加了网络的感受野,提高了模型对交通标志的检测能力。本研究中,与上述研究的思路一致,在骨干特征提取网络中引入了RFB模块,以应对商业渔船的生产环境下鱼类个体大小相差较大的情况。

5 结论

1)本研究中提出了一种基于改进YOLOv7的轻量级鱼类实时检测模型YOLOv7-MRN,采用HNY768远洋渔船电子监控视频中截取的渔获图片和网络甲板渔获图片制作了商业渔船渔获数据集。该模型在商业渔船渔获数据集上的平均精度均值为86.5%,参数量较原模型降低了81.97%,F1值提高了2.5%,运算量较原模型降低了90.16%,在GPU和CPU上的FPS分别为93.64、15.41 f/s,能够在较低计算资源的情况下快速完成商业渔船监控场景的鱼类检测识别任务,大幅降低了渔业观察员的工作量,并促进了渔业生产的透明和公正。

2)本研究中提出的YOLOv7-MRN模型相较于其他主流模型如Faster RCNN、YOLOv4s、YOLOv7、YOLOv7-tiny模型,以及轻量化鱼类检测模型YOLOv3-MobileNet、YOLOv5-ShuffleNetv2、YOLOv8n- GCBlock-GSConv和YOLOv8n-MRN,具有更好的检测效果,同时YOLOv7-MRN模型的运算量较小,检测速度较快,能够以更小的计算资源成本完成商业渔船系统中的鱼类分类和检测任务,适合部署在算力资源较匮乏的生产环境中。

参考文献:

[1] FAO.The state of world fisheries and aquaculture[M/OL].Rome:Food and Agriculture Organization of the United Nations,2022.https://www.fao.org/documents/card/en/c/cc0461en.

[2] 孙永文,张胜茂,蒋科技,等.远洋渔船电子监控技术应用研究进展及展望[J].海洋渔业,2022,44(1):103-111.

SUN Y W,ZHANG S M,JIANG K J,et al.Research progress of application status of electronic monitoring technology in ocean fishing vessels and prospects[J].Marine Fisheries,2022,44(1):103-111.(in Chinese)

[3] PUNT A E,SMITH D C,TUCK G N,et al.Including discard data in fisheries stock assessments:two case studies from south-eastern Australia[J].Fisheries Research,2006,79(3):239-250.

[4] FAO.Seafood traceability for fisheries compliance:country-level support for catch documentation schemes[M/OL].Rome: Food and Agriculture Organization,2017.https://xueshu.baidu.com/usercenter/ paper/show?paperid=6faf3fcf61828bdf3ed357ad8d3fb93e&site=xueshu_se&hitarticle=1.

[5] VAN HELMOND A T M,MORTENSEN L O,PLET-HANSEN K S,et al.Electronic monitoring in fisheries:lessons from global experiences and future opportunities[J].Fish and Fisheries,2020,21(1):162-189.

[6] NEEDLE C L,DINSDALE R,BUCH T B,et al.Scottish science applications of remote electronic monitoring[J].ICES Journal of Marine Science,2015,72(4):1214-1229.

[7] GILMAN E,DE RAMN CASTEJN V,LOGANIMOCE E,et al.Capability of a pilot fisheries electronic monitoring system to meet scientific and compliance monitoring objectives[J].Marine Policy,2020,113:103792.

[8] FRENCH G,MACKIEWICZ M,FISHER M,et al.Deep neural networks for analysis of fisheries surveillance video and automated monitoring of fish discards[J].ICES Journal of Marine Science,2020,77(4):1340-1353.

[9] SUNG M,YU S C,GIRDHAR Y.Vision based real-time fish detection using convolutional neural network[C]//OCEANS 2017 - Aberdeen.Aberdeen,UK:IEEE,2017:1-6.

[10] SALMAN A,AHMAD SIDDIQUI S,SHAFAIT F,et al.Automatic fish detection in underwater videos by a deep neural network-based hybrid motion learning system[J].ICES Journal of Marine Science,2020,77(4):1295-1307.

[11] WANG C Y,BOCHKOVSKIY A,LIAO H Y M.YOLOv7:trainable bag-of-freebies sets new state-of-the-art for real-time object detectors[C]//2023 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).Vancouver,BC,Canada:IEEE,2023:7464-7475.

[12] BOCHKOVSKIY A,WANG C Y,LIAO H Y M.YOLOv4: optimal speed and accuracy of object detection[EB/OL].arXiv,2020.https://arxiv.org/abs/2004.10934.

[13] CAI K W,MIAO X Y,WANG W,et al.A modified YOLOv3 model for fish detection based on MobileNetv1 as backbone[J].Aquacultural Engineering,2020,91:102117.

[14] LI W H,ZHANG Z K,JIN B A,et al.A real-time fish target detection algorithm based on improved YOLOv5[J].Journal of Marine Science and Engineering,2023,11(3):572.

[15] 袁红春,陶磊.基于改进的Yolov8商业渔船电子监控数据中鱼类的检测与识别[J].大连海洋大学学报,2023,38(3):533-542.

YUAN H C,TAO L.Detection and identification of fish in electronic monitoring data of commercial fishing vessels based on improved Yolov8[J].Journal of Dalian Ocean University,2023,38(3):533-542.(in Chinese)

[16] LIU S T,HUANG D,WANG Y H.Receptive field block net for accurate and fast object detection[C]//European conference on computer vision.Cham:Springer,2018:404-419.

[17] LIU Y,SHAO Z,TENG Y,et al.NAM: Normalization-based Attention Module[EB/OL].arXiv,2021.https://arxiv.org/abs/2111.12419.

[18] DING X H,ZHANG X Y,MA N N,et al.RepVGG:making VGG-style ConvNets great again[C]//2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).Nashville,TN,USA:IEEE,2021:13728-13737.

[19] HOU QB,ZHOU D Q,FENG J S.Coordinate attention for efficient mobile network design[C]//2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).Nashville,TN,USA:IEEE,2021:13708-13717.

[20] HU J,SHEN L,SUN G.Squeeze-and-excitation networks[C]//2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition(CVPR).Salt Lake City,UT,USA:IEEE,2018:7132-7141.

[21] WOO S,PARK J,LEE J Y,et al.CBAM:convolutional block attention module[C]//European Conference on Computer Vision.Cham:Springer,2018:3-19.

[22] 方文博,郭永刚,关法春,等.基于改进YOLO v5s算法的大豆叶片虫洞的识别[J].湖南农业大学学报(自然科学版),2023,49(1):127-132.

FANG W B,GUO Y G,GUAN F C,et al.Soybean leaf wormhole recognition based on improved YOLO v5s algorithm[J].Journal of Hunan Agricultural University (Natural Sciences Edition),2023,49(1):127-132.(in Chinese)

[23] 李小波,李阳贵,郭宁,等.融合注意力机制的YOLOv5口罩检测算法[J].图学学报,2023,44(1):16-25.

LI X B,LI Y G,GUO N,et al.Maskdetection algorithm based on YOLOv5 integrating attention mechanism[J].Journal of Graphics,2023,44(1):16-25.(in Chinese)

[24] 吴志高,陈明.基于改进YOLO v7的微藻轻量级检测方法[J].大连海洋大学学报,2023,38(1):129-139.

WU Z G,CHEN M.Lightweight detection method for microalgae based on improved YOLO v7[J].Journal of Dalian Ocean University,2023,38(1):129-139.(in Chinese)

[25] 张廓,陈章进,乔栋,等.基于感受野和特征增强的遥感图像实时检测[J].激光与光电子学进展,2023,60(2):331-340.

ZHANG K,CHEN Z J,QIAO D,et al.Real-time image detection via remote sensing based on receptive field and feature enhancement[J].Laser &Optoelectronics Progress,2023,60(2):331-340.(in Chinese)

[26] 杨国亮,杨浩,余帅英,等.改进YOLOv5的交通标志检测算法[J].计算机工程与应用,2023,59(10):262-269.

YANG G L,YANG H,YU S Y,et al.Improved YOLOv5 traffic sign detection algorithm [J].Computer Engineering and Applications,2023,59(10):262-269.(in Chinese)

A lightweight fish object detection method improved based on the YOLOv7 model

MEI Haibin,HUANG Zheng,YUAN Hongchun

(College of Information Technology,Shanghai Ocean University,Shanghai 201306,China)

AbstractTo address the reliance on manual labor for fish detection and recognition in commercial fishing vessel electronic monitoring systems, a lightweight real-time fish detection model called YOLOv7-MRN was proposed in which the backbone network of YOLOv7 was replaced with the MobileNetv3 backbone network to reduce computational complexity. Additionally, receptive field modules were incorporated to enhance the network’s feature extraction capabilities. The neck feature fusion network RFB to suppress irrelevant weights was redesign by introducing a normalization-based attention mechanism module NAM. The test of the HNY768 offshore fishing vessel electronic monitoring video fishery dataset revealed that YOLOv7-MRN achieved mAP@0.5 of 86.5%, with only 9.8% of the computational load compared to the original model. The inference speed of the model was improved by 121.69% on GPU and 219.09% on CPU. In comparison to other models, YOLOv7-MRN exhibited superior performance in practical fish detection, particularly in strong sunlight conditions. These findings indicate that the YOLOv7-MRN model proposed here can be deployed in electronic fishing vessel monitoring systems with reduced computational resource consumption to accomplish fish detection tasks.

Key wordsYOLOv7; normalization-based attention mechanism; depth wise separable convolution; fish recognition detection

中图分类号S 977;TP 391.4

文献标志码:A

DOI10.16535/j.cnki.dlhyxb.2023-085

文章编号:2095-1388(2023)06-1032-12

收稿日期2023-04-19

基金项目国家自然科学基金(61972240)

作者简介梅海彬(1973—),男,副教授。E-mail:hbmei@shou.edu.cn