基于通道非降维注意力机制与改进YOLOv5的养殖鱼群检测

2023-06-25 05:28韦思学李海清高浩天胡泽元吴俊峰
渔业现代化 2023年3期
关键词:鱼群降维特征提取

韦思学,于 红,张 鹏,李海清,高浩天,张 鑫,胡泽元,吴俊峰,孟 娟

(1 大连海洋大学信息工程学院,辽宁 大连 116023;2 辽宁省海洋信息技术重点实验室,辽宁 大连 116023;3 设施渔业教育部重点试验室(大连海洋大学),辽宁 大连 116023)

养殖鱼群目标检测对指导养殖生产、辅助养殖决策十分重要[1-3]。传统养殖鱼群检测基于人工,费时费力且会对鱼体造成损伤,不利于鱼类养殖[4-5]。目前基于深度学习的目标检测算法成为主流[6-7],可以实现养殖鱼的无接触检测[8],解决人工检测的不足。YOLO算法[9]使用预定义候选框,通过回归产生物体类别概率和位置坐标[10],步骤精简,计算量较小,检测速度快,在水下目标检测中有广泛研究[11]。

李冲冲[12]基于YOLOv3[13]进行水下鱼类目标检测,在实验室环境下检测精度较高,但面对养殖环境中模糊,气泡遮挡问题时,无法有效提取鱼类特征信息,检测精度不高。为解决该问题,Fan等[14]通过增加模型复杂度,提高特征利用率,提升检测精度。但导致模型计算量增加,检测速度下降;Chen等[15]通过改进特征融合网络,在不降低模型速度的条件下提高检测精度,但未解决鱼类特征提取困难问题;赵梦等[16]通过SKNet注意力机制加强YOLO对鱼类特征提取能力,提升检测效果。但Wang等[17]研究表明,SKNet注意力机制[18]降维捕捉所有通道交互的方法使不相关通道进行交互,让通道之间的依赖变得低效,使模型变得复杂,增加计算量,导致模型效率降低。Wang等[19]使用非降维通道注意力机制ECA-Net,解决了降维对注意力机制的影响。但SKNet与ECA-Net只考虑通道注意力,没有考虑特征图任意两个位置的空间依赖关系,对特征权重分配考虑不全面。Fan等[20]使用结合通道与空间注意力机制的双重注意力机制CBAM[21]及YOLOv5,有效解决单一注意力机制特征权重分配考虑不全面的问题,但CBAM同样使用降维捕捉通道信息,通道之间的依赖低效且计算量较高。

综上可知,通用YOLO模型在真实养殖环境中出现模糊、气泡遮挡现象时,YOLO骨干网络无法有效提取鱼类特征信息,导致养殖鱼检测精度较低。通过注意力机制可以提高YOLO骨干网络性能,但现有注意力机制存在不足。

本研究提出了基于通道非降维注意力机制ECBAM与改进YOLOv5[22]的养殖鱼群检测模型ESB-YOLO,通过通道非降维双重注意力机制ECBAM提升YOLOv5骨干网络对鱼类特征提取能力;通过加权双向特征金字塔BiFPN[23],提升YOLOv5特征融合网络特征融合能力。以上改进提升YOLOv5在真实养殖环境下养殖鱼检测的准确率、召回率与平均精度的性能指标。

1 材料与方法

1.1 数据集

本研究数据集采集于大连天正实业有限公司的大黑石红鳍东方鲀养殖车间,共计2 000张分辨率为1 920×1 080的养殖环境下的红鳍东方鲀鱼群图像。数据集图像如图1所示,其中包含不同时间段、不同光照条件以及不同鱼群密度下采集养殖红鳍东方鲀鱼群图像,反映了养殖环境下红鳍东方鲀鱼群生活状态。

图1 养殖鱼数据集图像示例Fig.1 Sample images of the farmed fish dataset

1.2 养殖鱼目标检测方法

1.2.1 ESB-YOLO框架设计

由于真实养殖环境中的鱼群是处于运动状态的,对养殖鱼群的目标检测模型必须具有较高的实时性与精准性,YOLOv5具有速度快、精度高等特点,可以满足养殖鱼群检测要求[24]。

ESB-YOLO基于YOLOv5,其模型结构如图2所示。ESB-YOLO可分为输入端、骨干网络、特征融合网络以及输出端4部分,其中输入端进行Mosaic数据增强、自适应锚框计算与自适应图片缩放等预处理工作;骨干网络进行特征提取工作;特征融合网络将骨干网络提取的低层与高层特征进行融合,得到具有高细节、高语义、具有定位信息的特征;输出端根据融合的特征进行预测,使用nms非极大值抑制筛选候选框,得到最终预测结果。为解决YOLOv5骨干网络在养殖环境中存在模糊、气泡遮挡现象时难以提取养殖鱼特征,导致养殖鱼检测出现精确率低问题,ESB-YOLO骨干网络在原有Focus、C3模块的基础上,通过加入ECBAM注意力机制,提升对养殖鱼群特征提取能力;通过SPPF替换SPP模块减少模型计算量,提高模型速度;通过将YOLOv5特征融合网络中PANet[25]更换为BiFPN,减少养殖鱼群特征信息丢失,加强多尺度特征融合能力,提升检测效果。

注:Focus是对输入进行横纵向切片再拼接的模块;C3是对残差特征进行学习的模块;SPPF是快速空间金字塔池化; Sigmoid是激活函数用于为模型加入非线性因素,增强模型表达能力;Expand是维度扩展函数,用于将单个维度扩大成更大维度;BiFPN是加权双向特征金字塔网络图2 ESB-YOLO结构图Fig.2 ESB-YOLO structure diagram

1.2.2 骨干网络改进

输入端的预处理工作提高样本丰富度、增加模型对输入图像适应性、丰富骨干网络特征提取类型,但这些工作无法解决骨干网络无法有效提取模糊、气泡遮挡的养殖鱼特征问题。为解决该问题,本研究使用通道非降维双重注意力机制ECBAM(ECA-CBAM),通过注意力机制根据重要程度赋予不同权重的方法[26]提升YOLOv5骨干网络特征提取能力。ECBAM通过通道与空间注意力子模块获取重点检测目标内容与位置信息,使输出信息更聚焦于养殖鱼重点特征信息,抑制一般特征的干扰;使用卷积核大小为k的一维卷积实现通道信息聚合(其中k表示局部跨通道交互的范围)的方式解决降维对通道注意力的负面影响。ECBAM提高YOLOv5骨干网络对模糊、气泡遮挡的养殖鱼特征提取能力,从而提高对养殖鱼检测的准确率。ECBAM结构如图3所示。

注:Sigmoid是激活函数,用于为模型加入非线性因数,增强模型表达能力;Expand是维度扩展函数,用于将单个维度扩大成更大维度图3 通道非降维ECBAM结构图Fig.3 The structure diagram of non-channel-downscaling ECBAM

加入ECBAM的骨干网络提升了对养殖鱼的特征提取能力,也增加了模型计算量,使模型检测时间增加,但在养殖环境中鱼群处于运动状态,对模型检测速度有所要求。为解决加入ECBAM后模型检测时间增加的问题,使用SPPF快速空间金字塔池化模块替换SPP空间金字塔池化[27]模块。SPPF通过3个池化核为5的最大池化替代SPP池化核为5、9、13的3个最大池化,SPPF与SPP池化尺寸等价,但运算量由SPP的52+92+132=275降低为3×52=75,降低了骨干网络计算量,实现模型轻量化[28],提高模型速度。

1.2.3 特征融合网络改进

加入ECBAM的骨干网络提升了对养殖鱼的特征提取能力,提取特征增多,对特征融合网络也有更高要求。将特征融合网络中PANet替换为BiFPN,BiFPN通过删除没有参与特征融合的节点,简化网络结构;增加额外的通路,使特征融合输入增多,融合更多的特性;通过加权特征融合的机制,减少有用特征的丢失,提升特征融合能力。使得特征融合网络更加高效,两者网络结构对比如图4所示。

图4 PANet与BiFPN网络结构对比图Fig.4 Comparison of PANet and BiFPN network structure

1.3 试验平台与评估指标

1.3.1 试验平台与模型训练参数

本研究所有试验基于CPU为i7-11700k,GPU为RTX3090的Windows10电脑。使用预训练后的YOLOv5x作为baseline,batch_size为4,迭代次数为300。

1.3.2 评估指标

本研究所提模型评估采用准确率、召回率、平均精度作为模型性能评价指标。

准确率(Precison,P)反映的是被正确预测为养殖鱼样本数占所有被预测为养殖鱼样本总数的比值,可以视作是模型找出正确目标能力,其计算公式为:

(1)

召回率(Recall,R)反映的是被正确预测为养殖鱼样本数与实际为养殖鱼样本总数的比值,可以视作是模型在数据集中,检测出目标的能力,其计算公式为:

(2)

平均精度(Average Precison,AAP)是对PR曲线的积分,反映的是模型在所有类别上的检测能力的好坏,其计算公式为:

(3)

式中:TTP(True positives)为预测出养殖鱼的样本数;FFP(False positives)为被错误预测为养殖鱼的样本数;FFN(False negatives)为没有被预测出的养殖鱼样本数。

2 试验设计与结果分析

2.1 消融试验

为验证本研究对YOLOv5改进的有效性,设计消融试验内容如下:依次为YOLOv5模型加入ECBAM注意力机制、SPPF与BiFPN模块,训练模型进行对比试验,对比模型均使用同一数据集,进行相同轮次模型训练与模型测试,为探究SPPF与BiFPN对模型检测速度的影响,本试验额外增加模型检测速度评价指标,结果如表1所示。由表1数据分析可知,ECBAM、SPPF与BiFPN模块都对YOLOv5模型性能有所提升,说明所提模块的有效性。但由于ECBAM中包含通道与空间两个注意力模块,计算量较大,导致模型检测速度的增加。SPPF与BiFPN都有模型轻量化的思想,二者通过替换高效计算方式,减少了模型计算量,提高了模型检测速度。故通过结合ECBAM、SPPF与BiFPN三个模块对YOLOv5模型进行改进,实现模型性能提升的同时,保持检测速度,试验表明结合所提3个模块改进YOLOv5可更好满足养殖鱼群检测需求。

表1 通道非降维ECBAM模块与改进YOLOv5对模型性能的影响Tab.1 Impact of non-channel-downscaling ECBAM module and improved YOLOv5 on model performance

2.2 模型对比试验

为验证ESB-YOLO在本领域有效性,与先进水下目标检测模型进行对比试验。对比模型分别是:Fan等[14]通过增加模型网络复杂度方法,提出的水下模糊小型目标检测模型FERNet;Chen等[15]通过改进特征融合网络,提出的水下小型目标的检测模型SWIPENet;赵梦等[16]通过结合UNet与SKNet注意力机制,提出的养殖鱼群的检测模型SK-YOLOv5。参与对比试验的模型均使用统一数据集,训练相同轮次。根据试验结果分析可得,本研究所提模型取得良好成绩,结果如表2所示。FERNet、SWIPENet与SK-YOLOv5都是为了解决水下目标模糊、气泡遮挡导致目标检测模型特征提取困难,检测效果不佳的问题。FERNet增加模型网络复杂度与SWIPENet改进特征融合网络的方法,都是通过提高已有特征利用率以提升模型性能,本质上没有解决目标检测模型特征提取困难的问题。

表2 不同模型与ESB-YOLO的性能对比Tab.2 Performance comparison between different models and ESB-YOLO

SK-YOLOv5通过SKNet注意力机制解决了养殖鱼群特征提取困难的问题,但SKNet权重分配考虑不全面。ESB-YOLO的非降维双重注意力机制权重分配更为合理的同时改进特征融合网络,使得提取特征融合更为高效合理,故ESB-YOLO模型性能优于SK-YOLOv5。综上所述,ESB-YOLO与参与对比的模型相比更适合养殖鱼群的检测任务。

3 讨论

对比鱼病检测[29]、自然环境鱼群识别[30]等常见鱼类检测任务,本研究检测难度在于养殖环境中模糊、气泡遮挡等现象使得目标特征难以提取。为解决上述问题,本研究通过ECBAM、SPPF与BiFPN三个模块提升YOLOv5在养殖环境在对鱼群的检测能力,由图5可见,ESB-YOLO对比YOLOv5对模糊、气泡遮挡区域养殖鱼检测效果更好,说明改进的YOLOv5解决养殖环境中模糊、气泡遮挡导致的目标特征难提取问题的有效性。然而本研究也有不足之处,图5中被大量气泡遮挡的养殖鱼目标仍然无法有效识别,同时养殖环境中影响检测的因素不止模糊、气泡遮挡。

图5 YOLOv5与ESB-YOLO识别结果对比图Fig.5 Comparison of recognition results between YOLOv5 and ESB-YOLO

由图6可见,ESB-YOLO无法有效检测养殖环境中处于反光区域的目标。原因是反光完全遮挡鱼群目标特征,模型无法提取足够特征进行学习,如何识别反光区域的养殖鱼目标是未来有待研究解决的问题。

图6 YOLOv5与ESB-YOLO反光区域识别结果对比图Fig.6 Comparison of recognition results of reflective areas between YOLOv5 and ESB-YOLO

4 结论

本研究提出基于通道非降维双重注意力机制与改进YOLOv5的养殖鱼群目标检测模型ESB-YOLO,通过ECBAM提高骨干网络特征提取能力,BiFPN提高特征融合网络效率,SPPF模块减少模型检测时间,提高了YOLOv5模型检测能力,可为研究养殖鱼群目标检测提供技术支持。本研究仅对模糊与气泡遮挡的检测有所改善,对养殖环境中其他影响鱼群目标检测的问题,仍需进一步研究改进。

猜你喜欢
鱼群降维特征提取
混动成为降维打击的实力 东风风神皓极
降维打击
基于Daubechies(dbN)的飞行器音频特征提取
鱼群漩涡
Bagging RCSP脑电特征提取算法
基于改进鱼群优化支持向量机的短期风电功率预测
基于人工鱼群算法的光伏阵列多峰MPPT控制策略
多子群并行人工鱼群算法的改进研究
基于MED和循环域解调的多故障特征提取
抛物化Navier-Stokes方程的降维仿真模型