论文部分内容阅读
常见的中草药植物可以通过其叶片表面的纹理、外在的颜色以及叶片自身的形态等特征对植物进行识别与分类。叶片是大多数植物的重要的器官之一,常见的植物都普遍生长着叶片,并且叶片具有易于观察和保存的特性,常常作为植物识别的参照物。而且大部分植物叶片趋于扁平化,相对容易采集,存活时间较长,不同种类之间叶片的纹理和外形差别比较明显,所以以叶片为依据,对中草药植物进行分类识别研究是可行的,也是目前许多学者的研究热点。依据卷积神经网络权值共享和局部连接,以及对输入图像具有一定程度上的旋转、水平移动、翻转操作的不变性等优点。本文以经典的卷积神经网络模型LeNet-5模型为基础,针对原始LeNet-5模型在中草药植物图像识别上的局限性,对其网络结构以及参数进行相应的改进,使改进后的模型在识别中草药叶片图像时具有更高的识别正确率的同时具有更加快速的识别速率,具体工作如下:(1)总结了CNN网络的基本原理知识,介绍了常用的CNN模型,LeNet-5模型、AlexNet模型以及VGG模型的网络结构以及各自的特点,然后介绍了CNN网络的常用的激活函数,并对其优缺点和训练过程做了详细介绍。(2)针对传统CNN网络在对输入图像进行分类处理的过程中,网络结构中使用卷积块代替传统的卷积-池化结构。在卷积神经网络结构中对输入图像数据进行卷积运算后,往往会对卷积后的数据进行进一步的池化操作,然而这种操作往往会丢失一些输入图像的信息,破坏卷积特征提取层提取到输入图像的特征信息,并且单层卷积层提取到的特征信息并不完整,而采用叠加卷积层的方式可以更加有效与完整的提取到图像的特征信息。提出了基于改进LeNet-5网络的中草药叶片识别,用包含三个卷积层的卷积块改进原有的卷积、池化结构;应用3×3的小卷积核改进原始模型中的5×5的卷积核并且激活函数采用ELU激活函数代替sigmoid函数,因为sigmoid激活函数在输出的值过大或者过小的时候会发生梯度消失的问题;应用全局平均池化防止网络中全连接层参数过多造成的过拟合现象,并且在全连接层前面再进行Dropout操作,可以进一步防止网络模型的过拟合现象的发生;针对随机梯度下降算法SGD其在训练的过程中初始化到合适的学习速率相对比较困难且SGD很容易收敛到局部的最优解,采用Adam算法来代替原本的SGD算法。(3)在linux系统下实现改进后的针对中草药植物叶片的分类识别模型,利用Python语言和Django技术,在web端实现网络模型,建立的叶片图像库,完成模型的分类识别和测试,并且采用图像归一化、阈值分割法、平移一定角度、旋转、翻转等方法对原始中草药叶片图像进行预处理,最终改进后的模型平均识别率达到了94.71%,比传统的植物叶片识别模型识别率更高,并与其它的植物叶片识别模型进行对比分析,验证了本文算法的有效性。