基于卷积神经网络和小样本的茶树病害图像识别
2019-09-10孙云云江朝晖董伟张立平饶元李绍稳
孙云云 江朝晖 董伟 张立平 饶元 李绍稳
摘要:以常见且特征相似的茶轮斑病、炭疽病和云纹叶枯病为对象,研究在小样本情况下利用卷积神经网络进行病害图像识别问题。运用7种模式的预处理方法对茶树叶部病害图像样本进行处理,并采用MexNet经典网络模型进行学习实验,比较、分析其训练及识别效果。结果显示,模式7训练模型精度为93.3%,平均测试准确率为90%,且对茶轮斑病、炭疽病和云纹叶枯病的正确区分率分别为85%、90%和85%,在预测值和真实值一致性方面优于其他预处理方法。在小样本情况下,该预处理方法可有效区分、识别3种易混病害,且识别精度高,性能好。
关键词:茶叶病害;图像识别;卷积神经网络;小样本
中图分类号:S126 文献标识码:A 文章编号:1000-4440(2019)01-0048-08
茶树是重要的经济作物,茶树病害发生严重。常见的茶树病害有40多种,以叶部病害居多。利用机器视觉技术对植物病害进行自动检测和诊断是未来的发展方向。由于卷积神经网络(cNN)等深度学习方法是直接由数据本身来驱动及其表达关系的自我学习,因而成为机器视觉的主流算法。Mohantv等训练深度神经网络,对14个作物品种26种病害的检测精度达99.35%。杨晋丹等采用卷积神经网络对草莓叶部白粉病进行识别获得成功。Cruz等开发了一种基于視觉的深度学习技术,并检测Xylella fastidiosa感染的油橄榄叶片焦枯叶。Amara等采用深度学习方法实现了自动化的香蕉病害叶片分类。深度学习模型训练时一般需要大量高质量的病害样本集作为网络模型输入数据,例如张善文等的一种基于卷积神经网络的黄瓜病害识别方法中图像数据集多达15500多幅。Brahimi等收集了14 828张图像对番茄叶片病害进行识别。但在实际应用中,往往存在样本采集少,图像质量低等问题,难以获得良好的识别效果。因此,需要改进模型结构或参数,或者对原始样本进行加工和预处理。例如孙俊等、Srdi.dn等分别设计了多种改进模型,对作物病害进行识别,获得了较高的识别准确率和较强的鲁棒性。吴翔采用Grabcut分割方法对图像集进行预处理,提高了识别精度和识别速率。Lai等、Yi等采用基于IJaDlacian的超分辨率网络对图像集进行预处理,在低分辨率图像集下获得较好的识别效果。
本研究以常见且特征相似的茶轮斑病、茶炭疽病和茶云纹叶枯病为对象,研究CNN在小样本下的识别问题。设计、运用多种预处理方法对茶树叶部病害图像样本进行处理,采用适合病虫害识别的AlexNet经典网络模型进行学习实验。通过比较、分析模型的训练及识别效果,获得有效的图像预处理方法,以期提高小样本CNN病害识别的准确度。
1材料与方法
1.1材料
图像数据来源于安徽省农业科学院农业经济与信息研究所,实地拍摄。具体拍摄方式为:用单反数码相机在自然光和闪光灯补光2种光线环境下,以茶树叶片、土壤、天空等自然环境为背景,在田间直接采集病害图像:再利用图像处理软件对采集到的图像进行元数据标引、裁切、人工分类等预处理。经专业技术人员对比确认,最终筛选出茶树病害叶片样本图片430个,其中,茶轮斑病图片94个,茶炭疽病图片252个,茶云纹叶枯病图片84个。数据集分布情况见表1。典型病害图像如图1所示,大小按比例归一化为300x200像素。由表1和图1可知,病害图像具有数量少、背景复杂和目标区域占比少等特点。
1.2图像预处理方法设计
以MexNet为训练模型在相同参数设置下对同一样本集数据进行试验。在相同参数设置和同一数据集下,训练集图像的尺寸和质量是影响模型训练效率的关键因素。因此,为提高训练图像病害有效信息占比和提高模型训练效率,设计了7种预处理算法模式(表2)进行卷积神经网络模型训练,包含文献[19]和[16]预处理方法在内的8种预处理方法。
1.3卷积神经网络(CNN)模型
卷积神经网络包含多层卷积和池化层,用于逐层提取图片深层特征,在图像识别领域应用效果较好。将预处理后的样本集图像输入CNN模型进行训练,生成3种易混病害识别模型。训练中采用擅长于图像识别的AlexNet经典网络模型,模型结构见图2。以尺寸为50x50的图像为例,模型包含5个卷积层(Convl~Conv5)、3个池化层(Poo-lingl~Pooling3)、2个全连接层(Fc6、Fc7)以及1个分类层。其中,滤波器的大小为11×11x3,卷积层1的卷积核数目为96,卷积层2和5的卷积核数目均为256,卷积层3和4的卷积核数目均为384,2个全连接层的神经元数量均为4 096,分类层的输出类别数目即为最终的类别数。
1.4图像预处理
对样本集图像分别按照表2中设计的预处理方法自动生成7种新的样本集图像。其中k-means提取病斑、最小N*N区域提取和插值重建方法是本研究改进后的预处理方法。归一化处理是针对尺寸不一致的样本图像进行的尺寸强制性统一化处理。SLIC_SVM算法是本团队设计的一种针对茶树叶部病害的复杂背景去除方法,在训练集样本中应用良好。模式1和模式4的预处理方法分别对应文献中的平均像素填充较短边并缩放为统一尺寸的方法和文献中采用的迭代切割方法去除复杂背景并以白色填充背景实现目标提取。形态学处理是指图像处理中的像素点乘、填充和腐蚀等基础运算。
1.4.1改进k-means病斑提取病害样本中叶部病斑颜色特征差异最为显著,因此采用k-means方法在L*、A*、B*颜色空间进行颜色聚类以提取出病斑。该方法采用欧式距离计算像素点间距离,进行区域聚类,聚类完成后,病斑和叶片可以得到有效分离。但在区域图像选择方面,往往需要人工进行挑选确定病斑图像,不利于算法的广泛应用。本研究对该方法进行改进,实现快速、自动地获得目标区域图像。主要原理是根据L*、A*、B*颜色空间下对叶片和病害区域进行聚类,即对2个像素值区间的颜色进行聚类,从而导致2个区域质心分布的差异。根据差异,从分割的图像中通过公式(1)自动提取出病斑区域(图3-b)。
茶轮斑病、炭疽病和云纹叶枯病等病害发生时,叶片上往往会存在多个小区域病斑,这些病斑特征相同,分布具有随机性。若将单叶片中多个病斑区域全部提取作为训练集,会降低有效区域占比,不利于病斑的精确识别。因此,采用形态学处理方法提取出主病斑区域(图3c)。
1.4.2最NxN病斑提取基于CNN对病斑图像进行特征提取和识别中,首先需要将病斑图像归一化为NxN的待训练样本。采用直接归一化或短边填充等方法,往往会造成冗余信息多,不利于有限样本空间下CNN病斑特征的自主学习。结合最小外接矩形方法,提出一种适合于CNN模型样本训练的最小NxN病斑提取方法。
2结果与分析
试验平台环境搭建参数见表4。AlexNet模型参数设置为:网络初始权重提取自标准差为0.01、均值为0的高斯分布:训练阶段采用动量项为0.9的异步随机梯度下降,并设置权重参数的初始学习率为0.01。试验采用交叉验证的方式,按照9:1比例随机分配训练集与测试集,且以表2中设计的预处理方法产生的图像样本集分别进行卷积神经网络AlexNet识别模型训练(图6)。试验中每个模型迭代次数为8 000。在输入卷积神经网络前,模式1定位图像被随机裁剪为280x280 dpi,模式2、3和4定位图像被随机裁剪为80x80 dpi,其他3种模式的定位图像被裁剪为40x40 dpi,裁剪完成后作镜像翻转以扩增数据集。
7种模式下模型训练的精度(Accuracy)和损失函数(Loos)曲线见图7。对7种预处理模式分别训练10次,得到表5所示结果。7种预处理模式下,随着迭代次数的不断增加,训练精度都在不断增加,直至趋于稳定。其中,模式7的训练精度达到0.933,明显优于其他6种模式,Loss收敛速度也较快,因此训练结果可靠。由表5可见,模式7的平均测试准确度为90%,明显优于其他6种模式,且标准差也最小。7种模式的训练结果表明:在训练精度曲线中,训练精度大小顺序为模式7>模式4>模式1>模式2>模式6>模式3>模式5:在loss曲线图中,除了模式5和模式6存在跳跃点以外,其他几个模式曲线收敛速度都较快,可信度都比較高。7种模式的平均准确率大小顺序为模式7>模式1>模式2>模式3>模式4>模式6>模式5;在运行时间上,模式1时间长达3264 s,而其他几种模式都在10 min左右,相差较大的主要原因是模式1中图像尺寸较大。模式7中由于采用图像重建提高样本质量,因而运行时间相对于其他5种模式也增加了约100s,但相对于常规CNN模型训练耗时较少。因此模式7(主要作用是去除背景提取病斑,形态学处理,最小NxN区域提取和超分辨率重建)在训练精度和平均测试准确率及模型训练耗时方面优势明显。
分别以模式7、模式1(文献[19])和模式3(文献[16])的预处理方法对验证集图像进行最终模型识别效果验证。结果表明,Model中70%的轮斑病图像被正确识别为轮斑病,75%的炭疽病图像被正确识别为炭疽病,75%的云纹叶枯病图像被正确识别为云纹叶枯病;Mode3中25%的轮斑病图像被正确识别为轮斑病,85%的炭疽病图像被正确识别为炭疽病,10%的云纹叶枯病图像被正确识别为云纹叶枯病:Mode7中85%的轮斑病图像被正确识别为轮斑病,90%的炭疽病图像被正确识别为炭疽病,85%的云纹叶枯病图像被正确识别为云纹叶枯病。图8为本研究设计的模式7下预处理方法识别3种病害的性能评估ROC曲线,可以看出,模式7对3种病害的识别精度高、性能好。
3结论
针对茶树病害自动图像检测的需求和训练样本小影响深度学习模型性能的难题,研究了通过对样本进行预处理从而提高训练效果的可行性。设计和运用7种不同模式进行卷积神经网络病害识别,用结构和参数相同的MexNet模型训练,分析、比较训练及实测效果。试验结果显示,模式7识别精度达93.3%,平均测试准确率为90%,识别效果最好。试验中,茶轮斑病、茶炭疽病和茶云纹叶枯病3种病害的样本图片数量分别为94、252和84,属于典型的小样本。本研究设计的模式7预处理方法,能够提高小样本卷积神经网络病害识别准确度且性能好,本研究方法能够准确地识别、区分茶轮斑病、炭疽病和云纹叶枯病。