基于Swin Transformer和YOLOv8的玉米叶病害识别算法研究

2024-12-31 00:00:00朱雷朱劲松
天津农业科学 2024年10期

摘" " 要:为了提高对玉米叶病虫害的准确识别度,本文提出了一种结合Swin Transformer和YOLOv8网络的改进算法。基于YOLOv8网络,算法引入了Focus和Depthwise Convolution等模块,减少了计算量和参数,增加了感受野和特征通道,并提高了特征融合和传输能力。此外,算法还采用了Wise Intersection over Union(WIoU)损失函数来优化网络。结果表明,在自建的玉米叶病害数据集上,Swin Transformer-YOLO模型取得了优异的表现,准确率为91.5%,平均精度(mAP@0.5)为89.4%,显著优于其他检测器。与主流算法(如YOLOv8、YOLOv7、YOLOv5和YOLOx)相比,Swin Transformer-YOLO模型在各项指标上均表现出色,特别是在准确率和平均精度方面。具体而言,Swin Transformer-YOLO模型的召回率为77.6%,mAP@0.5∶0.95值为71%,F1得分为0.84分。综上所述,本研究为复杂环境下玉米叶病害的准确识别提供了技术手段,并为小目标检测提供了新的见解。

关键词:玉米叶病害识别;小目标检测;Swin Transformer;YOLOv8;模型优化

中图分类号:S435.131; TP391.4" " " " 文献标识码:A" " " " " DOI 编码:10.3969/j.issn.1006-6500.2024.10.009

Research on Maize Leaf Disease Recognition Algorithm Based on Swin Transformer and YOLOv8

ZHU Lei, ZHU Jinsong

(School of Economics and Management, Yangtze University, Jingzhou, Hubei 434023, China)

Abstract: In order to improve the accuracy of identifying corn leaf disease pests, this paper proposed an improved algorithm that combines Swin Transformer and YOLOv8 network.Based on the YOLOv8 network, modules such as Focus and Depthwise Convolution were introduced to reduce computation and parameters, increase the receptive field and feature channels, and improve feature fusion and transmission capabilities. Additionally, the Wise Intersection over Union (WIoU) loss function was adopted to optimize the network.The experimental results showed that the Swin Transformer-YOLO model achieved excellent performance on the self-built corn leaf disease dataset, with an accuracy of 91.5% and a mean average precision (mAP@0.5) of 89.4%, significantly outperforming other detectors. Compared to mainstream algorithms (such as YOLOv8, YOLOv7, YOLOv5, and YOLOx), the Swin Transformer-YOLO model excelled in all metrics, particularly in accuracy and mean average precision. Specifically, the Swin Transformer-YOLO model had a recall rate of 77.6%, an mAP@0.5∶0.95 of 71%, and an F1 score of 0.84.In summary, this study provides a technical means for the accurate identification of corn leaf diseases in complex environments and offered new insights for small target detection.

Key words: maize leaf disease recognition; small target detection; Swin Transformer; YOLOv8; model optimization

玉米作为全球重要的粮食作物之一,其产量和质量直接影响着全球粮食安全。由于玉米种植环境的复杂性和病害种类的多样性,准确识别玉米叶病害仍然是一个巨大的挑战。目前,基于传统图像处理和机器学习的方法在提取玉米叶病害的细微特征和形态方面效果不佳[1],导致识别准确率和鲁棒性较低。

近年来,许多研究致力于利用深度学习技术来提高植物病害检测的准确性。例如,基于卷积神经网络(CNN)的方法在图像分类和目标检测任务中取得了显著进展。然而,这些方法在处理小目标检测时仍然存在局限性,尤其是在复杂背景下,这些方法容易受到噪声和背景干扰的影响,导致检测精度下降[2]。Swin Transformer作为一种新兴的视觉变换器,通过自注意力机制捕捉全局和局部上下文信息,展示了在图像识别任务中的潜力[3]。此外,YOLO系列网络(如YOLOv5、YOLOv7、YOLOv8)以其高效的目标检测能力广泛应用于各种场景,但在小目标检测方面仍有提升空间。

为了准确识别玉米叶病害,本研究提出了一种基于Swin Transformer和YOLOv8的玉米叶病害小目标检测算法。该算法集成了Swin Transformer模块和YOLOv8网络,以提高小目标检测能力。Swin Transformer模块基于自注意力机制提取视觉特征,捕捉小目标的全局和局部上下文信息,以增强特征表示[4]。YOLOv8网络是一种基于深度卷积神经网络的目标检测器,具有高速度和高精度的特点[5]。在YOLOv8网络的基础上,本研究引入了Focus和Depthwise Convolution等模块,以减少计算量和参数,增加感受野和特征通道,并改善特征融合和传输[6]。此外,本研究采用Wise Intersection over Union损失优化网络。

1 材料与方法

1.1 材料

1.1.1 数据集构建 玉米叶病害数据集构建包括数据集收集、数据预处理和数据集生成3个步骤,具体数据集制作过程如图1所示。首先,试验组人员使用HUAWEI nova10手机在湖北省宜昌市宜都市枝城镇漫水桥村玉米地拍摄了3 752 张照片,涵盖北叶枯萎病(960张)、常见锈病(1 167张)、健康(1 137张)和弯孢霉叶斑病(488张)4种类型。然后,使用makesense在线标注工具进行标注[7],并导出为YOLO格式,为后续的数据分析和模型训练提供可靠基础。

为了提高图像数据的质量和可用性,本研究采用数据清洗方法进行预处理。由于拍摄的图像常包含重复和模糊的图像,本研究通过消除模糊图像和使用结构相似性(SSIM)方法去除重复图像[8],最终保留了400张清晰且独特的图像。在深度学习模型训练的过程中,通常会对图像进行缩放。为减小缩放对训练结果的影响,并保留病害特征的清晰信息[9],本研究对图像进行了裁剪,将图像按3∶3的纵横比裁剪成9部分,裁剪后的图像分辨率统一为901×506像素。

由于图像采集存在数量有限、颜色不平衡和样本分布不均等问题,本研究使用数据增强技术扩展数据集,以提高模型的泛化能力和鲁棒性。另外,本研究应用随机拉伸[10]、亮度调整和镜像操作等变换技术,增加数据集的多样性和规模。通过这些方法,最终生成了更大规模和多样性的图像数据集。

1.1.2 试验环境配置 本研究使用的操作系统是Windows 11,深度学习模型开发框架为PyTorch。试验设置的具体信息见表1。在训练阶段,本研究使用随机梯度下降(SGD)算法进行优化[11],初始学习率为0.01,动量因子为0.937,权重衰减因子为0.000 5。将输入图像归一化为640 × 640的大小,批量大小设置为8,并在300个时期内进行训练。

1.2 方法

1.2.1 模型结构和算法描述 为了解决玉米叶病害检测和分类的难题,本研究采用YOLOv8和Swin Transformer相结合的模型。该模型增强了特征融合能力,并引入了Focus[12]、Depthwise Convolution[13]、Spatial Pooling Pyramid[14]、C2[15]模块,复杂背景下的小目标检测效果良好。网络模型的整体结构见图2。

(1)YOLOv8 模型。YOLOv8是一种先进的目标检测算法,结合了YOLOv5的改进骨干网络与C2f模块,采用无锚模型和解耦头独立处理客观性、分类和回归任务,YOLOv8神经网络结构图如图3所示。该模型使用sigmoid函数获取客观性分数,使用softmax函数获取类别概率,使用CIoU和DFL损失函数计算边界框损失,使用binary交叉熵计算分类损失,从而提高了检测小目标的性能[16]。此外,YOLOv8提供了YOLOv8-Seg语义分割模型,在保持高速度和高效率的同时,实现了最先进的结果。

为解决微小物体不易检测的难题,研究人员提出了多尺度特征提取和注意力机制等改进方法[17]。多尺度特征提取通过引入不同尺度的特征图来处理不同大小物体的信息,注意力机制通过关注重要特征且抑制不必要特征来提高小物体的检测性能。

(2)Swin Transformer 模型。为了进一步改进YOLOv8并增强小目标检测性能,笔者引入Swin Transformer并增加特征融合,解决了上下文和语义信息不足的问题,Swin Transformer模型网络结构图如图4所示。Swin Transformer通过自注意力机制在特征图的不同区域建立全局依赖关系,有效捕获上下文信息,并引入窗口注意机制降低计算复杂性[18]。笔者还添加了Focus with Deep Convolution DWconv 模块,增强网络捕获上下文信息的能力,空间池化金字塔SPPCSPC和C2模块提高了多尺度物体的检测能力。结果表明,该网络在复杂背景的小目标检测任务中表现优异。

1.2.2 模块描述 表2展示了改进的模型的详细参数,包括层数、输入源、重复次数、参数数量、模块类型和参数。

(1)C3STR 模块。Swin Transformer模块通过自注意力机制建立特征图的全局依赖关系,增强小物体的语义信息和特征表示。该模块包含Window多头自注意力模块、滑动窗口多头自注意力模块和多层感知机构,使用残差连接进行内部连接。

(2)Focus、DWconv、SPPCSPC和C2模块。SPPCSPC模块:结合空间金字塔池化和通道空间金字塔卷积,高效捕获不同尺度的特征信息。

DWconv模块。支持对每个通道进行单独卷积,减少参数数量和计算量,增强模型表现力。

Focus模块。通过轻量级卷积运算,提高模型对重要特征区域的关注。

C2模块。提取高级语义特征,增强模型性能。

(3)Wiou 损失函数。为解决YOLOv8收敛性不足的问题,本研究提出结合Wise IOU的损失函数,优先考虑预测帧和实际帧的交集[19],提高模型的收敛和泛化能力。

1.2.3 模型评估指标 在深度学习领域,网络模型的有效性通过平均精度(mAP)和召回率(R)来评估。这些指标的计算涉及交并比(IoU)、精度(P)和平均精度(AP)。

(1) IoU。交并比(IoU)用于评估检测结果与实际标签的重叠程度,定义为交集面积与并集面积的比值。IoU 越高,检测结果越准确。公式如下:

IoU =(1)

式中,交集面积是指检测结果与实际标签重叠的区域面积;并集面积是指检测结果和实际标签的总面积(即两者的并集)。

(2)精度和召回率。精度(P)是指准确检测到的物体占检测到的物体总数的比例。召回率(R)是指正确检测到的物体占阳性样本总数的比例。公式如下:

P=(2)

R=(3)

式中,TP 为真阳性;FP 为假阳性;FN 为假阴性。

(3)AP 和 mAP。平均精度(AP)是各个召回点的平均精度,表示精确召回(P-R)曲线下的面积。平均平均精度(mAP)是所有类别的 AP 值的平均值。公式如下:

mAP=APi(4)

(4)FPS。每秒帧数(FPS)是计算机在处理图像时每秒可以处理的帧数,用于衡量算法的效率和速度。更高的 FPS 值意味着算法能够更快地处理图像并提供响应。

1.2.4 试验设计 为了验证每个模块的有效性,笔者设计了多组对比试验和消融试验。对比试验包括使用不同组合的模块进行训练和测试,观察其对模型性能的影响。消融试验则通过逐步移除或替换某些模块,评估其对整体性能的贡献。试验设置和数据处理流程如下:

(1)数据集划分。将数据集按 8∶2 的比例划分为训练集和测试集。

(2)数据预处理。对图像进行归一化、裁剪和数据增强处理。

(3)模型训练。使用上述配置进行模型训练,记录每个时期的损失值和评估指标。

(4)模型测试。在测试集上评估模型的性能,记录mAP、精度、召回率和FPS等指标。

(5)对比试验。使用不同组合的模块(如仅使用 YOLOv8、仅使用 Swin Transformer、结合YOLOv8和Swin Transformer等)进行训练和测试,比较各组合的性能差异。

(6)消融试验。逐步移除或替换某些模块(如移除Focus模块、替换DWconv模块等),评估其对整体性能的影响。

(7)结果分析。分析对比试验和消融试验结果,确定各模块对模型性能的贡献,并总结最佳组合方案。

2 结果与分析

2.1 不同模型的检测精度比较

为了评估所提出模型的有效性,笔者使用了玉米叶病害数据集进行了广泛的试验。评估包括对增强模型与各种成熟检测模型的全面分析和比较,特别强调精确度、召回率和mAP指标[20]。图5展示了这些模型的mAP@0.5曲线。研究结果显示,改进模型的mAP@0.5值比最先进的GOLD-YOLO模型高出3.02个百分点(表3)。该模型在所有目标检测指标上均表现出显著改进,优于以前的YOLO模型。具体而言,算法的准确率为91.5%,召回率为77.6%,F1得分为0.84分。IoU值为0.5时,mAP值为89.4%;IoU值为0.5∶0.95时,mAP值为71%。研究结果表明,该模型在检测精度方面取得了实质性提高。因此,该模型可以准确检测玉米叶病害物体,具有广阔的应用前景。值得注意的是,YOLOv8s的参数为11.2 M,而该模型为199 M。尽管精度提高,但模型变得更加复杂,计算量显著增加。

2.2 消融试验结果

2.2.1 WIoU的改进 本研究将YOLOv8的原始损失函数优化为WIoU,并进行了对比试验。结果如表4所示,模型的召回率提高了0.5个百分点,准确率提高了1.97个百分点。IoU值为0.5时,mAP值提高了2.3个百分点,F1分数提高了0.01个百分点。

2.2.2 主流注意力机制的有效性 笔者测试了其他主流注意力机制在小物体检测方面的有效性,结果如表5所示。由于注意力机制在模型中表现不佳,笔者仅分析了在YOLOv8中添加注意力机制对玉米叶病害检测的影响。总体而言,注意力机制对玉米叶病害目标检测的影响不显著。这种不显著的原因可能有以下几点:首先,玉米叶病害数据集中的目标可能较为复杂,并且背景干扰较多,导致注意力机制无法有效聚焦于关键特征。其次,引入注意力机制后,模型的复杂度和计算量显著增加,可能导致模型在训练和推理过程中出现过拟合或计算瓶颈。最后,YOLOv8本身已经具备较强的特征提取能力,引入的注意力机制未能显著提升特征提取效果,反而增加了冗余信息。综上所述,注意力机制对玉米叶病害的检测效果并不显著,需要进一步优化和调整。

2.2.3 各组件的有效性 为了评估模型中各组件的有效性,笔者对Focus、C2、DW(深度卷积)、Swin Transformer和SPPCSPC模块进行了消融试验,使用准确率、召回率、mAP@0.5、F1分数和 FPS等指标进行性能评估,结果如表6所示。加入Swin Transformer模块后,FPS从42.74略微下降到38.02,但mAP从88.8%提高到89.2%。用SPPCSPC替换SPPF模块后,准确率从92%略微下降到91.5%,但mAP提高0.2个百分点,FPS提高到60.98。

由图6可以看出,模型在mAP和准确率方面显著优于其他方法。尽管模型的复杂度和计算量有所增加,但检测精度显著提升。WIoU的改进进一步提高了模型的性能,而注意力机制对小物体的检测效果并不显著。消融试验表明,Swin Transformer和SPPCSPC模块对模型性能的提升具有重要作用。

3 讨论与结论

3.1 讨论

3.1.1 理论分析 (1)Swin Transformer 和 YOLOv8 结合的优势。将Swin Transformer与YOLOv8结合的主要优势在于二者在特征提取和目标检测方面的互补性。YOLOv8作为一种高效的目标检测算法,能够快速处理图像并检测出目标物体,但在处理小目标和复杂背景时可能存在不足。Swin Transformer通过自注意力机制和窗口注意机制,能够有效捕获全局上下文信息和细节特征,弥补了YOLOv8在小目标检测方面的不足。

(2)创新之处。本研究的创新之处在于将Swin Transformer与YOLOv8结合,提出了一种新的特征融合方法,增强了模型在复杂背景和小目标检测任务中的性能,该模型在玉米叶病害检测任务中表现出色,具有较高的检测精度和鲁棒性。具体创新点如下:

①通过自注意力机制和窗口注意机制,增强特征融合能力,捕获更多上下文信息。

②多模块结合。结合Focus、DWconv、SPPCSPC和C2模块,提高模型对不同尺度目标的检测能力。

③ 改进损失函数。提出结合Wise IOU的损失函数,提高模型的收敛和泛化能力。

3.1.2 结果分析 在玉米叶病害检测方面,研究人员需要解决几个问题。第一,由于玉米叶病害面积小,特征表示和提取困难。第二,密集的分布和遮挡使检测更加困难。第三,复杂的照明条件影响能见度。第四,玉米叶子之间的形态相似性增加了区分难度。

许多关于玉米叶病害检测的研究已将注意力机制纳入其模型中。然而,本试验发现,各种注意力机制并没有显著提高检测性能。原因可能有以下几点:首先,玉米叶病害数据集中的目标较为复杂,并且背景干扰较多,导致注意力机制无法有效聚焦于关键特征。其次,引入注意力机制后,模型的复杂度和计算量显著增加,导致模型在训练和推理过程中出现过拟合或计算瓶颈。最后,YOLOv8本身已经具备较强的特征提取能力,引入的注意力机制未能显著提升特征提取效果,反而增加了冗余信息。

与YOLOv8相比,Swin Transformer与YOLOv8结合的模型具有更好的检测准确性、召回率和mAP,但检测速度稍慢,这可能会限制部署。为了缓解这种情况,笔者通过将Swin Transformer与高效的Depthwise Convolution相结合来优化模型设计,以减少计算量,同时保留空间信息。笔者还引入SPPCSPC模块,以参数高效的方式增强多尺度特征融合,显著提高了检测速度。

近年来,有关小目标检测方面的研究取得了新进展。Zheng等[21]通过添加微预测头和注意力模块来检测作物芽。Hu等[22]探索了多模态融合在芽检测中的应用效果。

在实际部署方面,硬件的选择是关键。紧凑的嵌入式设备将实现无人机的机载检测,以实现自动监控。边缘服务器通过在传感设备附近设置计算来提供低延迟推理。该算法还可以集成到更大的农业智能系统中,结合环境数据进行精确管理。

综上所述,本研究在解决无约束自然环境中玉米叶病害微小目标检测方面取得了重要进展。笔者提出的模型提供了最先进的精度,同时认识到效率限制。另外,笔者通过架构增强、补充数据源和实际部署优化,确定了多个改进方向。本研究提出的方法和分析为实现农业自动化视觉系统提供了宝贵的见解。

3.2 结论

本研究解决了农业监测中微小玉米叶病害不易检测的难题。笔者提出的模型基于Transformer的注意力机制来增强特征表示,同时使用高效的卷积设计来保持合理的检测速度,从而提供最先进的精度。这表明该模型比以前的YOLO变体以及其他检测模型有了实质性的改进。

尽管该模型实现了高精度,但还可以进一步改进。在高度封闭的条件下,该模型检测玉米叶病害存在一定困难,并且将一些叶子错误地归类为玉米叶病害。额外的上下文和形状信息可能有助于克服这个问题。集成多模态数据源(如红外或深度图像)也可以增强稳健性。在优化方面,神经架构搜索等技术可以帮助找到更适合这项任务的设计。特定于部署的优化(如量化感知训练)可以减少计算需求。

未来的工作应侧重于进一步压缩模型设计,整合额外的形状和上下文信息,并探索补充数据源。在系统方面,针对嵌入式部署的优化可以帮助实现实用的无人机和边缘计算解决方案。本研究在微小物体检测方面取得了显著进展,所提出的方法、分析和方向为实现农业自动化视觉奠定了基础。

参考文献:

[1] 沈萍,李想,杨宁,等.基于三重注意力的轻量级YOLOv8印刷电路板缺陷检测算法[J].微电子学与计算机, 2024, 41(4):20-30.

[2] 赵继达,甄国涌,储成群.基于YOLOv8的无人机图像目标检测算法[J].计算机工程, 2024, 50(4):113-120.

[3] 姚景丽,程光,万飞,等.改进YOLOv8的轻量化轴承缺陷检测算法[J].计算机工程与应用, 2024.

[4] 崔克彬,焦静颐.基于MCB-FAH-YOLOv8的钢材表面缺陷检测算法[J].图学学报, 2024, 45(1):112-125.

[5] 倪富陶,李倩,聂云靖,等.基于改进YOLOv8的轻量化钢筋端面检测算法研究[J].太原理工大学学报, 2024(2).

[6] 石洋宇,左景,谢承杰,等.多尺度融合与FMB改进的YOLOv8异常行为检测方法[J].计算机工程与应用, 2024, 60(9):101-110.

[7] 胡海宁,黄雷阳,杨洪刚,等.改进Yolov8n的轻量型蜂窝陶瓷缺陷检测算法[J].激光与光电子学进展, 2024, 61(22).

[8] Ge Z, Liu S, Wang F, Li Z, Sun J. Yolox: Exceeding yolo series in 2021. arXiv preprint arXiv:210708430. 2021.

[9] Liu Z, Lin Y, Cao Y, Hu H, Wei Y, Zhang Z, et al. Swin transformer: Hierarchical vision transformer using shifted windows. In: Proceedings of the IEEE/CVF international conference on computer vision; 2021. p. 10012-10022.

[10] Woo S, Park J, Lee JY, Kweon IS. Cbam: Convolutional block attention module. In: Proceedings of the European conference on computer vision (ECCV); 2018. p. 3-19.

[11] Liu S, Qi L, Qin H, Shi J, Jia J. Path aggregation network for instance segmentation. In: Proceedings of the IEEE conference on computer vision and pattern recognition; 2018. p. 8759-8768.

[12] 王泽宇,徐慧英,朱信忠,等.基于YOLOv8改进的密集行人检测算法:MER-YOLO[J].计算机工程与科学, 2024, 46(6):1050-1062.

[13] 张姝瑾,许兴时,邓洪兴,等.基于YOLO v8n-seg-FCA-BiFPN的奶牛身体分割方法[J].农业机械学报, 2024, 55(3):282-289.

[14] 梁秀英,贾学镇,何磊,等.基于YOLO v8n-seg和改进Strongsort的多目标小鼠跟踪方法[J].农业机械学报, 2024, 55(2):295-305.

[15] 周涛,王骥,麦仁贵.基于改进YOLOv8的实时菠萝成熟度目标检测方法[J].华中农业大学学报, 2024(4).

[16] Roy AM, Bhaduri J. DenseSPH-YOLOv5: An automated damage detection model based on DenseNet and Swin-Transformer prediction head-enabled YOLOv5 with attention mechanism. Advanced Engineering Informatics. 2023; 56:102007.

[17] Roy AM, Bhaduri J, Kumar T, Raj K. WilDect-YOLO: An efficient and robust computer vision-based accurate object localization model for automated endangered wildlife detection. Ecological Informatics. 2023; 75:101919.

[18] Wu D, Jiang S, Zhao E, Liu Y, Zhu H, Wang W, et al. Detection of Camellia oleifera fruit in complex scenes by using YOLOv7 and data augmentation. Applied Sciences. 2022; 12(22):11318.

[19] Zhao Q, Yang L, Lyu N. A driver stress detection model via data augmentation based on deep convolutional recurrent neural network. Expert Systems with Applications. 2024; 238:122056.

[20] Li F, Zhang H, Xu H, Liu S, Zhang L, Ni LM, et al. Mask dino: Towards a unified transformer-based framework for object detection and segmentation. In: Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition; 2023. p. 3041-3050.

[21] Zheng Z, Hu Y, Qiao Y, Hu X, Huang Y. Real-time detection of winter jujubes based on improved YOLOX-nano network. Remote Sensing. 2022; 14(19):4833.

[22] Hu J, Shen L, Sun G. Squeeze-and-excitation networks. In: Proceedings of the IEEE conference on computer vision and pattern recognition; 2018. p. 7132-7141.