【论文阅读】PD2SE-Net:Computer-assisted plant disease diagnosis and severity estimation network

主要是对AI challenger 2018植物病害程度分类比赛的数据进行了整理,选出了其中的一部分数据作为这篇文章的数据集。文章中网络的结构是用resnet残差网络作为基础,然后加入了shuffle单元(参考shuffle net),并在网络后面分了三个分支,做不同的功能,分别是叶片种类分类、叶片病害分类、叶片病害程度分类,准确率分别达到了0.98,0.99,0.91。

关于shuffle net的介绍可参考https://blog.csdn.net/u013709270/article/details/78967484

目录

1. Introduction 

2. Datasets 

2.1. 创建数据集

2.2. 数据增强

3. PD2SE-Net的结构

3.1共享层的参数

3.2残差学习

3.3. Shuffle block

4. 实验

4.1实现细节

4.2实验结果

4.3定性分析

4.4.比较评价

4.5 CNN的深度特征可视化

5 结论

附录A


摘要:本文提出了一个鲁棒的基于图片的植物病害诊断和严重程度估计的网络(PD2SE-Net),网络中包括一个残差结构和shuffle单元。本文目的是设计出一个出色并且有实用性的植物病害诊断系统。提出的PD2SE-Net同时解决了常见植物病害的诊断和病害严重程度的估计问题。此外,本文还利用卷积神经网络(CNNs)的数据扩充和可视化技术,提高了训练期间超参数选择的准确性和快速性。据我们所知,这份报告首次描述了一种计算机辅助方法,它可以基于深度学习同时估计疾病的严重程度、识别物种和对植物疾病进行分类。提出的PD2SE-Net50由ResNet50体系结构作为基本模型,shuffle单元作为辅助结构,该方法在病害严重程度估计、植物物种识别和病害分类等方面的综合精度分别达到0.91、0.99和0.98,高于现有方法。作为一名诊断专家,我们的系统利用植物叶片的多变量特性,以较低的计算成本提供优异的分类性能。实验结果验证了该网络的可行性和有效性。

1. Introduction 

植物病害是造成植物破坏的主要原因之一。对植物病害的精确检测,有助于提出早期治疗策略,有效预防病害的传播,对减少经济损失具有重要意义。近年来,基于视觉图像的植物病害自动诊断与严重程度评估在农业生产中发挥着重要的作用,在过去的二十年中受到了广泛的关注。

计算机视觉和图像处理技术(CVIP)以前被用于诊断、农业应用的许多领域,如植物物种分类、叶片疾病识别和植物疾病严重程度的估计。Husin等(2012)提出了一系列基于图像处理的技术,用于植物辣椒病害的早期检测和植物健康的识别。支持向量机(SVM)作为一种有监督的学习方法,也成功地应用于杂草和兵团的分类问题(Ahmed et al., 2012;(Tellaeche et al., 2011)。Monica等(2014)提出了一种仅基于veins. munisamietal .(2015)的方法,利用形状特征和颜色直方图与K-nearest Neighbour (KNN)分类器对被扫描的豆类叶片进行分割和分类。

深度学习(DL)在生物信息学、机器视觉检测、自动语音识别、医学图像分析等领域取得了重大突破。如今,传统机械必然解决的植物分类问题可能得益于深度学习方法的发展。利用原始图像描述符不断提出各种各样的方法,如植物分类和检索,包括叶子形状(Agarwaletal.,2006;CamargoNetoetal.,2006;Duetal.,2007;查基和帕瑞克,2012;Imetal,1998; Sole-Casalsetal,2008),叶色(Horgan etal.,1998;Perez等,2000)和叶片纹理(GolzarianandFrick,2011;Bamaetal.,2011)。

由于复杂性和植物病理学问题,在植物疾病诊断中,深度学习作为一种新的方法得到了广泛的应用。Amandaetal.(2017)在利用深度学习解决木薯疾病诊断方面取得了相当大的成功。Lu等人(2007)提出了一种提高cnns识别能力的技术,该技术可以通过深度卷积神经网络有效地对10种水稻疾病进行分类。ferentinos(2018)(就是用8万张图片那篇文章,博客里有Ferentinos,K.P.,2018 .Deep learning models for plant disease detection and diagnosis)也开发了一种类似的方法,通过简单的健康和患病作物的图像来识别和诊断植物疾病。Fuentes等人(2017)提出了一种基于强大的基于cnns的疾病和番茄病害实时识别检测器的实用解决方案。

虽然现有的检测和诊断植物病害的技术是有效的,但它们在估计植物病害的严重程度时是没有用的。Wang等人(2017a, 2017b)在公共数据集plantvillage(2014)中对苹果健康和黑腐病进行了病害严重性的注释。然而,他们只确定了特定疾病的程度。因此,这些方法不适用于植物病害的同时诊断和严重程度的估计。

据我们所知,目前还没有任何工作致力于开发具有植物物种识别、疾病分类和疾病严重程度估计能力的多功能诊断系统。为弥补这些研究空白,提出了一种多功能计算机辅助诊断植物叶片病害的新方法。特别是,建立了一种基于图像的植物病害诊断与严重程度自动评估网络(PD2SE-Net),并结合剩余结构(He et al., 2016)和shuffle单元(Ma et al., 2018a, 2018b)。与现有方法相比,该方法有三个主要贡献。

(1)它是一个基于网络的端到端可训练的多功能分类诊断系统,而现有的技术大多集中于单诊断。

(2)利用Shuffle-Net-v2的网络结构来降低计算复杂度。

(3)每个残差块采用信道shuffle-v2操作,实现信道间的信息通信。

2. Datasets 

提出的模型基于人工智能挑战者全球人工智能竞赛(www.challenger.ai)检索的综合数据集和Hughes and Salathe(2014,2015)发布的综合数据集的多功能诊断系统模型。在实验中,我们使用部分正确标注的数据作为数据集,消除了各种模糊样本。

2.1. 创建数据集

我们实验所用的数据集包括9种不同的植物。特别是,每一个种类都包含一个健康的类别和几个疾病类别,每个疾病类别都包含两类疾病,即一般类型和严重类型,如图1所示。更详细地,我们在附录A的表A1中给出了关于数据集的所有信息和统计数据。最后,我们得到了45个分类的病害估计值,27个不同的病害分类的植物病害分类值,9个植物种分类的植物病害识别值。

【论文阅读】PD2SE-Net:Computer-assisted plant disease diagnosis and severity estimation network_第1张图片

图二是训练集和验证集分布的可视化描述。我们发现数据的极值不均匀分布对实验结果影响很大。因此,因此,每个残差块都采用通道shuffle操作的方法。【论文阅读】PD2SE-Net:Computer-assisted plant disease diagnosis and severity estimation network_第2张图片

2.2. 数据增强

为了减少图像数据的过拟合,提出了一种数据增强方法,即使用保留标签的变换来人为地扩大数据集(Krizhevsky et al., 2012)。 Perez and Wang(2017)提出了两种不同的方法来增加数据。第一种方法是在训练辅助器之前增强数据库生成对抗网络(GANs),另一种方法是通过预先设置的神经网络来增强。

在这项工作中,采用了几种不同的数据增强形式。具体来说,第一种数据增强形式包含训练图像的平移和水平反射。而数据增强的第二种形式是随机添加盐噪声或高斯噪声,改变亮度或饱和度,使训练图像产生模糊或变形。因此,增加了数据集中的数据量,图3展示了一些增强图像样本。

3. PD2SE-Net的结构

提出的PD2SE-Net的主干网络是基于ResNet的CNN模型和ShuffleNet-V2模型构建的,以构建一个植物病害的自动化诊断和严重性估计系统。

在过去的十年里,我们见证了在处理各种视觉任务的应用上的成功爆炸(Krizhevsky等,2012;Long等,2014;任等,2017;Toshev和Szegedy, 2014)具有很高的精度和速度。开发新型cnns是一项工程任务,它可以解决许多可视化相关问题。随着最先进的深度学习架构的出现,ImageNet的分类精度得到了极大的提高(Russakovsky et al., 2015)。这些强大而流行的深度学习架构包括AlexNet、VGGNet (Simonyan和Zisserman,2014)、Inceptionmodel(szegedaital,2015)、ResNet(He etal., 2016)、DenseNet (Huang etal., 2017a, 2017b)、ResNeXt (Xie etal., 2017)和SE-Net (Hu etal., 2017)。此外,最近提出了多种轻量级架构,如Xception(Chollet,2016)、MobileNet (Howardetal.,2017)、MobileNet- v2 (Sandleretal.,2018)、ShuffleNet (Zhang etal.,2017)、ShuffleNet- v2 (Ma etal., 2018a, 2018b)和CondenseNet(Huangetal.,2017a,2017b)。在图像识别任务方面,CNNs在过去的10年里取得了巨大的技术进步,并在许多领域得到了广泛的应用。在本研究中,我们尝试建立一个新颖的端到端模型,用于植物病害的诊断和严重程度的估计。所提出的PD2SE-Net结构如图4所示。其中,以ResNet50网络(Heetal.,2016)为基本模型,整合ShuffleNet-V2的构建模块(Ma etal., 2018a, 2018b)。共享层作为前端基本模型,以植物图像的原始像素为输入,利用最后的残差块提取细粒度分类的特征图(Wangetal.,2017a,2017b)。表一总结了网络的不同模块。

【论文阅读】PD2SE-Net:Computer-assisted plant disease diagnosis and severity estimation network_第3张图片

【论文阅读】PD2SE-Net:Computer-assisted plant disease diagnosis and severity estimation network_第4张图片

3.1共享层的参数

引入剩余结构(Heetal.,2016)来构建参数共享层,使模型每批更新信息量更大。为了减少网络的冗余信息,Boulch(2017)提出了一种新的基于剩余网络的共享权模型ShaResNet,该模型的参数比顺序剩余权模型轻25 - 45%。受ShaResNet的启发,使用ResNet50构建基本框架。该方法在剩余块数和网络中冻结层数上与ShaResNet架构不同,如图5所示。

【论文阅读】PD2SE-Net:Computer-assisted plant disease diagnosis and severity estimation network_第5张图片

在我们的工作中,参数共享层的参数(即第0层、第1层和第2层)由后续层(即第3层和第4层,Shuffle块1和Shuffle块2)共享。此外,第3层的参数由第4层和Shuffle块2共享。

3.2残差学习

残差网络是有HE等人(2016)提出的,在图像分类、目标检测和语义分割等许多视觉任务中都证明了该模型的有效性。图5(a)说明了基础的残差单元,残差函数可以被表示为

其中(x)是单元的输出,短链接W(x)定义为x的一个线性投影。批归一化(BN) (Ioffe and Szegedy,2015)用于对给定层的输出进行归一化,

其中分别代表当前批次x的偏差和标准偏差。β,φ是可训练的参数,可以在每次迭代更新。为了避免除数为0,设置一个很小的常数为

如果批数合适,如16、32、64和128,BN可以有效地防止过拟合问题。非线性激活单元ReLU (Nair and Hinton, 2010)是一种常见的不确定激活函数,非线性决策边界可以改善网络的鲁棒性,可表示为

图5(b)描述了channelsshuffle的操作过程,它受到ShuffleNet-V2的启发,用于实现两个分支之间的信息通信。

3.3. Shuffle block

近年来,神经网络已被证明是一种有效的图像分析模型,在图像分类、医学图像分析、目标检测和检索等方面取得了先进的成果。然而,计算复杂度作为神经网络设计的一个重要考虑因素,限制了网络性能的进一步提高。为了解决这个问题,,Maetal.(2018a,2018b)提出了一个新的网络,ShuffleNet-V2,它可以应用于低端设备,如手机。

此外,通道划分(Maetal.,2018a,2018b),作为一个重要的操作被引进了ShuffleNet-V2。如 图6所示,输入的C特征通道被划分为两个分支,分别为C0 C1通道。

ShuffleNet单元用来提取不同植物物种和疾病的特征。利用该方法,该网络可以实现植物物种识别、疾病分类和严重程度估计这三个计算复杂度较低的功能。

4. 实验

我们的实现基于公开可用的PyTorch框架(Ketkar,2017)。实验采用双CPU/双gpu平台,采用Xeon(R) 2.20GHz (E5-2699 v4) CPU, 128GB内存和两块 Tesla P100显卡。

4.1实现细节

在深度网络的训练阶段,实现模型优化包括两个步骤。具体来说,第一步是利用Adam(KingmaandBa,2014)对模型进行优化,这是一种有效的基于一阶梯度优化的随机优化方法。Adam的一些优点包括内存需求小、适合于非平稳目标和问题以及对不同参数具有自适应学习率的梯度估计。在时间步长为t时,参数θ的梯度gt可被表示为

参数的更新规则可被表示为

其中,mt为偏置第一矩估计,vt为偏置第二原始矩估计,mt‘和vt’分别为偏置校正后的mt第一矩估计和偏置校正后的vt第二原始矩估计,α为学习率。一个很小的常数是用来避免除数为0的。Adam其他的优化方法相比,比如RMSProp(Tieleman and Hinton, 2012), AdaGrad (Duchi et al., 2011) and AdaDelta(Zeiler,2012)能更快更好地收敛。

随机梯度下降(SGD)算法(Bottou, 2010)的收敛性优于Adam算法,但收敛速度较慢。因此,第二步是使用SGD来提高网络的性能。以t为步长,更新参数θt,训练样本{x1,x2,…,xm},标签为l{y1,y2,…,ym},则梯度估计可表示为

所以参数更新规则可写作

随机梯度下降的可视化过程如图7所示。

【论文阅读】PD2SE-Net:Computer-assisted plant disease diagnosis and severity estimation network_第6张图片

我们对网络的输入图像进行了转换,固定大小为256×256。在训练过程中,学习速率每15个epoch动态降低1/10,第一步初始学习速率设置为0.001,第二步设置为0.0001。实验中采用了0.00005的weight decay和64的batch size。优化方法的训练参数如表2所示。

【论文阅读】PD2SE-Net:Computer-assisted plant disease diagnosis and severity estimation network_第7张图片

4.2实验结果

为了确定基于可见距离图像的植物病害识别和严重程度估计模型的适用性,进行了实验。实验结果如图8所示。特别是,在训练过程中,ResNet50每个epoch的损失和精度都达到了令人满意的结果,在植物物种分类、病害诊断和严重程度估计方面,我们分别可以达到0.99、0.98和0.91的最高精度。此外,我们可以发现,在我们的研究中很少发生过度拟合,因为在数据集中合理地划分了类。

【论文阅读】PD2SE-Net:Computer-assisted plant disease diagnosis and severity estimation network_第8张图片

4.3定性分析

为了分析提出的模型的有效性和植物叶片特征提取的CNNs性能,对植物物种的分类精度如图9所示。值得注意的是最低的分类精度大约为0.9701.这是与在相同问题上解决的其他模型可相提并论的,或着说更优于他们。

【论文阅读】PD2SE-Net:Computer-assisted plant disease diagnosis and severity estimation network_第9张图片

植物病害的诊断精度如图10所示。此外,我们看到,所有植物疾病诊断的准确性都在0.90以上,除了第七类(Cercospora zeaemaydis tehon and daniels)。值得注意的是,对10个分类的诊断准确率达到了最高的100%

【论文阅读】PD2SE-Net:Computer-assisted plant disease diagnosis and severity estimation network_第10张图片

如图11所示,多个类的估计精度较低。这是因为某些极端病害严重程度的植物叶片很难被正确估计,甚至对人类来说是不可能的。然而,该模型对大多数类都获得了理想的估计性能。

【论文阅读】PD2SE-Net:Computer-assisted plant disease diagnosis and severity estimation network_第11张图片

4.4.比较评价

为了比较,ResNet18、ResNet34、resnet50和resnet101几个残差网络模型,作为基本模型,并采用shuffle units作为辅助结构。所有的训练超参数保持不变,以评估我们的方法。植物病害的准确程度、严重程度的估计如表3所示。

【论文阅读】PD2SE-Net:Computer-assisted plant disease diagnosis and severity estimation network_第12张图片

根据参数数量和准确率的度量,最好的PD2SE模型是由SGD来优化的,基础模型为resNet50。SGD通常要比Adam表现好。本文提出的模型在精度上得到了显著的提高。同时,通过参数共享层,大大减少了参数的数量。

4.5 CNN的深度特征可视化

CNNs的深度特征可视化可以帮助我们理解从十亿个图像传感器中快速提取图像的过程,这有助于在训练过程中调整最优超参数。为了进一步研究所提出的PD2SE模型的学习能力,我们将原始叶片图像的特征如图12所示,其中(b)和(c)分别显示了经过训练和未经训练后输出的特征。注意,与训练相对应的特征映射更关注感兴趣的区域,而过滤了大部分背景。

【论文阅读】PD2SE-Net:Computer-assisted plant disease diagnosis and severity estimation network_第13张图片

图13是对max pooling层的特征可视化。从可视化上可以看出,maxpooling层得到的feature map在突出重要feature的同时,减少了更多的冗余信息。因此,最大max pooling层可以减轻过度拟合的影响,因为它忽略了相关信息。

【论文阅读】PD2SE-Net:Computer-assisted plant disease diagnosis and severity estimation network_第14张图片

为了表示特征提取的变换,如图14展示了第1层、第2层、第3层和第4层得到的不同特征图的比较。值得注意的是,所提出的PD2SE模型对植物叶片病害进行了优化学习。特别是,特征图里每一个点是一个经过修正的激活,它越亮,所代表的激活值就越大。

【论文阅读】PD2SE-Net:Computer-assisted plant disease diagnosis and severity estimation network_第15张图片【论文阅读】PD2SE-Net:Computer-assisted plant disease diagnosis and severity estimation network_第16张图片

 

事实上,前三层主要关注的是植物叶子的变化,这可能会对疾病区域的四种模式产生特别的影响。如图15所示,植物叶片病害的区域受到了特别的关注,这更好地解释了我们的模型实际了解到的情况。

【论文阅读】PD2SE-Net:Computer-assisted plant disease diagnosis and severity estimation network_第17张图片

5 结论

本文提出了一个新的网络PD2SE-Net为了植物病害识别和严重性估计。介绍了该系统的残差结构和shuffle单元,实现了一套实用实用的植物物种识别、植物病害诊断和严重程度估计系统,与现有技术相比,具有较大的可比性。此外,本论文的系统展示了更强的植物种类分类性能和更广的范围以及更低的计算成本的疾病。结果:我们的网络架构产生了最先进的性能。其中,对病害严重程度估计、植物物种识别和植物病害分类的总体准确率分别为0.91、0.99和0.98。这使得该系统成为一种潜在的候选系统,可以用于一种便携式设备,并对植物病害进行实时诊断。此外,本文还对神经网络的数据增强和可视化进行了说明,有助于提高模型的性能。此外,我们的方法能够通过替换基本模型移植其他优秀的模型。

接下来的研究将集中于开发一个有前景的应用程序,并在智能终端设备上使用该方法。我们希望我们提出的系统将得到优化,为农业研究领域做出重大贡献。

附录A

你可能感兴趣的:(植物病害)