基于改进的VGG13网络的番茄叶片病害识别
2023-02-08肖靓瑶方焯
肖靓瑶 方焯
关键词:番茄叶片病害;卷积神经网络;细粒度图像;双线性池化;图像分类
中图法分类号:TP183 文献标识码:A
1引言
番茄在生长的过程中,产量受光照、湿度和病虫害等影响。其中,病虫害的影响最为严重。农作物病虫害不但影响作物的品质,而且减少产量。当番茄植株有病虫害时,通常会大规模使用农药进行喷洒处理,但当使用农药时,会影响番茄的生长,并且番茄果实有许多的农药残留。所以,在病虫害暴发的初期,需要合理地利用农药并控制在一定的范围内,才能有效地避免产量降低。
随着计算机技术和机器学习的快速发展,出现了许多相应技术。传统机器学习方法的图像识别分类分为以下几个步骤:数据分析和预处理、边缘特征提取后进行分类。Kurmi等对图像进行预处理,得到叶片的轮廓信息并去除背景,避免其干扰,能最大限度提取叶片病害的信息,从而进行分类。杨英茹等提出基于支持向量机的CCL-SVM算法,實现对复杂环境番茄叶片图像病害识别。然而,传统的机器学习方法的预处理普遍非常复杂,而且只能用于个别植物病虫害的识别,迁移能力较差。随着视觉领域和深度学习不断发展,传统机器学习中烦琐的图像预处理步骤迁移能力差的问题得到解决。
现在,已经出现了许多应用广泛、迁移度高的卷积神经网络,如VGG,MobileNet,ResNet等。国内外已经出现许多利用卷积神经网络对病害进行识别的研究。肖旺等基于GoogLeNet网络,减少网络层数,提出GoogLeNet-Mini算法实现对鸭蛋表面缺陷的检测。但当使用上述网络识别细粒度图像时,准确率会降低,细粒度数据集拥有较小的种间差异和较大的类内差异以及冗余背景信息的特点,导致识别准确率降低。Lin等提出了双线性网络(Bilinear-CNN),在网络中设计两条通道提取图像的特征信息,但会导致参数和计算量增加。为了解决上述问题,李扬等对此进行改进,提出单特征通路的双线性池化方法,以降低参数和计算量,实现对服装图像风格识别:杨旺功等利用以轻量化网络EfficientNet为基础,加入双线性池化及注意力机制,提高了对垃圾分类任务的精度。
本文识别分类主体为番茄病害叶片图像,由于其图片为细粒度图像,不同番茄病害种类叶片的外观非常相似,经典的卷积神经网络的识别率并不高。针对此现象,提出Bilinear-VGG13模型,它基于VGG13网络进行改进,由于原网络为直链结构,能够随意添加其他卷积层,基于这一良好特性,在连接层之前加入双线性池化,减少背景的干扰,使模型能更加关注病害区域,并与其他经典网络进行对比,分析其不同番茄病害种类的识别情况,验证本文网络识别番茄叶片病害方面的优秀表现。
2实验数据
本文数据集来源于PlantVillage公共数据集,从中截取了番茄叶片病害图片,共有10种不同的病害种类,分别用1~10进行编号,本文使用的原始数据共有11644张图片。
为了防止模型过拟合,同时为了让每个种类的病虫害图片数量达到均衡,利用图像增强技术对图片进行增强。利用图片翻转和改变对比度等技术可以得到不同角度的图片,从而获得数量均衡的样本数据。本文将原始数据进行扩增,得到了15974张图片,使得每个种类图片数量为1500左右,最后将数据60%作为训练集、30%作为验证集、10%作为测试集。部分的数据集图像如图1所示。
3改进的卷积神经网络
整个Bilinear-VGG13模型结构如图2所示,以VGG13网络为基础进行改进,整个模型分为两个部分,即特征信息提取和识别分类。特征提取的功能是由VGG13中conv1_1~conv5_2共10个卷积层构成,其中下划线“_”前的数字代表不同的卷积模块序号,后面的数字代表卷积块某一卷积层序号。同时,每种卷积模块中间通过局部卷积池化降低特征图的大小。由于不同种类的番茄病害种类的差别较小,识别的精度可能会受到影响,为了提高模型对叶片病害区域的敏感程度,并避免番茄叶片图片背景的影响,在网络的连接层前加入单一特征通路的双线性池化,以增强对细粒度图像的识别能力。原始的Bilinear CNN通过两条并行的通路提取特征信息,并通过双线性池化得到格拉姆矩阵,提取有效区分细粒度图像的特征信息。但是,两条通道得到不同的特征信息再经过双线性池化操作,将会导致数据和计算量成倍地增加。为了解决此问题并能够利用双线性池化良好的特性,本文将VGG13卷积核提取到的单一特征通路进行池化操作。在识别分类的过程中,本文使用两个连接层进行分类,大小分别为512×10,最后将分类概率通过Softmax分类器进行输出。
Bilinear-CNN通常被用于细粒度图像,利用两个通路提取特征信息,然后进行双线性池化,减少背景的干扰。该网络能够很好地分辨细粒度图像,并且有着不错的准确率,该网络双线性池化结构如图3所示。
4.4对比实验
为了更好地验证本文模型的有效性,利用扩增后的番茄叶片病害图片作为数据集,使用本文提出的Bilinear-VGG13模型分别与AlexNet,VGG13和MobileNet进行对比实验。从表1可知,相比于其他模型,本文模型的识别准确率是最高的。
利用上文给出的评价指标的公式,利用混淆矩阵分别算出各个模型的相关评价指标并进行比较。从表2数据可知,本文模型对病害种类识别的召回率(Recall)、精确度(Precision)和平均交互比(MIoU)都高于其他模型。同时,改进模型对测试集的准确率为96.34%,与其他模型相比也是最高的。
为了验证本文网络的迁移能力较强,对其他农作物病害也有较高的分类能力,利用改进模型对土豆、玉米和苹果的病害叶片图片进行分类识别,最后得出的识别准确率如表3所列。根据表3数据可知,本文模型对其他品种的作物叶片病害识别分类的精度高,反映出改进网络具有较强的可迁移性。
5结束语
观察番茄叶片是否出现病害特征,是检测作物是否发生病变最快速的方法。本文研究对象番茄叶片病害图片属于细粒度图像,不同病害种类的差异较小,并且由于光照、背景等因素影响,利用经典的卷积神经网络进行识别分类的准确率不高。针对此问题,同时为了有效地判断番茄作物的生长情况并且避免产量减少,本文基于改进的VGG13网络对番茄叶片进行识别,验证本文模型对番茄叶片病害模型识别的有效性。与经典的卷积神经网络VGG13,MobileNet和AlexNet相比,本文模型的识别率最高;本文在VGG13网络的基础上,加入了双线性池化,提高对番茄图像病害区域特征信息的提取能力,并增强了模型的性能。然而,本文使用的是固定环境的番茄叶片病害图像,减少了外部环境的影响,使得模型对于自然环境的病害图片识别有一定的局限。未来将会进一步研究图像的分类,以及对于不同的自然环境中的病害识别。
作者简介:
肖靓瑶(1999—),硕士,研究方向:图像处理。