温室樱桃番茄果实深度学习识别模型研究
2023-12-29夏秀波张焕春李民赞
沈 超,夏秀波,杨 玮,张焕春,李民赞
(1.山东省烟台市农业科学研究院,山东烟台 265500;2.中国农业大学智慧农业系统集成研究教育部重点实验室,北京 100083;3.烟台市智慧农业研究中心,山东烟台 265500)
樱桃番茄,又名圣女果,既是蔬菜,又是水果,其果实酸甜可口、柔软多汁、营养丰富,富含VA、VC和矿质元素,具有一定的保健作用,深受消费者喜爱,是联合国粮农组织优先推广的四大果蔬之一[1]。随着乡村振兴、科技扶贫以及农业农村现代化建设的推进,设施果蔬成为重要方向,樱桃番茄是设施栽培中的主要品种之一[2]。但是樱桃番茄人工采摘效率低、成本高,成为制约产业发展的重要因素[3]。随着信息技术的飞速发展,使用人工智能设备代替或部分代替人工成为可能[4]。智能设备工作的第一步是物体的检测与识别。近年来,基于数字图像的识别检测技术成为专家、学者研究的热点[5-9]。深度学习的卷积神经网络模型与传统的机器学习相比,能利用卷积操作自主学习图像特征,且特征学习较为全面[10],可抽取到的特征比传统方法具有更强的表征能力和鲁棒性,这一优势使深度学习在计算机视觉领域的研究和应用中表现出不可替代的地位[11]。本试验通过智能终端采集自然条件下樱桃番茄果实的图像信息,利用深度学习方法进行算法模型训练,进而实现对果实图像目标的准确识别,以期为后续的智能采摘和产量预估提供技术支持。
1 材料和方法
1.1 图像采集
2020 年11—12 月和2021 年1—3 月在山东省烟台市农业科学研究院玻璃温室对秋延迟和越冬两个茬口的樱桃番茄进行图像采集。品种为金阳蜜珠(由山东省烟台市农业科学研究院提供),果实为橘黄色。在温室自然条件下,采用Redmi K30 Pro智能终端,从不同拍摄角度采集图像,共采集图像600 张,图像的分辨率为3 472 px×4 624 px,图像的格式为jpg 格式。
1.2 图像标注
基于深度卷积神经网络,采用开源图像标注工具Labelimg 对樱桃番茄图像进行人工标记[12](图1)。针对目标检测模型构建了相应的数据集。其中,90%样本用于训练、10%样本用于测试。训练集共486 张图片,验证集共54 张图片,测试集共60 张图片。
图1 部分图像人工标记Figure 1 Part of images manually labeled
1.3 网络识别模型的优化
试验采用运算速度与精度结合的YOLOv4 和YOLOv4-Tiny 算法[13]进行模型训练,并对模型进行定量分析和定性分析。其主干特征提取网络由DarkNet53 改用为CSP DarkNet53,同时使用Mish激活函数[14]。具体主干提取网络见图2:在特征金字塔部分,YOLOv4 进行了改进,使用了SPP 结构和PANet 结构,除去CSP DarkNet53 和YOLO Head 的结构外,都是特征金字塔的结构。
图2 优化后主干特征提取网络Figure 2 Optimized backbone feature extraction network
1.4 深度模型训练
试验在极链AI 云平台的高性能服务器中进行训练和检测识别。设备参数CPU 型号为Intel(R)Xeon(R)Gold 6129、内存为125G、内核为64 核、GPU 为GeForce RTX 2080 Ti、显存为11G。软件环境Ubuntu18.04 操作系统、Pyhton3.7 编程语言、TensorFlow 2.0 深度学习框架、CUDA 10.1。试验使用构建的樱桃番茄果实数据集,网络结构均为默认设置,采用COCO 数据集的预训练模型,优化器均使用Adam,使用固定步长学习率衰减方法,并且使用冻结训练方法,设置总训练代数为100、冻结代数为50 进行模型的训练。
1.5 模型定量分析方法
对于樱桃番茄果实图像检测的真实值和检测结果使用混淆矩阵来判断[15](表1)。目标检测任务通常采用精确率、召回率、平均精确率和综合评价指标F1 来定量评估算法的检测性能。其中,TP 表示与预测框和真实框相匹配的数量、FP 表示预测背景为目标的数、FN 表示属于待识别目标但未被模型识别的数量、TN 表示本身为背景且未被模型识别为目标的数量。此外,还可以推出公式
表1 混淆矩阵Table 1 Confusion matrix
2 结果与分析
2.1 模型训练结果
由图3a 和图3c 可知,YOLOv4、YOLOv4-Tiny算法的训练损失值在前5 个epoch 内均出现了大幅度下降,之后下降速度放缓;在10 个epoch 后,YOLOv4 的训练损失值曲线十分平缓,而YOLOv4-Tiny训练的损失值仍有较明显的下降趋势,在第30 个epoch 的时候开始缓慢下降,之后趋于平缓,损失值终值为0.652;YOLOv4-Tiny 在20 个epoch 后,训练损失值曲线十分平缓,在第50 个epoch 的时候开始缓慢下降,之后趋于平缓,损失值终值为6.723。由图3b 和图3d 可知,YOLOv4 的验证损失在前5 个epoch 出现大幅度下降,在第10 个epoch 左右出现回升,然后变为小幅度波动,之后趋于平缓,损失值终值为0.818,最小值为0.592;YOLOv4-Tiny 的验证损失值在训练前期出现大幅度下降,在第4 个epoch 左右出现回升,每隔2 个epoch,验证损失值会出现轻微下降,终值为7.803。根据这两个算法的验证损失值,可以看出YOLOv4 算法模型比YOLOv4-Tiny 更加稳定。
图3 训练集和验证集的损失值变化图Figure 3 Changes in loss values of training and validation sets
2.2 模型定量分析
YOLOv4 和YOLOv4-Tiny 算法模型具体定量结果见图4~图7。由图4 可知,在YOLOv4 算法模型下深度学习后樱桃番茄果实的预测精确率为100%,YOLOv4-Tiny 算法模型的预测精确率为96.84%;由图5 可知,在YOLOv4 算法模型下深度学习后樱桃番茄果实的召回率为91.12%,YOLOv4-Tiny 算法模型的召回率为90.53%;由图6 可知,在YOLOv4 算法模型下深度学习后樱桃番茄果实的平均精确率为96.32%,YOLOv4-Tiny 算法模型的平均精确率为94.18%;由图7 可知,在YOLOv4 算法模型下深度学习后樱桃番茄果实的综合评价指标F1 为0.95,YOLOv4-Tiny 算法模型的综合评价指标F1 为0.94。这表明在YOLOv4 和YOLOv4-Tiny 模型下深度学习对樱桃番茄果实不同成熟度果实具有较高的识别率。而YOLOv4 算法模型的精确度、召回率、平均精确率和综合评价指标F1 值明显高于YOLOv4-Tiny 模型,这说明YOLOv4 算法模型明显优于YOLOv4-Tiny 模型。
图4 两种算法模型的准确率曲线Figure 4 Precision rate curves of two algorithm models
图5 两种算法模型的召回率曲线Figure 5 Recall rate curves of two algorithm models
图6 两种算法模型的精确率-召回率曲线Figure 6 Precision-Recall curve of two algorithm models
图7 两种算法模型的综合评价指标F1 值曲线Figure 7 F1 value curve of comprehensive evaluation index for two algorithm models
2.3 模型定性分析
试验选取了温室自然场景下不同成熟度的樱桃番茄果实进行定性分析,训练得到的YOLOv4 和YOLOv4-Tiny 模型识别效果见图8。由图8 可知,两种算法模型对不同成熟度果实的检测识别效果整体较好。对于采集的图像中樱桃番茄果实较大且个数较少的图像,检测结果良好;而对于图像中樱桃番茄果实小、个数较多且比较密集、有遮挡的、背景复杂的图像,出现了错检、漏检,检测结果稍差,但YOLOv4 算法模型明显优于YOLOv4-Tiny 模型。
图8 不同成熟度果实识别效果Figure 8 Recognition effect of fruits with different maturity
3 讨论与结论
深度学习的卷积神经网络模型主要通过模拟人类的视觉功能来对获取的图像信息进行处理,具有自主全面学习图像特征的特点[16]。张靖祺[17]将Grab cut首次运用到温室番茄图像的识别中,通过K-means与SVM 二者结合的方式对温室番茄成熟度进行检测;李国进等[18]针对YOLOv3 算法做了一些改进,通过模型的训练,对芒果成功识别率更高,该训练得到的模型在测试集上的平均精确率可以达到94%以上,为芒果的自动采摘提供了相应的技术支持。朱旭等[19]通过构建数据集,使用改进的Faster R-CNN 进行训练得到的模型对成熟、半成熟和未成熟蓝莓的平均识别精确率达94%以上,可为蓝莓自动采摘以及估产等提供一定的技术支持;WAN 等[20]根据番茄的颜色特征,并结合BP 神经网络算法对罗曼番茄和梨形番茄这两个品种的成熟度进行检测,精确率可以达到99.31%,且标准差仅为1.2%;ZHAO 等[21]提出了一种基于多个特征图和图像融合技术的番茄识别算法,分别从颜色空间和亮度、同相、正交相位(YIQ)颜色空间中提取新的特征图像,结合小波变换图像融合特征,对成熟番茄进行识别,通过对试验进行测试,93%的成熟番茄可以被正确识别;AREFI等[22]设计了一种基于形态学特征和RGB、HIS、YIQ空间的采摘机器人识别和定位成熟番茄的算法,精确率可以达到96.36%,但是该机器人不能识别和定位有遮挡的番茄;LIU 等[23]为了减少番茄检测中光照和遮挡的影响,提出了一种基于普通彩色图像自动检测番茄的算法,该方法可以达到90.00%的精确度,94.41%的精度,F1-score 为92.15%,但是当超过一半的区域被遮挡或者重叠时,该方法是无法识别的。针对不同光照、重叠和遮挡条件下番茄果实识别的问题,许多研究人员尝试使用各种传感器,并应用机器学习或深度学习技术来克服[24-27]。
本试验主要开展了樱桃番茄果实图像识别的图像采集、标注、数据集的构建,YOLOv4 和YOLOv4-Tiny算法模型的训练,并将其用于自然条件下樱桃番茄果实图像的检测识别中。结果表明,使用训练好的YOLOv4 和YOLOv4-Tiny 算法的深度学习神经网络模型,对樱桃番茄果实的目标检测效果良好,预测平均精确率分别为96.32%和94.18%;综合评价指标F1 值分别为0.95 和0.94,说明该方法能够实现对樱桃番茄果实目标的准确识别。但对于果实小、个数较多且比较密集、有遮挡的图像,检测效果略差,后期将增加图像,进行模型再学习训练,以提高识别的效果。同时可以看出YOLOv4 模型明显优于YOLOv4-Tiny。因此,YOLOv4 模型可为后续温室樱桃番茄的产量预估、果实成熟度检测、采摘和分级提供一定的技术支持。而YOLOv4-Tiny 作为轻量级的算法模型虽然精确率会略低一些,但仍能满足多数使用场景,适合后续在嵌入式设备上的部署。