针对水下鱼类视频图像通常存在严重遮挡、近背景色、目标尺寸不一致的问题,在YOLOv8检测算法基础上,引入EMA注意力机制,利用该机制能自动学习并更加准确地捕捉中华鲟关键特征,以提升YOLOv8的预测能力。将引入EMA注意力机制的YOLOv8检测算法用于中华鲟检测的试验结果表明:在精度mAP@0.5方面,改进的YOLOv8模型相比原始YOLOv8模型提高了3.7%,达到了94%。因此引入EMA注意力机制的YOLOv8检测算法能更好地用于水下视频中华鲟检测。 In response to the problems of severe occlusion, near background color, and inconsistent target size in underwater Chinese sturgeon video images, an EMA attention mechanism is introduced based on the YOLOv8 detection algorithm. This mechanism can automatically learn and more accurately capture key features of Chinese sturgeon, improving YOLOv8’s predictive ability. The experimental results of using the YOLOv8 detection algorithm with EMA attention mechanism for detecting Chinese sturgeon show that the accuracy mAP@0.5 in terms of performance, the improved YOLOv8 model has increased by 3.7% compared to the original YOLOv8 model, reaching 94%. Therefore, the YOLOv8 detection algorithm with the introduction of EMA attention mechanism can be better used for underwater video detection of Chinese sturgeon.
针对水下鱼类视频图像通常存在严重遮挡、近背景色、目标尺寸不一致的问题,在YOLOv8检测算法基础上,引入EMA注意力机制,利用该机制能自动学习并更加准确地捕捉中华鲟关键特征,以提升YOLOv8的预测能力。将引入EMA注意力机制的YOLOv8检测算法用于中华鲟检测的试验结果表明:在精度mAP@0.5方面,改进的YOLOv8模型相比原始YOLOv8模型提高了3.7%,达到了94%。因此引入EMA注意力机制的YOLOv8检测算法能更好地用于水下视频中华鲟检测。
YOLOv8,目标检测,EMA注意力机制
Feifei Xia*, Yonghong Jia*, Wenhui Zhou*, Xinyue Cheng
School of Remote Sensing Information Engineering, Wuhan University, Wuhan Hubei
Received: Mar. 18th, 2024; accepted: Apr. 16th, 2024; published: Apr. 23rd, 2024
In response to the problems of severe occlusion, near background color, and inconsistent target size in underwater Chinese sturgeon video images, an EMA attention mechanism is introduced based on the YOLOv8 detection algorithm. This mechanism can automatically learn and more accurately capture key features of Chinese sturgeon, improving YOLOv8’s predictive ability. The experimental results of using the YOLOv8 detection algorithm with EMA attention mechanism for detecting Chinese sturgeon show that the accuracy mAP@0.5 in terms of performance, the improved YOLOv8 model has increased by 3.7% compared to the original YOLOv8 model, reaching 94%. Therefore, the YOLOv8 detection algorithm with the introduction of EMA attention mechanism can be better used for underwater video detection of Chinese sturgeon.
Keywords:YOLOv8, Object Detection, EMAIL Attention Mechanism
Copyright © 2024 by author(s) and beplay安卓登录
This work is licensed under the Creative Commons Attribution International License (CC BY 4.0).
http://creativecommons.org/licenses/by/4.0/
中华鲟是地球上最古老的脊椎动物,其自身拥有的一系列原始特征在研究鱼类演化与地貌变迁等方面有着重要的学术研究价值和经济价值。中华鲟是中国长江中十分古老且具有珍稀价值的鱼类,有“长江鱼王”的称号。其主要栖息地位于长江中下游干流,而长江的水体污染,渔船的过度捕捞等因素导致了中华鲟生存环境的急剧恶化,天然种群中的中华鲟亲鱼与幼鱼数量也不断衰退,其天然种群规模正不断缩小,自然繁殖的中华鲟幼鱼更是少之又少,野生的中华鲟种群延续状况岌岌可危。因此,采用人工智能技术准确、快速地检测水下环境中的中华鲟技术是成为保护和养殖中华鲟的关键技术之一。
在水下环境中拍摄的中华鲟图像通常存在着光照较弱、对比度低且比较模糊的特点,传统的机器学习方法如支持向量机与BP神经网络等方法检测,对于水下图像的检测精度较差,泛化性能不足。随着计算机视觉技术的不断发展,深度学习在目标检测算法上的优势开始不断显现,基于深度学习的相关目标检测算法应用于水下目标识别越来越受重视。2016年,XuC等 [
YOLOv8采用基于中心检测算法的无锚框(Anchor-Free)检测方式,直接检测物体的中心区域和边界信息,有效用于小目标检测。但对复杂环境下水下中华鲟检测在捕捉关键特征方面存在不足,因此本文在YOLOv8模型中引入EMA注意力机制,提出一种改进的YOLOv8算法用于中华鲟智能检测方法,以期提高复杂环境下水下中华鲟检测准确率。
YOLOv8是2023年Ultralytics公司开源的新网络,集成目标检测、关键点检测、实例分割、实时追踪等任务。YOLOv8将分类和回归解耦为2个子网,因无需手动设计锚框,从而减小了锚框的数量和尺寸选择而导致的干扰,能有效提高目标检测的准确性,尤其对小目标更加友好。不同尺寸的锚框数量若不平衡,会导致小目标的检测效果差,而Anchor-Free设计可解决了锚框数量不平衡问题。
YOLOv8的总体结构包括骨干网络(Backbone)、颈部网络(Neck)、检测头(Head)三部分内容。其网络结构图如图1所示。
图1. YOLOv8网络结构
骨干网络Backbone部分采用的结构为Darknet53,颈部网络(Neck)包括基本卷积单元Conv、实现局部特征和全局特征featherMap级别融合的空间金字塔池化模块SPPF、增加网络的深度和感受野,提高特征提取能力的C2f模块。YOLOv8将YOLOv5的C3结构换成了梯度流更丰富的C2f结构,并对不同尺度模型调整了不同的通道数,大幅提升了模型性能。
Head部分的改变:YOLOv8的Head部分从原先的耦合头变成了解耦头,并且从YOLOv5的Anchor-Based换成了Anchor-Free;YOLOv8引入了TaskAlignedAssigner正样本分配策略,并采用了Distribution Focal Loss。
另外,YOLOv8的训练数据增强部分引入了YOLOX中的最后10个epoch关闭Mosaic增强的操作,可以有效地提升精度。
由于EMA注意力机制旨在通过使网络能够动态调制各通道的权重(通道注意),从而重新校准特征来提高网络的表示能力。其工作原理图如图2。
图2. EMA注意力机制
由于EMA基于跨空间学习的高效多尺度注意力效果优于ECA、CBAM、CA,因此,将EMA融入到YOLOv8Neck部分的C2f模块,形成的C2f_EMA模块。其结构如图3所示。C2f_EMA模块能增强提取小目标、模糊目标特征的能力,将更有利于复杂环境中小目标和模糊目标的检测与识别。
图3. C2f_EMA结构
中华鲟检测试验软硬件环境配置如下:处理器为AMD Ryzen 9 5900HX with Radeon Graphics八核,内存32 GB,GPU为NVIDIA GeForce RTX 3080 Laptop。操作系统为Windows 11 (64位),Python版本3.9,深度学习框架为Pytorch 1.13.1 + cu116,CUDA 11.6和CUDNN 8.3.0。
基于YOLOv8的中华鲟智能检测流程如图4所示。试验视频采集获得包含中华鲟5000张图像,对样本数据使用LabelImg标注工具进行人工标注,获得中华鲟检测数据集,将数据集划分为训练集、验证集、测试集三部分,比例为8:1:1。采用训练集对YOLOv8和改进的YOLOv8进行训练,用验证集进行精度评估。训练中超参数设置如下:迭代次数(epoch)为130;批大小(batch size)设置为24;初始学习率为0.01;优化器为SGD。
在392幅中华鲟测试集上分别采用训练好的YOLOv8和改进的YOLOv8进行了检测试验,用mAP@0.5%对YOLOv8和改进的YOLOv8检测结果评价见表1。
图4. 改进YOLOv8的中华鲟目标检测流程
模型 改进 | YOLOv8 |
---|---|
无 | 90.5% |
EMA | 94.2% |
表1. 基于YOLOv8的中华鲟检测精度(mAP@0.5%)
表1给出了YOLOv8改进前后的定量评价结果。相比原始YOLOv8模型,改进后的YOLOv8检测的mAP@0.5比原YOLOv8检测增加了3.7%。可见融入EMA的YOLOv8提高了检测效果。
对比分析YOLOv8模型改进前后的检测图像,发现改进的YOLOv8能够检测出较浑浊水体的中华鲟,而原YOLOv8模型对浑浊水体的中华鲟检测结果差。可见将EMA融入到YOLOv8Neck部分的C2f模块,形成的C2f_EMA模块,改进的YOLOv8对于检测浑浊水下中华鲟更加有效。
考虑到水下的复杂环境,针对原YOLOv8算法的不足,提出了一种改进YOLOv8算法,该算法将EMA融入到YOLOv8Neck部分的C2f模块,形成的C2f_EMA模块,增强网络的有效特征提取能力。用于中华鲟检测的试验结果表明:改进的YOLOv8算法提高了检测精度,尤其浑浊水体的中华鲟检测效果好。因此该模型可用于水下视频中华鲟检测,为中华鲟的形态监测与行为分析提供有效方法,为野生中华鲟养殖保护工作提供有益参考。
该成果获得“中华鲟产卵场建设方案设计及监控设备研发”项目、武汉大学大学生创新创业训练计划项目资助。
夏菲菲,贾永红,周温晖,程欣悦. 基于YOLOv8的中华鲟智能检测方法Intelligent Detection Method for Chinese Sturgeon Based on YOLOv8[J]. 计算机科学与应用, 2024, 14(04): 213-218. https://doi.org/10.12677/csa.2024.144091
https://doi.org/10.1109/ICDSP.2016.7868522
https://doi.org/10.16535/j.cnki.dlhyxb.2019-146
https://doi.org/10.1016/j.ecoinf.2019.100977
https://doi.org/10.3390/ani10020364
https://doi.org/10.20079/j.issn.1001-893x.231206005, 2024-04-16.