目录
前言
《农业工程学报》2024年第40卷第18期刊载了南京农业大学等单位杨震宇、汪小旵、祁子涵与王得志的论文——“基于改进YOLOv8的草莓识别与果梗采摘关键点检测”。该研究由江苏省农业科技自主创新资金(项目号:CX(21)2006)资助。
一、背景
草莓是一种典型的季节性水果,其果实易在抓取采摘过程中遭受损伤。目前,草莓采摘机器人的采收方式主要是通过剪切果梗实现。然而,草莓的果梗直径较小,加之农业环境中光照等多种因素导致的复杂背景干扰,识别定位难度较大。此外,高架种植模式下果实遮挡使得草莓的准确检测变得困难,这对草莓机器人的精准识别与定位技术提出了挑战。
为解决草莓采摘机器人工作过程中果梗采摘点定位精度低和遮挡草莓识别困难等问题,该研究提出一种改进后 YOLOv8 算 法 与 pose 关 键 点 检 测 算 法 相 结 合 的 草 莓 识 别 定 位 方 法 。通 过 对 YOLOv8 进 行 优 化 , 引 入 BiFPN (bidirectional feature pyramid network)和 GAM(generalized attention module)模块以强化模型的双向信息流,动态分配特征权重,并专注于小目标特征的提取和强化被遮挡区域特征,旨在提升模型复杂环境中采摘点定位准确率和遮挡识别的预测准确性。
二、模型改进
本研究在 YOLOv8 模型框架上进行了拓展,设计了一种优化的 pose 算法,该算法不仅有效集成目标检测功能,而且还实现对草莓关键部位坐标的精确预测。在YOLOv8 的 Neck 部分加入 BiFPN 模块,该模块能进行高层次特征和低层次特征的双向交互和融合,增强对小目标和被遮挡目标的识别精度,使模型实现更准确的预测。另外,为进一步优化关键点局部特征的估计性能,本研究还引入了 GAM 机制,对空间和通道的注意力进行调整,提高被遮挡关键点的检测精度。
1.GAM 模块
由于草莓与其周围环境(如相邻草莓果实)的视觉相似性较高,草莓关键点的定位容易出现误差和不确定性。为此,本文在 YOLOv8 模型中集成了GAM,通过引入GAM能够增强特征的表达和选择,使模型更好地聚焦于草莓的遮挡关键点特征。
GAM注意力机制是在 CBAM 的基础上,采用序贯的通道-空间注意力机制来重新设计CBAM模块。在模型中 GAM 被放置在每个特征图层级上的C2f 操作之后,通过在每个特征图层级上使用GAM,模型可以更好地对各种不同尺度的目标特征进行 处理、筛选和强化。
2.BiFPN 模块
草莓果梗的直径较小,其不同果梗的形态存在较大的差异,并受到果实间相互遮挡等多种复杂环境因素的影响,这些因素共同增加了草莓识别任务的复杂性。针对这种情况,本研究引入 BiFPN,它是一种特征金字塔网络,能够在不同尺度和层次之间完成双向的信息流动,可以实现较好地特征融合,有助于提高对小目标任务的检测精度。该模块引入一种自适应权重分配机制,根据特征重要性动态分配权重,能在遮挡情况下强化被遮挡部分的特征,同时抑制遮挡区域和背景噪声, 有利于模型在遮挡情况下准确识别草莓。
三、基于关键点检测的草莓果梗定位
为减轻机器人采摘草莓过程中带来的机械损伤和采摘后的果实附着果梗过长等问题。本文提出关键点检测的方法来对草莓采摘点进行定位。首先,利用 YOLOv8 网络对成熟草莓进行关键点检测;其次,从相应先验区域的特征图中解码出关键点的信息位置;最后,通过分析果梗上关键点信息,验证采摘位置的合理性,并选取合适的位置作为果梗采摘点。
四、消融实验
改进后的 YOLOv8 在原有模型的基础融合了 BiFPN模块、GAM模块,为验证改进后模型的合理性和有效性,本文设计消融试验来进行模型性能,原YOLOv8的mAPkp、P、R、mAP分别为 88.69%、91.46%、90.14%、88.76%,融合了GAM注意力机制后提升到 94.14%,精确率 P、召回率R和平均准确率均值 mAP 值也有小幅度提升,试验结果表明引入GAM能改善模型的关键点准确率。融合 BiFPN 模块后,YOLOv8-B的精确率P值从原模型的91.46% 提升到95.56%,表明添加该模块后,模型的识别准确率明显改善。当模型同时融合GAM和 BiFPN后,YOLOv8-GB的关键点平均准确率均值mAPkp由 88.69% 提升到96.54%,精确率P从91.46% 提升到了97.48%,召回率R从 90.14% 提升到了92.12%,平均准确率均值mAP从 88.76% 提升到 95.43%,试验结果表明,GAM和 BiFPN模块具备更强的特征表示能力,从而提高了对草莓关键点检测能力和遮挡草莓的分类效果。
通过草莓关键点检测可视化结果,可以看出:YOLOv5 进行检测时存在较为严重的漏检现象,YOLOv7在检测时关键点拟合位置存在偏差,而改进的 YOLOv8相较其他模型其置信度提高效果明显,可以满足机器人精准定位采摘点的工作要求。
五、模型改进前后遮挡检测效果对比
为验证改进后模型对于高架草莓果实遮挡复杂情况的关键点检测性能,综合考虑机器人采摘过程中可能会遭遇的多种特殊遮挡情况,本试验不仅从验证集中选取局部遮挡、半遮挡、完全遮挡这 3 种不同程度的果实遮挡场景进行验证,还扩展叶片遮挡、果柄遮挡两种情况的模型检测,以确保改进后的 YOLOv8 在各种复杂遮挡情况下的有效性和鲁棒性。
由对比结果可知:在成熟草莓识别方面,改进后的YOLOv8 没有出现漏检或错检的情况,并与改进前的YOLOv8 相比置信度得到提升;在关键点检测方面,完全遮挡和果柄遮挡,原模型检测的果梗关键点拟合错误,分析原因是遮挡原本特征模糊的小目标果梗从而导致信息通道流失。当引入 BiFPN 和 GAM 模块之后会对这类情况有明显改善,加强对果梗信息的聚焦,减少关键点预测错误的情况出现。
结果与结论
试验结果显示,相比于原始模型,经过改进的 YOLOv8-pose 模型在草莓识别准确率(precision,P)、 召回率(recall,R)、平均精度(mean average precision,mAP)及关键点平均精度(mean average precision - key point,mAPkp)上分别提高 6.01、1.98、6.67 和 7.85 个百分点,基于关键点检测的果梗采摘点在 X、Y、Z 方向定位误差分别为 1.4、1.4 和 2.2 mm。此外,根据草莓遮挡重叠区域面积对草莓遮挡程度分类,利用不同遮挡程度对模型性能验证,在遮挡情况下改进后YOLOv8-pose,mAPkp比原模型提高 9.78 个百分点。基于该研究所提出的视觉模型,机器人在田间试 验下的采摘成功率为 95%,单个草莓的采摘耗时 10 s,可为实现机器人精准采摘提供重要的技术支持。
CoovallyAI模型训练与应用平台
无论是YOLOv8模型算法还是草莓识别数据集,Coovally平台通通开源,更多开源模型和数据集可直接登录「Coovally」平台进行下载!
如果您有兴趣了解关于更多开源数据集和模型资讯,欢迎关在评论区留言,我们将继续为大家带来更多干货内容!