基于改进YOLOv4 的夏玉米主要害虫检测方法研究

2023-11-23 03:26段新涛王伸赵晴张杰郑国清李国强
山东农业科学 2023年10期
关键词:玉米螟害虫玉米

段新涛,王伸,2,赵晴,张杰,郑国清,李国强

(1. 河南师范大学计算机与信息工程学院,河南 新乡 453007;2. 河南省农业科学院农业经济与信息研究所/河南省智慧农业工程技术研究中心,河南 郑州 450002;3. 农业农村部黄淮海智慧农业技术重点实验室,河南 郑州 450002)

玉米是世界上种植最广泛和产量最高的粮食作物,也是我国重要的粮食、饲料和工业原料作物[1]。 国家统计局2021 年数据显示,我国玉米种植面积为4.33×107hm2,总产量为2.7×108t[2]。虫害一直是影响玉米生产的重要因素,虫害的暴发会使玉米产量大幅度降低,造成巨大的经济损失。 我国玉米害虫有200 多种,其中黏虫、棉铃虫、玉米螟和甜菜夜蛾是夏玉米常见害虫。 如果虫害监测防控不到位,一旦暴发成灾,将直接影响农业生产,危及国家粮食安全[3]。 因此,准确监测与诊断玉米常见虫害,并采取有效的防治措施,是保证玉米高产稳产的重要途径。

在常规的玉米虫害监测中,农技人员多采用人工现场调查,或利用虫情测报灯诱集[4]然后人工调查。 这种方式效率低,费用高,时效性差。 为提高效率,许多学者研制了基于智能设备的害虫虫情田间采集系统[5-7],记录虫情数据,实现了害虫虫情数据采集电子化,提高了害虫信息采集效率,同时减轻了农技人员的工作强度,避免数据输入错误。 随后,又有学者将机器视觉算法应用于害虫计数[8-9],实现害虫的自动统计,进一步提高了监测精度。 但是由于虫体重叠、杂质等背景干扰,这种方式往往会出现计数错误,无法满足野外应用场景监测需求。

近几年,随着人工智能技术的快速发展,部分学者将基于深度学习(deep learning)的目标检测算法应用于作物病虫害检测[10-12]。 相比于传统的害虫检测方法,基于深度学习的目标检测算法更加精确,具有很强的自适应性和鲁棒性。 YOLO(You Only Look Once)[13-17]是一种单阶段目标检测算法,具有检测速度快、实时性强等特点。 李静等[18]提出一种基于改进的GoogLeNet 卷积神经网络模型,用于识别玉米螟虫害。 牛学德等[19]提出一种轻量级CNN-MobileNetV3 模型,用于识别玉米、番茄、马铃薯3 类作物17 种叶部病害。 陈峰等[20]利用机器视觉和卷积神经网络,构建东北寒地玉米害虫识别方法,用于检测玉米螟、草地贪夜蛾、玉米黏虫、玉米双斑萤叶甲等害虫。 综上,YOLO 系列算法适用于田间害虫检测,具有高准确率、高检测速度等特点,但当检测对象较小且对象之间相互遮挡时,检测效果不理想。

为此,本研究首先改进诱捕装置,以提高诱捕效率;然后以YOLOv4 模型为基础,构建YOLOv4-Corn 模型。 该模型引入SENet 模块,增强模型对关键信息的筛选能力,以解决小目标特征信息提取不充分等问题;采用柔性非极大值抑制(Soft-NMS)算法,改善模型对目标密集区域的检测能力,以解决因堆叠导致的漏检率高等问题。 本研究将集成性诱捕装置与目标检测算法相结合,为夏玉米田间害虫监测预警提供技术支撑,提高作物害虫监测预警的信息化水平。

1 材料与方法

1.1 图像采集

于2021 年夏玉米生长季,在河南省农业科学院(原阳)试验示范基地开展图像采集。 在试验地安装玉米害虫诱集与拍摄装置,以采集黏虫、棉铃虫、玉米螟和甜菜夜蛾等夏玉米主要害虫。 害虫诱集与拍摄装置(图1)由太阳能供电组件、测报诱集单元、害虫清理单元、拍摄单元等组成。 这个装置是在前期硬件[21]基础上进行改进的,增加了害虫清理单元。 测报诱集单元选用黏虫、棉铃虫、玉米螟和甜菜夜蛾性诱芯(北京中捷四方生物科技股份有限公司生产)。 拍摄单元的摄像头选用1 200 万像素微型网络摄像头,图像分辨率为4 000 × 3 000 像素。 图像采集时,在测报诱集单元放置4 种诱芯,以诱集目标害虫。 每48 h 采集一次害虫图像。 图像采集后,害虫清理单元自动清理害虫虫体。 整个夏玉米生长季,共采集有效图像1 500 张,从中筛选出清晰度高的照片447张。

图1 玉米害虫诱集与拍摄装置示意图

1.2 数据集构建

使用图像标注工具LabelImg 标注采集到的玉米害虫图像,生成VOC 数据集。 图像标注时,将黏虫、棉铃虫、玉米螟、甜菜夜蛾分别标注为1、2、3、4;为尽可能避免背景的干扰,以害虫虫体的最小外接矩形作为标注框,尽量减少标注框内的无用像素。 图像标注后,采用mosaic(马赛克)数据增强方法,将数据集扩充至5 047 张,然后将增强后的数据集按照9 ∶1的比例随机划分为(训练集+验证集)和测试集,(训练集+验证集)中训练集和验证集的划分比例仍为9∶1。

1.3 玉米主要害虫检测模型设计

YOLOv4 算法[22]是一种单阶段目标检测算法,是在YOLOv3 目标检测架构的基础上添加最优秀的优化策略。 YOLOv4 网络结构由主干网络(Backbone)、颈部网络(Neck)和检测头(Head)3部分组成。 主干网络为CSPDarkNet53。 颈部网络也称加强特征提取网络,由CBL 组件、SPP 模块和FPN+PAN 组成。 检测头为YOLOv3。

玉米害虫图像(416×416)进入CSPDkNet53主干网络进行5 次下采样,不断提取目标的特征信息,从浅层P1 层到达深层P5 层,分别获得5个不同尺度的特征层(208×208,104×104,52×52,26×26,13×13)。 在输出最后一个特征层后,加入SPP 空间金字塔池化层,分别利用13×13、9×9、5×5、1×1(无处理)四个不同尺度的最大池化进行处理。 经过SPP 模块处理后,分离出更显著的图像特征。

由于YOLOv4 对大中型显著性目标有较好的检测效果,但对分辨率低、体积小的小目标很难检测到。 为此,本研究从两方面改进YOLOv4 模型,提出了YOLOv4-Corn 模型。 改进后的模型网络结构见图2。

图2 改进后的YOLOv4-Corn 网络结构

1.3.1 引入通道注意力机制SENet 模块YOLOv4 算法提取图像特征时,对于图像各个通道以相同的权重进行信息提取,导致对不明显特征的检测精度较低,可能造成小目标特征丢失。而SENet 采用重新标定的方法,通过获取输入特征层的每一个通道的权值,根据权值大小对通道信息进行筛选,以增强网络对有用信息的提取,解决小目标特征信息提取不充分等问题。 引入SENet 模块,可给害虫虫体分配更大的权重,使YOLOv4 网络更多的注意力用于图片中玉米害虫虫体特征信息的提取。

SENet 工作过程分为3 部分:①SENet 先对输入特征图进行全局平均池化,使单个通道的特征层被池化成一个具体的数据,得到大小为C×1×1的特征图(C 为特征图通道数),获得全局特征;②通过赋值操作,赋予两层全连接层各自一个权重值,来构建不同通道互相之间的依赖性;③通过sigmoid 函数激活归一化权重,获得大小为C×1×1的权重值,在对应位置与原输入特征图相乘,促使权重值加权到原先特征图上,使得模型对关键信息有更强的提取能力。

本研究在YOLOv4 模型主干网络输出的3 个特征层(52×52×256、26×26×512、13×13×1 024)和第一次上采样后的特征层(13×13×1 024)后,分别增加SENet 模块。 以YOLOv4 主干网络输出的第一个特征层(52×52×256)为例,将其作为SENet 的输入,首先对输入的52×52×256 特征图进行平均池化得到1×1×256 的特征图,将特征图的宽和高压缩成一维,这个一维参数可以获得52×52 的全局视野,感受区域更广。 压缩成1×1×256 后,经过2 个全连接层来减少参数量,最后经sigmoid 激活函数得到1×1×256 的权重值,再与初始的52×52×256 特征层进行矩阵相乘,得到每个通道都带有权重值的特征层。 至此,在YOLOv4模型中引入SENet 模块,工作完成。

1.3.2 柔性非极大值抑制(Soft-NMS)算法 采用非极大值抑制(non maximum suppression,NMS)去除重复框,是YOLOv4 算法必备的后处理步骤,可降低误检。 NMS 原理是将检测框按得分排序,然后保留得分最高的框,同时删除与该框重叠面积大于一定比例的其他框。 从田间采集到的玉米害虫图像,常出现虫体堆叠等情况,在采用NMS算法去除重复框时,由于检测目标紧密靠近且相互遮挡,检测结果中会出现多个不同置信度的检测框,如果按照原来的方法进行处理,首先选中置信度最高的预测框,那么其余检测框在后续的交并比较中,将由于与置信度最高的预测框重叠面积过大而被删除,造成漏检率增大。

柔性非极大值抑制(Soft-NMS)算法[23]则是将某一类别的预测框按置信度排序,把最高分值的框设定为基准框,然后将剩余的框分别与其做交并比(Intersection over Union,IoU)计算,删除大于设定阈值的,保留小于阈值的,并依次循环,从而消除冗余重复的预测框,找到物体最佳位置。

本研究即采用Soft-NMS 算法,首先按照置信度排序,选择得分最高的检测框为基准,然后使用惩罚函数对其余检测框进行处理和重新排序,再次计算置信度得分,保留置信度最高的检测框,依此类推,最终实现虫体目标的很好筛选,有效解决了由于玉米害虫重叠面积过大而导致被检测网络误删从而造成漏检的问题。

1.4 评价指标

本研究利用精确率(precision,P)、召回率(recall,R)、F1 值、平均精度(AP)来评估模型的综合性能,见公式(1)~(3)。 检测精度各指标的优先级由高到低为AP、F1 值、P、R。

式中,TP(true positives)代表被正确检出的目标害虫;TN(true negatives)代表被正确检出的非目标害虫;FP(false positives)代表被误检的目标害虫;FN(false negatives)代表被漏检的目标害虫。其中,F1 值是精确率与召回率的调和平均数,可以兼顾到精确度和召回率;AP 表示模型在各个召回率下的精确率平均值。

2 结果与分析

2.1 实验平台和参数设置

所有模型在CPU 为intel(R) Core(TM) i7-9700 CPU @ 3.0 GHz、GPU 为NVIDIA GeForce RTX 2070、显存为16 GB 的台式计算机上训练和测试。 操作系统为Ubuntu 18.04,CUDA 库版本为10.2,深度学习框架为Python 3.6、Pytorch 1.4.0。

训练参数设置:将训练设置为冻结和解冻两个阶段,冻结阶段模型主干被冻结,特征提取网络不发生改变,仅对网络进行微调,共设置50 个迭代周期(epoch),样本批量大小(batchsize)设置为8,学习率(learning rate)设置为0.001;解冻阶段模型主干网络不被冻结,网络所有参数都会发生改变,共设置50 个迭代周期,样本批量大小设置为4,学习率设置为0.0001。

2.2 消融试验结果分析

为验证改进部分对虫害检测模型的影响,采用消融试验方法验证各改进策略的有效性,结果见表1。 其中,模型1 为原YOLOv4 网络,模型2为引入SENet 模块的YOLOv4 网络,模型3 为引入Soft-NMS 算法的YOLOv4 网络,模型4 为YOLOv4-Corn 网络。 从结果可知,本研究所采用的改进措施均能明显提高YOLOv4 模型对4 种害虫的检测性能。 相较于模型1,模型2 的平均精度提高1.47 ~4.99 个百分点,F1 值提高0.01 ~0.04,召回率提高0.74 ~3.75 个百分点,准确率提高0.94~3.74 个百分点;模型3 的平均精度提高1.11~5.68 个百分点,F1 值提高0~0.02,召回率提高0.24~2.59 个百分点,准确率提高0.01 ~3.00个百分点;模型4 的平均精度提高1.83~7.00 个百分点,F1 值提高0.01~0.04,召回率提高0.93 ~3.44 个百分点,准确率提高0.88~4.45个百分点。

表1 消融试验结果

2.3 不同模型性能比较

为验证改进后模型的检测性能,在相同软硬件环境下比较本研究构建的YOLOv4-Corn 模型与Faster R-CNN、YOLOv3、YOLOv4 对4 种玉米害虫的检测效果。 由表2 可见,与Faster R-CNN、YOLOv3 和YOLOv4 模型相比,YOLOv4-Corn 对4种害虫的检测性能均较高,其中F1 值分别提高0.21~0.37、0.01~0.02 和0.01 ~0.03,召回率分别提高18.03~30.3、1.15~3.67个百分点和0.93~3.44个百分点,准确率分别提高22.31 ~43.29、0.96~5.55个百分点和0.88 ~4.45 个百分点,平均精度分别提高21.42 ~45.07、1.85 ~5.69 个百分点和1.83~7.00 个百分点。

表2 四种网络模型性能指标比较

从YOLOv4-Corn 对4 种害虫的检测性能来看,YOLOv4-Corn 对甜菜夜蛾的检测性能最优,F1 值和平均精度分别为0.99 和99.07%;其次为棉铃虫,F1 值和平均精度分别为0.97 和96.59%;对玉米螟的检测性能最差,F1 值和平均精度分别为0.93 和93.34%。

2.4 检测效果分析

为直观展示模型检测性能,分别用YOLOv4与YOLOv4-Corn 对同一诱集图像进行检测,结果如图3 所示。 经目视解译、人工计数,该检测图像中有36 头黏虫、7 头棉铃虫、14 头玉米螟和4 头甜菜夜蛾;利用YOLOv4 模型能检测出4 种害虫,除漏检1 头黏虫外,其余均准确检出;利用YOLOv4-Corn 模型则完全准确地检测出4 种害虫,没有出现漏检、误检的情况。 可见,针对玉米害虫较稀疏的图像,YOLOv4-Corn 和YOLOv4 均能表现出良好的检测性能,但针对玉米害虫较密集的图像,YOLOv4-Corn 的检测性能更优。 表明改进模型对检测目标的识别能力有一定加强作用,检测效果更好,检测能力更强,能够满足实际应用场景下玉米害虫的检测精度要求。

图3 不同模型的玉米害虫检测效果

3 讨论与结论

准确监测害虫虫情动态,提前采取绿色防治措施,既有利于合理使用农药,减少环境污染,又可以保证作物产量。 本研究基于性诱测报原理,针对玉米主要害虫特性,设计了玉米害虫诱集与拍摄装置, 并提出一种适合小目标检测的YOLOv4 - Corn 模型。 YOLOv4 - Corn 模型在YOLOv4 模型的基础上做了两方面的改进:①引入SENet 模块。 通过学习每个特征通道的权重,依据权重增强有用特征的表达,提升模型对关键信息的筛选能力,解决了小目标害虫难以被检测的问题;②引入Soft-NMS 算法。 通过在非极大值抑制过程中加入惩罚函数,改善模型对目标密集区域的检测能力,解决了玉米害虫堆叠导致的漏检问题。 并通过消融试验验证了改进策略的有效性。 表明该模型适用于黄淮海夏玉米种植区黏虫、棉铃虫、玉米螟、甜菜夜蛾的检测。 这与李静[18]、陈峰[20]等的研究结果基本一致。

与Faster R-CNN、YOLOv3、YOLOv4 模型相比,YOLOv4-Corn 模型对4 种玉米害虫都有较好的检测效果,其中,对黏虫的检测平均精度为95.89%,F1 值为0.95;对棉铃虫的检测平均精度为96.59%,F1 值为0.97;对玉米螟的平均检测精度为93.34%,F1 值为0.93;对甜菜夜蛾的平均检测精度为99.07%,F1 值为0.99。 表明YOLOv4-Corn 模型可以满足田间玉米害虫检测任务的需求,能很好地解决害虫目标过小以及相互遮挡问题,从而高效、准确地检测出目标害虫,为夏玉米田间害虫监测预警提供技术支撑。

本研究构建的YOLOv4-Corn 模型仅适用于黏虫、棉铃虫、玉米螟、甜菜夜蛾4 种玉米害虫,对于其他玉米害虫的检测能力还有待进一步试验验证。 今后将进一步优化YOLOv4-Corn 模型的网络结构,以满足更多种玉米害虫的检测任务。

猜你喜欢
玉米螟害虫玉米
收玉米啦!
二代玉米螟防治方法
蜗牛一觉能睡多久?
冬季果树常见蛀干害虫的防治
二代玉米螟发生趋势预报
我的玉米送给你
枣树害虫的无公害防治
农业害虫的冬季防治
临河地区玉米螟的发生与综合防治措施
浅谈赤眼蜂防治玉米螟的意义及发展前景