APP下载

基于迁移学习和卷积神经网络的生菜鲜重估测

2022-11-07崔庭源杨其长马浚诚

中国农业大学学报 2022年11期
关键词:卷积生菜精度

崔庭源 杨其长 张 义* 徐 丹 马浚诚

(1.中国农业科学院 农业环境与可持续发展研究所,北京 100081; 2.中国农业科学院 都市农业研究所,成都 610000; 3.中国农业大学 水利与土木工程学院,北京 100083)

生菜是一种广泛种植的叶菜类蔬菜,在水培生菜的生产过程中,鲜重是评价作物长势的重要指标,通过鲜重可预测蔬菜的生长期和收获产量等其他长势指标,为栽培管理提供数据依据。

生菜鲜重测量时需要将生菜从栽培板中取出,对生产阶段的生菜根系损伤大,大规模监测过程中人工用量大,估测结果易受主观性影响,利用计算机视觉技术对作物进行非接触式长势监测能避免对生菜的损伤。对于生菜鲜重无损估测的已有研究中,Jung等提出了一种根据叶片图像和回归方程来估计生菜生长阶段鲜重的方法,证明叶片的像素面积和生菜实际鲜重有较强的相关性;在其基础上Jiang等开发了植物工厂中估测当前鲜重的在线检测系统,在不损坏生菜且快速的条件下实现对当前鲜重的精确估算和收获产量的预测;刘林等提出了一种融合表型特征和生长过程环境参数的方法,利用高斯回归方法建立表型参数和环境参数与生菜鲜重的关系模型,实现日光温室基质培生菜鲜重的无损估算;Martins等使用多光谱图像量化生菜的生物特征,根据光学特性预测生理指标。传统机器学习方法中,特征提取需要手动完成,不仅费时费力,还会受到个人主观性影响,随着计算机技术的发展,深度学习方法在图像识别领域得到广泛应用,卷积神经网络(CNN)能够以原图为输入进行特征的自主提取,在病虫害检测识别和水果蔬菜的分级等任务上已经取得较好结果。张领先等对比了传统机器学习算法和CNN在预测生菜长势时的表现,结果表明CNN相较于支持向量回归(SVR)、随机森林(RF)和线性回归(LR)等传统机器学习具有更高的精度;Yanes等提出一种多角度拍摄、图像分割和回归分析的方法来实现对装置上的小型水培生菜进行生长速率实时监测。

不同品种的生菜在形态、颜色等方面有较大差异,虽然基于计算机视觉与深度学习技术可实现对生菜长势的监测,但只能针对训练集品种的估测,模型的精度和样本的数据量有关,样本量较小时深度学习无法发挥出优势。迁移学习是解决小样本问题的最佳方法之一,可利用迁移学习将训练好的模型应用到各自的任务中来提升精度。龙满生等利用迁移学习的方法将AlexNet预训练模型迁移到油茶病害识别的任务上,相比于全新学习,节省时间的同时准确率也得到不同程度的提高;郑一力等利用预训练好的AlexNet、InceptionV3模型在植物叶片数据集上迁移训练,实现了不同植物叶片的识别;徐景辉等基于VGG-16网络模型,利用迁移学习的方法实现了田间复杂背景下玉米锈病与大斑病的识别;张瑞青等选择迁移AlexNet的卷积层的方法,不仅加速了模型的训练并提高了花生荚果的分类准确率。

上述迁移学习研究大多都面向分类任务, AlexNet、VGG、GoogLeNet和ResNet等卷积神经网络模型在分类任务中迁移学习时具有良好表现,能有效降低对数据量的依赖,仅需少量样本即可应用到其他任务中。本研究拟采用以生菜的顶部图像为输入,基于迁移学习与卷积神经网络的方法实现对生菜鲜重值的回归预测,以期为生菜的实时估产和精确管理提供指导,并扩展到其他叶菜的鲜重估测中。

1 材料与方法

1.1 生菜冠层图像数据采集设备

采用SmartFLYd无畸变USB摄像头获取生菜冠层RGB图像,相机型号为SY012HD,35 mm固定焦距,图像大小为1 920像素×1 080像素。相机固定在距地面0.78 m高的架子上,在地面上铺设纯白色泡沫板作为拍摄背景,拍摄时将生菜放置在盛水的锥形瓶中,锥形瓶为100 mL标准规格,瓶口到地面的高度为10 cm。使用电子分析天平称取生菜鲜重,天平型号为YP3002B,精度为0.01 g,最大量程300 g。

1.2 数据采集及预处理

采集地点位于北京市顺义区创新生活科技开发有限公司水培生菜生产温室,生菜品种为国产创新2号奶油生菜,种植方式为深液流水培,生菜的栽培间距为20 cm,每块泡沫栽培板上有15株奶油生菜,在生菜定植1周后开始采样,每天采样36株,连续采样20天;每次采样从栽培池中随机取3个不相邻的栽培板,从每个栽培板随机选出12株作为样本,最终得到720株生菜的冠层RGB图像。为最大程度反映实际生产过程中生菜的真实鲜重,采用带根称重的方式,用吸水纸吸干根部和海绵块残留的水分,并在称重前对海绵块进行去皮,得到生菜的带根鲜重数据。

将采集的720个样本数据集以8∶2的比例随机划分为训练集和测试集,再从训练集中划分出20%为验证集, 得到461张训练图像、115张验证图像和144张测试图像,其中训练集和验证集用于模型的训练,测试集用于评估模型的泛化能力。

数据集中的原始图像大小为1 920像素×1 080像素,原图中存在大量与生菜样本无关的多余像素,为了提高模型的速度和准确率,对原图进行预处理,采用手动裁剪的方式将原始图像裁剪为600像素×600像素并将非采样区域剔除,再缩放为227像素×227像素和224像素×224像素2种不同尺寸以适应不同预训练模型的输入。

为了提升模型的准确性并减少过拟合的问题,在2种尺寸的图像裁剪完成后分别对训练集和验证集数据进行扩充,具体方法为:将图像进行水平翻转和垂直翻转,旋转90°、180°和270°;进入HSV空间,将亮度调整为0.8倍、0.9倍、1.1倍和1.2倍模拟温室内的不同光照情况,实现将数据扩充到26倍的效果,最终得到11 986张训练图像。图像数据预处理和扩充过程见图1。

图1 图像预处理与扩充Fig.1 Preprocessing and expansion of the image

为加速模型的收敛,对生菜鲜重数据进行数据标准化处理,将数据变换为均值为0、方差为1的分布,数据标准化处理能更好的保证样本分布,标准化公式为:

(1)

式中:

x

为标准化后数据;

x

为第

i

个样本;

x

为全部样本的均值;

x

为所有样本的标准差。

1.3 鲜重估测模型的选取、训练及测试

经多模型预筛选,最终选择4个预训练模型对比迁移学习的效果,分别为AlexNet、VGG-16、GoogLeNet 和ResNet18, ImageNet数据集中存在卷心菜等与生菜相近的数据集,采用模型迁移的方法,将在ImageNet上预训练(Pre-trained)过的4个模型的权重参数在生菜鲜重估测数据集上微调(Fine-tuning)。4个预训练模型面向1 000个物体识别的分类任务,对其进行进一步的改造调整以适应本研究的回归估测任务:将预训练模型的最后一个全连接层(Fully Connected Layer,FC)、Softmax层和输出层删除,建立新的全连接层和输出层,新的全连接层含有1个隐藏神经元对应生菜的鲜重值,使用随机初始化权重,调整新层的学习率为初始学习率的10倍以加快新层学习。

数据预处理和模型训练的硬件环境为惠普(HP)Z238台式工作站,配置为8核Intel(R)Core(TM)i7-7700 CPU,主频为3.60 GHz,安装内存(RAM)为48 GB,操作系统为Windows 10家庭中文版64位,模型搭建和训练在MATLAB2020a的软件环境下完成,各个模型训练过程中的超参数配置保持一致,采用对预训练模型微调的方式迁移学习。训练时采用带动量的随机梯度下降法(Stochastic gradient descent,SGD)进行模型的训练,动量因子设置为0.9,学习率和图像批处理大小采用网格式搜索的方式确定,学习率设置为0.000 1,批处理大小设置为8,最大训练周期为8轮,经过11 984次迭代训练实现对模型的微调。

模型训练过程中选用的损失函数为均方误差(MSE),计算公式为:

(2)

式中:

n

为样本的数量;

t

为第

i

个样本的真实值;

y

为第

i

个样本的预测值。对模型估算的鲜重值和实际值进行线性回归分析定量评估模型性能,使用决定系数(

R

)和归一化均方根误差(NRMSE)作为评价指标,计算公式如下:

(3)

(4)

式中:

S

为第

i

个样本的实际值;

E

表示第

i

个样本的估算值;为实际值的平均值;

m

为估算模型的样本数量。

2 结果与分析

2.1 不同模型性能对比

采用均方根误差(RMSE)和损失值(Loss)的变化监控模型的训练进程,在训练集上的均方根误差和损失值变化见图2。在迁移学习方式下,模型在训练初始时刻已开始收敛,随着迭代次数的增加,模型的损失不断下降并趋于稳定,RMSE逐渐减小,在11 984次迭代后,损失值达到较小水平,模型达到较高估测精度。

图2 训练过程的均方根误差RMSE(a)和损失值Loss (b)Fig.2 RMSE (a) and loss function (b) of the training process

模型迁移学习后在测试集的结果见表1:AlexNet、VGG-16、GoogLeNet和ResNet-18这4种模型迁移学习后进行生菜鲜重的估测时都能得到较好的结果,在测试集上的

R

均达到0.89以上,NRMSE均低于24%,预测值和实际值有较好的线性关系,表明基于迁移学习的卷积神经网络能够实现生菜鲜重的准确估算。其中VGG-16迁移学习的结果最优,

R

为0.938 0,NRMSE为17.71%; AlexNet迁移学习模型的结果次之,在测试集上的

R

为0.928 0,NRMSE为19.08%,两者的性能差距不大,但VGG-16模型的大小是AlexNet的两倍以上,训练耗费时间为AlexNet的8倍,模型过于庞大,对比模型的预测时间,VGG-16在进行预测时耗费的时间是AlexNet的12倍,训练和预测都比较耗费时间;GoogLeNet和ResNet-18的结果较差,但两者的模型参数量较小;AlexNet模型迁移学习后有着较高的准确率且模型参数少于VGG-16,综合考虑选取AlexNet为本研究的生菜鲜重估算模型。

4种模型在测试集上的估算值和样本实测值的拟合情况见图3,模型在进行鲜重估算时实测值和估测值都具有较好的线性拟合关系,在生菜生长阶段的前中期估测值与实测值较为贴合,在生长后期的偏差较大;GoogLeNet和ResNet-18在生长初期的估测值出现较大偏差,GoogLeNet的NRMSE为21.89%,ResNet-18的NRMSE为23.3%,离散程度较大不适合研究的任务需求。

表1 模型迁移学习后在测试集上的结果比较
Table 1 Comparison of results on test set after model transfer learning

模型Model模型大小/MBSize of model训练时间/minTime of training预测时间/sPrediction timeR2NRMSE/%AlexNet202.01111.132 90.928 019.08VGG-16478.097013.474 00.938 017.71GoogLeNet22.82133.192 30.905 321.89ResNet-1840.62012.719 40.892 723.30

注:为决定系数,数值为0~1,越接近1说明模型拟合越准确;NRMSE为归一化均方根误差,数值越小说明估测的偏差越小。表2同。

Note: is the coefficient of determination, whose value is between 0 and 1, the closer its value is to 1, the more accurately the model is fitted; NRMSE is the normalized root mean square error, and the smaller its value, the smaller the deviation of the model estimation. The same as
Table 2.

图3 4种模型迁移学习后在测试集上估测鲜重与实测鲜重的拟合Fig.3 Fitting of the estimated and measured fresh weight on the test set after transfer learning on the four models

2.2 不同迁移学习方法的对比

对卷积神经网络的迁移学习方法有以下几种:保持原模型的参数不变,设计适应于新任务的全连接层后对模型进行微调训练(Pre-training + fine-tuning)的模型迁移;仅参考模型结构不使用预训练权重,使用随机初始化方法初始化模型权重的全新学习;冻结卷积层保留原模型的特征提取能力,仅对全连接层训练。分别对比AlexNet模型上进行不同迁移学习方法对模型性能的影响, AlexNet具有5个卷积层和3个全连接层,卷积层负责浅层特征的提取,冻结不同数量的卷积层来观察对模型的影响,全连接层负责结果运算,其参数量占模型总参数的90%以上,减少全连接层可以显著减少模型的参数计算量,AlexNet模型根据任务需求改造后的结构见图4。

图4 AlexNet模型改造后的结构图Fig.4 Structural diagram of the AlexNet model after transformation

AlexNet-new为只参考模型的结构的全新学习方法,AlexNet-freeze5、AlexNet-freeze4和AlexNet-freeze3分别为冻结卷积层1~5、卷积层1~4、卷积层1~3的处理方法。AlexNet-FC1为删除全连接层1~3,并新建一个含有隐藏神经元的全连接层;AlexNet-FC2为删除全连接层2~3,并新建一个全连接层的处理方法。训练超参数设置和硬件环境一致,不同迁移学习方法下模型在测试集上的结果见表2。可以看出,相同的情况下,AlexNet全新学习的

R

为0.872 6,NRMSE为25.39%,相较于迁移学习,

R

下降了0.055,且NRMSE增大了8.31%,证明迁移学习相较于全新学习能有效提高模型估算的准确度;冻结卷积层能明显加速模型的训练,训练时间减少18%,模型的

R

仅下降0.013,对比冻结不同层数的卷积层,结果差距并不大,说明模型本身就已经能较为准确提取到生菜的特征;减少全连接层能明显加速模型的训练,仅有1个全连接层时,AlexNet-FC1的

R

为0.924 9,NRMSE为19.49%,但与AlexNet相比模型大小减少了95%。

表2 模型使用不同迁移学习方法在测试集上的结果比较
Table 2 Comparison of the results of the model on the test set using different methods of transfer learning

方法Method模型大小/MBSize of model训练时间/minTime of training预测时间/sPrediction timeR2NRMSE/%AlexNet2021111.132 90.928 019.08AlexNet-new2001121.092 10.872 625.39AlexNet-freeze5202921.080 10.914 720.47AlexNet-freeze4202911.052 30.916 120.60AlexNet-freeze3202911.071 40.914 120.85AlexNet-FC18.5611.034 40.924 919.49AlexNet-FC2142951.082 70.922 819.76

2.3 特征图可视化分析

生菜图像经过AlexNet模型的卷积层1后,得到96个特征图,特征图的激活区域见图5。输入原图可以发现,AlexNet模型在图像输入后,经过卷积层1时,生菜轮廓和背景信息已经表现出强烈的正激活或负激活,说明AlexNet模型经迁移学习后对生菜具有较强的特征提取能力,可以泛化应用到其他叶菜鲜重估测。

图(b)中,白色像素和黑色像素分别代表强烈的正激活和负激活区域。 White and black pixels in the image (b) represent strongly positive and negative active regions, respectively.图5 图像输入AlexNet模型卷积层1后特征图激活区域Fig.5 Active region of feature maps after inputed to the first convolution layer for AlexNet model

3 讨 论

本研究中模型直接以生菜冠层图像为输入,无需人为提取特征,省去了繁琐的建模过程,仅使用CPU也能完成模型的训练,对硬件需求较低,数百个原始样本经过扩充后就能得到较好估测精度。模型在新任务数据集上微调迁移学习后,均能在测试集上取得较好的效果,VGG-16模型结果最好,但模型参数量过大,训练和预测耗费时间较长; AlexNet模型能获得类似的精度,但参数量仅为其一半,训练速度是其8倍以上,在精度差距不大的情况下,选择AlexNet模型能够降低模型训练过程中对硬件性能的要求,有利于扩展到其他叶菜的鲜重估测中。

选取AlexNet模型进一步研究后发现,相同的训练周期下,基于AlexNet模型的结构进行全新学习时,模型性能有所下降,证明模型迁移能够有效提升模型精度加速模型的收敛。冻结部分卷积层能够适当加快模型训练的同时保证模型的特征提取能力,可使用冻结部分卷积层的方式加速模型的训练,但也会造成模型性能的下降,可能是因为冻结卷积层在一定程度上限制了对生菜特征的提取。原始的AlexNet模型有3个全连接层占据大量的参数量,适当减少全连接层对模型的最终结果影响不大,但能显著减少模型的计算量加速训练。模型准确率不能进一步提高可能是由于原始样本较少,不能均匀分布在生菜生长的各个阶段。通过对AlexNet模型第一个卷积层输出特征图的激活区域分析可以看出,模型对生菜的轮廓和背景已经有较强的识别能力,证明利用迁移学习的方法,可以实现特征的准确提取。

在Zhang等部分数据集上进行泛化能力测试,数据集包含200张Tiberius生菜图像及其鲜重值,相同参数设置下模型的

R

为0.867 2,NRMSE为24.76%,证明模型具有一定的泛化能力,本研究方法具有普遍适用性。在Tiberius数据集上精度下降的主要原因在于其样本总数为200,本研究中奶油生菜的样本总数为720,说明增加样本数能够显著提升模型的精度。除此之外,影响模型精度的另外一个原因可能是奶油生菜冠层叶片对中下层叶片的遮挡问题较为严重和生长后期出现包心趋势,后续的研究中可尝试多角度拍摄和使用深度相机获取更多信息来提升精度。

4 结 论

本研究提出了一种基于迁移学习的卷积神经网络估算生菜鲜重的方法,主要结论如下:

1)对比AlexNet、VGG-16、GoogLeNet和ResNet-18模型在生菜鲜重估测任务上的表现,AlexNet模型迁移学习训练后在测试集上

R

为0.928 0,NRMSE为19.08%,VGG-16的

R

为0.938 0,NRMSE为17.71%,2个模型估测效果相似,综合模型参数量和训练速度等方面考虑,选取AlexNet模型为本研究的生菜鲜重估测模型。2)与仅参考模型结构的全新学习方法相比,对AlexNet预训练模型微调进行迁移学习能有效提升估测精度,模型在测试集上的

R

提升0.055 4,NRMSE降低8.31%,且模型泛化能力强,将该方法应用到Tiberius生菜上也能取得较好结果。3)冻结卷积层可加快模型的训练,在保持精度的前提下训练时间减少18%;减少全连接层对模型性能影响较小,但能明显缩小模型参数量,加速模型训练;仅使用一层全连接层时模型大小减少95%,和原AlexNet模型对比性能差距不大,在训练集上

R

为0.924 9,NRMSE为19.49%。

综上,基于迁移学习的卷积神经网络估测生菜鲜重的方法,可实现对生菜鲜重的无损估测,该方法也可扩展应用在其他叶菜的鲜重等长势指标的估测中。在温室生产中,可在栽培槽上方架设滑轨安装摄像头实现对种植过程中叶菜鲜重的实时无损估测。

猜你喜欢

卷积生菜精度
基于不同快速星历的GAMIT解算精度分析
基于全卷积神经网络的猪背膘厚快速准确测定
澳大利亚“生菜危机” 肯德基扛不住了
基于图像处理与卷积神经网络的零件识别
生菜
基于深度卷积网络与空洞卷积融合的人群计数
近似边界精度信息熵的属性约简
卷积神经网络概述
生菜?你爱吃圆的还是散叶儿的?
电力系统短期负荷预测方法与预测精度