基于改进MobileNetV2的玉米籽粒图像品种的快速鉴别研究
2023-11-16郭宏杰马德新
马 睿, 王 佳, 赵 威, 郭宏杰, 马德新,2
(青岛农业大学动漫与传媒学院1,青岛 266109)(青岛农业大学智慧农业研究院2,青岛 266109)
玉米(ZeamaysL.)是禾本科的一年生草本植物,是世界重要的粮食作物,广泛分布于中国、美国、巴西等国家。同时,玉米是畜牧业、养殖业重要的饲料来源,是众多行业中不可或缺的原材料之一。品种纯度是种子质量检测的一个重要指标。由于玉米种子的形态特征和视觉上的相似性,很难凭借肉眼识别,从而耗费大量的人力和时间进行鉴别。
近年来,计算机视觉技术在农业领域得到了广泛的应用。杨杭等[1]运用Wilk-lambda逐步判别法进行波段选择并建立判别模型,对玉米籽粒交叉验证平均识别精度为91.6%。程洪等[2]利用支持向量机(SVM)算法对玉米籽粒图像进行训练,识别率达到92.3% 。Moges[3]提出混合CNN和HOG特征用SVM分类器进行训练,准确率为99%。
深度学习是机器学习的一个重要分支,与传统机器学习相比,深度学习减少了人工提取特征的不完备性,具有更强的客观性。与手工设计的特征提取方法相比,基于深度学习的卷积神经网络(CNN)可以从输入数据中自动提取复杂特征。Keling Tu等[4]使用VGG16网络进行迁移学习,检测玉米品种“京科968”的真实性,结果表明,最佳检测精度超过99%。
Keya等[5]为了识别种子的图像,使用了CNN算法,训练精度为87%~89%,验证精度为90%~93%。Zhou等[6]提出了一种CNN重塑像素光谱图像的方法,并建立了训练模型,结果显示,对于6个品种的普通玉米种子,测试识别胚面和非胚面的准确性分别为93.33%和95.56%,对于6个品种的甜玉米种子,胚面和非胚面的测试准确率分别为97.78%和98.15%。Kurtulmus[7]利用多种深度学习方法识别4个品种的葵花籽,其中GoogleNet实现了最高分类精度达95%。
随着迁移学习[8](Transfer Learning)和卷积神经网络(Convolutional Neural Networks,CNN)的发展,不同于VGG16[9]等网络的庞大参数,越来越深层的轻量化神经网络被研究和关注,如DenseNet[10],NASNet[5],MobileNetV2[11],SqueezeNet[12],Xception[13],用于更方便的部署在移动端。
Moyazzoma等[14]使用MobileNetV2网络分类农作物疾病,得到90.38%的验证准确率。Khan等[15]对严重影响柑橘类水果产量和质量的6种不同的柑橘类疾病进行分类,使用SqueezeNet和MobileNetV2,通过使用鲸鱼优化算法进行优化,最终SqueezeNet模型优于MobileNetV2,达到了96%的准确率。Mia等[16]提出了基于CNN的迁移学习方法, MobileNetV2的准确率最高,达到93.23%。冯晓等[17]使用 MobileNetV2,构建玉米籽粒图像进行品种识别,结果表明,玉米籽粒双面特征建模的识别准确率达99.83%,优于单面特征建模及识别。Elfatimi等[18]使用MobileNetV2模型进行训练,提出的模型在豆叶训练数据集上的分类平均准确率超过了97%,在测试数据上的分类平均准确率超过了92%。Zhang等[19]提出了一种基于双路径卷积神经网络结合了VGG-16和Resnet-50的优点,平均分类精度为97.23%。Chakraborty等[20]基于MobileNetV2网络,在Kaggle数据集上测试了所提模型的性能,它在训练数据中达到了最高的准确率99.46%,在验证集中达到了99.61%。Hamid等[21]研究使用MobileNetV2对14种不同类别的种子进行分类。结果表明,训练和测试集的准确率分别为98%和95%。
本研究以MobileNetV2为基准模型,探索在迁移学习时对MobileNetV2的微调方法,以提高基准模型的准确率与泛化能力,提出MobileNetV2-2D-8模型,为玉米种质资源数字化保护提供技术参考。
1 实验材料与预处理
1.1 玉米籽粒图像采集
研究选取11种玉米种子,包括奥玉116、郑单958、小金黄、京粘1号、科诺58、铁研、登海605、立原、锦玉118、芸玉、BT506(山东农科院提供)。在实验室自然光照条件下,搭建拍照操作台,选用EOS 80D型数码相机垂直对多粒玉米种子图像进行拍摄,以黑色绒布为背景,玉米种子摆放见图1。
图1 多粒玉米籽粒图像
1.2 图像预处理
使用单粒种子图像对玉米籽粒进行分类识别,因此需要将单粒玉米种子籽粒图像分割出来,具体操作流程如图2所示。
图2 玉米籽粒分割
建立玉米胚面与非胚面双面混合数据集[17]。将原始数据集按照7∶2∶1的比例划分为训练集、验证集和测试集。详细情况如表1所示。
表1 玉米籽粒(双面混合)数据集
2 网络结构与试验环境配置
2.1 迁移学习
许多卷积神经网络模型(CNNs)如NASNet、DenseNet121、MobileNetV2、Xception 已在ImageNet等大型数据集上训练以用于图像识别。在迁移学习时,这些模型不需要从头开始训练。预训练的模型可以辅助网络泛化,加快收敛速度。因此迁移学习被广泛用于提高模式识别和计算机视觉领域中若干任务的准确性。图3为迁移学习算法流程图。
图3 基于迁移学习的玉米籽粒图像识别算法流程图
2.2 MobileNetV2-2D-8
MobileNetV2利用残差结构取代了原始的卷积堆叠方式,提出了Inverted ResidualBlock结构;然后采用Depthwise Convolution先升维,后降维的方法,执行了扩张→卷积特征提取→压缩的过程。
在深度学习中,全连接层可以整合特征用于分类或者回归。随着全连接层数或者维度的加深,模型的非线性表达能力会得到一定提升,学习能力得以加强,准确率得到一定提高。基于迁移学习,提出了MobileNetV2-2D-8玉米籽粒图像分类模型,模型架构如图4所示。
2.3 模型性能评价指标
采用准确率(Accuracy),精确率(Precision),召回率(Recall),F1-score作为模型性能评价指标。
Accuracy为所有被正确识别的样本数占总样本数的比例。Precision是衡量模型正确预测能力的指标,代表了预测正确的样本数量占总体的比例。Recall又被称为召回率,表示在真实样本中,被正确预测的样本数量占总样本的比例。F1-Score是结合Precision和Recall的综合指标,取值为Precision和Recall的调和平均数,其取值范围是0~1,为模型的最优输出,0为模型的最差输出。
(1)
(2)
(3)
(4)
式中:TP为实际为正被预测为正的样本数量;FP为实际为负但被预测为正的样本数量;FN为实际为正但被预测为负的样本数量;TN为实际为负被预测为负的样本数量。
2.4 模型训练环境配置
玉米籽粒识别模型的训练与测试均在Colab平台下完成。软件环境:keras 2.1.2;TensorFlow 2.6.0;Python3.7。实验具体参数配置如表2所示。
表2 实验详细参数
3 基于迁移学习MobileNetV2实验结果与分析
3.1 基准模型
从实验结果可以看出(表3),未微调的MobileNetV2取得了最好分类效果,准确率达到0.948 7。因此研究选择未微调的MobileNetV2为基准模型(将此操作规定为处理A)。
表3 未微调模型对玉米籽粒图像分类准确率
3.2 模型的微调分析
基于MobileNetV2的玉米籽粒分类模型迁移学习,探讨dropout层取值和全连接层维度与数量对模型性能的影响,以期获得最高准确率模型。
3.2.1 全连接层探讨分析
在深度学习中,全连接层可以整合已提取的特征用于之后的分类或回归。图4为全连接层的数量和维度对玉米籽粒图像分类模型的影响。
从图5中可以看出,随着全连接层数或者维度加深,模型的准确率得到了一定程度的提升。当全连接层数为2且维度为2 048时,模型取得最高准确率0.966 2(将此操作规定为处理B)。这说明在添加全连接层后,模型的非线性表达能力得到一定提升,学习能力得以加强。随着全连接层数量和维度的增加,模型的性能出现了一定的下降,这是因为增加全连接层数量和维度,可能导致模型参数增多,运算效率降低,并有过拟合趋势。
3.2.2 dropout层探讨分析
过拟合是深度神经网络的一个严重问题。dropout是一种解决这个问题的技术。其关键思想是在训练过程中从神经网络中随机删除单元(连同其连接)[22]。
以2层全连接层为初始连接层数量,研究dropout在MobileNetV2迁移学习分类模型的最优值。图6为2层全连接层下dropout取值对模型分类的影响。
图6 2层全连接层下dropout取值对模型分类的影响
随着dropout取值的增加,模型准确率呈先上升后下降的趋势,说明dropout可以有效防止模型的过拟合并对泛化能力进行提升。当dropout>0.3时,准确率呈现下降趋势,这是因为丢掉过多信息,必要信息不足导致模型性能下降。因此选择0.3作为模型的最优参数。当dropout取值为0.3,全连接层维度为1 024时,模型准确率为0.964 1,优于其他模型(将此操作规定为处理C)。
3.2.3 解冻部分骨干网络参与训练
对MobileNetV2模型进行微调,对预训练模型的顶部8层进行解冻,以便使训练得到的特征与当前任务更加接近。
D、 E、 F处理对基准模型解冻顶部8层,其他操作分别与A、B、C处理保持一致。
对基准模型进行解冻后,D、E、F处理的准确率高于A、B、C处理。当基准模型解冻后并添加全连接层,准确率较未添加全连接层略有提高,在E处理时准确率达到最高,为0.979 5。
基于迁移学习,使用训练好的MobileNetV2模型,其已拥有较好的对神经网络浅层基础特征和深层抽象特征的提取能力。通过上述实验结果可以发现,当全连接层为2,维度为2 048,并解冻模型后8层,使用Flatten层进行一维化处理训练时最优,准确率为0.979 5,优于基准模型未微调的MobileNetV2模型的准确率0.948 7。将此模型命名为MobileNetV2-2D-8。
4 具体类别分类效果差异原因分析
为了分析所提出模型MobileNetV2-2D-8在具体类别中的识别性能,识别结果具体如表4所示。
表4 模型在具体玉米籽粒图像类被的分类效果
从不同类别分类结果可以看出,具体的玉米籽粒图像11分类中,提出的基于MobileNetV2-2D-8的玉米籽粒分类模型F1-score均超过0.95,在奥玉116、BT506、立原的分类识别中准确率达到100%,说明提出的模型在细粒度下具有较好的泛化性能,能够出色的处理分类任务。
5 结论与展望
本研究将卷积神经网络与深度学习技术运用到玉米籽粒图像的识别中,采用迁移学习方法对MobileNetV2模型进行微调改进,通过实验发现增加一定数量的全连接层以及增大一定的全连接层维度,可以有效提升玉米籽粒模型的分类性能。本研究提出的MobileNetV2-2D-8模型,为玉米种质资源智能化与数字化保护提供了方法支撑。
本研究中的数据集数量有限,只提出了对11种玉米种子的分类,在未来的工作中可以尝试将数据集扩充,收集更多的种子进行分类识别与保护。同时,数据集制作时对单粒玉米籽粒切割也较为繁琐,因此将进一步探索目标检测算法在玉米籽粒识别中的应用,提高玉米籽粒识别效率,并部署在小程序、APP或Jetson Nano等移动端便携设备中,以应用在更加复杂的实际生产场景中。