基于MobileNets的果园害虫分类识别模型研究

2018-11-28 09:38樊景超
天津农业科学 2018年9期

樊景超

摘 要:为在小数据集上构建果园害虫分类识别模型,并在普通安卓手机运行,本研究收集了6种常见果园害虫共计3 058张图像,首先对害虫图像进行反卷积遴选,再通过MobileNets构建深度学习模型进行分类识别。结果表明,所构建模型在安卓手机上运行流畅,可对所采集的6种果园害虫进行识别,其准确率均在90%以上,效果良好。

关键词:果园害虫;MobileNets;分类识别

中图分类号:TP311 文献标识码:A DOI 编码:10.3969/j.issn.1006-6500.2018.09.004

Study on Classification and Recognition of Orchard Pests Based on MobileNets

FAN Jingchao

(Agricultural Information Institute, Chinese Academy of Agricultural Sciences, Beijing 100081, China)

Abstract: In order to construct the model of orchard pest classification on the small data set and run identification of model on ordinary Android mobile phone, a total of 3 058 images of 6 common orchard pests were collected. First, the image of the pest was selected by deconvolution, and then the depth learning model was constructed by MobileNets. The constructed model could run well on Android mobile, and identify the selected 6 common orchard pests. The result showed that the recognition accuracy was over 90%.

Key words: orchard pest; MobileNets; classification and recognition

我國是苹果生产大国[1-3],同时又是有害生物危害较为严重的国家之一,苹果生产中有害生物的种类多,发生频率高,且分布地域广[4-11]。害虫分类识别是虫情预测、精准施药等工作的前提基础,在苹果生产、仓储、检疫等领域有着强烈的现实需要,其传统方法依靠专家远程诊断和农技推广人员的识别,劳动强度高、效率低。随着信息技术的兴起,在果园害虫图像分类识别方法上基于纹理特征提取的计算机视觉识别方法成为热点,如直方图、集合不变量、子空间等[12-15],其本质是以专家经验进行人工特征的设计,这类方法一般要求识别环境可控,如将害虫放置在实验室条件下的单一背景中进行特征数据采集,然而在实际应用环境——野外自然条件中,背景和光照以及昆虫姿态均属于不可控因素,大大增加了特征提取的难度。再加上害虫本身纹理丰富、结构复杂,尤其在自然环境下,害虫姿态变化丰富,种内和种间差异大,且背景环境复杂,使图像识别成为一种细粒度识别问题[16],不可避免主观误差,造成所构建模型的适应性较差,技术难度大大增加。

近年来,随着深度学习的兴起,相关研究单位推出了很多性能优异的网络结构优秀的深度神经网络识别模型,从VGG、Inception到ResNet等在识别精度上逐步提高,甚至超越人类的水平。深度学习通过机器自我学习的方式,跳过了人工特征的提取步骤,使得模型的适应性主要取决于图像的标注质量,大大提高了模型的普适性和准确度。随着模型深度的加大,参数越多、越精细,耗费的资源也越多。为实现低成本、操作简便、准确率高、低延迟等实际需求,Google推出面向嵌入式设备的神经网络模型MobileNets,本研究通过将这一方法应用于果园虫害图像的分类识别上,在普通千元级别的安卓手机上进行验证,旨在探索一种符合我国农业信息化需求的害虫图像分类识别方法,为从事农业信息化的相关工作人员提供参考或服务。

1 材料和方法

1.1 数据收集

本研究以果园害虫为测试对象,选取6类常见害虫图像,图像来源主要通过搜索引擎获得。考虑模型的适应度问题,图片尺寸属性不做固定尺寸要求;考虑到显卡的显存容量以及运行时间,图片尺寸控制在100~300 px之间。收集具体图像数据如表1所示。

1.2 反卷积遴选

对于小数据集分类识别任务来说,数据集的图像质量至关重要。Hinton提出的深度学习模型在图像分类等领域展现了惊人的准确度,通过加深网络深度并不断调优模型参数使其识别精度不断提高,但是基于深度学习的图像特征提取一直是个黑箱模型,使深度学习对于图像的特征提取结果一直不能直观判定,导致图像对模型构建的贡献度无法得知。为解决这个问题,Zeiler等[17]提出了反卷积方法来可视化深度神经网络在各层的特征提取。由于本文所采用的数据集属于小规模数据集,因此图像质量好坏对模型的构建会有较大的影响,能否提取到有效的害虫特征是提高模型精度的关键步骤。因此对害虫图像使用已经训练好的AlexNet网络模型进行反卷积可视化,通过逐层的反卷积图像来判断当前图像能否有效提取出害虫的识别特征。图1中从左到右依次是原始害虫、低维特征、特征组合及全局的高维特征图像,由此可见,利用反卷积可视化方法可以有效地遴选适合进行模型构建的原始图像样本。

通过上述过程将成功进行特征提取的样本进行遴选得到高质量的样本集合,同时为提高训练精度,将每类数据样本量大、分辨率高的图像进行适量删减,最终样本集合控制在2 500张,用于神经网络的训练和验证。每种类别随机选择70%作为训练集合,30%作为验证集合。

1.3 MobileNets

MobileNets[18]是由Google研究者们设计的基于一个流线型的架构,它使用深度可分离的卷积来构建轻量级的深层神经网络,是一组移动设备优先的计算机视觉模型。主要设计目标是高效优化准确度,同时要考虑移动及嵌入式设备的限制。使得模型能够在手机上运行,计算消耗小、运行速度快,因此很适合在移动端上应用。MobileNets和传统的CNN(卷积神经网络)在结构上的差别主要是:传统CNN规范化和ReLU(线性整流函数)中使用的卷积核是1个3×3卷积层,而MobileNets将卷积过程分为1个3×3深度方向的卷积和1个1×1点对点的卷积。针对ImageNet的深度学习分类模型带有数百万个参数,可以处理上千个分类,足以用来区别其他子分类对象。通过利用已经训练完毕的神经网络模型,将具体虫害类别图像作为输入项,具体虫害类别标签作为最终分类层,以实现本研究的分类。MobileNets只训练网络的最后一层,所以训练会在一个相对合理的时间停止,经过参数优化后的模型适应于低功耗、低延迟等小型应用。

2 结果与分析

2.1 模型训练

本试验采用的实验设备为一台联想Thinkstation图形工作站,显卡是Nivida Quadro K4000显存3 GB,GPU运算能力3.0。训练前将虫害图像放入以虫害名称命名的文件夹,并将对应虫害英文名称写入标签文件retrain_labels.txt完成图像标注工作。

模型训练首先要设定几个关键参数进行模型调整以得到最佳精度,所涉及的参数有:(1)图像分辨率,训练提供的输入图像分辨率有128,160,192和224,输入模型图像的分辨率越高,则耗费时间越多,但是结果会越精确,故本研究使用224作为初始参数设定;(2)学习率,该参数控制着在训练期间模型最终层更新的大小,初始学习率制定为0.01,如果制定一个更小的学习率比如0.005,训练将会耗费更多时间,但是总体精度亦会增加,反之如果调整为1.0,训练速度会增加,但是精度会降低,甚至使训练过程不稳定;(3)宽度因子(width multiplier),相对于最大MobileNets模型,参数主要有1.0,0.75,0.50,0.25,参数越小模型训练越快,但是精度损失越大,一般推荐0.50作为初始训练参数;(4)训练步数(how_many_training_steps),默认情况下选择4 000步训练,可根据实际数据集大小进行微调,每一次从训练集选择10个随机图像,再把他们送入最终层来进行预测,这些预测结果再与实际的分类标签进行对比,并通过反向传播来更新最终层的权重。

本文选用平均准确率作为模型训练的衡量指标,其主要调整参数为模型宽度和学习率,训练结果如表2所示。通过模型参数的调整结果可以看出宽度因子和学习率会显著影响模型的精度,其中二者分别在1.0和0.05时,取得最高平均准确率,为95.9%。

2.2 模型验证

2.2.1 模型部署 为验证模型的有效性,利用Tensorflow 提供的Android demo工程,部署到Android手机。利用Android studio 编译该工程,原有工程使用的是Inception V3 模型文件,删除原有模型文件,并修改ClassifierActivity.java对应的模型文件名和标签文件名,同时对应的要修改INPUT_SIZE、INPUT_MEAN、IMAGE_STD三个参数与模型优化的数值相对应,本文均修改为224。通过Build菜单下Generate APK命令生成安装包,将该安装包导入安卓手机,软件需要授予使用照相机和本地存取的权限。

2.2.2 验证结果 为验证方法的有效性,通过搜索引擎搜索以害虫名称为关键词,随机选择搜索图片作为测试对象,点击TF Classify名称的手机应用程序,将手机摄像头对准屏幕进行图像的分类识别。识别结果图2所示,在图片上方蓝色部分显示当前虫害的识别分类与精度,可以看到该模型可准确地实现分类识别,且识别精度均在90%以上。

3 结 论

通过对果园6种常见害虫进行分类识别研究,利用MobileNets进行神经网络模型的压缩,所构建模型仅为15.23 MB,能够在普通安卓手机上流畅运行且精确度良好,识别准确度在90%以上,证明了该模型的有效性。使用本研究的害虫图像识别方法可以免去原有复杂的图像特征提取过程,大大简化害虫识别模型的构建过程,达到快速构建模型的目的,同时该方法不受限于特定的害虫种类,易于推广到其他作物的害虫分类识别研究,在果园虫害的分类识别上具有重要的参考意义。

参考文献:

[1]刘军弟,霍学喜,韩明玉,等.中国苹果产业发展现状及趋势分析[J]. 北方园艺,2012(20): 164-168.

[2]翟衡,史大川,束怀瑞.我国苹果产业发展现状与趋势[J]. 果树学报,2007(3): 355-360.

[3]陈学森,韩明玉,苏桂林.当今世界苹果产业发展趋势及我国苹果产业优质高效发展意见[J].果树学报, 2010(4): 598-604.

[4]马永翠,李平松,马列,等.2016年云南昭通苹果病虫危害损失评估试验[J].中国植保导刊,2017(8): 51-57.

[5]李晓荣.苹果幼园常见病虫害的防治[J]. 西北园艺:果树专刊,2013(5): 30-31.

[6]韩健,陈臻,徐秉良,等.甘肃省苹果病虫害发生情况初探[J].植物保护,2012(6): 134-139.

[7]梁魁景,王树桐,胡同乐,等.河北省苹果主要病虫害发生现状调查[J].植物保护,2010(5): 123-127.

[8]陈武杰,苏晓娟.苹果病虫害防治的原则和关键技术[J].中国果菜,2017(4): 71-72.

[9]仇贵生,闫文涛,张怀江,等.渤海湾苹果产区主要病虫害发生动态及综合防治策略[J].中国果树,2012(2): 72-75.

[10]赵菊莲,尹宝重.甘肃陇东苹果树主要病虫害的发生与防治对策[J].中国果树,2013(3): 73-75.

[11]張振芳,李保华,练森,等.我国苹果产业节本增效关键技术Ⅵ:苹果病虫害节本增效防控的原则与技术[J].中国果树,2017(6): 1-7.

[12]王爱新,李春友,张喆.基于计算机视觉的农业图像害虫定位检测算法[J]. 江苏农业科学,2016(7): 361-364.

[13]李小林,周蓬勃,周明全,等.基于可区分二进制局部模式特征的蛾类昆虫识别[J]. 计算机应用与软件,2016,33(3):172-175.

[14]梁巧玲,陆平,张皓,等.检疫害虫黑森瘿蚊的形态特征与为害状识别[J]. 植物保护,2014,40(5):126-129.

[15]张超凡,王儒敬,谢成军.基于多特征字典学习的害虫图像自动分类方法[J]. 计算机应用与软件,2017,34(3):142-147.

[16]杨国国, 鲍一丹,刘子毅.基于图像显著性分析与卷积神经网络的茶园害虫定位与识别[J]. 农业工程学报,2017(6):156-162.

[17]MATTHEW D Z,ROB F. Visualizing and understanding con-volutional networks[J/OL].https://arxiv. org/abs/1311.2901.[18]HOWARD A G, ZHU M, CHEN B, et al. MobileNets: efficient convolutional neural networks for mobile vision applications[J/OL].(2017-04-17)https://arxiv.org/abs/1704.04861.