基于MobileNetV3的马铃薯病害识别

徐振南 王建坤 胡益嘉 张智聪 赵旭东 杨琳琳 李文峰

摘要:针对传统卷积神经网络在马铃薯叶部病害识别中结构复杂、参数庞大,难以实现在移动设备上的良好应用的问题,提出一种基于轻量级卷积神经网络和迁移学习的马铃薯叶部病害识别方法。首先,采集马铃薯叶部病害图像样本,再运用GrabCut算法进行图像分割;再基于 MobileNetV3构建病害识别基础模型,并通过调整模型结构及宽度系数α等方式对模型进行优化,最后运用迁移学习的方式将预训练参数迁移至优化模型进行训练。结果表明,该方法对马铃薯健康、晚疫病、早疫病、炭疽病及其他病害叶部图像识别准确率为 98.00%,模型权重仅为0.68 MB,识别速率为0.014 s/幅。本研究结果可为马铃薯叶部病害识别在移动设备上应用的实现提供理论支持。

关键词:马铃薯;叶部病害;GrabCut;MobileNetV3;迁移学习;小样本

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

文章编号:1002-1302(2022)10-0176-07

马铃薯是我国四大粮食作物之一,目前,已知马铃薯病害有100余种,其中晚疫病和早疫病造成的危害最为严重,马铃薯早疫病发病严重时减产可达30%以上[1],晚疫病则可造成高达80%~100%的减产[2]。传统马铃薯病害识别通常为专家直接对患病部位进行观察,如晚疫病发病初期在叶尖或叶缘有水浸状绿褐色斑点[3]。该方法具有较高的准确率,但效率较低,且受限于专家数量,难以实现有效推广。

由于计算机智能识别技术在对农业病害进行检测识别时,具有无损、快速的特点[4],故被广泛应用于病害识别。赵建敏等用8層CNN+softmax分层卷积神经网络模型识别了简单背景单一病斑[5];孙文杰等使用一种基于VGGNet-BiLSTM的算法实现了对桃树叶部病害图像的识别[6];谢裕睿等通过构造恒等残差块和卷积残差块来搭建20层的ResNet模型识别了5种常见烟草病害[7]。上述研究在图像识别领域取得了良好效果,但其所采用的模型存在深度及参数过大等不足。目前,农业病害识别趋向于模型结构小型化、实用化,以期更好地实现其在移动端的应用。杨森等提出一种基于轻量卷积网络的马铃薯外部缺陷无损分级方法,识别准确率为96.04%[8]。刘洋等基于MobileNet与IncptionV3提出2种轻量级卷积神经网络作物病害分类模型[9]。以上研究表明,轻量级卷积神经网络模型在减少网络参数量的同时,可保证较高的识别准确率,适用于移动端。

本研究提出一种基于MobileNetV3优化和迁移学习方法的马铃薯叶部病害图像识别方法,并从训练、测试准确率及损失函数、模型权重和识别速率等方面对模型进行评估,为开发移动端的马铃薯害智能识别系统提供模型构建技术支持。

1 图像数据集及预处理

1.1 试验数据

图像数据采集点为云南省昭通市,为体现样本多样性,选用不同品牌手机、相机进行拍摄,拍摄角度、时间、地点等多样化。此外,通过互联网公开数据集收集部分样本,收获马铃薯健康叶部图像39幅、晚疫病61幅、早疫病50幅、炭疽病54幅以及其他病害33幅,总计获得叶部图像237幅,部分原始图像如图1所示。

1.2 滤波去噪

实际拍摄所得图像通常会存在不同数量的噪声,这些噪声会对图像识别造成一定干扰。因此,为有效过滤图像中椒盐噪声等噪声信息,采用均值滤波、高斯滤波以及中值滤波方式对图像进行图像平滑滤波处理,处理后部分图像示例如图2所示。

1.3 图像分割

由于部分图像拍摄时背景相对复杂,会对病害识别造成一定干扰,因此运用GrabCut算法对部分背景相对复杂的样本进行图像分割,提取害病叶片图像,削弱背景影响。GrabCut算法于2004年由Rother等提出,其通过图像中所蕴含的纹理(颜色)信息以及边界(反差)信息,仅需少量的用户交互操作,再结合图像处理算法,即可取得良好的分割结果[10],具体如图3所示。

1.4 图像增强

在对样本图像特征信息进行收集时,通过多种方式对原始数据进行数据增广,可提升模型泛化能力,提高模型的鲁棒性[11]。对于数据集的数据分布,扩充后数据集中各类训练样本数量相同、分布均匀,这使得模型对于各类别的学习过程不会偏向某一类或某几类,所得模型泛化能力较强[12]。因此,要对分割后的数据集进行一定程度的数据扩充。

首先,将分割后数据集按照8 ∶2的比例随机划分训练集和测试集。其次,通过旋转、水平翻转、平移、对比度增强、改变色度的方式增强图像数据,将划分后的数据集扩充至每类200张,共1 000张图片,扩充后训练集和测试集比例仍为8 ∶2。为探究图像分割对识别效果的影响,不分割原始图像重复上述操作建立数据集。图像分割并增强后部分示例如图4所示。

因采集工具多样,故原始图像分辨率不统一,在训练前将图像进行归一化、标准化处理。将训练集图片随机大小、随机长宽比进行裁剪,再重置图片为224×224像素;重置测试集图片为256×256像素,再中心裁剪为224×224像素,最后将图片统一转化成tensor张量并进行标准化处理。

2 马铃薯叶部病害识别模型

2.1 MobileNetV3网络模型

卷积神经网络由AlexNet[13]到VGGNet[14],再到GoogleNet[15]、 ResNet[16],网络性能不断提升,但网络也是不断加深,由此引发效率问题,该问题一定程度上决定着CNN在实际生活中的应用。谷歌于2017年提出MobileNets模型[17],于2019年提出MobileNetV3模型[18],其基本网络单元如图5所示。

由图5可知,相较于ResNet模型,该模型运用了MobileNetV2模型[19]中的倒置残差结构(inverted residuals),该结构先升维,深度可分离卷积后再降维,深度可分离卷积主要起减少网络参数,加快运行速度的作用[20]。在此之上,还根据Mnas Net(谷歌提出的一种移动平台感知神经结构搜索)[21]引入基于压缩奖惩(squeeze and excitation,SE)结构的轻量级注意力模型,SE结构能通过训练过程在特征图上自行分配权重,使网络从全局信息出发选择性地放大有价值的特征通道并抑制无用的特征通道[22]。

此外,相较于EfficientNet模型[23],MobileNetV3加入一种新的激活函数Hard-swish,如公式(1)所示。

h-swish[x]=xReLU(x+3)6。(1)

式中:x为输入;ReLU为ReLU激活函数。

MobileNetV3模型识别准确率高、尺寸小,适用于移动端,但目前将其用于作物病害识别研究较少,为实现将马铃薯叶部病害识别模型应用于移动端的任务,要对该模型部分网络结构进行修改。该模型可分为MobileNetV3-Large和Small,因本研究针对小样本数据集进行研究,故选用MobileNetV3-Small网络,具体结构如表1所示。

2.2 模型改进设计

由于需要识别的叶片类型为5类,因此将表1中最后一个卷积层输出通道数由1 000修改为5,将此模型记作MobileNetV3-S0,并以此模型作为后续改进的基础模型。

为减少模型参数并保持其在马铃薯叶片数据集上的性能,基于MobileNetV3-S0进行修改:将超参数reduce_divider由1调整为4,修改后网络结构如图6所示,并将该模型命名为MobileNetV3-S1。

由图6可知,超参数reduce_divider将影响bneck模块9的输出通道数,bneck模块10、11的输入、输出以及bneck内倒残差结构进行升维后的通道数,其表现如下述公式所示。

Final Output=Output/reduce_divider。(2)

式中:Final Output為最终输出通道数;Output为输出通道数。

深度学习的网络深度过深将带来梯度不稳定,网络退化等问题。因此,为选择合适的模型深度,对MobileNetV3-S1进行如下操作:移除bneck模块6~8,将bneck模块9的输入通道数由48缩减为40,并将bneck模块9~11的输出通道数由96缩减为48,并将改动后模型命名为MobileNetV3-S2,详见图7。

图像输入分辨率、网络的深度以及宽度3个参数的合理化配置对网络性能具有一定的影响。宽度大而深度较浅的网络很难学习到更深层次的特征。故在降低网络深度的同时,有必要进一步调整网络宽度。对MobileNetV3-S2进行如下操作:将超参数宽度系数α由默认的1改为0.5;为进一步降低网络深度和计算成本,减少参数量:移除bneck模块5,最终将该模型命名为MobileNetV3-S3,详见图8。

考虑到数据集相对较小,直接用于网络训练将产生过拟合或准确率较低等问题。迁移学习可以考虑到大部分数据和任务间的相关性,将使用其他大批量数据训练所得模型来训练新数据,从而减少训练步骤,缩短训练时间,并增加数据量,从而降低过拟合程度[24]。故将在公开数据集PlantVillage上进行预训练的模型参数,迁移至马铃薯叶部病害识别模型,缩短模型训练时间,提高模型泛化性。

3 结果与分析

3.1 试验环境与相关参数设置

试验软件环境为Windows10操作系统,使用python3.8.5编程语言,以Pytorch作为深度学习开源框架,CUDA11.0编程平台。试验硬件环境为16 GB内存,NVIDIA GeForce RTX2060显卡,搭载IntelCoreTMi7-10875H@5.10 GHz CPU处理器。

在训练前,将样本数据分为多个批次(Batch),综合考虑样本数量及计算机的硬件环境,本研究在试验过程中将Batch大小设置为32,模型迭代次数(Epoch)设为100次。

3.2 试验设计

综合考虑硬件设备性能及训练效果,在相同条件下对同一模型进行训练,包括采用2种不同的迁移学习训练方式(只训练全连接层与训练全部层)、不同学习率、3种不同滤波方式对图像数据进行处理以及图像分割与否等情况进行试验,同时在相同条件下对不同网络模型进行训练对比试验。

3.3 模型性能的影响因素分析

3.3.1 学习率对模型性能的影响

进行深度学习模型训练时,学习率是最影响模型性能的超参数之一[25],学习率过大将导致模型不收敛,过小将导致模型收敛过慢或者无法学习。因此,通过试验选取适用于MobileNetV3-S0的学习率。试验选用单纯图像增强后数据集,以训练全部层的迁移学习方式进行,将学习率设置为0.01、0.001和0.000 1进行讨论。

由图9-a可知,相较于0.01和0.000 1的学习率,学习率为0.001时,模型训练准确率最高。交叉熵损失函数常用于评估模型预测值与真实值的不一致程度,交叉熵损失函数越小,模型的鲁棒性越好。由图9-b可知 学习率为0.001训练时 交叉熵损失函数均低于其他学习率时的交叉熵损失函数,且模型训练准确率与交叉熵损失函数收敛速度最快。因此,综合考虑训练时模型平均识别准确率与交叉熵损失函数,后续试验中取0.001学习率及未分割增强后数据集完成模型训练与测试。

3.3.2 迁移学习方式对模型性能的影响

MobileNetV3-S0模型,在不采用迁移学习和采用2种不同(只训练全连接层与训练全部层)迁移学习方式时,模型训练准确率和交叉熵损失函数变化如图10-a、图10-b所示。

从图10可知,MobileNetV3-S0在运用3种不同方式训练过程中,采用迁移学习训练的模型收敛速度和训练准确率明显高于不采用迁移学习的模型,交叉熵损失函数则明显低于不采用迁移学习的模型。

同时,观察图10中曲线变化可知,在经过50次左右迭代训练后,训练准确率和交叉熵损失函数逐渐趋于稳定,其中,采用训练全部层方式的模型准确率最高,交叉熵损失函数最小,基本降到0.1以下,且交叉熵损失函数波动最小。这说明采用训练全部层的迁移学习方式对模型性能的提升最大。

3.3.3 滤波方式对识别准确率的影响

将原始数据集分别经过均值滤波、高斯滤波和中值滤波这3种滤波方式处理并通过图像增强后,依次放入模型中进行训练与测试,其所得识别准确率如表2所示。

由表2可知,除经过中值滤波处理的数据集训练准确率与原始数据集一致外,其余滤波方式下的训练准确率均略有下降。同时,3种经滤波处理的数据集测试准确率相较于原始数据集均有所降低,其中表现最好的中值滤波方式仍降低了1.00百分点。这说明,虽然滤波处理可以去除图像中干扰识别效果的噪声,但同时也对图像本身的部分特征信息造成了一定影响。因此,仍选择经过图像增强但未滤波图像数据集用于模型的训练。

3.3.4 模型性能对比

运用ResNet18、EfficientNet-B0和MobileNetV3-S0这3种模型进行对比训练和测试,结果(表3)表明,MobileNetV3-S0模型的训练识别准确率分别仅比EfficientNet-B0和 ResNet-18 高出1.26和0.12百分点,测试识别准确率则是比ResNet-18高1.50百分点,比EfficientNet-B0低4.00百分点。

虽然MobileNetV3-S0的测试准确率略低于EfficientNet-B0,但同时由表3可分析出,ResNet18、EfficientNet-B0的权重参数分别为MobileNetV3-S0的4.60倍和2.08倍,反之MobileNetV3-S0的识别速率则是ResNet18、EfficientNet-B0的18.50倍和18.96倍。

由表4可知,MobileNetV3-S1模型相比较于MobileNetV3-S0模型,权重减小7.39 MB,测试准确率下降1.00百分点,这说明调整超参数reduce_divider可以较大程度地减小模型权重,但同时会损失一定准确率。而MobileNetV3-S2相较于MobileNetV3-S1,权重缩减0.51 MB,测试准确率升高2.50百分点,说明基于MobileNetV3-S1降低模型深度,不但能减小模型权重,还有助于提高测试准确率。MobileNetV3-S3的权重比MobileNetV3-S2减少了1.12 MB,测试准确率降低0.50百分点,由此可知,在降低模型深度的同时,减小模型宽度,可进一步减少模型冗余参数,但会损失一定的准确率。

因模型结构不同于MobileNetV3-S0,因此对于MobileNetV3-S3,0.001的學习率可能不是最佳学习率。故再进行对比试验,由表5可知,在3种学习率中,最适合MobileNetV3-S3的仍是0.001。

综上可知,相比MobileNetV3-S2,MobileNetV3-S3的识别准确率略有下降,但比MobileNetV3-S0提升了1.00百分点,且MobileNetV3-S3的权重仅为MobileNetV3-S0的7.01%,对单张图片识别速率也略有提升。因此,以MobileNetV3-S3作为最终的马铃薯叶部病害识别模型。

3.3.5 图像分割对识别效果的影响

将运用GrabCut算法对部分背景相对复杂图像进行图像分割,提取图像后再进行图像增强,所得数据集输入MobileNetV3-S3中。由表6可知,经过GrabCut算法分割后数据集训练准确率降低了0.50百分点,但是测试准确率却提升了1.50百分点。由此可知,运用GrabCut算法进行图像分割,有助于进一步提高病害叶片的识别准确率。故最终选用经GrabCut算法图像分割扩充后的数据集。

4 结论与讨论

本研究针对马铃薯病害快速准确实时识别的需求,建立包含马铃薯健康、晚疫病、早疫病、炭疽病及其他病害共5种马铃薯叶部图像数据集。对该数据集运用GrabCut算法进行图像分割并进行图像增强操作,在对MobileNetV3-Small模型进行优化后,基于优化后模型和迁移学习方式进行训练,并与ResNet18、EfficientNet-b0这2种网络模型进行对比试验。根据试验结果得出如下结论:(1)采用迁移学习的方式在提高模型的识别准确率的同时降低了模型的交叉熵损失函数,增强了模型稳定性。而这2种迁移学习训练方式,从识别率和损失函数收敛2个方面来看,训练全部层的方式更优。(2)基于MobileNetV3-Small改进所得模型MobileNetV3-S3,采用0.001的学习率和训练全部层的迁移学习方式,对仅进行图像增强的数据集训练后所得测试准确率最高为96.50%,比MobileNetV3-S0高出1.00百分点。在运用GrabCut算法分割图像后,模型测试准确率提升至98.00%。(3)MobileNetV3-S3权重大小为 0.68 MB,MobileNetV3-S0权重为其14.26倍。MobileNetV3-S3模型测试准确率虽略低于EfficientNet-B0,但其识别速率为后者的70.43倍,且其权重仅为后者的3.37%,有利于马铃薯病害识别在移动端的实现。

综上所述,将基于GrabCut算法分割图像所建数据集,结合基于MobileNetV3-Small改进的模型MobileNetV3-S3,运用迁移学习方式训练所得识别模型,在马铃薯叶部病害识别上,具有准确率高、识别快、权重小等特点。该方法为实现马铃薯叶部病害识别在移动端的良好应用提供了可行性。

参考文献:

[1]肖金钟. 马铃薯生产中的常见病害[J]. 现代园艺,2020,43(18):37-40.

[2]范子耀,王文桥,孟润杰,等. 7种杀菌剂对马铃薯早疫病菌室内毒力及田间防效[J]. 农药,2011,50(7):531-533.

[3]王秀鹏. 马铃薯常见病害识别及防治技术[J]. 种子科技,2018,36(6):101,103.

[4]边柯橙,杨海军,路永华. 深度学习在农业病虫害检测识别中的应用综述[J]. 软件导刊,2021,20(3):26-33.

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

[6]孙文杰,牟少敏,董萌萍,等. 基于卷积循环神经网络的桃树叶部病害图像识别[J]. 山东农业大学学报(自然科学版),2020,51(6):998-1003.

[7]谢裕睿,苗 晟,张 铄,等. 基于残差神经网络的烟草病害识别研究[J]. 现代计算机,2020(30):27-31.

[8]杨 森,冯 全,张建华,等. 基于轻量卷积网络的马铃薯外部缺陷无损分级[J]. 食品科学,2021,42(10):284-289.

[9]刘 洋,冯 全,王书志. 基于轻量级CNN的植物病害识别方法及移动端应用[J]. 农业工程学报,2019,35(17):194-204.

[10]Rother C,Kolmogorov V,Blake A.“GrabCut”:interactive foreground extraction using iterated graph cuts[J]. ACM Transactions on Graphics,2004,23(3):309-314.

[11]鲍文霞,吴 刚,胡根生,等. 基于改进卷积神经网络的苹果叶部病害识别[J]. 安徽大学学报(自然科学版),2021,45(1):53-59.

[12]贾鹤鸣,郎春博,姜子超. 基于轻量级卷积神经网络的植物叶片病害识别方法[J]. 计算机应用,2021,41(6):1812-1819.

[13]Krizhevsky A,Sutskever I,Hinton G E. ImageNet classification with deep convolutional neural networks[J]. Communications of the ACM,2017,60(6):84-90.

[14]Simonyan K,Zisserman A. Very deep convolutional networks for large-scale image recognition[J]. Computer Science,2014,52(3):1-14.

[15]Szegedy C,Liu W,Jia Y Q,et al. Going deeper with convolutions[C]//2015 IEEE Conference on Computer Vision and Pattern Recognition.June 7-12,2015,Boston,MA.IEEE,2015:1-9.

[16]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,June 27-30,2016,Las Vegas,NV,USA.Las Vegas:IEEE,2016:770-778.

[17]Howard A G,Zhu M L,Chen B,et al. MobileNets:efficient convolutional neural networks for mobile vision applications[EB/OL]. [2021-08-17]. https://arxiv.org/abs/1704.04861.

[18]Howard A,Sandler M,Chen B,et al. Searching for MobileNetV3[C]//Proceeding of the IEEE/CVF International Conference on Computer Vision (ICCV). Seoul:IEEE,2019:1314-1324.

[19]Sandler M,Howard A,Zhu M,et al. MobileNetV2 inverted residuals and linear bottlenecks[C]//2018 IEEE/CVF Conference on Computer Vision and Pattern  Recognition. Salt Lake City:IEEE,2018:4510-4520.

[20]劉梦伦,赵希梅,魏 宾. 基于MobileNet V2-ELM的肝硬化识别[J]. 青岛大学学报(自然科学版),2019,32(4):17-21.

[21]Tan M X,Chen B,Pang R M,et al. MnasNet:platform-aware neural architecture search for mobile[C]//2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).June 15-20,2019,Long Beach,CA,USA. IEEE,2019:2815-2823.

[22]Hu J,Shen L,Sun G,et al. Squeeze-and-excitation networks[C]//Proceeding of the 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition Piscataway:IEEE,2018:7132-7141.

[23]Tan M X,Le Q V. EfficientNet:rethinking model scaling for convolutional neural networks[C]//36th International Conference on Machine Learning(ICML 2019).Los Angeles:Proceeding of Machine Learning Research,2019:6105-6114.

[24]米 硕,孙瑞彬,李 欣,等. 迁移学习在卷积神经网络中的应用[J]. 中国新通信,2018,20(7):121.

[25]冯 晓,李丹丹,王文君,等. 基于轻量级卷积神经网络和迁移学习的小麦叶部病害图像识别[J]. 河南农业科学,2021,50(4):174-180.

猜你喜欢 迁移学习马铃薯 马铃薯有功劳少儿科学周刊·儿童版(2021年21期)2021-12-11轴承智能故障诊断技术发展装备维修技术(2021年37期)2021-11-03一种迁移学习算法在番茄病害检测上的应用湖北农业科学(2020年7期)2020-07-23“人工智能+金融大数据”客户信用评估中国管理信息化(2020年11期)2020-07-14基于卷积神经网络的多尺度葡萄图像识别方法计算机应用(2019年10期)2019-11-15给马铃薯“开窗”动漫界·幼教365(小班)(2019年10期)2019-10-28基于卷积神经网络迁移学习的桥梁裂纹检测与识别科技创新导报(2019年4期)2019-06-10想露露脸的马铃薯阅读与作文(小学低年级版)(2019年5期)2019-05-27迁移学习赢未来(2018年2期)2018-09-25想露露脸的马铃薯人生与伴侣·共同关注(2018年4期)2018-04-28

推荐访问:病害 马铃薯 识别