葡萄成熟度检测论文(一)

Grape Maturity Detection and Visual Pre-Positioning Based on Improved YOLOv4(基于改进的YOLOv4的葡萄成熟度检测和视觉预定位)-2022

期刊

electronics

摘要

为指导葡萄采摘机器人在果园的复杂环境中快速准确地识别和分类不同成熟度的葡萄,并获取葡萄集群的空间位置信息,提出了一种基于改进YOLOv4的葡萄成熟度检测和视觉预定位算法。该检测算法采用Mobilenetv3作为骨干特征提取网络采用深度可分离卷积代替普通卷积采用h-swiss函数代替swish函数来减少模型参数的数量,提高模型的检测速度。同时,在模型中加入SENet注意机制,以提高了检测精度,最后构建了基于改进的YOLOv4的SMYOLOv4算法。成熟度检测的实验结果表明,经过验证训练的SM-YOLOv4目标检测算法在验证集下的总体平均精度达到93.52%,平均检测时间为10.82 ms。葡萄簇空间位置是一种基于双目立体视觉的葡萄簇预定位方法。在预定位实验中,最大误差为32 mm,平均误差为27 mm,平均误差比为3.89%。与YOLOv5相比,YOLOv4-Tiny、Faster_R-CNN等目标检测算法在精度和速度上具有更大的优势,在实际果园复杂环境中具有良好的鲁棒性和实时性,能够同时满足葡萄果实成熟度识别精度和检测速度的要求,以及果园复杂环境中葡萄采摘机器人的视觉预定位要求。它可以可靠地指示葡萄的生长阶段,从而在最好的时间完成葡萄的采摘,并可以引导机器人移动到采摘的位置,这是在果园的复杂环境下精确采摘葡萄的先决条件。

实验材料和方法

(1)葡萄成熟度的检测是通过同时从双目相机的左右相机中获取图像,然后输入改进的YOLOv4模型中进行成熟度检测。
(2)葡萄簇的预定位通过输出检测帧信息匹配目标。匹配成功后,得到同一葡萄簇的视差信息,并利用双目摄像机三角剖分原理得到葡萄簇的摄像机坐标。

图像采集设备是iPhone11;
在不同的光照条件下,在不同的重叠阴影水平下,在多个方向、角度和距离上随机拍摄一个葡萄植株的照片;
1000张原始图像;

根据葡萄簇的成熟度,将成熟度定义为四个阶段:全绿色的未成熟阶段,少量果实颗粒的未成熟阶段变成紫色,大多数果实颗粒的接近成熟阶段变成紫色,以及全紫色的成熟阶段;
讨论自然光、侧光和背光三种光照条件,以及无重叠遮挡、轻微重叠遮挡、严重重叠遮挡的三种重叠遮挡条件;
全绿色的未成熟阶段标记为 young_ grape (red box),少量果实颗粒变成紫色的未成熟阶段被标记为 near_ young_ grape (green box)大多数果实颗粒变成紫色的接近成熟阶段被标记为near_mature_ grape (blue box),全紫色的成熟阶段被标记为nature_ grape(purple box);

由于不同成熟度种类的葡萄数据不均衡,在网络上搜集200张中间两种成熟度的葡萄图片达到均衡;

防止网络模型的过拟合的小的数据量的数据集,并增强模型训练效果和模型泛化能力,使用上面获得的1200葡萄图像随机执行镜像反演、噪声添加、翻译、和其他操作,以扩大到2000年,其中共有7390葡萄集群。数据扩展完成后,根据9:1的比例将其随机分为训练集(6651张图像)和验证集(739幅图像)。

本研究中YOLOv4的改进是使用Mobilenetv3作为骨干特征提取网络取代原来的CSPDarknet53,和实现骨干特征提取网络替换的想法是取代三个初步的有效特征层相同的大小。为了进一步减少参数的数量,在增强的特征提取网络中,使用深度可分离卷积来代替普通的卷积。同时,在一些特征被融合之前,就添加了SENet注意机制;
在骨干模块中,使用h-swish激活函数代替swish函数,减少了网络计算量。

网络训练的参数设置如下。迭代训练的样本数为8次,总迭代次数为2000次,初始学习率为0.001,动量因子为0.95,每50次训练环节节省一次训练权重,学习率降低了10倍。
ZZ
不同训练网络模型的葡萄成熟度检测结果:
在这里插入图片描述

采用具有高成熟度检测精度的SM-YOLOv4、YOLOv5和Faster_R-CNN模型对10个随机采集的葡萄图像进行检测和预定位;

两排葡萄之间的距离约为2米,机器人在两排葡萄之间行走,所以在预定位实验中拍摄的葡萄簇之间的实际距离为0~2米;

双目相机在10个地点收集的图像中有37簇葡萄。其中,SM-YOLOv4模型在目标检测中没有错误检测和漏检检测,YOLOv5模型漏检3组但未发生错误检测,Faster_R-CNN模型没有漏检检测,但发生了一次错误检测;

结论

使用SM-YOLOv4模型的预定位实验的效果最好,相对于YOLOv5和Faster_R-CNN模型的平均误差和平均误差比都降低了;
葡萄束预定位的结果:
在这里插入图片描述

其它研究者使用YOLOv3-DenseNet34模型来前置荔枝串,从而指导采摘机器人的采摘任务。该方法对荔枝预定位的平均误差为0.023 m,本文误差为0.027m,表明该算法能够满足预定位的精度要求,并可应用于实际果园环境。

(1)该方法在验证集下的总体平均精度达到93.52%,平均检测速度为10.82 ms。与改进前后的模型相比,改进后的模型的总体平均精度比原模型高4.93个百分点,平均检出率高42.29 ms,说明改进后的模型在精度和速度上都具有更大的优势,以满足复杂环境中葡萄成熟度的检测。

(2)为了验证该模型在实际果园复杂环境中的检测效果,我们采用不同的模型对不同条件下的葡萄成熟度进行了检测。实验结果表明,与YOLOv5、YOLOv4-Faster_R模型相比,在不同光照条件和重叠遮挡下,SM-YOLOv4模型具有更高的检测精度和更快的检测速度。

(3)在预定位实验中,该模型的平均误差比和平均误差比分别为0.027 m和3.89%,低于YOLOv5模型和Faster_RCNN模型,可以有效地指导葡萄采摘机器人进行葡萄预定位。

猜你喜欢

转载自blog.csdn.net/balabala_333/article/details/131541454