摘要:我国有广阔的农作物种植面积,其中病虫害对农作物产量的影响最大,当农作物得了病虫害时,其整体生理机能会大大下降从而导致植株瘦小,无法达到最优生产状态从而产量不高经济效益低。因此农民需要多关注农作物的生长状态,由于植株较多并且小因此病虫害通常很难发现,每当发现时其通常已经扩散了很大的面积。目前深度学习技术已经应用在诸多领域,其中在农业领域的应用也相对成熟,使用深度学习技术对农作物病虫害的图像进行识别判断,能准确、快速地识别出病虫害的种类,减小因人为经验不足而造成的病虫害误判,滥用农药对环境造成的不良影响。
关键词:深度学习;图像识别;神经网络
从古至今农民对农作物病虫害的判别大多数都是通过眼看,然后很具自己的经验进行判别,自己分辨不出来时才会向他人请教,再根据判断结果买农药进行喷洒治疗,这种方法要求进行诊断的人员有较高的专业水平和丰富的经验,因此不同的诊断人员可能有不同的诊断结果。农民相对于专业人员而言专业水平有限,经验也不是那么丰富,当遇到一种新的病虫害时无法及时有效的做出判断,并购买农药进行防治,从而导致病虫害面积扩大影响农作物的产量。图像识别是指利用计算机对图像进行处理、分析和理解,以识别各种不同模式的目标和对象的技术,是信息科学和人工智能的重要组成部分[1]深度学习作为一种良好实现图像特征自动提取的技术,在图像识别领域中使用非常广泛。深度学习的出现是人工神经网络的研究结果,在计算机视觉、文本处理、数据挖掘等领域使用非常广泛。卷积神经网络(CNN)是一种机器学习模型,基于深度的监督学习下产生,在图像识别领域使用广泛[2]。因此本研究旨在如何搭建深度学习环境,怎样软硬件结合来学习深度学习,并将深度学习应用于实际农业管理中。
1实验材料及开发工具
1.1操作系统及开发工具Ubuntu-Linux16.0464位,VSCode-win32-x64-1.30.,OpenVINOTM1.2硬件环境英特尔®凌动™X5-Z8350处理器(代号CherryTrail),配备4GBDDR3LRAM和64GBeMMCUPBoard开发板1块;英特尔神经计算棒(NCS)二代1个;IntelCore(TM)i5-5200UCPU@2.20GHz/4G内存/128GB固态盘笔记本电脑1台;威鑫视界TC420HDUSBLinux免驱摄像头1个1.3软件环境Python3语言环境、Caffe深度学习框架、AdobePhotoshopCS6软件、OpenVINOTM开发工具箱。
2运行程序
2.1运行过程2.1.1寻找英特尔神经计算棒并获取句柄运行程序寻找英特尔神经计算棒,如果没有找到则退出程序,并提示没有找到英特尔神经计算棒,请检查连接和环境配置情况,当寻找到英特神经计算棒时,获取英特尔计算棒的句柄并打开2.1.2导入图片获取图形文件读入设备的缓冲区,再将图形缓冲区加载到英特神经计算棒中。这些图片将在英特尔神经计算棒中被推理运算。2.1.3预处理图像创建当前目录和子目录中所有的列表并按照字母顺序对文件进行排序,再对处理图像的数量进行设置,使其不会沾满内存,然后读取并且调整图像的大小,此时图像大大小在训练期间已经定过了。将输入的RGB格式图像转换为Caffe所使用的BGR格式,再使用平均减法和缩放对数据进行处理。2.1.4读取并打印推断结果加载标签文件并将图像加载为半精度浮点数,然后从英特尔神经计算棒中获得结果,得到执行的时间并找到最高置信指数再打印每个图像的顶部预测。获得到数据后卸载图标并关闭设备。2.2配置开发环境在Ubuntu16.04系统中打开终端使用命令安装python3并设置python3为默认启动python环境。安装pip命令并使用pip命令安装Caffe所依赖的包:Pandas、glob2、Panda、numpy、tk、vc,然后使用pip命令安装caffe。互联网连接以下载并安装英特尔®DistributionofOpenVINO™toolkit。在终端窗口运行命令以解压缩下载的tarball,安装依赖项,然后安装工具套件。配置神经计算棒USB驱动程序,更新udev规则使工具套件能够寻找到英特尔神经计算棒并能够使用其进行推理。运行官方Demo测试是否成功地为神经计算棒配置开发环境,当出现Democompletedsuccessfully时则说明已经成功地为神经计算棒配置开发环境。2.3图像的搜集与处理2.3.1植物图像的搜集图像识别的核心是图像特征提取,其直接影响到训练效果和识别精确度。本课题选取水稻、玉米、小麦、3种农作物。水稻(OryzasativaL.),一年生草本。秆直立,高0.5-1.5米,随品种而异。如图1所示。玉米(ZeamaysL.)一年生高大草本。秆直立,通常不分枝,高1-4米,基部各节具气生支柱根。叶鞘具横脉;叶舌膜质,长约2毫米;叶片扁平宽大,线状披针形,基部圆形呈耳状,无毛或具疵柔毛,中脉粗壮,边缘微粗糙。如图2所示。小麦(TriticumaestivumL.)秆直立,丛生,具6-7节,高60-100厘米,径5-7毫米。叶鞘松弛包茎,下部者长于上部者短于节间;叶舌膜质,长约1毫米;叶片长披针形。如图3所示。在百度、谷歌等浏览器中搜索以上三种农作物病虫害的高清图片。经过人工筛选,最终为每种农作物选取500张图片共计1500个图像,并对不同农作物的病虫害进行标签分类用于训练和测试。2.3.2预处理图像为了更好的对模型进行训练,因此使用AdobePhotoshopCS6软件对图像进行去水印、裁剪处理,然后对图像进行灰度化处理,并将其像素转化为与设定的448×448大小。为了提高卷积神经网络对图像的识别和处理能力,因此对选取的图像进行几何变换、变形等操作。2.3.3实验模型参数调试本文以GoogLeNet卷积神经网络模型为基础结合神经计算棒进行监督学习训练,在每次模型训练之前先将数据库中的图像进行分类打标签,然后每种农作物随机选取其80%图片作为训练集,20%作为测试集。主体流程如图4所示,卷积神经网络如图5所示。
3分析讨论
经过试验得出,使用卷积神经网络来识别农作物病虫害时,识别精度受激励函数、迭代次数、卷积层数及图像数量的影响。当使用Sigmoid函数时,会出现饱和神经元,这些神经元会影响其他神经元权重的更新,导致无法执行网络的反向传播,其计算成本比较高并且输出不以零为中心。使用Tanh函数时,也出现了梯度消失的问题。使用LeakyReLU函数时不会出现梯度消失问题,计算效率高,快速收敛,避免了前两个函数遇到的问题。使用LeakyReLU函数并且增加迭代次数、卷积层数以及图像数量时,正确率相对于最初使用的函数明显提高。玉米相对于水稻、小麦而言,其叶片面积较大,处理起来速度较快,精度也比较高。水稻、小麦的叶片比较细长,并且种植比较密集,因此叶片的重叠比较严重,处理速度相对于玉米来说较慢,精度稍微较低,因此需要改进算法,优化程序。
4小结
卷积神经网络和图像识别技术已经比较完善,足够工程师进行开发使用,但是能够熟练使用的人并不多,原因就是不知道使用哪些硬件,怎样快速高效的学习。目前图像识别技术主要是对图像进项灰度化处理然后提取特征、分析,在识别之前需要使用大量的图片对模型进行训练,训练好的模型能够自动完成对图像的识别、描述、分类。在农作物病虫害判断中使用基于卷积神经网络的图像识别技术有利于提高对农作物病虫害判断的效率,降低了农民对病虫害识别的难度,避免因经验不足而诊断错误导致的农药污染与浪费,更有利于及时发现病虫害进行有效的防治。