《基于深度学习的植物图像识别方法研究》由会员分享,可在线阅读,更多相关《基于深度学习的植物图像识别方法研究(6页珍藏版)》请在金锄头文库上搜索。
1、基于深度学习的植物图像识别方法研究 袁银 王东斌 刘永金 广东省深圳市梧桐山风景区管理处 深圳爱淘苗电子商务科技有限公司 摘 要: 传统植物图像识别研究主要集中在植物叶片图像。研究将深度神经网络学习运用于植物识别领域, 突破局部叶片图像的限制, 对常规植物图片进行识别。该方法运用 google Net 的深度卷积神经网络结构, 通过图像旋转、镜像、随机裁剪等数据预处理方法扩充训练集, 再利用 SGD (随机梯度下降法) 进行模型算法优化, 生成对 50 种常规植物图像的识别模型。结果表明, 该模型在测试集上能够达到平均 90%的准确率。关键词: 植物图像识别; 深度学习; 神经网络; 收稿日期
2、:2017-09-13Research on Plant Image Recognition Method Based on Depth LearningYUAN Yin WANG Dong-bin LIU Yong-jin Shenzhen Wutong Mountain Scenic Area Management Office in Guangdong Province; Shenzhen Itaomiao E-commerce Technology Co., Ltd.; Abstract: Traditional plant image recognition research is
3、mainly focused on plant leaf images.The deep neural network was applied to the field of plant recognition, it breaks through the restriction of the local leaf image and identifies the conventional plant pictures.Google Net deep convolution neural network structure was used, the training set was exte
4、nd by data preprocessing methods such as image rotation, mirror image, random clipping and so on, and then SGD (stochastic gradient descent method) was used to optimize the model algorithm to generate 50 kinds of common plant image recognition model.The results showed that the model could achieve an
5、 average accuracy of 90% on the test data set.Keyword: plant image recognition; depth learning; neural network; Received: 2017-09-13植物是地球分布最广泛的生命形式, 与人类生活环境的关系最为密切。目前, 植物物种的识别主要依靠有经验的专家和相关行业从业人员的专业知识和实践经验, 工作量大且效率低。随着计算机的计算能力大幅提升, 尤其是移动终端性能的提升和普及, 人们获取、保存和处理植物图像的能力大幅度提升。研究如何通过植物图像快速识别植物种类具有非常重要的意义,
6、既可以促进植物分类学科的发展, 又可以普及植物知识, 激发人们热爱植物、保护环境生态的热情1-3。目前, 业内对植物图像识别的研究主要集中在植物叶片图像的识别方法上。在国外, 早在 1993 年, Guyer 等4通过提取 17 种叶片形状特征对 40 类植物进行分类。在国内, 杜吉祥等5研究了用 Gabor 小波对植物叶片图像进行多尺度纹理特征提取, 再利用神经网络模型对特征向量进行分类识别的方法。张宁6提出了一种基于克隆选择算法和 K 近邻判别分析的叶片识别方法。李萍等7提出了一种基于改进稀疏表示的植物识别方法, 利用最近邻准则实现稀疏表示, 通过稀疏表示系数实现植物识别, 而不需要进行特
7、征提取。随着构建深层网络结构进行多层次特征学习的人工智能方法在大规模图片分类 (Image Net) 竞赛上取得突破性进展, 其在各个方面都受到了极大的关注, 在图像识别与语音识别领域也取得了很大的成功8-10。本文将深度学习应用在植物图像识别领域, 使植物识别突破只能依靠局部叶片图像的限制, 实现对常规植物图片的识别。1 深度学习的概念及原理神经网络的基本神经元的结构是 wx+b 的形式, 如图 1 所示, 其中 x1, x2表示输入向量, w 1, w2为权重, 有几个输入则意味着有几个权重, 即每个输入都被赋予一个权重, b 为偏置 bias, g (z) 为激活函数, a 为输出。最终
8、得到的输出是 g (z) =g (w1x1+w2x2+b) , g 是激活函数。图 1 基本神经元结构示意 下载原图深度学习 (deep learning) 是深度神经网络学习方法的简称, 传统的神经网络一般有一个隐藏层, 神经元之间采取全连接的方式, 而深度学习基于深层构建的结构, 在神经网络的输入和输出中间有多层的神经元网络 (图 2) 。图 2 深度卷积神经网络 下载原图卷积神经网络 (convolutional neural network) 广泛应用在图像领域。图 3为卷积神经网络中的一个卷积层, 由卷积操作 (convolution) 、非线性响应操作 (relu) 以及池化操作
9、(pooling) 组成。CONV 为卷积计算层, 线性乘积求和。由图 4 可知, 左边是图像输入, 中间部分就是滤波器 filter (带着一组固定权重的神经元, 也称卷积核) , 不同的滤波器 filter 会得到不同的输出数据, 比如颜色深浅、轮廓。相当于如果想提取图像的不同特征, 则用不同的滤波器 filter, 提取想要的关于图像的特定信息, 如颜色深浅或轮廓。relu 为激励层。relu 是激活函数的一种。pooling 为池化层。简言之, 即取区域平均或最大, 即最大化该卷积层得到的特征, 如图 5 所示。图 3 深度卷积网络中的一个卷积层 下载原图图 4 图像卷积计算效果 下载
10、原图图 5 pooling 层计算示例 下载原图2 实验方法2.1 算法流程深度学习算法能够有效运行的一个关键就是基于大规模数据, 因为深度学习网络有众多的参数, 少量数据无法对网络参数进行充分训练。使用 Google Net 层的网络结构, 把在 Image Net 上训练好的网络参数用于植物识别网络的初始化参数, 然后用标定的植物图像对网络权重使用反向传播的方法进行调整, 直到训练完成 (图 6) 。2.2 数据获取首先要确定数据收集范围。实验选择华南地区 50 种常见植物名单, 要求照片采集人员采用主流的普通数码相机、常用各大品牌手机, 使用正常的观赏距离、多角度进行拍摄, 模拟普通人对
11、植物花草的拍照场景。每种植物至少拍摄 200张。图 6 植物识别模型训练流程 下载原图2.3 工具选择基于前文深度学习的基础元素, 采用 caffe 进行模型构建。caffe 是 C+开发的深度学习框架, 计算效率高, 包含 python 与 matlab 接口, 能够在读取网络模型定义后实现自动求导、反向传播训练, 而且可切换 CPU 或 GPU 计算。2.4 数据预处理2.4.1 数据扩充。为保证数据相对平衡并增加数据量, 采用多种图像数据扩充方法, 包括顺时针旋转、逆时针旋转、水平镜像翻转、垂直镜像翻转、随机剪裁 (图 7) 。2.4.2 制作均值文件。即求所有训练数据像素的平均值, 训
12、练时会对图片做减均值处理, 这样的好处是把输入数据各个维度都中心化为 0, 避免数据过多偏差而影响训练效果。2.4.3 划分训练集与测试集。将处理好的图片数据随机分为训练集与测试集, 训练过程只在训练集中进行。在训练结束后, 以测试集来估计准确率。2.5 训练参数设置在选择学习率、迭代次数这些模型外参数时, 采用多折交叉验证法, 将训练集再拆分为实际训练集与交叉验证集。通过观察各类参数的不同效果, 经过多次尝试, 利用交叉验证, 最终确定了 0.000 1 初始学习率, 20 万次的迭代次数。初始学习率影响的是每一次反向传播时, 对参数优化的调整幅度, 需要根据特定任务确定合适的学习率, 若幅
13、度过大, 则有可能矫枉过正, 反而产生更差的结果;若幅度过小, 则可能导致每次进步很小, 优化到最优结果的迭代次数过大, 耗时过长。2.6 优化算法传统的反向传播算法, 每次计算所有图片的累计错误才能进行一次迭代。在大量数据的场景下, 这样将导致消耗巨大的计算资源, 耗时很长。因此, 采用随机梯度下降的优化算法, 将训练数据每次只取一小批, 计算错误后即做反向传播优化, 反复迭代处理。该种方法虽然每次并不是最优方向, 但在保证数据足够随机和迭代次数足够多的情况下, 依然能保证得到足够好的结果, 且计算消耗大幅减少, 缩短训练时长。图 7 图像预处理示例 下载原图注:a-f 分别为原图、垂直镜像
14、、逆时针旋转 90、随机剪裁、水平镜像、顺时针旋转 90。2.7 结果与应用经过一系列处理与训练, 得到了训练好的神经网络模型与参数, 利用测试集检验, 最终得到平均 90%的准确性。植物识别模型封装为可调用的程序模块, 可实际应用到 web 服务和移动 APP, 通过云服务方式实现实时在线识别植物品种。3 结语本文提出的基于深度学习的植物图像识别方法, 突破了基于植物局部特征识别的局限, 摆脱了数据采集需要高度专业化的限制, 降低了植物图像识别的门槛, 在识别速度和准确性方面有了较大的突破。本方法需要的训练数据量较大, 未来可探讨搜集互联网海量植物图片作为训练集, 实现模型的快速迭代和优化。
15、参考文献1KRIZHEVSKY, A, SUTSKEVER I, et al.Imagenet classification with deep convolutional neural networksR.Advances in neural information processing systems, 2012. 2PRASOON A, PETERSEN K, IGEL C, et al.Deep feature learning for knee cartilage segmentation using a triplanar convolutional neural networkJ
16、.Med Image Comput Comput Assist Interv, 2013, 16 (2) :246-53. 3SIMONYAN K, ZISSERMAN A.Very deep convolutional networks for large-scale image recognitionR.ar Xiv technical report, 2014. 4GUYER D E, MILES G E, GAULTNEY L D, et al.A pplication of machine to shape analysis in leaf and plant identificationJ.Transactions of the Asae, 1993, 36 (1) :163-171. 5杜吉祥, 翟传敏.基于 Gabor 文理特征的植物图像识别方法C/第十四届全国图像图形学学术会议论文集.北京:中国图像图形学会,