基于改进FCOS的水稻叶片病害检测模型

2024-12-31 00:00:00丁士宁姜明富
江苏农业科学 2024年12期

摘要:针对传统水稻病害识别方法主要依赖人工,效率低下且存在人工主观误差的问题,提出一种基于改进FCOS模型的水稻叶片病害检测模型。首先收集950张3种不同病害的水稻叶片图像,构建Pascal Voc格式的水稻叶片病害数据集。为增强模型的泛化能力,对划分为训练集的图像进行数据增强,训练集图像由760张扩增到6 080张。然后构建检测模型,改进FCOS模型在原模型的基础上,在特征融合网络引入CBAM注意力模块;损失函数中,回归损失函数采用CIoU损失函数,分类损失函数和中心度损失函数与原FCOS模型保持一致。改进的FCOS模型在水稻叶片病害数据上的平均精度均值达77.7%,相比原FCOS模型提升了2.3百分点,改进的模型在不明显提升检测时间的情况下,提升了模型的精度。通过试验与模型YOLOF、Faster R-CNN、VarifocalNet、NAS-FCOS、TOOD进行对比,结果表明本研究模型取得了最高的检测精度,且在检测精度和检测速度上取得了最高的权衡。结果表明,本研究提出的模型能够比较精准地识别水稻白叶枯病、胡麻叶斑病和叶瘟病,可以为水稻叶片病害的检测提供参考。

关键词:改进FCOS模型;水稻叶片病害图像;Pascal Voc格式;CBAM注意力模块;CIOU损失函数

中图分类号:S126;TP391.41 文献标志码:A

文章编号:1002-1302(2024)12-0232-07

水稻作为我国重要的粮食作物之一,有着悠久的种植历史。我国水稻的种植面积和产量均居世界前列[1]。然而水稻在各个生长周期易受到各种病虫侵害,从而严重损害水稻的产量和品质。因此,及时准确识别水稻病虫害并根据识别结果采取对应的防治措施,对于保证水稻的健康生长是十分重要且必要的。

传统的植物病害识别方法主要依赖于人工进行,该方法效率低且依赖于人的主观意识[2]。伴随着深度学习技术的发展,以Faster R-CNN为代表的双阶段检测模型、以YOLO系列为代表的一阶段检测模型已应用到植物图像检测领域[3-5]。朱红春等使用Faster R-CNN对茶叶嫩芽进行检测,与传统的茶叶嫩芽识别算法的对比试验表明,该模型在检测精度和速度上具备优势[6]。王云露等对Faster R-CNN进行改进,其使用ResNest网络作为骨干特征提取网络,特征融合网络使用特征金字塔网络(FPN),并采用级联机制优化样本选择机制,改进后模型的平均精度均值(mean average precision,简称mAP)达到86.2%,比改进前提升了8.7%,验证了模型在苹果叶片小目标病斑和复杂背景下病斑的检测有效性[7]。涂淑琴等将Faster R-CNN应用于百香果检测,并实现了无遮挡、遮挡、重叠和背景4种情形下的自动检测[8]。董浪等使用Faster R-CNN 识别梨树花芽,其采用ResNet 101作为骨干特征提取网络,并在模型中融入了特征金字塔网络,模型的平均精度均值达到91.27%,每幅图像的检测时间为0.395 s,说明模型在自然光照环境下梨树花芽检测具有有效性和实时性[9]。魏冉等将特征金字塔网络和注意力机制SKNet引入Faster R-CNN,改进后的模型对樱桃的平均精度均值达98.24%[10]。徐会杰等在YOLO v3模型的基础上提出了YOLO v3-Corn模型,新模型在玉米叶片病虫害数据上的平均精度均值达到了93.31%,比YOLO v3模型提高了4.03%[11]。王根等从损失函数、骨干特征提取网络、anchor生成等多个方面对YOLO v3模型提出了改进,并将改进后的模型应用于茶草位置检测,对茶树和杂草的检测精确率分别达到82.56%、85.34%[12]。沈志豪等在 YOLOX-s 模型的基础上,重新设计了特征提取网络的深度,引入了注意力机制和SPPF模块,改进后的模型用于田间麦穗检测及计数,在实拍的麦田图像中,改进模型的计数准确率达到97.93%[13]。杨堃等提出基于视觉加强注意力改进的YOLO v5-VE模型,在制作的植物病虫数据集上的检测平均准确率达到73.49%[14]。骆润玫等提出YOLO v5-C,并将该模型应用到复杂背景下的广佛手病虫害识别上,平均精度均值达到了93.06%,比基础网络YOLO v5s提高2.45%[15]。

FCOS(fully convolutional one-stage object detectio)模型作为经典的Anchor-free模型,在植物图像识别检测、行人检测等各个领域均有所应用[16]。龙燕等在原FCOS基础上,从骨干网络、损失函数等方面进行改进,改进模型应用于自然环境下苹果果实检测,其平均精度均值达到96.3%[17]。黄河清等提出了基于模型剪枝的多维度特征Slim-FOCS算法,对柑橘检测平均精度均值达到96.01%[18]。刘丹等使用FCOS算法进行行人检测,其使用轻量化网络MobileNet v2替换ResNet 50网络,并增加C2层进行特征融合,提高了检测精度和速度[19]。刘竞升等在FCOS模型的基础上,通过增加特征增强网络构建了二阶段无锚框检测算法,通过在舰船数据集与其他主流舰船检测算法对比,验证了所提模型的有效性[20]。

本研究首先收集白叶枯病(rice bacterial leaf blight)、胡麻叶斑病(rice brown spot)、叶瘟病(rice leaf blast)等水稻叶片病害图像构建数据集,然后再在FCOS模型的基础上,为了更充分地提取特征,在特征融合网络中引入CBAM(convolutional block attention module)注意力机制[21]。而对于模型损失函数,分类损失函数与原FCOS网络一致,采用Focal Loss损失函数,而回归损失函数则采用CIOU(Complete-IoU)损失函数,从而实现水稻叶片病害的精准检测[22-23]。

1 构建水稻叶片病害检测模型

1.1 构建FCOS检测模型

Faster R-CNN、RetinaNet等属于基于锚框(anchor-based)检测模型,其需要单独为每个数据集设置Anchor,而且通常Anchor的设置会极大地影响模型的结果,这明显限制了Anchor-based模型的应用。本研究使用的FCOS模型作为无锚框(Anchor-free)检测模型,不需要为每个数据集单独适配Anchor。

FCOS模型的整体结构框图如图1所示。模型主要包括骨干特征提取网络Backbone、特征融合网络Neck、头部检测网络Head等3个部分。骨干特征提取网络特取水稻叶片图像的特征,这里采用的是ResNet50模型,ResNet网络解决了卷积神经网络面临的网络退化问题,其主要结构是残差块[24]。Neck连接特征提取网络和Head,对从特征提取网络输入的单尺度或多尺度特征进行分治和融合,这里采用特征金字塔网络(feature pyramid networks,简称FPN)[25],并在其中引入了CBAM注意力机制。Head包括分类分支、回归分支、中心度(Center-ness)分支,分类和回归在该部分网络进行。

具体工作过程:首先输入水稻叶片图像,经由骨干特征提取网络ResNet50提取特征,得到(C1,C2,C3,C4,C5)层特征图,其对应的步长为(2,4,8,16,32),层数越高,特征信息越丰富。将(C3,C4,C5)层特征输入到FPN网络中进行特征分治和特征融合,获得(P3,P4,P5)层特征图,对P5层特征进行卷积操作得到(P6,P7)层特征图。(P3,P4,P5,P6,P7)对应的步长为(8,16,32,64,128)。最后在Head层对特征金字塔(P3,P4,P5,P6,P7)的每一层特征图进行分类和回归,预测水稻叶片的种类和位置信息。在Head的Center-ness分支表征当前位置与所预测物体中心点之间的距离,该距离衡量该位置是否是物体中心的置信度,便于后续非极大值抑制(non-maximum suppression,简称NMS)筛选保留高质量的候选框。

1.2 特征融合网络

本模型的特征融合网络以特征金字塔网络为主体,在其中加入CBAM模块。FPN利用了ConvNet的金字塔特征层次结构,构建具有高层次语义的特征金字塔[25]。对于ResNet50网络,将conv3、conv4、conv5这些残差块的输出表示为(C3,C4,C5),其对应的步长为(8,16,32),对应的通道尺寸(channel dimensions)为(512,1 024,2 048)。(C3,C4,C5)均经过11卷积层以减少通道尺寸,经过11卷积层之后,通道尺寸均降为256,为了便于描述,将经过11卷积层的(C3,C4,C5)记为(D3,D4,D5)。(D4,D5)上采样后与(D3,D4)进行逐元素相加,并在合并的特征图上经由33的卷积以生成特征图(P3,P4),特征P5直接由D5经由3×3的卷积得到,这样生成了特征图(P3,P4,P5)。特征图P5经过步长为2的3×3卷积获得特征图P6,同理获得特征图P7。这样就生成了一组特征图(P3,P4,P5,P6,P7),其对应的步长为(8,16,32,64,128),其输出通道数均为256。

为更好地进行特征提取和特征分治,在FPN上加入CBAM注意力模块。CBAM模块处于1×1卷积块之后,上采样之前,加入了CBAM模块的特征融合网络模型如图2所示。在本模型中,累计加入了3个CBAM模块。

注意力机制类似人的注意力,选择性地关注重要的或感兴趣的特征,减少甚至忽视不相关或不感兴趣的特征。当模型的计算能力有限时,注意力机制将算力分配到相关重要特征上,从而更好地学习特征,减少了资源浪费。通道注意力模块和空间注意力模块是CBAM模块的重要组成部分,这2个模块让网络知道哪些信息需要强调,哪些信息需要抑制。CBAM论文通过试验验证,先通过通道注意力模块再通过空间注意力模块可以取得最佳性能[21]。CBAM结构如图3所示。

通道注意力模块的结构如图4所示。其输入特征图F的维度是H×W×C,分别经过最大池化和平均池化操作得到相应的特征图FCmax和FCavg,其维度均为1×1×C。FCmax和FCavg经由包含一个隐层的多层感知器MLP里,将经过MLP的注意力图进行像素级相加,最后由sigmoid函数激活。通道注意力模块的计算过程见公式(1):

式中:W1和W0是多层感知器MLP的权重参数;σ是sigmoid激活函数;MaxPool是最大池化操作;AvgPool是平均池化操作。

空间注意力模块的结构如图5所示。将输入的特征图F′分别进行最大池化和平均池化操作,得到H×W×1的特征图Fsmax和Fsavg,然后将2个特征图拼接,得到H×W×2的特征图,再经由卷积操作将通道维度降到1,最后经由sigmoid函数激活。空间注意力机制的计算过程可以由如下公式表达为:

式中:IoU是真实检测框与预测检测框面积的交并比;d是真实检测框的中心点与预测检测框的中心点之间的距离;c是覆盖2个检测框的最小封闭长方形框的对角线长度;wgt、hgt是真实检测框的宽和高;w、h是预测测检框的宽和高。

2 结果与讨论

为验证模型在水稻叶片病害图像数据上的有效性,在服务器平台上进行试验验证。服务器的配置如下:Ubuntu 20.04操作系统,PyThon 3.7,PyTorch 1.10,CUDA 11.3,CUDNN 8.2,所用显卡为RTX 3090(显存25.4 GB)。所有模型均在mmdetection 3.0框架下进行训练和测试。本试验模型的结果均在Featurize平台(https://featurize.cn/)上运行得出,运行时间为2023年5月至7月上旬。

2.1 数据收集和数据集制作

数据来源于Kaggle网站。从Kaggle网站收集水稻白叶枯病、胡麻叶斑病、叶瘟病图像数据,并人工筛除模糊不清的图像,最终得到图像950张,部分图像如图6所示。使用Labelme软件对水稻叶片病害位置进行标注,最终得到Pascal Voc格式的数据集。按照约8 ∶2的比例划分训练集和测试集,并对训练集数据进行数据增强,使用的数据增强方式包括图像翻转(水平、垂直)、图像旋转(90°、180°、270°)、图像明暗度调节,从而将训练集图像数量增强至原先的8倍,扩增后的训练集包含6 080张图像。数据集划分结果如表1所示。

2.2 参数设置和评价指标

使用随机梯度下降算法(stochastic gradient descent,简称SGD)更新模型参数,学习率设为0.01,动量设为0.9,epoch设置为12,batch size设为16,学习率采用Warm up策略,在第8个和第11个epoch之后,学习率降为原先的0.1倍。模型的训练损失随迭代次数的变化曲线如图7所示,横坐标为迭代次数,纵坐标为损失。随着迭代次数的增加,模型的损失函数整体趋势是随之降低,在 4 000 次迭代后,损失函数基本无变化,说明了模型训练的有效性。

本研究使用平均精度均值(mAP)和平均帧率(frame per second,简称FPS)分别衡量模型的精度和速度。平均精度均值是各水稻叶片病害检测精度的均值,其值越高,说明模型训练的结果越精确。平均帧率是指在当前软硬件条件下,模型每秒可以处理的图像数量,单位是图像数量/s,简记做img/s。平均帧率值越高,说明模型在单位时间内处理的图像数量越多,模型的速度越快。平均帧率的测量需要在相同软硬件条件和相同维度的输入图像下进行。在本研究中,在全数据集上测试平均帧率,全数据集是指由增强后的训练集和测试集构成的数据集,包含了6 270张图像。

2.3 试验结果

为验证模型的有效性,本研究将所提模型与YOLOF、Faster R-CNN、VarifocalNet、NAS-FCOS、TOOD、FCOS等模型进行对比[3,16,26-29],结果见表2。YOLOF的平均帧率指标最高,达到 61.8 img/s,说明该模型在当前软硬件条件下每秒可以处理61.8张图像,模型推理速度远高于其他模型,但其平均精度均值指标最低,分别低于Faster R-CNN、VarifocalNet、NAS-FCOS、TOOD、FCOS、改进FCOS模型4.5、5.5、6.7、8.5、6.7、9.0百分点。Faster R-CNN 模型的平均精度均值达到73.2%,低于改进FCOS模型4.5百分点,其平均帧率达到31.9 img/s,低于改进FCOS模型5.0 img/s。VarifocalNet模型的平均精度均值和平均帧率分别达到了74.2%和32.7 img/s,均低于改进FCOS模型。NAS-FCOS模型的平均精度均值达到75.4%,低于改进FCOS模型2.3百分点,其平均帧率仅为26.7 img/s,明显低于改进FCOS模型。TOOD模型的平均精度均值达到77.2%,仅比改进FCOS模型低0.5百分点,但其平均帧率明显低于改进FCOS模型,每秒比改进FCOS模型少处理8.6张图片。原FCOS模型的平均精度均值达到75.4%,低于改进FCOS模型2.3百分点。经分析认为,改进FOCS模型在精度和速度上取得了最高的权衡,且其在不明显降低速度的前提下,提升了模型的识别效果。

为进一步验证CBAM模块和CIOU模块对FOCS模型的作用,将CBAM模块和CIOU模块分别组合进行对比试验,试验结果如表3所示。不添加CBAM和CIOU模块的模型是原FCOS模型,同时添加CBAM模块和CIOU模块的模型是改进FCOS模型。CBAM模块的加入增加了1.7百分点的检测精度,CIOU模块的加入增加了1.2百分点的检测精度,同时加入CBAM和CIOU模块增加了2.3百分点的检测精度,相对于单独增加CBAM模块和CIOU模块分别提升了0.6百分点和1.1百分点的检测精度,说明了所提模型的有效性。

3 讨论与结论

首先收集水稻白叶枯病、胡麻叶斑病、叶瘟病这3种水稻叶片病害图像从而构建相应的数据集,数据集为Pascal voc格式;然后搭建FCOS模型进行水稻叶片病害检测。在FCOS模型的特征提取模块引入CBAM模块以增强特征提取能力;损失函数中回归损失函数采用CIOU损失函数,分类损失和目标中心度损失与原FCOS模型保持一致。试验结果表明,所提模型的平均精度达到77.7%,在不明显提高计算时间的前提下,提升了模型精度。但在实际应用中,仅对3种水稻病害进行检测远远不足,将进一步收集更多种类的水稻病害图像数据,扩大模型检测病害种类范围。

参考文献:

[1]温 鑫. 基于卷积神经网络的水稻叶片病害识别[D]. 哈尔滨:东北农业大学,2021.

[2]张永玲. 基于Android的水稻病虫害图像识别与诊断系统的研究[D]. 杭州:浙江理工大学,2018.

[3]Ren S Q,He K M,Girshick R,et al. Faster R-CNN:towards real-time object detection with region proposal networks[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence,2017,39(6):1137-1149.

[4]Redmon J,Divvala S,Girshick R,et al. You only look once:unified,real-time object detection[C]// 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Las Vegas,NV,USA. IEEE,2016:779-788.

[5]Redmon J,Farhadi A. YOLO9000:better,faster,stronger[C]//2017 IEEE Conference on Computer Vision and Pattern Recognition(CVPR). Honolulu,HI,USA. IEEE,2017:6517-6525.

[6]朱红春,李 旭,孟 炀,等. 基于Faster R-CNN网络的茶叶嫩芽检测[J]. 农业机械学报,2022,53(5):217-224.

[7]王云露,吴杰芳,兰 鹏,等. 基于改进Faster R-CNN的苹果叶部病害识别方法[J]. 林业工程学报,2022,7(1):153-159.

[8]涂淑琴,黄 健,林跃庭,等. 基于改进Faster R-CNN的百香果自动检测[J]. 实验室研究与探索,2021,40(11):32-37.

[9]董 浪,许建峰,靳江周,等. 基于改进Faster R-CNN的梨树花芽识别方法[J]. 河北农业大学学报,2021,44(6):116-121.

[10]魏 冉,裴悦琨,姜艳超,等. 基于改进Faster R-CNN模型的樱桃缺陷检测[J]. 食品与机械,2021,37(10):98-105,201.

[11]徐会杰,黄仪龙,刘 曼. 基于改进YOLO v3模型的玉米叶片病虫害检测与识别研究[J]. 南京农业大学学报,2022,45(6):1276-1285.

[12]王 根,江晓明,黄 峰,等. 基于改进YOLO v3网络模型的茶草位置检测算法[J]. 中国农机化学报,2023,44(3):199-207.

[13]沈志豪,刘金江,张建洋. 基于改进YOLOX-s的田间麦穗检测及计数[J]. 江苏农业科学,2023,51(12):164-171.

[14]杨 堃,范习健,薄维昊,等. 基于视觉加强注意力模型的植物病虫害检测[J]. 南京林业大学学报(自然科学版),2023,47(3):11-18.

[15]骆润玫,殷惠莉,刘伟康,等. 基于YOLO v5-C的广佛手病虫害识别[J]. 华南农业大学学报,2023,44(1):151-160.

[16]Tian Z,Shen C H,Chen H,et al. FCOS:fully convolutional one-stage object detection[C]//2019 IEEE/CVF International Conference on Computer Vision (ICCV). Seoul,Korea (South). IEEE,2019:9626-9635.

[17]龙 燕,李南南,高 研,等. 基于改进FCOS网络的自然环境下苹果检测[J]. 农业工程学报,2021,37(12):307-313.

[18]黄河清,胡嘉沛,李 震,等. 基于模型剪枝改进FCOS的实时柑橘检测研究[J]. 河南农业大学学报,2021,55(3):453-459.

[19]刘 丹,汪慧兰,曾浩文,等. 改进FCOS的行人检测算法[J]. 计算机工程与设计,2022,43(11):3264-3270.

[20]刘竞升,伍 星,王洪刚,等. 改进FCOS的二阶段SAR舰船检测算法[J]. 计算机工程与应用,2021,57(24):144-151.

[21]Woo S,Park J,Lee J Y,et al. CBAM:convolutional block attention module[C]//European Conference on Computer Vision.Cham:Springer,2018:3-19.

[22]Lin T Y,Goyal P,Girshick R,et al. Focal loss for dense object detection[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence,2020,42(2):318-327.

[23]Zheng Z H,Wang P,Liu W,et al. Distance-IoU loss:faster and better learning for bounding box regression[J]. Proceedings of the AAAI Conference on Artificial Intelligence,2020,34(7):12993-13000.

[24]He K M,Zhang X Y,Ren S Q,et al. Deep residual learning for image recognition[C]//2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR).Las Vegas,NV,USA.IEEE,2016:770-778.

[25]Lin T Y,Dollár P,Girshick R,et al. Feature pyramid networks for object detection[C]//2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR).Honolulu,HI,USA.IEEE,2017:936-944.

[26]Chen Q,Wang Y M,Yang T,et al. You only look one-level feature[C]//2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).Nashville,TN,USA.IEEE,2021:13034-13043.

[27]Zhang H Y,Wang Y,Dayoub F,et al. VarifocalNet:an IoU-aware dense object detector[C]//2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).Nashville,TN,USA.IEEE,2021:8510-8519.

[28]Wang N,Gao Y,Chen H,et al. NAS-FCOS:fast neural architecture search for object detection[C]//2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).Seattle,WA,USA.IEEE,2020:11940-11948.

[29]Feng C J,Zhong Y J,Gao Y,et al. TOOD:task-aligned one-stage object detection[C]//2021 IEEE/CVF International Conference on Computer Vision (ICCV).Montreal,QC,Canada.IEEE,2021:3490-3499.

收稿日期:2023-07-24

基金项目:河南省科技攻关项目(编号:222102210300);河南省高等学校青年骨干教师培养计划(编号:2021GGJS176);信阳农林学院青年教师科研基金项目(编号:QN2021057)。

作者简介:丁士宁(1993—),男,河南信阳人,硕士,助教,研究方向为模式识别与人工智能。E-mail:1728252083@qq.com。