APP下载

基于小样本学习的马铃薯叶片病害检测

2023-09-11邢鹏康李久朋

江苏农业科学 2023年15期

邢鹏康 李久朋

摘要:马铃薯叶片的病害将直接导致马铃薯产量和质量的下降,为实现马铃薯叶片病害的精确检测并及时预防病变,提出了一种基于小样本学习的马铃薯叶片病害检测算法。首先,利用一组共享权重的特征提取器将输入图片映射到深度特征空间;然后,提出一种任务感知注意力模块用于融合小样本学习网络中的双分支输入特征,强化目标任务的特定表达能力;最后,引入一种动态卷积模块提高卷积核的建模能力,并将卷积块注意力机制(CBAM)嵌入到该卷积网络中,构造特征强化学习模块,细粒度地捕获病害区域的细节特征。通过在开源马铃薯叶片病害检测数据集上进行测试,所提出模型分别实现了93.92%的准确率、93.81%的精准率、93.85%的召回率和93.63%的F1值;此外,在自建数据集上与当前经典马铃薯叶片病害检测模型相比,同样具有较好的竞争力。

关键词:马铃薯叶片;病害检测;卷积块注意力机制;小样本学习;任务感知注意力

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

文章编号:1002-1302(2023)15-0203-08

基金项目:河南省科技攻关重点资助项目(编号:212102310086);河南工业职业技术学院青年骨干教师培养计划(编号:2020033004)。

作者简介:邢鹏康(1984—),男,陕西西安人,硕士,讲师,研究方向为农作物疾病检测、深度学习、智慧农业。E-mail:pengkxing@sina.com。

植物的根、茎、叶等部位的病害严重影响作物的质量和产量,这也给农业相关部门造成了巨大的经济损失。据估计,全球每年因农作物叶片病害造成的作物产量损失约为16%,这是粮食短缺和粮食生产成本增加的主要原因[1]。根据联合国粮食及农业组织的报告,到2050年,世界人口将达到约91亿,为了保持稳定的粮食供应,大约需要增长70%的粮食产量。马铃薯是仅次于小麦、玉米和水稻之外的世界第四大农产品,由于疾病和旱涝等自然环境的影响,马铃薯的产量深受影响,这也为粮农和农业部门带来了巨大的挑战[2]。

早期的马铃薯叶片病害检测主要依赖专家先验知识进行诊断,该类方法过度依赖人工判断,主观性较强,费时费力[3]。之后,研究人员引入了光谱仪来诊断马铃薯叶片的病害;然而,这些方法需要昂贵的实验器材、专业的测量技术,成本较高,不利于开展大规模的诊断[4]。

随着农业技术水平的提高和人工智能、计算机视觉等技术在农业领域的成功应用,无需人工干预就可以在短时间内高效、准确地检测出植物叶片病害成为可能[5]。此外,构建的智能化检测模型也有助于提升农作物产量和质量,对农业发展具有重要的指导意义。如赵越等提出了一种基于深度学习的马铃薯叶片病害检测方法,通过搭建的Faster R-CNN 模型能快速定位出马铃薯叶片的病害部位[6]。Rashid等提出了一种基于级联卷积神经网络的马铃薯叶片疾病识别模型[7]。首先利用传统的Yolov5模型进行马铃薯叶片病害分割;其次,利用卷积神经网络对马铃薯叶片中的病害进行早、中和晚分类,及时预防马铃薯叶片病害的大规模暴发。赵建敏等利用卷积神经网络搭建了一套基于Web前端、移动APP和后台分类模型的多分类病害检测模型,实现了移动端的智能检测[8]。类似地,Li等提出了一种改进的Yolov5马铃薯病害检测模型,通过改进CSP、FPN和NMS模块,消除了外部环境的影响,增强了多尺度特征的提取能力,提高了检测性能[9]。通过在自建马铃薯病害叶片数据集上进行测试,试验也验证了模型的有效性。Afzaal等针对叶片的不同背景、不同尺寸大小、不同遮挡以及光照影响等因素导致马铃薯叶片病害识别难的问题,通过分析马铃薯作物叶片的视觉特征来检测马铃薯早疫病和晚疫病[10]。Saeed等提出了一种基于多阶段检测的马铃薯叶片病害识别自助系统,首先利用预训练的主干网络进行特征提取,并利用最小二乘回归算法提取关键特征,依据抽取的最佳特征构建分类器[11]。

上述基于深度学习的马铃薯叶片病害检测模型在一定程度上取得了成功;然而,现有模型仍然存在如下问题亟待解决:(1)由于马铃薯病害叶片区域较小,传统模型定位不精确,导致模型检测性能不佳;(2)现有模型的识别性能过度依赖带标注训练图片的数量,虽然Chen等利用弱监督学习的方法缓解了马铃薯叶片病害检测模型的性能依赖训练图片量大的挑战,但该类弱监督方法仍需要带标注图片进行模型预训练,并且对于未标注的新图片泛化能力局限[12];(3)马铃薯叶片种类较多,带标注的叶片收集费时费力。为此,本研究提出了一种基于小样本学习的马铃薯病害叶片检测算法。通过引入一种动态卷积模块来提高卷积核的建模能力,并借助卷积块注意力机制来聚焦病害叶片区域,强化关键特征的表达能力。本研究的主要创新点如下:(1)提出一种基于小样本学习的马铃薯叶片病害检测新方法,利用小样本学习网络有助于缓解带标注马铃薯叶片样本收集费时费力的问题;(2)设计一种动态卷积块,通过带偏移的采样学习策略,细粒度捕获病害区域的细节特征,强化卷积核的建模能力;(3)提出一种融合卷积块注意力机制模块,有效聚焦叶片病害区域,有助于缓解传统方法因病害叶片区域小导致定位不精确的问题。

1 数据集

1.1 开源数据集

选择Kaggle开源数据库中马铃薯叶片样本集,包含早疫病、晚疫病、灰霉病、炭疽病和健康叶片5种类型[13]。总共包括1 200张病害图片和1 000張健康图片,图片大小为224像素×224像素,格式为jpg,并按照8 ∶2的比例划分为训练集和测试集。部分病害的可视化如图1所示。

1.2 自建数据集

利用松下S5K相机作为马铃薯叶片的采集工具,所有图片均采集于河南省商丘市周边马铃薯种植区,叶片病害类型包括早疫病、晚疫病、炭疽病、软腐病。总共包含590张健康图片、645张病害叶片图片,并按照8 ∶2的比例,划分为训练集和测试集。图片原始像素大小为1 260像素×1 260像素,为了降低模型加载图片时间,此处统一规整大小为224像素×224像素。每类病害叶片的样本数量见表1。

2 方法论

2.1 模型结构

图2为基于小样本学习的马铃薯叶片病害检测模型的结构图。主要包括:(1)特征编解码模块,用于将三维图片映射到深度特征空间;(2)任务感知注意力模块,将支持特征和查询特征进行特征深度融合,提高目标特征的表达能力;(3)动态卷积核,为了进一步捕获病害区域的细节特征,强化目标特征的表达能力,采用动态卷积核实现信息的强交互;(4)卷积块注意力机制,从通道和空间维度聚焦目标特征,提高模型对目标任务的强注意力,缓解因病害目标区域小,导致信息丢失或语义误匹配问题。

2.2 特征提取

为充分挖掘马铃薯病害叶片的深层次特征,采用对称的编解码网络作为特征提取器。其中,卷积层用于将三维图片映射到深度特征空间,同时可以有效过滤目标的背景区域;然而,病害叶片区域小极易造成信息的丢失,因此,引入反卷积层进行特征细化,并在卷积层和反卷积层之间加入残差连接,防止因病害区域小导致目标特征丢失。特征提取网络结构如图3所示。

此处,进一步考虑到病害区域小,特征捕获难度大,极易导致信息丢失的问题,在编解码过程中引入稠密编码块[14]。稠密编码块网络详细计算流程如图4所示。稠密编码块主要通过挖掘图像的局部信息,恢复目标的边缘、颜色失真等细节特征。具体地,每个稠密编码块利用3×3和5×5的卷积块提供多尺度编码特征,1×1卷积块直接连接相邻层的输出并用于当前层的特征融合。具体计算如

公式(1)和公式(2)所示。

式中:Foi-2、Foi-1和Foi表示相邻层特征图;σ表示ReLU函数;k3(·)和k5(·)分别表示3×3和5×5的卷积块;表示采用1×1卷积块进行特征融合操作;表示特征拼接操作。

2.3 任务感知注意力

小样本学习网络支持分支的输入为支持图片,为待识别的查询分支图片提供直接的任务特定知识,并且小样本学习网络的双分支输入为相同类的不同图片。为了充分挖掘支持分支和查询分支任务之间的相关性,利用图5所示的任务感知注意力网络进行双分支特征的深度融合。

假设支持分支和查询分支的映射特征分别为Fs和Fq,首先利用双线性插值技术将Fs和Fq统一为相同大小的特征图,即{Fs,Fq}∈Rc×h×w。然后,

为了融合支持分支和查询分支的特征图,利用平均池化操作获得Fs和Fq对应的掩码特征图Fs′和Fq′,并利用大小为1×1的卷积块将掩码特征图进行连接,具体计算如公式(3)所示。

式中:‖表示拼接操作,Com(·)表示对比函数,由Sigmoid和ReLU函数组成。最终的特征图FF计算如公式(4)所示。

式中:表示矩阵点乘运算。

2.4 特征强化学习

马铃薯病害区域面积较小,携带的有效信息较局限,这对模型的鲁棒性和泛化性能提出了更高的考验。为此,引入了一种动态卷积模块,通过利用带偏移的采样学习策略,细粒度捕获病害区域的细节特征,强化卷积核的建模能力;其次,从通道和空间维度上进一步聚焦马铃薯叶片病害区域,缓解传统方法因病害葉片区域小导致定位不精确的问题。

2.4.1 动态卷积块 考虑到马铃薯叶片病害区域不规则、病害面积较小,利用常规的卷积核进行特征处理极易造成信息的丢失或歧义。为此,本研究从正方形窗口、垂直方向和水平方向进行细粒度的特征捕获。具体来说,首先将任务感知融合特征FF作为动态卷积模块核生成器的输入,并利用1个对称的正方形和2个非对称的长方形卷积核进行特征处理。然后,利用核大小为S和S2的2个连续一维池化模块提取融合特征的全局表示。具体计算如公式(5)所示。

式中:FglobalF表示融合特征的全局表示;pools(·)和pools2(·)分别表示不同卷积核大小的全局池化函数;Fconv1(·)、Fconv2(·)和Fconv3(·)分别表示2个非对称的长方形卷积核和1个对称的正方形卷积核操作。

2.4.2 卷积块注意力机制 马铃薯病害区域仅占整幅图像的小部分区域,为了剔除无关背景信息的干扰,强化目标特征的表达能力,在动态卷积块中添加卷积块注意力机制(convolutional block attention module,CBAM),对捕获的病害区域特征进行重新加权整合,自动过滤无关信息的感染,重点聚焦病害区域[15]。CBAM注意力机制特征处理流程如图6所示。

CBAM由通道注意力机制和空间注意力机制2个部分组成,通过协同学习给定图片中目标的局部特征,弱化背景信息的权重,强化目标区域特征的关注度,进而提升模型对于特定任务的特征学习能力。具体来说,在通道注意力机制特征处理阶段,对于动态卷积模块的输出特征FglobalF,首先在空间维度上利用全局最大池化(Maxpool)和全局平均池化(Avgpool)进行特征编码压缩,生成2个大小为1×1×C的特征图,同时沿通道方向融合每个通道特征图在整张特征图中的位置编码信息,旨在缓解下采样过程中因病害区域面积小、感受野局限导致部分信息丢失的问题[16]。上述过程可表示为公式(6)。

式中:Mc(·)表示特征融合函数,用于实现最大池化和平均池化后的特征融合;σ表示Sigmoid函数;MLP表示多层感知机;γ表示全局最大池化操作,δ表示全局平均池化操作。

在空间注意力机制特征处理阶段,将通道注意力机制处理后的特征F′globalF作为空间注意力机制特征处理模块的输入,并类似通道注意力机制特征处理阶段的全局最大池化和全局平均池化进行特征编码压缩;然后,利用通道级联的方式进行特征融合,并根据不同位置的编码信息进行加权重组,获得带权重信息的空间特征Ms,用于表示不同区域特征信息的重要性分布。最后,将所有位置的空间特征图拼接,获得目标特定任务的特征表示,具体计算如公式(7)和公式(8)所示。

式中:Fv(·)表示通道级联操作。

为了使模型具有分类能力,将重组后的特征F′F作为全连接网络的输入,并利用Softmax函数实现马铃薯病害叶片的分类,并选择交叉熵损失函数计算真实病害标签与预测结果之间的损失,根据损失值优化模型参数。

3 试验结果与分析

3.1 试验设置与评价指标

处理器Intel CoreTM i7-10750H CPU;编程语言为python 3.9;采用PyTorch 1.7.2深度学习加速库,GPU GTX-3060Ti,CUDA 11.1。设定初始学习率为0.001,选用随机梯度下降法来优化模型,批量大小为8,动量为0.9,训练迭代次数为26。

选择当前主流的病害识别模型评价指标:准确率(Accuracy)、精准率(Precision)、召回率(Recall)和F1值,计算如公式(9)所示。

式中:Tp表示所提出模型预测的正确样本总数;Tn表示所提出模型预测错误的样本总数;Fp表示误报样本总数;Fn表示漏报样本总数。

3.2 试验对比分析

3.2.1 开源数据集 为了验证所提出模型的有效性,在相同的数据样本和评价指标下与Yolov3、Yolov5、Faster R-CNN、Vgg-16、ResNet-101模型进行对比试验,详细结果如表2所示。

由表2可知,本研究模型分别实现了93.92%的准确率、94.81%的精准率、93.85%的召回率和93.63%的F1值。在准确率方面,相比所有对比模型中表现最佳的ResNet-101模型,提升了0.53百分点;在精准率方面,相比表现最佳的Faster R-CNN模型,提升了1.12百分点;在召回率方面,相比表现最佳的Faster R-CNN模型,提升了0.72百分点;在F1值方面,虽然相比ResNet-101模型有略微下降,但相比Faster R-CNN模型,提升了0.79百分点。究其原因主要包括:(1)所提出模型通过融合目标任务到支持分支中,强化了目标特定信息的表达能力;(2)病害区域小,极易造成目标任务的信息丢失,所提出模型通过引入动态卷积、从不同方向细粒度地捕获目标区域的细节特征;(3)利用卷积块注意力机制从空间和通道维度进一步聚焦目标任务,过滤无关信息的干扰。

为了进一步验证所提出模型对不同马铃薯病害叶片的检测精度,分别对早疫病、晚疫病、灰霉病、炭疽病和健康叶片5种类型进行单一性能测试,每类叶片选择50张图片,取每类叶片病害检测结果的均值作为最终的结果,详细结果如表3所示,可以看出,由于晚疫病病害区域明显,相比其余病害类型,其检测结果明显;炭疽病由于病害区域小,检测难度增大,但本研究所提出模型仍然可以实现93.55%的准确率,这进一步验证了该模型的高效性。

3.2.2 自建数据集 为验证所提出模型的鲁棒性和泛化性能,在自建数据集上进行测试,包括早疫病、晚疫病、软腐病、炭疽病和健康叶片5种类型,详细结果见表4。

从表4可以看出,本研究所提出模型在自建数据集上具有相同的发现,尤其是在早疫病的检测中,仍然可以实现91.79%的准确率,这进一步说明所提出模型在实际应用场景中同样有效。

3.2.3 可视化结果 图7和图8分别给出了所提出模型在开源数据集和自建数据集上的测试可视化。可以看出,无论在开源数据集还是自建数据集,多种马铃薯病害叶片的检测效果具有较好的竞争力,验证了所提出模型的高效性,对未来构建智慧农业提供一定的理论和技术支撑。此外,图9和图10给出了Yolov3、Yolov5、Faster R-CNN、Vgg-16、ResNet-101模型在开源数据集和自建数据集上对100张不同马铃薯叶片病害图片的检测混淆矩阵。其中,横坐标表示模型的预测结果,纵坐标表示真实标签。

3.3 消融试验

为探究不同模块对马铃薯病害叶片检测性能的影响程度,进行消融试验。由表5可以看出,任务感知注意力模块相比其余模块,在检测性能的提升中起着更关键的作用,主要原因是任务感知注意力模块直接利用查询分支提供的任务特定信息,来强化特征的表达能力。然而,模型的最好检测性能是通过组合任务感知注意力、动态卷积核和特征强化学习模块共同完成,這也验证了本研究最初的设计初衷。

4 结论

由于马铃薯叶片种类多、病害区域小,导致传统基于深度学习的马铃薯叶片病害检测模型性能局限。本研究提出了一种基于小样本学习的马铃薯叶片病害检测模型,通过挖掘查询分支中任务特定信息来提高目标任务的检测性能;此外,利用动态卷积核细粒度地捕获目标在不同方向的特征,强化卷积模块的建模能力;并在此基础上,利用卷积块注意力机制进一步聚焦有限区域的病害目标,提升模型对于不同马铃薯病害叶片的检测性能。这有助于及时检测出马铃薯病害叶片,预防马铃薯产量和质量的下降。根据所提出模型在开源数据集和自建数据集上的测试结果,得出如下结论。

(1)通过在开源的马铃薯病害叶片检测数据集上进行测试,所提出模型实现了93.92%的准确率、93.81%的精准率、93.85%的召回率和93.63%的F1值;在自建数据集上实现了93.87%的准确率、94.02%的精准率、93.71%的召回率和93.93%的F1值。

(2)利用所提出的任务感知注意力直接挖掘查询分支中任务的特定表达,可以有效提升模型对于不同病害的检测性能,这对小样本学习网络进一步利用任务特定知识具有一定的借鉴作用。

(3)动态卷积核可以在垂直、水平和立体窗口中细粒度地捕获目标区域的细节特征,有助于强化卷积块的建模能力,提升模型对于不同病害目标的检测性能。

参考文献:

[1]Chen J D,Chen J X,Zhang D F,et al. Using deep transfer learning for image-based plant disease identification[J]. Computers and Electronics in Agriculture,2020,173:105393.

[2]趙建敏,芦建文. 基于字典学习的马铃薯叶片病害图像识别算法[J]. 河南农业科学,2018,47(4):154-160.

[3]Tiwari D,Ashish M,Gangwar N,et al. Potato leaf diseases detection using deep learning[C]//2020 4th International Conference on Intelligent Computing and Control Systems (ICICCS).Madurai,India.IEEE,2020:461-466.

[4]Mahum R,Munir H,Mughal Z U N,et al. A novel framework for potato leaf disease detection using an efficient deep learning model[J]. Human and Ecological Risk Assessment,2023,29(2):303-326.

[5]Lee T Y,Lin I A,Yu J Y,et al. High efficiency disease detection for potato leaf with convolutional neural network[J]. SN Computer Science,2021,2(4):297.

[6]赵 越,赵 辉,姜永成,等. 基于深度学习的马铃薯叶片病害检测方法[J]. 中国农机化学报,2022,43(10):183-189.

[7]Rashid J,Khan I,Ali G,et al. Multi-level deep learning model for potato leaf disease recognition[J]. Electronics,2021,10(17):2064.

[8]赵建敏,李 艳,李 琦,等. 基于卷积神经网络的马铃薯叶片病害识别系统[J]. 江苏农业科学,2018,46(24):251-255.

[9]Li J W,Qiao Y L,Liu S,et al. An improved YOLOv5-based vegetable disease detection method[J]. Computers and Electronics in Agriculture,2022,202:107345.

[10]Afzaal H,Farooque A A,Schumann A W,et al. Detection of a potato disease (early blight) using artificial intelligence[J]. Remote Sensing,2021,13(3):411.

[11]Saeed F,Khan M A,Sharif M,et al. Deep neural network features fusion and selection based on PLS regression with an application for crops diseases classification[J]. Applied Soft Computing,2021,103:107164.

[12]Chen J D,Deng X F,Wen Y X,et al. Weakly-supervised learning method for the recognition of potato leaf diseases[J/OL]. Artificial Intelligence Review,(2022-12-21)[2023-01-08].https://doi.org/10.1007/s/0462-022-10374-3.

[13]Abdallah A. Plant village dataset[EB/OL]. (2022-11-26)[2023-01-05]. https://www.kaggle.com/abdallahalidev/plantvillage-dataset.

[14]Zhang L B,Zhang J,Ma J,et al. SC-PNN:saliency cascade convolutional neural network for pansharpening[J]. IEEE Transactions on Geoscience and Remote Sensing,2021,59(11):9697-9715.

[15]Wang S H,Zhou Q,Yang M,et al. ADVIAN:Alzheimers disease VGG-inspired attention network based on convolutional block attention module and multiple way data augmentation[J]. Frontiers in Aging Neuroscience,2021,13:687456.

[16]Shuai Y Z,Yuan Q,Zhao S S.A spatial-channel attention-based convolutional neural network for remote sensing image classification[C]//IGARSS 2022—2022 IEEE International Geoscience and Remote Sensing Symposium.Kuala Lumpur,Malaysia.IEEE,2022:3628-3631.