基于改进YOLOv4的水稻病害快速检测方法

2023-05-08 06:10严陈慧子田芳明王思琪石景秀
江苏农业科学 2023年6期
关键词:主干病斑卷积

严陈慧子, 田芳明,2, 谭 峰, 王思琪, 石景秀

(1.黑龙江八一农垦大学信息与电气工程学院,黑龙江大庆 163319;2.农业农村部农产品及加工品质量监督检验测试中心,黑龙江大庆 163316)

水稻是我国主要的粮食作物和经济作物,水稻的病虫害胁迫并制约着水稻产业的健康可持续发展[1]。据全国农业技术推广服务中心预测,2022年我国水稻病虫害呈重发流行风险趋势,累计发生面积达6 867万hm2,比2021年增加了13.6%[2]。在病虫害监测和防控过程中,准确、高效地识别病虫害是有效解决农作物病虫害问题的重要前提。当前对水稻病虫害的诊断主要依靠人工鉴别,其主观性强、效率低下,难以满足粮食生产防控的需求[3]。因此,亟需一种快速、准确的水稻病害智能识别方法。

基于人工智能技术的图像识别一直以来都是备受关注的研究热点[4]。近年来,随着深度学习研究在计算机视觉领域的深入,基于卷积神经网络的目标检测算法在目标识别、实时定位上的表现日益优异,并且被广泛应用于遥感图像处理[5-6]、桥梁破坏评估[7]、医学诊断[8-9]、果实采摘[10]、杂草识别[11-12]等诸多领域,然而目前有关自然环境下农作物病害目标检测的研究较少。

目标检测算法主要分为2种:一种是基于区域建议框预测的两阶段算法,首先生成候选框,再进行特征提取与分类,其代表有Fast R-CNN、Faster R-CNN等。李就好等以ResNet-50作为Faster R-CNN 的特征提取网络,融入了特征金字塔结构,实现了自然环境下苦瓜病害的定位与识别[13]。徐信罗等修改原始区域生成网络中的锚框(anchor)尺寸,发现改进后的方法对松材线虫病受害木冠幅的识别精度提高了6.78百分点[14]。王云露等改进了Faster R-CNN的网络结构,解决了苹果叶片病斑尺度小等难以定位、识别的问题[15]。另一种是基于回归问题的单阶段算法,即直接回归目标边界矩形框位置和类别的端到端算法,其代表有SDD、RetinaNet和YOLO系列。李善军等采用ResNet-18作为SSD算法的主干网络,最终对柑橘的检测精确率达到了87.89%,检测时间也较原先的方法得到缩短[16]。佘颢等提出基于改进的SDD模型的水稻害虫识别方法,提高了模型识别率、检测速度[17]。闫建伟等改进RetinaNet模型框架的损失函数,运用 K-means++算法找出合适的anchor,实现了刺梨果实的快速识别[18]。郭阳等以5种常见水稻虫害为研究对象,通过试验对比发现,YOLOv3算法比较适用于田间水稻虫害的识别[19]。总体来看,两阶段算法的相对精度更高,但耗时长,单阶段算法的识别精度较低,但检测速度较快。

由于目前有关大田环境下农作物病害目标检测的研究较少,而且存在检测速度慢、精度低等问题,本研究提出了一种基于改进的YOLOv4的水稻叶部病害检测方法,使用MobileNet V3替换主干网络CSPDarkNet-53,并引入坐标注意力机制以增加目标检测模型对水稻病斑的注意力,减少对背景的关注,改进后的模型在识别准确率、检测速度方面都有所提高,能够实现大田环境中水稻病害的识别,对水稻安全生产具有重要意义。

1 基于改进YOLOv4的水稻叶片病害检测方法

1.1 YOLOv4的基本模型

如图1所示,YOLOv4基本模型包括3个部分,第1个是主干特征提取网络,选用CSPDarknet-53网络初步提取其中间层、中下层和底层特征层,分别对应(52,52,256)、(26,26,512)和(13,13,1 024),将这3个特征层作为第2部分网络结构的输入。第2个是颈部网络,用于加强特征提取,使用融合空间金字塔池化层(spatial pyramid pooling,SPP)的路径聚合网络(path aggregation network,PANet),在SPP模块里,对于第1部分底层输出的特征层进行3次标准卷积操作后,分别用5×5、9×9、13×13、无处理4个不同大小的卷积核进行最大池化处理,有效地拓宽了感受野,没有加深网络深度从而让训练速度减慢;在PANet模块里,对于主干网络中间层、中下层输出的特征层,在完成特征金字塔从下到上的特征提取后,接着从上到下提取特征,在整个过程中有效融合了低层信息、高层语义信息,避免了浅层细节特征的丢失。第3个是头部网络,利用YOLO Head对第2部分输出的3个有效特征层进行结果预测,分别检测小、中、大3种目标,每个目标对应3个锚框,利用锚框偏移预测目标位置,同时输出目标的类别概率。

1.2 MobileNet V3的基本结构

MobileNet V3模型有效结合了MobileNet V1、MobileNet V2这2个模型的优势,进一步提高了模型的精度,是效率更高的轻量型卷积神经网络。MobileNet V2采用线性瓶颈结构结合反向残差结构,利用逐点卷积将低维空间映射到高维空间,在高维特征空间后接线性激活函数(rectified linear unit,ReLU),由此避免激活层ReLU丢失低维度特征信息。由于ReLU在低维空间内的工作效率低,不利于特征的提取,易丢失特征信息,因此在逐点卷积结束后使用线性激活层来代替ReLU函数,以此保证提取到的特征信息更加充足。

基于MobileNet V2的网络结构,MobileNet V3在瓶颈结构中引入了SE注意力模块来突出有用特征。采用h-swish激活函数,大大降低了计算量。网络的最后1层去掉了1×1的卷积层,将平均池化层向前移动。MobileNet V3主体部分由11个瓶颈结构组成,前3个结构中采用卷积核数为3的深度卷积,后面8个采用卷积核数为5的深度卷积,瓶颈结构中的其他设置均相同。

1.3 坐标注意力

注意力机制是机器学习领域中一种特殊的信息选择网络结构,其本质是通过自主学习,将有限的计算资源分配给图像中信息量占比最大的区域,突出重点区域的信息,减少不相干背景的干扰,其有效性已在许多图像识别研究中得到了充分验证[20]。然而,对于复杂环境下的目标检测任务,由于存在大量无关的背景信息,引入注意力机制能达到事半功倍的目的。

在视觉空间中,坐标位置信息往往很少被关注到。坐标注意力模块(CAM)的本质是在捕获通道信息的同时,也关注位置信息的远程依赖关系。为了避免平均池化操作造成位置信息的丢失,对于输入特征图分别沿着水平、垂直2个空间方向通过平均池化层聚合特征,池化后的特征图经过一系列维度移位、维度拼接等编码操作得到2组方向感知和位置敏感的注意映射,将这2组注意映射加权融合后可得到高质量特征图。坐标注意力流程如图2所示。

1.4 改进的YOLOv4模型

在实际应用中,不仅要考虑模型的准确率,还要解决检测时间长的问题。由于主干网络是网络模型提取目标特征的关键结构,原始YOLOv4的主干网络结构较为复杂,总参数量相对较大,因此,考虑用一种性能优异且结构相对精简小巧的网络替换原始网络,与其他轻量级网络相比,MobileNet V3模型特征提取能力强、参数极少、计算量小,能够有效地提高模型的运行速度,在目标分类任务中表现良好,因此使用MobileNet V3作为主干网络可以提高模型的检测速度。此外,由于本研究使用的水稻数据集背景复杂,病斑的形状不规则,因此在颈部网络的8个位置加入CAM模块,这样可以在注意力的分布上提高模型性能,而且CAM属于轻量级模块,没有带来过多的运算成本。模型的整体结构如图3所示。

2 结果与分析

2.1 数据集的获取与预处理

本研究对象为稻瘟病、胡麻斑病和白叶枯病,其病害特征如表1所示。使用的水稻病害图像数据大部分来源于科学数据银行,少数用网络上获取的图像作为补充,共获取水稻病害图像770张,图4为部分数据集。为了增强模型的泛化能力、减少过拟合,对原始数据集进行调节光照度、随机旋转、增加高斯噪声和图像拼接等预处理操作,将原始图像扩充至3 000张作为最终的水稻病害数据集。使用LabelImg图像工具标注病害图像的病斑位置和类别,生成XML类型的标注文件。在最终生成的水稻病害数据集里随机选取300张作为测试集,剩下的2 700张按照9∶1的比例划分为训练集、验证集,其中训练集有2 430张。

表1 水稻的病害特征

2.2 试验平台与超参数设置

本试验平台的配置如表2所示。为了加快模型的收敛速度,主干网络部分采用迁移学习的训练方法,使用基于ImageNet数据集预训练的权重文件。在试验过程中,输入之前将图像尺寸调整为416×416,保证输入图像的统一性,采用自适应矩估计(adaptive moment estimation,Adam)优化器, 优化器的权重衰减因子设置为0,开启马赛克数据增强和余弦退火衰减算法。在本研究的整个训练过程中有300个训练轮次(epoch),前50个epoch冻结主干网络进行训练,学习速率为1×10-3,批次大小(batch_size)为8,每个epoch迭代次数为303次,后250个epoch解冻参数训练,batch_size为4,每个epoch的迭代次数为607次,整个训练中的总迭代次数是182 650次。

表2 试验平台配置

本试验选用平均精度均值(mAP)、检测速度(FPS)作为目标检测模型的评价指标。mAP综合考虑了精确度和召回率的评分,用来评价多目标分类准确率;FPS是指每秒钟检测图像的帧数,其值越大,表明模型的检测速度越快。

2.3 对比试验的结果分析

2.3.1 算法优化对比试验分析 为了缩短检测时间,达到实时性的目的,本研究拟采用轻量级网络替换原始YOLOv4模型的主干网络CSPDarkNet-53。首先选取MobileNet V1、MobileNet V2和MobileNet V3等3种轻量级网络进行对比试验,试验结果见表3。可以看出,将主干网络替换成轻量级网络后,检测时间大大缩减,并且MobileNet V3作为主干网络的计算量(FLOPs)不到原始YOLOv4模型的1/2,mAP也小幅度增加了0.07%,FPS增加了17.8帧/s,相较于其他网络,MobileNet V3在识别准确率上有明显优势,因此选用MobileNet V3作为主干网络。对MobileNet V3-YOLOv4模型进行优化,将CAM注意力机制嵌入MobileNet V3-YOLOv4模型中,算法优化后的最终表现表4。将改进后的算法与MobileNet V3-YOLOv4算法进行对比发现,即使增加了注意力机制,改进后算法的检测速度(FPS)与MobileNet V3-YOLOv4算法相差不大,平均每张图像的检测时间只增加了0.1 ms,然而改进后算法的平均精度均值(mAP)提高了1.25%。将改进后算法与原始YOLOv4算法对比发现,改进后算法的速度提升了17.72帧/s,mAP也增加了1.32%。由此可见,在优化了模型的主干网络、引入CAM之后,网络的识别精度、检测速度得到了明显提升。

表3 YOLOv4网络轻量化结果对比

表4 算法优化结果对比

基于300张水稻病害图像作为测试集进行评估,图5给出了每类目标的平均精度(AP)和平均精度均值(mAP),可以看出,本研究算法较MobileNet V3-YOLOv4算法提高了总类别平均检测精度。随后引入误检率进一步验证改进模型的性能,将本研究算法与MobileNet V3-YOLOv4算法进行误检率的对比,结果(图6)表明,本研究算法有效减少了大多数目标类别的误检率,使MobileNet V3-YOLOv4网络结构得到了显著优化。

为了检验改进后模型的泛化能力,从300张测试集中选出4类具有代表性的图像,这些图像的拍摄角度不同、病斑大小和数量不一,分别为低光照度、单种类小目标、单种类多目标和多种类多目标图像。从图7-a可以看出,本研究模型能够全部检测出弱光线情况下的稻瘟病病斑。由图7-b可以看出,本研究模型比YOLOv4更能捕捉到小病斑,且边界矩形框位置较为准确。如图7-c所示,对于包含不同角度、不同大小的多目标图像,大部分稻瘟病病斑都能被本研究模型检测出来,包括远处模糊的、被遮挡的小病斑,但边界矩形框位置有偏差。图7-d包含了多种水稻病斑,其中YOLOv4模型、本研究模型没有出现误检的情况,但仍有少量尺寸小的胡麻斑病斑没有被检测出来。经过上述分析发现,本研究提出的水稻病害识别模型相较于原始YOLOv4模型更能准确地检测出病斑的类别与位置。

2.3.2 不同模型的水稻病害检测结果分析 基于相同的水稻病害数据集,对本研究模型与其他3种目标检测模型进行试验对比。由表5可知,本研究模型虽然在FLOPs和检测速度上小于YOLOv5模型,但在识别准确率上比YOLOv5模型高1.15百分点,并且在识别精度、检测速度上明显优于RetinaNet模型、CenterNet模型,同时兼顾了识别精度和检测速度。

表5 不同模型的水稻病害检测结果

3 结论

农业智能化对农作物病害的检测精度、实时性提出了新要求。为了解决水稻病害图像中复杂田间环境背景造成的识别准确率低和检测速度慢的问题,对原有的YOLOv4算法进行改进,提升其对病斑的识别能力和效率。在使用特征提取能力强的MobileNet V3作为主干网络的同时,引入轻量型注意力模块CAM,精简了模型的网络结构,减少了模型网络权重和计算量。试验结果表明,与未改进的模型相比,改进后模型的mAP提升了1.32百分点,表明改进的措施有效;识别单张图像所用的平均时间为18.7 ms,表明具有一定的实时性。

综上,本研究方法满足了检测精度高、检测速度快的需求,贴近实际生活中关于水稻安全生产的需要,为后期部署到嵌入式设备奠定了基础。此外,本研究模型在定位被遮挡的病斑时,病斑的边界矩形框有偏差,因而在精准定位方面还有很大进步空间,有待进一步探究。

猜你喜欢
主干病斑卷积
全球首条1.2T超高速下一代互联网主干通路
抓主干,简化简单句
基于3D-Winograd的快速卷积算法设计及FPGA实现
从滤波器理解卷积
改进自适应分水岭方法分割棉花叶部粘连病斑
一种桑轮纹病病叶发病程度的评价指数
9种药剂防治山核桃干腐病试验研究
基于傅里叶域卷积表示的目标跟踪算法
整合内容 构建高效课堂——开展非线性主干循环活动型单元教学模式
全国主干公路网交通安全监控信息共享平台构建研究