【APMCM数学建模竞赛】国家一等奖:基于改进YOLOv8模型的远景图像苹果识别
摘要:针对密植栽培苹果果园中环境复杂导致果实识别效果差问题,现有研究主要集中于优化近景图像在背景干扰、气象变化、季节变迁等情况下的识别效果,而较少关注远景图像中的果实缩小和果实重叠问题。因此,本项目采用YOLOv8作为基础模型,首先将原有的SPPF模块替换为具有更大感受野的SPPFCSPC模块,以融合果实的局部和全局特征,从而提高最小果实目标的召回率。同时,将NMS算法替换为软NMS算法,以选择性保留重叠度较高的边界框,从而提高识别重叠果实的能力。实验结果表明,在远景图像果实识别任务中,改进后的模型相比原始的YOLOv8模型在精确率、召回率、平均准确率指标上分别提升了0.04%、4.43%、0.87%。该方法有效提高了密植栽培果园远景图像的苹果识别效果,为农业自动化发展提供了重要参考。
1 研究背景
中国是世界上最大的苹果生产国,年产量约为3500万吨。与此同时,中国也是世界上最大的苹果出口国,世界上每两个苹果中就有一个来自中国,世界上出口的苹果中有六分之一以上来自中国。中国提出了“一带一路”倡议,这是构建人类命运共同体的重要支柱。得益于这一倡议,越南、孟加拉国、菲律宾、印度尼西亚等沿线国家已成为中国苹果的主要出口目的地。因此,进行果园苹果检测,可以有效保证苹果的质量和安全,满足国际市场的高标准要求,进而促进中国苹果在全球范围内的销售和品牌形象的提升。
图1 果园图片示例
2 相关工作
2.1 传统图像处理方法
传统的图像处理方法主要通过果实的颜色、纹理和轮廓等特征信息对果实进行形态学处理从而达到对果实识别的效果,但对于复杂环境图像的识别准确率较低。廖崴等使用Otsu阈值分割法对苹果图像RGB颜色空间的像素值进行分割,得到仅包含果实和叶片的图像,通过随机森林算法建立苹果叶片模型,并利用霍夫变换检测苹果果实的轮廓,达到对苹果识别的效果,其平均识别准确率只有88%。
2.2 基于卷积神经网络的方法
卷积神经网络由于其较高的识别准确率被广泛地使用,以R-CNN算法衍生出的 Mask R-CNN和Faster R-CNN等网络模型,其识别过程分为定位和分类两个阶段,故称为两阶段目标检测算法。其中,将Faster R-CNN网络应用于果树果实识别场景中的研究较多,对果实的检测和识别效果较好。闫建伟等通过对Faster R-CNN网络模型进行改进,将其中ROI Pooling模块替换为ROI Align模块,对自然环境下不同形态的刺梨果实进行识别,F1分数最高达94.99%。Gao等采用Faster R-CNN网络模型对比不同主干特征提取网络对苹果果实识别的影响,使用VGG-16作为主干特征提取网络的效果最好,mAP达到87.9%。而以YOLO系列算法为代表的单阶段目标检测算法,以其较快的检测速度和简单的算法流程也得到了越来越多的应用。赵辉等采用改进 YOLOv3 网络模型对不同场景下和不同成熟度的苹果果实图像进行识别,其 F1分数为 91.8%。Ji 等采用 EfficientNet-B0 作为 YOLOv4 的主干特征提取网络,对夜间环境下的苹果果实进行识别,其 F1 分数达到 90.35%,达到较好的识别效果。
3 数据展示
本文使用applepl2苹果检测数据集进行模型训练与推理。该数据集中包含较多的果园远景图像,普遍存在互相遮挡与密集分布情况。因此,目标检测模型需要具有多尺度处理能力,以确保能够检测到各种大小的目标。同时,模型需要注意不漏掉目标或将其错误地合并。
图1 数据集展示
4 算法模型
4.1 YOLOv8网络模型
在计算机视觉领域,YOLO系列模型因为自身高度的准确性和较小的模型尺寸得到了广泛应用。与YOLO v5相比,YOLO v8有一些架构更新和增强。YOLO v8是一个无锚框检测模型,这意味着它不是预测一个目标与一个已知锚框的偏移量,而是直接预测目标的中心。无锚框检测减少了预测框的数量,以此加快了非极大值抑制的速度。为满足实际移动端运行需要,模型的参数量不能过大且要满足实时检测。在 YOLO v8 系列模型中,YOLO v8n 的模型体积最小,符合苹果采摘的实际应用条件,但在识别苹果的任务中,当识别目标存在遮挡严重的情况时,YOLO v8n仍存在漏检的问题。因此,该研究选择对 YOLO v8n进行模型的设计与改进。
4.2 金字塔池化模块改进
YOLOv8网络默认使用空间金字塔池化(Spatial Pyramid Pooling - Fast,SPPF)模块进行金字塔池化。该模块是由YOLO v5作者Glenn Jocher对SPP进行优化改进的成果,速度较SPP快很多。SPPF模块的结构图如下。
图2 SPPF模块
SPPFCSPC结合了SPPF和SPPCSPC两者的思想。在保持感受野不变的情况下速度获得提升。SPPFCSPC模块的结构图如下。我们希望利用SPPFCSPC模块融合果实的局部和全局特征,从而提高最小果实目标的召回率。
图3 SPPFCSPC模块
4.3 NMS算法改进
在目标检测中,非极大值抑制(Non-Maximum Suppression,NMS)是一种常用的技术,用于在多个候选目标框中选择最佳的目标框。NMS算法能够根据目标框的置信度和重叠度对目标框进行筛选和排序,从而得到高质量的检测结果。NMS算法的基本思想是根据目标框的置信度对候选目标框进行排序,并按照置信度从高到低的顺序选择最佳的目标框。选择过程中,若两个目标框的重叠度大于一定阈值(通常为0.5),则将置信度较低的目标框丢弃,保留置信度较高的目标框。
然而,在某些情况下,NMS算法可能会遇到一些问题,如果园图片缩放后果实目标框重叠度下的漏检错检。 因此,本文将NMS算法替换为软NMS算法,以考虑边界框的相对置信度,从而提高识别重叠果实的能力。
5 实验结果
5.1 近景与远景的检测效果对比试验
根据果园图像的焦距,可将图片分为两种:近景和远景。分别测试各模型在这这两种情况下的检测性能,实验结果如下所示。
表1 对比试验结果表
场景 | 模型 | 精确率/% | 召回率/% | 平均准确率/% |
---|---|---|---|---|
远景 | Faster R-CNN | 73.98 | 71.68 | 75.42 |
YOLO v5s | 90.42 | 84.67 | 92.57 | |
YOLO v7-tiny | 91.83 | 80.46 | 92.96 | |
YOLO v8n | 95.36 | 82.77 | 96.01 | |
本文模型 | 95.40 | 87.20 | 96.88 | |
近景 | Faster R-CNN | 80.92 | 78.13 | 82.64 |
YOLO v5s | 92.81 | 89.17 | 93.42 | |
YOLO v7-tiny | 93.56 | 91.34 | 95.31 | |
YOLO v8n | 93.76 | 92.12 | 96.41 | |
本文模型 | 93.77 | 93.67 | 96.77 |
Faster R-CNN 模型在检测过程中存在严重的错检漏检现象,其精确率、召回率和平均精度均值均普遍较低。相比于YOLO v5、YOLO v7和YOLO v8模型,在不同图像焦距下,改进模型在召回率上的提升较为明显。因此,本研究提出的改进模型在远景图像识别任务下的综合检测性能均优于Faster R-CNN、YOLO v5、YOLO v7和YOLO v8模型。
5.2 模型消融实验
为了验证模型中各模块的有效性,我们分别移除了SPPFCSPC模型与软NMS模块,实验结果如下所示。
表2 消融实验结果
模型 | 精确率/% | 召回率/% | 平均准确率/% |
---|---|---|---|
本文模型 | 95.40 | 87.20 | 96.88 |
-SPPFCSPC | 95.22 | 84.64 | 96.23 |
-软NMS | 95.36 | 82.77 | 96.01 |
当移除SPPFCSPC模块后,精确率下降了0.18%,召回率下降了2.56%,平均准确率下降了0.65%。而移除软NMS模块后,精确率下降了0.04%,召回率下降了4.43%,平均准确率下降了0.87%。可见,本文模型中所使用的SPPFCSPC模块与软NMS模块有效融合果实的局部和全局特征,从而提高最小果实目标和重叠苹果目标的召回率。
5.3 不同模型的性能对比
为了对比各模型的训练与推断效率,我们比较了各模型在参数量、检测时间、FLOPs 和平均准确率方面的性能,实验结果如下所示。可见,相比 YOLO v5s、YOLO v7-tiny等大部分轻量级网络,本文在提高准确率的同时,不同程度上降低了计算量。
表3 性能对比结果
模型 | 参数量/M | 检测时间/ms | FLOPs/G | 平均准确率/% |
---|---|---|---|---|
Faster R-CNN | 28.28 | 22 | 463.5 | 75.42 |
YOLO v5s | 7.2 | 2.6 | 14.7 | 92.57 |
YOLO v7-tiny | 6.2 | 3.7 | 12.9 | 92.96 |
YOLO v8n | 3.2 | 1.8 | 9.3 | 96.01 |
本文模型 | 3.8 | 2.3 | 10.2 | 96.88 |
6 研究结论
针对密植栽培苹果园中果实遮挡导致目标检测效果差问题,本文提出了远景图像场景下的基于改进YOLO v8的识别模型。首先将原有的SPPF模块替换为具有更大感受野的SPPFCSPC模块,以融合果实的局部和全局特征,从而提高最小果实目标的召回率。同时,将NMS算法替换为软NMS算法,以考虑边界框的相对置信度,从而提高识别重叠果实的能力。
实验结果显示,该模型的综合检测性能均优于Faster R-CNN、YOLO v5、YOLO v7和YOLO v8模型,在精确率、召回率、平均准确率方面相比原YOLOv8模型分别提升了0.04%、4.43%、0.87%。在分别消融SPPFCSPC模块与软NUMS模块后,模型性能在各指标都有不同程度的下降,证明了各模块的有效性。研究证明,该方法对果实遮挡条件下远景图像的苹果识别具有较高精度,为农业自动化发展提供了重要参考。
版权声明:
作者:Zhang, Hongxing
链接:http://zhx.info/archives/104
来源:张鸿兴的学习历程
文章版权归作者所有,未经允许请勿转载。