神经网络及其在农业图像分类中的应用研究
今天分析几个课程设计,这是第一个。
摘要:为将计算机相关技术和手段与农业害虫防治的应用深度融合,提出了基于计算机视觉的天牛识别计数系统课题。本文将计算机视觉和深度神经网络应用到天牛识别中,通过爬虫获取天牛和非天牛的图像信息,使用深度神经网络对识别天牛模型进行训练,通过训练和调参,最终获得可以识别天牛的模型,并对测试数据进行测试,取得较好预测效果。
关键词:计算机视觉;深度学习网络;天牛识别
课程设计下载
一、前言
首先,目前计算机视觉和深度学习等人工智能技术在国内外研究较多较热,但是其理论研究主要和工业紧亲密度较大。农业是整个国名经济的基础,如何将这些技术引入到农业中,比如害虫防治方面,对我国将计算机视觉和深度学习技术引入到农业中有很大作用,能进一步丰富计算机视觉和深度学习等技术在农业中的理论研究并为转为为产业落地应用提供了基础。
其次,我国是一个人口众多的国家,农业的重要地位不言而喻,如何确保14亿人口的粮食安全和充足供应始终是一个重要课题。本文拟将计算机视觉和深度学习等先进技术应用到农业中的害虫防止方面,有着较强的实践意义和现实意义,可以切实提高害虫防治水平,确保粮食增产增收。
二、文献综述
在农作物害虫图像处理方面,主要分为图像增强和图像分割。针对拍摄的图像缺失部分色彩或者色彩不明显的情况下,我们常常采用刘晓燕[3]所使用的MSRCR进行色彩增强。如果图片中存在大量烟雾的情况,也可以考虑使用伪去雾法。在进行图像分割方面,何春华等[3]与靳鹏飞[4]均是基于Sobel算子进行优化,以实现更好的图像边缘检测效果。而邱白晶等[11]则是将黄瓜叶片放置于白瓷盘中,采用 G 分量阈值将蚜虫区域和背景分离,然后进行灰度化、 二值化、形态学滤波处理,以及采用标记控制分水岭 分割算法去除蚜虫粘连重叠现象,最后利用连通区域 标记法实现黄瓜蚜虫的自动计数。
在图像分类方面,邱道尹等[12]是将遗传算法与 BP 网络相结合来训练神经网络, 利用遗传算法具有搜索全局最优解的优点进行粗精度 的学习以选取网络初值,并利用 BP 算法进行细精度学习,从而有效地识别储粮害虫。张法全等[13]、董卓莉等[14]分别采用粒子群算法和修正激励函数对 BP 神 经网络进行了改进,改进后的 BP 网络具有更好的学 习和适应能力,也提高了识别准确率和运行速率。
赵晶莹等[15]采取的是 SOM 神经网络和概率统计方法相结合的方式来改进 K 最近邻分类法(KNN),并建立了摇蚊幼虫以及淡水 浮游生物图像的分类识别模型,具有良好的分类精度。 熊雪梅等[16]结合近红外光谱与聚类分析用于蝗虫快 速识别研究中,首先对蝗虫光谱图像进行矢量归一化后,利用基于最长距离的聚类分析方法建立判别模型, 盲样类别鉴定准确率可达 91.67%。
三、基本概念介绍
计算机视觉,英文名称是Computer Vision,是一门研究如何利用计算机和拍摄技术感知外界环境,或者更进一步和外界环境进行交互的一门学科。通俗的将,就是如何给计算机按上眼睛,让计算机具备视力能力。
计算机视觉、计算机图像处理、计算机识别什么模式识别学科的一个经典问题就是判断一个图像中是否包含某一个物体,如果包含的话,包含多少个,也就是利定性和定量的方式研究图像。计算机视觉是一门集计算机、数学、图形图像学、脑科学、人工智能、机器学习、统计学等学科为一体的一门交叉学科。统计学中包含对现实世界的建模和判断,如果被解释变量合成的某一个待研究模型的最终结果表现为连续特征,则称为是回归问题,如果表现为离散特征,则称为是分类问题,计算机视觉更多的是研究分类问题,比如一个图像中是否包含了天牛这种昆虫,可以将包含有天就的结果约定为1,将不包含天牛的的结果约定为0,那么给定一张图像,那么可以训练一个针对这个图像中是否包含天牛的模型,其预测的结果就是包含或者不包含天牛。
四、实验过程以及结果
天牛识别模型采用深度神经网络模型进行训练。首先设定模型中的输入、隐藏层数、每一层的神经数、输出,选定合适的激活函数,然后将训练集喂给模型开始训练,训练完成之后,需要再次将原始模型拿去到测试集上面进行测试,如果再训练集上的精准度和召回率都较高,但是在测试集上面的表现不好,则说明是过拟合。过拟合是指模型非常贴合训练集,什么过度切合训练集以致于可以非常好的表现出训练集上的特性,但是对于测试集上面的数据却表现的差强人意,此时就需要调参重新训练。另一个极端是在训练集上的表现本身就不够好,也就是不能较好的模拟出来原始训练集上的数据特性,此时称作欠拟合,此时也需要调参重新训练。图1作图表示了一个回归模型的欠拟合、过拟合和好的拟合图示说明。
图1 拟合程度说明
如果发生欠拟合和过拟合都需要通过调参来重新训练,当发生欠拟合的时候,可以通过提高训练集数据(包括正例和反例)、增加隐藏层数量和增加隐藏层神经数量来有效缓解欠拟合的问题;当发生过拟合的时候,可以通过降低隐藏层数量和减少隐藏层神经数量的方式,也可以通过增加训练集数据(包括正例和反例)的方式,来降低过拟合的问题。最终通过多次调参,人工调参和自动调参相结合的方式,最终当获得一个令人满意的精确度和召回率的时候就可以停止训练。
训练过程使用keras,keras是tensorflow提供的一个功能强大的支持神经网络、深度神经网络、卷积神经网络和递归神经网络等神经网络和其他机器学习算法的工具。采用“relu”作为激活函数,“relu”的数学表述如式1所示。
式1
最终的训练结果是一个包含128×128个输入、第一个隐藏层包含2048个神经、第二个隐藏层包含784个神经、第三个隐藏层包含256个神经、第四个隐藏层包含128个隐藏层、最后有两个输出的一个深度神经网络,训练的过程和结果如图2所示。
图2 训练过程和结果
训练完成之后,就可以对新的图像进行识别,对新的图像的识别采用概率表示,即多大概率是天牛或者是非天牛,如果预测是天牛的概率大于0.5,则认为预测的是天牛,如果预测的是非天牛的概率大于0.5,则认为不是天牛。图4.6左侧两个是天牛,右侧两个不是天牛,对其进行预测之后的结果是:左侧两个是天牛的概率分别是0.74738187、0.7313424,右侧两个是天牛的概率分别是0.25261813、0.34555053,也就是说左侧两个是天牛,右侧两个不是天牛。这说明,模型可以有效识别天牛。
参考文献
[1]Yann LeCun,Yoshua Bengio,Geoffrey Hinton.Deep learning[J].Nature,2015
[2]Cho J, Choi J, Qiao M, Ji C W, Kin H Y, Uhm K B, Chon T S. Automatic identification of whiteflies, aphids and thrips in greenhouse based on image analysis. International Journal of Mathematics and Computers in Simulation, 2007:46-53.
[3]Murakami S, Homma K, Koike T. Detection of small pests on vegetable leaves using GLCM. The Society for Engineering in Agricultural, Food and Biological Systems, Paper Number: 053136.
[4]穆文秀.洪蕾.王瀚.基于机器学习的智能昆虫分目识别算法应用[J].数字技术与应用,2018,(11):118-119.
[5]刘晓燕.基于Python的夜间图像增强方法研究[J].湖北民族学院学报(自然科学版),2019,(1):85-89.
[6]何春华.张雪飞.胡迎春.基于改进Sobel算子的边缘检测算法的研究[J].光学技术,2012,(3):323-327.
[7]靳鹏飞.一种改进的Sobel图像边缘检测算法[J].应用光学,2008,(4):625-628.
[8]韩晓冬.王浩森.王硕.Python在图像处理中的应用[J].北京测绘,2018,(3):312-317.
[9]张海涛.刘景鑫.赵晓晴.基于VGG16的急性淋巴细胞白血病血液细胞显微图像人工智能辅助诊断分类研究[J].中国医疗设备,2019,(7):1-4+9.
[10]姚青.吕军.杨保军.基于图像的昆虫自动识别与计数研究进展[J].中国农业科学,2011,(14):14.
[11]邱白晶, 王天波, 李娟娟, 李 坤. 黄瓜蚜虫的图像识别与计数方 法. 农业机械学报, 2010, 41(8):151-155.
[12]邱道尹, 张成花, 张洪涛, 沈宪章, 岳永娟. 神经网络在储粮害虫 识别中的应用. 农业工程学报, 2003, 19(1):142-144.
[13]张法全. 基于机器视觉和小波分析的农田害虫识别系统 [D]. 郑 州: 郑州大学,2003
[14]董卓莉. 基于粒子群优化的仓虫分类识别技术研究. 计算机应用 与软件, 2010, 27(1):228-230.
[15]赵晶莹, 郭 海, 孙兴滨. 基于小波分析及改进KNN的红虫识别研 究.安徽农业科学, 2009, 37(29):14191-14193.
[16]熊雪梅, 王一鸣. 基于近红外光谱和系统聚类法的蝗虫识别模型 研究. 激光与红外, 2007, 37(3):237-239.
[17]姚侃.徐鹏.张广群.基于图像的昆虫分类识别研究综述[J].智能计算机与应用,2019,(3):29-35.