广东农业科学  2022, Vol. 49 Issue (3): 151-162   DOI: 10.16768/j.issn.1004-874X.2022.03.017.
0

文章信息

引用本文
赵华民, LAWAL Olarewaju, 许德芳. 温室甜瓜自动采摘系统目标检测模型及空间定位研究[J]. 广东农业科学, 2022, 49(3): 151-162.   DOI: 10.16768/j.issn.1004-874X.2022.03.017
ZHAO Huamin, LAWAL Olarewaju, XU Defang. Study on Target Detection Model and Spatial Location of Greenhouse Muskmelon Automatic Picking System[J]. Guangdong Agricultural Sciences, 2022, 49(3): 151-162.   DOI: 10.16768/j.issn.1004-874X.2022.03.017

基金项目

山西省高等学校科技创新项目(2019L0402);山西省优秀博士来晋工作奖励资金科研项目(SXYBKY2018030);山西农业大学博士科研启动项目(2018YJ43)

作者简介

赵华民(1986-), 男, 博士, 讲师, 研究方向为智能农业设备, E-mail: zhaohuamin909@163.com.

通讯作者

许德芳(1976-), 女, 博士, 副教授, 研究方向为智能农业设备, E-mail: xudf112@qq.com.

文章历史

收稿日期:2021-10-27
温室甜瓜自动采摘系统目标检测模型及空间定位研究
赵华民1 , LAWAL Olarewaju1 , 许德芳2     
1. 山西农业大学农业工程学院, 山西 太谷 030801;
2. 吕梁学院经济管理系, 山西 吕梁 033001
摘要:【目的】 提高温室甜瓜采摘机器人在复杂光线变化和枝叶遮挡情况下的检测精度,实现检测目标的空间坐标定位。【方法】 基于YOLOv3,研究优化不同主干网络,头部、颈部网络结构及边界框损失函数组合对模型检测性能的影响,建立甜瓜严重遮挡下的目标检测网络模型YOLOResNet70,然后将模型与Intel RealSense D435i传感器融合进行目标空间定位。【结果】 模型YOLOResNet70采用ResNet70为主干网络,结合SPP (Spatial pyramid pooling)、CIoU (Complete intersection over union)、FPN (Feature pyramid network) 以及NMS (Greedy non-maximum suppression) 时性能最佳,模型平均精度(AP) 达到89.4%,优于Y OLOv3的83.3% 和YOLOv5的82%,其检测速度(61.8帧/s)比YOLOv4(54.1帧/s)快14%。【结论】 通过对不同光照条件下的遮挡甜瓜图像进行检测测试,表明YOLOResNet70模型鲁棒性良好,并且与Intel RealSense D435i深度传感器融合实现了甜瓜的空间定位坐标,与手工测量结果吻合,为甜瓜采摘机器人目标检测和空间定位提供了理论和模型支持。
关键词甜瓜    目标检测    YOLOResNet70    目标空间定位    自动采摘    
Study on Target Detection Model and Spatial Location of Greenhouse Muskmelon Automatic Picking System
ZHAO Huamin1 , LAWAL Olarewaju1 , XU Defang2     
1. College of Agricultural Engineering, Shanxi Agricultural University, Taigu 030801, China;
2. Department of Economic Management, Lyuliang University, Lyuliang 033001, China
Abstract: 【Objective】 The study was conducted to improve the detection accuracy of muskmelon picking robot in greenhouse under complex light changes and branch and leaf occlusion, and realize the spatial coordinate positioning of detection targets. 【Method】 Based on YOLOv3, the study explored the impacts of optimizing the combination of different backbone networks, head and neck network structures and bounding box loss function on the model detection performance, established a target detection network model YOLOResNet70 under severe muskmelon occlusion, and then fused the model with Intel RealSense D435i depth visual sensor for target space positioning. 【Result】 With ResNet70 as the backbone network, YOLOResNet70 had the best performance with the combination of SPP (Spatial pyramid pooling), CIoU (Complete Intersection over Union), FPN (Feature Pyramid Network) and NMS (Greedy non-maximum suppression). The average accuracy (AP) of the model reached 89.4%, which was better than 83.3% of YOLOv3 and 82% of YOLOv5, and the detection speed (61.8 frames/s) was 14% faster than that of YOLOv4 (54.1 frames/s). 【Conclusion】 Through the detection and test of occluded muskmelon images under different lighting conditions, it shows that the YOLOResNet70 model has good robustness, and the model is fused with Intel RealSense D435i depth visual sensor to achieve the spatial positioning coordinates of muskmelon, which is consistent with the manual measurement result. It provides theoretical and model support for target detection and spatial positioning of muskmelon picking robot.
Key words: muskmelon    object detection    YOLOResNet70    target spatial positioning    automatic picking    

【研究意义】甜瓜(Cucumis melo L.)在我国种植广泛,是一种深受大众喜爱的夏季水果[1]。目前甜瓜以温室种植较多,其成熟期温室内温湿度较高,且藤蔓及果实上遍布绒毛,人工采摘环境较差[2]。随着智能农机迅速发展,采摘机器人成为研究热点。采摘机器人作业的首要步骤是快速准确地对目标进行识别和定位。甜瓜采收期枝叶繁茂,目标果实大多被叶片和藤蔓遮挡,温室内光照变化等对甜瓜的自动化采摘目标识别带来很大挑战。建立YOLOResNet70模型,使甜瓜在光照变化和叶片藤蔓遮挡严重情况下自动采摘快速识别,并结合RGB-D视觉传感器实现目标的空间定位具有重要意义。

【前人研究进展】基于机器视觉的目标检测和识别技术近年来发展迅速,深度学习的突破性进展为计算机视觉技术在农业视觉任务中的应用铺平道路[3-5],如卷积神经网络(CNN)可以自动直接从输入图像中提取复杂特征[6]。目前常用的目标检测网络分为以Faster R−CNN为代表的Two-stage检测网络和以YOLO为代表的One− stage两种。Inkyu等[7]采用Faster R−CNN对哈密瓜等水果的RGB图像和近红外信号进行混合检测,取得良好的检测效果,F1值达到84.8%,但是对于小目标的检测速度需要提升。Bargoti等[8]同样基于Faster R-CNN方法研究果园水果检测,F1值超过90%,但对密集型水果的检测有遗漏。虽然Two-stage检测方法效果较好,但是相比One−stage检测方法,其速度远不能满足移动设备的需求。YOLOv3是最流行的One−stage目标检测方法之一,与Two−stage的目标检测方法相比,其可在一个网络中直接预测目标的边界及其相应类别,速度大幅提升[9]。YOLOv3使用DarkNet53(1, 2, 8, 8, 4残差块排列方式)为主干网络,并在3个不同尺度上预测对象〔类似于特征金字塔网络(FPN)[10]〕,其改进版为YOLOv4。YOLOv4的AP比YOLOv3和检测速度(FPS,帧/s)分别提高10% 和12%,由CSPDarknet53主干网、空间金字塔池化(SPP)[11]、作为Neck的路径聚合网络(PANet)和YOLOv3头部组成。CSPDarknet53主干网通过Mish增强CNN的学习能力[12]。在不降低网络运行速度的前提下,加入SPP可以显著增加接收野,分离出最重要的上下文特征。在YOLOv4中,PANet代替YOLOv3中使用的FPN来收集不同比例的特征。Jocher等[13]提出的YOLOv5采用CSPNet主干进行特征提取,PANet得到特征金字塔,YOLOv3头部进行最终检测,比YOLOv4训练时间短,检测速度大幅提升,但其精度较YOLOv4稍差。目前部分学者已将YOLO模型应用于水果采摘目标检测,如Koirala等[14]采用改进的YOLOv3进行芒果实时检测研究,F1值达到96.8%,AP达98.3%,但其速度只有14 FPS;Zheng等[15]应用深度学习在大量水果数据集上进行分类和目标检测研究,分类准确率达99% 以上,检测准确率达92% 以上,并且针对温室端到端的检测任务,从速度、准确性和鲁棒性3个方面对YOLOv3网络进行了改进,其中针对甜瓜的检测在速度为40 FPS时AP达到87.36%,但是其数据集针对的是没有遮挡的甜瓜的检测。Rahnemoonfar等[16]提出一种改进的inception− ResNet网络用于水果计数,该方法对图像的精度可以达到91%。另外,Liu等[17]提出一种采用圆形边界框代替矩形边界框的YOLO-tomato模型,该模型以YOLOv3为主框架,采用DenseNet为主干网络,AP达到93.91%,但由于其权重文件太大导致检测速度过慢。Lawal等[18]同样提出基于YOLOv3的西红柿检测模型,AP可以达到99.3%。武星等[19]研究基于轻量化YOLOv3的苹果检测方法。在目标空间定位研究方面,孙力等[20]研究了基于TOF成像技术的柑橘实时识别与定位,自然生长状态下柑橘的识别正确率达86.7%。王玲等[21]研究了基于结构光SR300深度相机的褐蘑菇原位测量技术。冯青青等[22]、程伟[23]分别研究了采用结构光视觉传感器的果实定位技术。【本研究切入点】从以上研究可以发现,对YOLO模型的网络结构进行针对特定检测目标的优化可以大幅度提高检测精度,并且采用基于结构光的深度摄像头能够实现采摘目标的空间定位。截至目前,很少学者对甜瓜的检测进行研究,特别是在叶片藤蔓遮挡严重情况下的检测模型未见报道。【拟解决的关键问题】本研究基于改进的YOLOv3模型,提出一种鲁棒性好、精度高、速度快的YOLOResNet70模型用于温室复杂光照和枝叶遮挡情况下的甜瓜检测,并且研究将模型与结构光传感器融合实现甜瓜空间定位的算法,为甜瓜采摘机器人的研究提供理论和技术支持。

1 材料与方法 1.1 数据集建立及训练平台

数据集图像采自山西省太谷县侯城乡侯城村甜瓜种植温室。采用华为Mate10pro拍摄,分辨率为3 968×2 976。选择不同光照强度、不同时段进行拍照,以保证数据集更具有随机性,训练模型对光照鲁棒性更好。图 1展示了不同情况下的数据集图像,共810张,分别按照75%、15%、10% 划分为训练集、验证集和测试集。采用labelImg标注成YOLO格式的数据集[24],类别为一个甜瓜类,共得到2 562个目标边界框,标注后的数据集图像如图 2所示。模型训练和测试采用的计算机配置如下:AMD Ryzen 5 3600x CPU,32 GB RAM,NVIDIA GeForce GTX 1080Ti GPU,CUDA v10.2,cuDNN v7.6.5,OpenCV v4.2.0。YOLOv5采用PyTorch平台,其他模型在DarkNet平台上实现。

A:叶片遮挡,B:藤蔓遮挡,C:强光环境 A: Blade occlusion, B: Vine occlusion, C: Strong light environment 图 1 不同光照和遮挡环境下的甜瓜 Fig. 1 Muskmelons under different illumination and occlusion

A:叶片遮挡,B:藤蔓遮挡,C:强光环境 A: Blade occlusion, B: Vine occlusion, C: Strong light environment 图 2 LabelImg标注后的甜瓜数据集图像 Fig. 2 Image of muskmelon data set after LabelImg annotation

1.2 网络优化及测试

One-stage检测模型一般由主干网络(Backbone)、颈部(Neck)和头部(Head)3部分网络组成。主干网络从输入图片中提取重要特征,颈部网络生成特征金字塔来识别不同大小和尺度的同一目标,头部网络完成最终检测。常用的主干网络有VGG、ResNet、SqueezeNet、DenseNet等,其中ResNet是由He等[25]提出。ResNet引入如图 3所示的快捷连接(Short cut),以解决CNN层数增加时的网络退化问题,将1×1卷积层添加到网络的开始和结束,从而减少网络参数,而不会降低网络性能,其优秀的性能使ResNet50和ResNet101等网络在目标检测模型中得到广泛应用,本检测网络同样采用ResNet的网络结构。颈部网络FPN、BiFPN[26] (Bidirectional feature pyramid network)、PANet等是不同类型的特征金字塔技术。FPN是一种简单有效、自顶向下的通道,PANet提供自底向上的路径,BiFPN允许自顶向下和自底向上连接。研究表明,不同的主干网络与颈部网络搭配对检测网络的准确率有很大影响[26],因此研究不同主干网络和颈部网络的结合对探测器具有重要意义。不同的激活函数对网络性能也有影响,目前最先进的激活函数是Leaky ReLU和Mish,同样需要根据网络参数进行优化。根据Huang等[27]研究,SPP是一个特征增强模块,提取特征图的主要信息并进行拼接,该SPP网络有助于提取同一检测阶段的多尺度全局特征和局部特征,如果提取的特征图形状被模糊,目标甜瓜的位置信息将变得不准确甚至丢失。为避免漏检和降低检测精度,采用SPP网络。数据集中的甜瓜存在多个重合的情况,需要采用GreedyNMS进行候选框合并,从多个重叠候选框中选择一个最佳候选框,因此将GreedyNMS应用到检测网络中。

图 3 ResNet网络的Shortcut链接结构 Fig. 3 Shortcut link structure of the ResNet network

主干网络的选择方面,首先根据DarkNet53残差块排列形式,结合ResNet网络结构,提出ResNet70代替YOLOv3网络的DarkNet53,网络结构如图 4所示。ResNet70网络的残差块的排列采用与DarkNet53相同的1, 2, 8, 8, 4布置形式,加上最后的全连接层共70层。通过将ResNet架构引入检测模型能够训练更深入的网络,解决网络退化问题,加快网络收敛速度,实现更深层次的网络和丰富的信息特征提取。因为主干网络为ResNet70,基于YOLOV3进行优化,所以命名为YOLOResNet70。为提高检测速度,YOLOResNet70模型将YOLOv3原有的6个检测层裁剪为4层,并通过13×13、26×26、52×52特征向量对3个检测尺度进行反馈。在YOLOResNet70中,使用FPN作为Neck来获得特征金字塔模型,Neck接收了主干网络生成的特征向量,使模型能更好地进行对象缩放。为优化网络检测性能,通过对比检测模型的主干网络、激活函数、SPP、颈部网络结构、损失函数来优化最佳网络结构,并与YOLOv3、YOLOv4、YOLOv5进行比较,训练和测试结果如表 1所示。

图 4 YOLOResNet70网络结构 Fig. 4 YOLOResNet70 network structure

表 1 不同检测模型的网络结构 Table 1 Network structure of different detection models

模型锚框(Anchor)的大小是在模型训练前通过甜瓜数据集中计算得出。采用k均值聚类算法生成9个锚框,并根据检测层的3个尺度嵌入模型中。为改进甜瓜检测模型,将9个锚框按第1个尺度到第3个尺度的降序分别分配到其他模型配置文件中。模型接收416×416像素的输入图像,学习率为0.001,迭代数设置为4000;batch和subdivision分别设置为64和32,以减少内存使用;动量和衰减分别设为0.9和0.0005。YOLOv5使用auto-anchor生成,训练300个epoch,初始学习率为0.01,动量为0.937,权重衰减为0.0005。同时,使用随机初始化方法初始化训练YOLOResNet70和YOLOResNet50(主干网络为ResNet50)模型的权值,使用官方预训练权值训练YOLOv3、YOLOv4和YOLOv5模型。

模型性能采用精确率(Precision)、召回率(Recall)、F1分数和AP(Average Precision)进行评估。精确率是正确检测到的甜瓜数量与检测到的甜瓜总数量之比,召回率是正确检测到的甜瓜数量与数据集中甜瓜总数量之比,F1分数同时兼顾精确率和召回率,能显示训练模型的综合性能。各参数计算公式如下:

式中,TP为正确检测甜瓜数,FN为漏检甜瓜数,FP为错误检测甜瓜数。平均精度AP描述了模型在不同置信阈值下的整体性能,定义如下式所示:

式中,为召回率时的测量精度。

2 结果与分析 2.1 YOLOResNet70优化结果分析

不同网络结构的YOLOResNet70模型性能如表 2所示。通过更换模型的主干网络,SPP等部分对比得出最佳的模型网络结构。由表 2可知,SPP和PANet两部分网络对模型的权重大小影响明显,未添加SPP的YOLOResNetA和YOLOResNetC的模型大小为164 MB,添加SPP的YOLOResNetB和YOLOResNetD的模型大小为188 MB;加入PANet的YOLOResNetE和加入BiFPN的YOLOResNetF,其模型大小分别增加到227 MB和223 MB,表明PANet对模型尺寸的贡献大于FPN和BiFPN。表 2中几种优化下的模型交并比(IOU)均大于50%,表明模型预测结果较好,然而它们之间性能也有差异,使用SPP的YOLOResNetB和YOLOResNetC模型相比较A和D,其F1分数分别从79% 和84% 上升到85%,说明SPP[11]对模型性能提升作用明显。SPP网络从ResNet70骨干网中分离出最重要的特性。与YOLOResNetB和YOLOResNetD相比,YOLOResNetE和YOLOResNetF的F1评分最低,表明本模型FPN比PANet和BiFPN对模型性能提升更有效。

表 2 不同网络结构的YOLOResNet70性能 Table 2 YOLOResNet70 performance of different network structures

表 2可知,对比F1分数,YOLOResNetC和YOLOResNetD的Mish激活函数优于YOLOResNetA和YOLOResNetB的Leaky激活函数,但在AP指标下Leaky优于Mish激活函数。AP被认为比F1分数更准确,因为其从全局显示精确率和召回率(P-R)关系。图 5为6个网络将IOU阈值设置为50% 时的P-R曲线,性能较好的模型其P-R曲线应具有较大的曲线下面积(AUC),因此YOLOResNetB的性能优于其他模型。

图 5 不同网络结构的YOLOResNet70网络P-R曲线 Fig. 5 P-R curves of YOLOResNet70 networks of different network structures

模型的检测速度以FPS衡量,与权重文件的大小成反比,权重文件越大,检测深度越慢。在没有SPP的情况下,YOLOResNetA的64.9 FPS和YOLOResNetC的66.6 FPS均比YOLOResNetB(61.8 FPS)、YOLOResNetD(62.1 FPS)、YoloResnetE(54.7 FPS)和YOLOResNetF(49.3 FPS)快,且带有PANet的YOLOResNetE的检测速度比嵌入BiFPN的YOLOResNetF快。以速度指标衡量时,采用Mish激活函数的模型比Leaky激活的模型表现更好,表明在本模型中Leaky激活对检测精度有较好效果,Mish激活函数对检测速度有较好效果。此外,与文献中FPN、PANet和BiFPN影响模型检测性能[26]的结论不同,应用FPN的YOLOResNet70模型其检测性能优于PANet和BiFPN。综合考虑AP和检测速度,由于YOLOResNetB和YOLOResNetD的AP和FPS差异分别为1.2% 和-0.4%,因此得出YOLOResNetB模型为最佳模型,命名为YOLOResNet70,由Leaky激活函数、SPP网络和FPN组成。

2.2 YOLOResNet70与现有模型比较

YOLOResNet70与现有模型对甜瓜的检测性能比较结果(表 3图 6)显示,YOLOv5权重文件最小、检测速度最快,但其准确性较低;YOLOv4的AP性能优于YOLOv3、YOLOResNet70和YOLOv5,主要是由于CSPDarknet53骨干网络深度更深,但其检测速度不如YOLOResNet70和YOLOv5。由表 3可知,在检测速度方面,YOLOv5系列中以YOLOv5s最快,YOLOResNet50次之,随后是YOLOResNet70,YOLOResNet70比YOLOv3和YOLOv4约快14%。虽然YOLOv4在AP方面大于YOLOResNet70,但两者差异(1.6%)非常小;YOLOResNet50检测速度较快,但AP较YOLOv4低5.1%。综合检测速度和AP,YOLOResNet70检测速度比YOLOv4快14%,AP比YOLOv5提升7.4%,拥有较好的检测性能。从图 6可以看出,YOLOv4的P-R曲线略优于YOLOResNet70,而YOLOResNet70的P−R曲线优于YOLOv3和YOLOv5。

表 3 YOLOResNet70及现有网络的性能比较 Table 3 Performance comparison between YOLOResNet70 and existing networks

图 6 YOLOResNet70、YOLOv3、YOLOv4和YOLOv5s的P-R曲线 Fig. 6 P-R curves of YOLOResNet70, YOLOv3, YOLOv4 and YOLOv5s

2.3 模型鲁棒性测试

甜瓜检测过程中叶片和藤蔓遮挡、光照变化会影响检测结果的准确性[18]。为验证YOLOResNet70模型鲁棒性,本研究从测试集中选取29张甜瓜图片,其中包含叶片遮挡和藤蔓遮挡等情况的甜瓜共100个,并采用曝光增强和曝光减弱的方法进行图像增强[28],然后进行测试,并与YOLOv3、YOLOv4和YOLOv5s检测结果进行对比,采用精度(Precision)、Rcall和F1分数进行评价。

表 4可知,YOLOv3漏检个数为15个,而YOLOResNet70是6个、YOLOv4为5个、YOLOv5s为8个,这是由于YOLOv3模型中没有SPP网络,其F1分数的排序也与前文相同。本节中测试图片中的甜瓜大部分被叶片和藤蔓严重遮挡,因此对模型的检测能力要求更高。图 7中红色椭圆标出的甜瓜为YOLOResNet70和YOLOv4漏检的甜瓜,其被遮挡面积超过50%;蓝色椭圆标出的甜瓜被YOLOResNet70检测到,其他模型都未检测到。

表 4 未进行图像增强数据集检测结果 Table 4 Detection results of data sets without image enhancement

图 7 YOLOResNet 70(A)和YOLOv4(B)模型漏检甜瓜 Fig. 7 Muskmelon missed detection in YOLOResNet 70 and YOLOv4 models

经数据增强后图像的检测结果见表 5表 6。对比表 5结果,YOLOResNet70的F1分数在两种情况下仅分别降低0.8、1.8个百分点,且F1值比YOLOv4高0.5个百分点,表明其鲁棒性良好;YOLOv3、YOLOv5模型正确检测个数下降明显,表明其鲁棒性稍差。图 8为YOLOResNet70模型检测结果。YOLOResNet70对数据增强后的部分图像检测结果如图 9所示。

表 5 曝光增强后数据集检测结果 Table 5 Data set detection results after exposure enhancement

表 6 曝光降低后数据集检测结果 Table 6 Data set detection results after exposure reduction

图 8 未增强数据集YOLOResNet70检测结果 Fig. 8 Detection results of YOLOResNet70 without enhanced data set

图 9 曝光增强和降低后数据集YOLOResNet70检测结果 Fig. 9 Detection results of YOLOResNet70 with enhanced data set and reducted data set

2.4 基于RealSense D435i的甜瓜距离检测

通过采用YOLOResNet70模型,得到甜瓜在图像中的X和Y坐标,但如果需要机械手进行采摘,还需获取甜瓜的实际坐标,因此需要采用深度摄像头与YOLO算法进行融合,将图中的像素坐标转换为实际坐标,并且通过深度摄像头的深度测量得到甜瓜距离摄像头的实际距离(即Z坐标)。本研究选择基于结构光原理的Intel RealSense D435i作为测距摄像头。Intel RealSense D435i可以通过识别目标的像素坐标和深度值获取目标点的真实坐标,其具体原理如图 10所示,其中Target_xy_pixe l[x]、Target_xy_pixel[y] 表示检测物体在图中的像素坐标,Target_xy_ true[x]、Target_xy_true[y]表示被测物体的实际坐标,ppx、ppy为相机的基本内部参数,可以通过cvsprofile.get_intrinsics() 命令获取。坐标计算公式如下:

图 10 物体实际深度和实际坐标计算示意图 Fig. 10 Schematic diagram of actual depth and coordinate calculation

式中,Target_xy_pixel[x]、Target_xy_pixel[y] 可通过目标检测模型获取,相机可以采用get_ distance(Target_xy_pixel[0]、Target_xy_ pixel[y])计算得到物体的Target_depth,最后计算Target_xy_true[x]、Target_xy_true[y],即可求出物体的实际X、Y、Z坐标,以便后期通过机械臂进行采摘。

2.4.1 Intel RealSense D435i距离检测实验 根据前文原理分析,本研究通过将英特尔RealSense SDK2.0的Python包装程序pyRealsense2集成进YOLO测试程序,采用YOLOResNet70模型进行甜瓜实际距离检测实验,研究算法的可靠性。实验设备图如图 11所示,通过检测程序控制深度摄像头检测挂在对面的仿真甜瓜及藤蔓,根据实际采摘机械臂长度设置藤蔓距离摄像头的距离500 mm和700 mm。由于甜瓜藤蔓吊挂后,上面的甜瓜错落排列在不同平面上,因此通过移动挂甜瓜藤的不锈钢架来改变距离,测试两种距离下摄像头及算法的检测准确性和检测能力。

图 11 甜瓜深度距离测试实验设备 Fig. 11 Experimental equipment for measurement of muskmelon depth distance

实验中首先将摄像头红外光线发射面与不锈钢架距离500 mm,然后开启检测程序,运行后检测截图如图 12所示。从图 12可以看出,由于距离较近,摄像头视野较小,只有3个甜瓜在摄像头视野内并被成功识别;在检测界面右下角,不断输出3个检测框中心像素的实际坐标和实际距离。实际距离测量方式如图 13所示,每个瓜的测量距离为甜瓜预测框中心点到摄像头红外光发射面的垂直距离。

图 12 仿真距离500 mm时检测截图 Fig. 12 Detection screenshot at 500 mm of simulation distance

图 13 实际距离测量示意图 Fig. 13 Diagram of actual distance measurement

从摄像头距离支架500 mm时的甜瓜检测和距离测试结果(表 7)可以看出,手动测量距离与摄像头测量的距离差距很小。表 8图 14为支架距离摄像头700 mm时检测结果,由于甜瓜和藤蔓相对架子的平面凸出,因此检测到的甜瓜距离比架子距离小。由表 8表 9可知,程序控制深度摄像头测定距离准确,能够达到实际应用的要求。

表 7 仿真距离500 mm时检测目标实际距离和实际坐标 Table 7 Actual distances and coordinates of the targets detected at 500 mm of simulation distance

表 8 仿真距离700 mm时检测目标实际距离和实际坐标 Table 8 Actual distances and coordinates of the targets detected at 700 mm of simulation distance

图 14 仿真距离700 mm时检测截图 Fig. 14 Detection screenshot at 700 mm of simulation distance

表 9 目标遮挡实验检测数据 Table 9 Detection data of object occlusion experiment

2.4.2 遮挡目标距离检测 甜瓜采摘时叶片遮挡严重,为研究甜瓜被叶片遮挡时的距离测量问题,设计甜瓜被叶片遮挡时的距离测量实验。如图 15所示,实验设计3个被叶片遮挡的甜瓜,从左起第2、3、6号甜瓜,其中2、3号检测卡中心点在甜瓜上,而6号甜瓜其检测框中心点在叶片上。检测结果(表 9)显示,2号和3号甜瓜虽然被遮挡,但是其目标框中心点仍在甜瓜上,因此深度摄像头测量的距离为到甜瓜的距离,而6号甜瓜其遮挡叶片正好在目标识别框的中心点上,因此深度摄像头测量的距离为到此叶片的距离,与到甜瓜的距离有一定差距,需要继续改进检测程序。

图 15 叶片遮挡时测距实验截图 Fig. 15 Screenshot of distance measurement experiment with leaves block muskmelons

3 讨论

采摘目标的精确快速识别和定位是自动采摘机器人采摘成功的基础。本研究基于YOLOv3模型,在对比采用不同主干网络、FPN、激活函数和是否采用SPP等不同组成结构的基础上,得出最佳YOLOResNet70网络模型结构。该模型采用ResNet70网络作为主干,以Leaky ReLU作为激活函数,用SPP避免漏检和减少误差,以FPN作为颈部网络用于获取特征金字塔,GreedyNMS用来提升检测效率和准确度,采用CIoU损失函数时为最佳的检测网络结构。表明通过对检测模型的不同部分进行调整、组合可以实现更好的目标检测结果,这也是目前基于深度学习的目标检测网络的重要优化措施,本研究的优化措施可为其他果实采摘目标检测网络的优化提供重要借鉴。

本研究得出的检测模型专门针对不同光照强度和不同遮挡情况采集数据集进行训练优化,通过不同模型的鲁棒性检测对比,发现该模型在不同光照环境下对严重遮挡的甜瓜检测F1分数优于YOLOv3和YOLOv5模型,与YOLOv4模型相似,表明本研究提出的模型在不同情况下对温室甜瓜检测都具有良好的稳定性。与其他已发表的研究结果相比,尽管数据集甜瓜遮挡较严重,但YOLOResNet70模型的性能相比YOLOv3-DarkNet53(AP为88.93%,40 FPS)在CropDeep[15]数据集和RetNet-ResNet50(AP为87.36%,13 FPS)在Deepfruits[7]数据集上对哈密瓜的检测性能分别提升0.47% 和2.04%。

通过将YOLOResNet70模型与RealSense D435i深度视觉传感器融合实现对目标真实坐标的准确定位。但是对叶片遮挡甜瓜的定位会产生一定误差,需要提高检测精度,可采用双摄像头从不同角度检测,以弥补单摄像头的不足,这是本课题需要继续研究的一个关键问题。

本研究仅针对众多甜瓜中一种薄皮甜瓜的目标检测模型进行了参数优化,对其他品种甜瓜的检测结果还有待验证和继续研究,未来研究中可以继续采集不同品种的甜瓜图像,并针对多个甜瓜品种优化得出更具有通用性的目标检测模型,以适应所有甜瓜的采摘目标检测需求。采集全部品种的甜瓜图像形成完整的甜瓜数据集也是另一项需要继续深入的工作,能为未来其他学者的研究提供数据集支持,为甜瓜自动采摘设备早日成型、减轻农民的劳动强度提供支持。

4 结论

本研究针对甜瓜温室复杂光影和遮挡生长条件下甜瓜果实检测困难的问题,优化得出一种YOLOResNet70模型。与目前主流网络结构相比,YOLOResNet70网络比Faster R-CNN、YOLOv3、YOLOv4和YOLOv5网络具有明显的速度优势,检测速度比YOLOv4提升14%,精度比YOLOv5提升7.4%,更加利于在低功率移动设备上使用。模型具有较好的鲁棒性,在不同光照强度下都具有良好的检测稳定性。对曝光增强和曝光降低的图像,其检测F1分数值分别达95.8% 和94.8%,表明模型能适应温室复杂的光照环境。优化得到的模型与Intel RealSense D435i摄像头结合能够实现检测目标的空间定位,且距离定位准确、误差小,能够达到实际使用需求。

参考文献(References):
[1]
THAKUR H, SHARMA S, THAKUR M. The journal of horticultural science and biotechnology recent trends in muskmelon (Cucumis melo L.) research: An overview[J]. Journal of Horticultural Science and Biotechnology, 2019, 94(4): 533-547. DOI:10.1080/14620316.2018.1561214
[2]
LIU C L, ZHAO Y S, HUANG Y X, GONG L. A review of key techniques of vision-based control for harvesting robot[J]. Computers and Electronics in Agriculture, 2016, 127: 311-323. DOI:10.1016/j.compag.2016.06.022
[3]
KAMILARIS A, PRENAFETA-BOLDÚ F X. Deep learning in agriculture: A survey[J]. Computers and Electronics in Agriculture, 2018, 147: 70-90. DOI:10.1016/j.compag.2018.02.016
[4]
WAN S, GOUDOS S. Faster R-CNN for multi-class fruit detection using a Robotic Vision System[J]. Computer Networks, 2019, 168: 107036. DOI:10.1016/j.comnet.2019.107036
[5]
张小花, 马瑞峻, 吴卓葵, 黄泽鸿, 王嘉辉. 基于机器视觉的果园成熟柑橘快速识别及产量预估研究[J]. 广东农业科学, 2019, 46(7): 156-161. DOI:10.16768/j.issn.1004-874X.2019.07.022
ZHANG X H, MA R J, WU Z K, HUANG Z H, WANG J h. Fast detection and yield estimation of ripe citrus fruit based on machine vision[J]. Guangdong Agricultural Sciences, 2019, 46(7): 156-161. DOI:10.16768/j.issn.1004-874X.2019.07.022
[6]
KOIRALA A, WALSH K B, WANG Z L, MCCARTY C. Deep learning-Method overview and review of use for fruit detection and yield estimation[J]. Computers and Electronics in Agriculture, 2019, 162: 219-234. DOI:10.1016/j.compag.2019.04.017.162
[7]
INKYU S, GE Z Y, FERAS D, BEN U, TRISTAN P, CHRISTOPHER M C. DeepFruits: A fruit detection system using deep neural networks[J]. Sensors, 2016, 16(8): 1222. DOI:10.3390/s16081222
[8]
BARGOTI S, UNDERWOOD J. Deep fruit detection in orchards[C]. IEEE International Conference on Robotics & Automation, 2017: 3626-3633. DOI: 10.1109/ICRA.2017.7989417.
[9]
REDMON J, FARHADI A. YOLOv3:An incremental improvement[J]. ArXiv E-prints, 2018. DOI:10.48550/arXiv.1804.02767
[10]
LIN T Y, DOLLAR P, GIRSHICK R, HE K, HARIHARAN B, BELONGIE S. Feature pyramid networks for object detection[C]. 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2017. DOI: 10.1109/CVPR.2017.106.
[11]
HE K, ZHANG X, REN S, SUN J. Spatial pyramid pooling in deep convolutional networks for visual recognition[J]. IEEE Transactions on Pattern Analysis Machine Intelligence, 2014, 37(9): 1904-1919. DOI:10.1007/978-3-319-10578-9_23
[12]
MISRA D. Mish: A self regularized non-monotonic neural activation function[J]. ArXiv E-prints, 2019. DOI:10.48550/arXiv.1908.08681
[13]
Ultralytics/yolov5[EB/OL]. https://github.com/ultralytics/yolov5.
[14]
KOIRALA A, WALSH K B, WANG Z, MCCARTHY C. Deep learning for real-time fruit detection and orchard fruit load estimation: benchmarking of 'MangoYOLO'[J]. Precision Agriculture, 2019, 20: 1107-1135. DOI:10.1007/s11119-019-09642-0
[15]
ZHENG Y Y, KONG J L, JIN X B, WANG X Y, ZUO M. CropDeep: The crop vision dataset for deep-learning-based classification and detection in precision agriculture[J]. Sensors, 2019, 19(5). DOI:10.3390/s19051058
[16]
RAHNEMOONFAR M, SHEPPARD C. Deep count: fruit counting based on deep simulated learning[J]. Sensors, 2017, 17(4): 905-915. DOI:10.3390/s17040905
[17]
LIU G, NOUAZE J C, TOUKO P L, KIM J H. YOLO-Tomato: A robust algorithm for tomato detection based on YOLOv3[J]. Sensors, 2020, 20(7): 2145. DOI:10.3390/s20072145
[18]
LAWAL M O. Tomato detection based on modified YOLOv3 framework[J]. Scientific Reports, 2021, 11: 1447. DOI:10.1038/s41598-021-81216-5
[19]
武星, 齐泽宇, 王龙军, 杨俊杰, 夏雪. 基于轻量化YOLOv3卷积神经网络的苹果检测方法[J]. 农业机械学报, 2020, 51(8): 17-25. DOI:10.6041/j.issn.1000-1298.2020.08.002
WU X, QI Z Y, WANG L J, YANG J J, XIA X. Apple detection method based on light-YOLOv3 convolutional neural network[J]. Transactions of the Chinese Society of Agricultural Machinery, 2020, 51(8): 17-25. DOI:10.6041/j.issn.1000-1298.2020.08.002
[20]
孙力, 蔡健荣, 李永平, 赵杰文, 袁雷明. 基于TOF成像技术的柑橘实时识别与定位[J]. 江苏大学学报, 2013, 34(3): 293-297. DOI:10.3969/j.issn.1671-7775.2013.03.009
SUN L, CAI J R, LI Y P, ZHAO J W, YUAN L M. Real-time citrus recognition and location based on TOF imaging technology[J]. Journal of Jiangsu University, 2013, 34(3): 293-297. DOI:10.3969/j.issn.1671-7775.2013.03.009
[21]
王玲, 徐伟, 杜开炜, 朱家豪, 张俊. 基于SR300深度相机的褐蘑菇原位测量技术[J]. 农业机械学报, 2018, 49(12): 13-19. DOI: 10.6041/j.issn.1000-1298.2018.12.002.
WANG L, XU W, DU K W, LU W, ZHU J H, ZHANG J. Portabella mushrooms measurement in situ based on SR 300 Depth Camera[J]. Transactions of the Chinese Society of Agricultural Machinery, 2018, 49(12): 13-19. DOI: 10.6041/j.issn.1000-1298.2018.12.002.
[22]
冯青春, 程伟, 杨庆华, 荀一, 王秀. 基于线结构光视觉的番茄重叠果实识别定位方法研究[J]. 中国农业大学学报, 2015, 20(4): 100-106. DOI:10.11841/j.issn.1007-4333.2015.04.13
FENG Q C, CHENG W, YANG Q H, XUN Y, WANG X. Identification and localization of overlapping tomatoes based on linear structured light vision system[J]. Journal of China Agricultural University, 2015, 20(4): 100-106. DOI:10.11841/j.issn.1007-4333.2015.04.13
[23]
程伟. 基于结构光视觉的番茄果实识别定位系统设计[D]. 杭州: 浙江工业大学, 2016.
CHENG W. Design the system of tomato recognition and localization based on structured-light vision[D]. Hangzhou: Zhejiang University of Technology, 2016.
[24]
LAWAL O M. YOLOMuskmelon: Quest for fruit detection speed and accuracy using deep learning[J]. IEEE Access, 2021, 99: 11. DOI:10.1109/ACCESS.2021.3053167
[25]
HE K, ZHANG X, REN S, SUN J. Deep residual learning for image recognition[C]. 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2016. DOI: 10.1109/CVPR.2016.90.
[26]
TAN M, PANG R, LE Q V. EfficientDet: Scalable and efficient object detection[C]. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition(2020), 2019. DOI: 10.1109/CVPR42600.2020.01079.
[27]
HUANG Y Q, ZHENG J C, SUN S D, YANG C F, LIU J. Optimized YOLOv3 algorithm and its application in traffic flow detections[J]. Applied Sciences-Basel, 2020, 10(9): 3079. DOI:10.3390/app10093079
[28]

(责任编辑     邹移光)