APP下载

温室高架栽培草莓空间姿态识别与采摘点定位方法

2023-09-23隗朋峻刘仁学

农业机械学报 2023年9期
关键词:位姿草莓向量

毕 松 隗朋峻 刘仁学

(北方工业大学电气与控制工程学院,北京 100041)

0 引言

随着国内人工成本的快速增长,现有以人工作业为主的种植和管理模式,已成为制约草莓产业发展的重要因素之一。提高生产过程的自动化和智能化程度,能够有效降低草莓生产过程的人力需求。

采摘作业是草莓生产过程中人力需求集中的环节,因此采摘作业自动化能够有效降低草莓生产过程的人力需求。果实自动采摘的基础是能够稳定的获得草莓目标空间位置,自然环境存在光照强度变化、果实重叠、枝叶遮挡等干扰因素,因此在自然环境下草莓目标识别、定位与空间姿态估计是草莓自动采摘装备的关键技术。

自然环境获得的草莓图像存在背景变化、果实光照不均、枝叶遮挡、果实重叠等干扰因素,识别和定位草莓目标受到国内外相关领域专家的关注。在自然环境下草莓目标的识别研究方面,赵世达[1]设计了基于图像对比度分析的草莓识别方法;谢志勇等[2]基于Lab颜色空间模型和Hough圆变换设计了成熟草莓识别方法;CAO等[3]利用Lab颜色模型的灰色图像提取草莓并计算位置、方向和形状;XU等[4]基于图像HOG特征和SVM分类器完成草莓目标检测;刘小刚等[5]基于伽马变换增强的图像实现了夜间草莓识别;李鑫[6]使用CaffeNet网络完成了成熟草莓目标的检测;张继成等[7]提出一种基于深度残差学习的草莓识别方法,解决了自然状态下成熟草莓存在背景干扰、信息丢失情况下的草莓目标识别问题;GE等[8]基于DCNN解决了由于枝叶遮挡引起的果实检测不准确问题;YU等[9]基于Mask R-CNN提高了非结构环境下水果的检测精度;王雪光等[10]基于K均值聚类算法实现了成熟草莓的识别;陈军等[11]使用目标轮廓长宽比区间窗口来提高草莓识别准确率;侯贵洋等[12]使用颜色识别和特征识别结合的方法计算草莓质心坐标;胡庆胜等[13]基于Mask R-CNN解决了复杂环境下草莓目标识别率低的问题。

自然环境下草莓目标识别存在识别精度和速度较低、易受背景干扰的问题。对图像中草莓区域的识别精度较低,不利于草莓姿态识别和采摘点定位。

在自然环境下果实目标定位研究方面,房爱青等[14]基于单目视觉结合测距传感器提高了视觉定位精度;张凯良等[15]使用图像结合激光测距有效检测了长圆锥形草莓的果轴;郭峰等[16]通过计算草莓二值化图像的惯性主轴来判断草莓姿态;JIN等[17]利用点云数据获得的葡萄簇和水平-棚架环境特征实现采摘点定位策略;ZHONG等[18]基于主果枝检测实现了自然环境下荔枝采摘点的检测;张勤等[19]融合深度信息和颜色特征实现了无遮挡情况下果实采摘点识别;麦春艳等[20]设计了基于点云的果实三维球体形状提取和质心计算方法;刘德儿等[21]使用改进的YOLACT算法分割脐橙果实,外形拟合后得到其相机坐标系下的采摘点;姬丽雯等[22]利用R-FCN目标检测网络结合双目视觉实现成熟无遮挡草莓的检测及定位;罗陆锋等[23]根据目标质心坐标和葡萄簇边缘信息确定采摘点;王丹丹等[24]提出基于平滑轮廓对称轴法的苹果目标采摘点定位方法;司永胜等[25]建立面积特征结合极线几何实现了圆形果实的定位。

上述方法根据空间几何原理估计草莓目标的坐标和采摘点,但缺少对草莓目标三维空间位姿分析,从而不能为采摘设备的末端提供精准采摘姿态信息。

目前草莓识别定位的局限性体现在:只能识别到图像中草莓的大概位置,无法获得草莓目标的准确区域;空间定位方法不完整,无法获得草莓的位姿,仅有采摘点信息使采摘动作的准确性和灵活性受限,采摘效率降低。

本文设计基于图像和深度信息估计草莓位姿从而实现草莓定位的方法。首先,基于成熟草莓目标的图像特征先验信息,设计草莓目标预定位方法,获得图像中潜在的草莓区域。其次,基于图像目标识别网络进一步定位图像中的草莓目标,由于卷积神经网络定位目标区域不够具体,无法准确获取框选区域中草莓所属的像素区域。因此在草莓目标区域中利用语义分割网络对草莓目标进行语义分割,从而在自然图像中获得草莓的准确像素区域。再次,通过草莓区域点云信息和草莓的形态特性完成草莓位姿的估计并根据草莓位姿提取草莓的采摘点。最后,基于本文方法获得的采摘点在大族Elfin-10机器人平台完成自然环境下高架基质栽培方式的草莓采摘实验。

1 方法与模型

1.1 方法整体结构

本文方法主要由4部分组成:自然图像草莓区域分割、草莓目标可采摘性识别、草莓位姿估计、采摘动作生成,方法结构如图1所示。

图1 方法整体结构图

首先,在自然图像草莓区域分割模块中,以优化的对草莓颜色适应性较高阈值对图像进行阈值分隔获得草莓图像区域预定位;基于预定位结果利用训练好的图像目标识别网络对图像中草莓区域进行快速定位;利用训练好的图像分割网络提取精确的草莓目标区域并提取图像目标区域形状特征。其次,在草莓目标可采摘性识别模块中,使用提取出的图像区域形状特征对草莓的可采摘性进行识别。然后,在草莓位姿估计模块中,基于草莓区域的点云数据和草莓的可采摘性结果估计草莓位姿和采摘点空间位置坐标;最后,在采摘动作生成模块中,基于计算得到的采摘点序列计算最短采摘路径并控制机器人完成采摘作业。

1.2 自然环境图像草莓点云分割

本文设计了自然环境下草莓目标点云的精确分割方法,精确分割的草莓目标点云可为后续的草莓位姿估计提供数据基础。首先,在HSV空间对草莓目标进行预定位,确定图像中草莓目标潜在区域;其次,利用图像目标识别模型,在预定位结果基础上检测草莓位置区域;再次,利用语义分割网络在草莓位置区域图像基础上对草莓区域进行像素分割;使用像素分割后的草莓目标区域图像提取特征进行草莓的成熟性判断;最后,使用成熟草莓的草莓目标区域图像在深度数据中匹配获得草莓目标点云。自然环境图像草莓区域点云分割的方法流程如图2所示。

图2 草莓区域点云分割流程图

(1)目标预定位

温室环境下高架基质草莓目标颜色与背景差异较大,与背景相比其饱和度较高,色度范围较大。由于温室环境下,光照、纹理等参数变化范围较大,设置较大的色度和饱和度区间有助于提高图像中草莓区域预分割效果。因此在HSV色彩空间中,同时使用S通道阈值目标颜色分割可较好地完成草莓目标的预定位。利用区域形态学操作完成孔洞填充,去除图像噪声后,获得草莓图像预定位。

(2)识别模块

完成对草莓目标的预定位处理后,需要对草莓目标进行目标定位和检测。YOLO系列网络是单阶段网络,在检测速度上有天然的优势,与农业智能装备应用更加适配;YOLO v3相较于之前版本的YOLO,采用了多尺度检测的策略,可以检测更小的目标,适用于草莓小目标;相较于之后的YOLO版本,YOLO v3网络在结构上更加轻量化,在同时都满足目标识别准确度需求的情况下,推理速度更快。因此,本文使用YOLO v3标准网络构造识别模块。

首先,计算每个预定位目标区域的质心,以区域质心作为中心剪裁图像并使用识别模块从原始图像中搜索草莓目标。对于预定位过程中正确找到的草莓目标区域,网络会输出草莓目标的预测位置以及置信度;对于预定位过程中误识别的区域,网络无输出,同时也代表着此区域无草莓,不再参与后续流程的计算。

(3)分割模块

由于目标识别网络输出的图像中,既包含草莓目标又包含目标附近的背景,因此无法确定获取草莓目标区域,该问题将导致后续基于点云分析的草莓目标空间定位误差较大,因此利用语义分割方法获得草莓目标像素级分割结果,为草莓姿态识别提供有效的三维点云数据。将目标图像输入到分割模块之前,对图像进行预处理,以保证整个草莓都能被输入到分割模块之中。

(4)成熟性分析

获得草莓目标的区域分割图像后,应对草莓的成熟性做出分析,以完成后续对成熟草莓目标点云的分割。成熟草莓与未成熟草莓的区域目标图像如图3所示。

图3 成熟草莓与未成熟草莓目标区域图像

草莓的成熟与否在成熟区域特征上有明显差异。如图3所示,成熟草莓图像的凸包面积在区域目标图像中,占比较大且较为集中;未成熟草莓图像的凸包面积,在区域目标图像中占比较小。区域目标图像是由识别模块输出区域经填补后等比缩放至固定尺寸,再由草莓目标分割模块确定图像中草莓区域,因此利用目标区域和草莓区域进行成熟度评价时图像尺度具有一致性。因此,设S1为草莓目标区域凸包像素面积,S2为目标图像像素面积,以F1=S1/S2作为草莓的成熟区域度特征。在未成熟草莓分割图像中,背景噪声会对草莓真实区域造成一定干扰(如图3b中黄色圈所示),因此在计算目标区域面积时,通过图像形态学操作去除图像中的细小碎块区域后,再计算图像的目标区域面积和凸包。通过对464幅草莓样本图像的分析,获取其目标区域并计算区域度特征,特征数据F1的箱型图如图4所示。

图4 草莓类别分布箱型图

从图4可以观察到未成熟草莓的区域度特征分布集中度较高,均分布在0.08左右。而成熟草莓的区域度较为分散,从最小值0.18到最大值0.72均有分布,相对集中在0.35~0.50区间。因草莓样本的多样性及其品质的随机性,所得数据中有个别离群点(红色十字),但图中数据分布仍能反映出可通过区域度特征阈值方法成功区分成熟草莓与未成熟草莓。当把阈值设定在0.2时,对成熟草莓分类的准确率为96.03%,对未成熟草莓分类的准确率为91.67%,满足实际场景的应用需求。

(5)点云分割

成熟草莓中,以草莓目标精确分割区域为索引,结合配准的深度信息矩阵,计算草莓区域的点云数据,获得精确分割的草莓目标区域点云数据。为了去除点云数据在获取阶段受到环境干扰导致的误差,需要对点云数据进行预处理。本文使用双边滤波方法对草莓目标点云区域进行滤波去噪,双边滤波算法通过使用当前数据点与临近点的距离权重和临近点沿当前点法向量的投影权重来修正当前采样中心点的位置,从而达到保持点云数据原特征的目的。

1.3 草莓位姿估计

自然生长条件下草莓空间位姿估计是获取草莓采摘点的前提,本文设计了基于草莓几何体形态的中心位姿线估计方法。完整草莓的几何体形状近似一个锥形,因此在点云空间中可把完整草莓曲面看作半个圆锥面。估计草莓的位姿就是从点云提取的半个锥面曲面中估计完整锥面的长轴向量。本文设计的草莓位姿估计方法,以每个数据点为中心,相邻点为邻域拟合平面,依次计算每一个数据点的平面法向量。以数据点坐标为射线起点,数据点法向量方向为射线方向,构造射线,把每一条射线看作圆锥曲面与圆锥中心长轴向量的连线。寻找所有射线之间的交点作为潜在的草莓位姿点,最终对潜在草莓位姿点滤波后使用最小二乘法进行直线拟合,作为草莓的空间位姿向量。具体流程如图5所示。

图5 完整草莓位姿估计流程图

(1)生成z轴方向一致的表面法向量

由于草莓位姿方向和圆锥中心线方向一致且在圆锥内部,为了获取草莓位姿数据点的潜在区域,需要先获取目标点云曲面每一个点的法向量。对于平滑去噪后目标点云数据中的每个数据点使用最小二乘法来拟合局部平面,并确定中心数据点的平面法向量。具体过程如下:

平面方程的一般表达为

Ax+By+Cz+D=0 (C≠0)

(1)

则有

(2)

记a0=-A/C,a1=-B/C,a2=-D/C,那么

z=a0x+a1y+a2

(3)

(4)

求解线性方程组(4),可得到a0、a1、a2,则z=a0x+a1y+a2。令D=1,解得参数A、B、C,故得到参考点的法向量N(A,B,C)。

为了符合圆锥体长轴向量在圆锥内部的特性,z轴远点设置一个基准点,把每个法向量的方向都与此基准点进行比较,以保证每个数据点的法向量z轴分量指向圆锥内部。法向量方向确定的具体方法如下:

设基准点坐标为P0(x0,y0,z0),待判断方向的数据点为P1(x1,y1,z1),点P1的法向量为N1(A1,B1,C1),则数据点指向基准点方向向量为Pk(x1-x0,y1-y0,z1-z0),因此

(5)

(2)点云质心分区

对于保留了完整草莓曲面的无遮挡情况草莓,由于圆锥体沿中心线截面左右对称,草莓目标点云也基本符合左右对称的性质。因此,以草莓目标区域图像的质心坐标标定出的点云数据点为原点,x轴、y轴方向把草莓曲面分为4个区域,如图5点云质心分区结果所示,4个区域内点云数据法向量的x和y方向应指向圆锥体中心方向。

(3)位姿交点计算

为了找到圆锥的长轴向量,将点云划分为4个区域后,依次以每个数据点为起点,数据法向量方向为射线方向生成射线。在质心分区的区域1、2、3、4之间互相寻找射线交点,作为潜在的草莓位姿点。草莓位姿交点的轴向示意图如图6所示。

图6 草莓位姿交点轴向示意图

如图6所示,三维空间中计算目标曲面射线交点的推导过程如下:

设数据点a的空间坐标为Pa,由a拟合的局部平面法向量为v1,射线L1以点Pa为原点沿v1方向的长度为t1,则L1的表达式为

L1(t1)=Pa+v1t1

(6)

设数据点b的空间坐标为Pb,由b拟合的局部平面法向量为v2,射线L2以点Pb为原点沿v2方向的长度为t2,则L2的表达式为

L2(t2)=Pb+v2t2

(7)

若两射线在空间中存在交点,则交点满足

Pa+v1t1=Pb+v2t2

(8)

等式两边叉乘v2,有

(v1×v2)t1=(Pb-Pa)×v2

(9)

等式两边再点乘v1×v2,得

t1(v1×v2)·(v1×v2)=[(Pb-Pa)×v2]·

(v1×v2)

(10)

解得

(11)

同理可得

(12)

式(11)、(12)中,Det为Determinant的缩写,表示行列式的数值。

两射线之间最短距离D=|(Pb-Pa)·(v2×v1)|2,当D=0时,两射线相交。由于传感器采样精度原因,和草莓几何体与标准圆锥体的偏差,精确相交很少出现,需要设定一个范围,达到设定的范围D<|ξ|,则认为两直线相交,本文选取的范围为ξ=0.001。

(4)错误位姿点剔除

由于深度相机受本身的精度和环境干扰等影响,初步计算得到的位姿交点会存在离群点等难以反映草莓真实位姿,会对后续的位姿估计造成干扰。因此,需要剔除错误的位姿点以及离群点数据。本文以位姿点数据质心为中心,r为半径,剔除位姿点数据。

对于N(N≥3)个位姿点(xi,yi,zi)(i=1,2,…,N),设其质心点为Pc(xc,yc,zc),则x-z平面内,计算数据点到质心的距离为

(13)

当d>r时,位姿点被剔除,d≤r时,位姿点保留。

(5)空间位姿估计

对去除离群点和错误点后的位姿点数据使用最小二乘方法进行直线拟合,把直线拟合的向量作为草莓的空间位姿。推导过程如下:

空间直线的点向式方程为

(14)

(m,n,p)为直线方程的方向向量;(x0,y0,z0)为直线上一个点坐标,对方程进行等价转换得

(15)

其中

k1=m/pb1=x0-mz0/p

k2=n/pb2=y0-nz0/p

于是空间直线就可看作由上面两个平面相交得到,因此对空间直线拟合就是对这两个平面方程拟合,方程的残差平方和为

(16)

根据最小二乘法拟合原理,使残差平方和最小得出模型中的参数,求得

(17)

(6)遮挡草莓位姿估计

成熟草莓中,除了有无遮挡的完整草莓,还有被枝叶不同程度遮挡的草莓。由于自然环境中的枝叶遮挡,得到的点云并不能完整反映草莓曲面情况,无法使用上述完整草莓位姿估计的方法。因此需要根据遮挡草莓情况,设计针对遮挡草莓的位姿估计方法。要实现遮挡草莓的位姿估计,则需要首先对草莓目标是否被遮挡做出判断。成熟草莓中,遮挡草莓与未遮挡草莓如图7所示。

图7 成熟草莓的遮挡情况示例

图7a为成熟且未遮挡草莓,草莓目标区域轮廓基本为凸形,草莓目标区域面积与凸包面积相近;图7b为成熟但存在部分遮挡草莓,草莓目标区域轮廓多为凹形且存在非连通的多个目标区域情况,草莓目标区域面积小于凸包面积;因此,在提出了成熟区域度特征F1的基础上,提出草莓的遮挡区域度特征F2。设草莓目标区域面积为S3,草莓目标区域凸包面积为S1,则遮挡区域度特征F2=S3/S1。本文使用目标成熟区域度特征F1、目标遮挡区域度特征F2作为区分草莓是否遮挡的判断依据,基于SVM构造成熟草莓遮挡情况分类器判别草莓遮挡情况。对全部成熟草莓样本提取特征值,特征分布及分类结果如图8所示。

根据图8可知,成熟未遮挡草莓特征值F2在0.9~1.0区间较为集中,成熟且遮挡草莓的特征值F2多分布在0.6~0.9区间,与未遮挡草莓相比其分布相对分散。遮挡草莓与未遮挡草莓在F1-F2特征平面可被一条分界线成功分开,其混淆矩阵如表1所示。

表1 成熟草莓遮挡类型判断SVM模型混淆矩阵

根据表1可知,SVM模型的准确率为92.69%、精确率为93.67%、召回率为96.1%,基于精确率和召回率的调和平均值为94.87%。

草莓是否被遮挡的判别流程算法伪代码为:

Algorithm草莓遮挡识别方法

Input:草莓目标区域图像

Output:草莓是否被遮挡

function草莓遮挡识别

图像区域二值化 ∥获得区域属性

图像轮廓检测 ∥寻找目标轮廓边缘

凸包轮廓检测 ∥寻找轮廓凸包边缘

计算目标区域面积、轮廓凸包面积 ∥提取草莓目标特征值

分类器检测 ∥将特征值输入分类器

return分类器检测结果

end

遮挡草莓的位姿估计流程如图9所示。

图9 遮挡草莓位姿估计流程图

根据图9目标点云可知,由于遮挡位置的随机性,遮挡草莓曲面点云并不完全符合沿圆锥中心线左右对称,无法使用针对完整草莓目标的点云质心分区步骤来划分区域,但是未遮挡部分草莓点云也一定程度上拟合了不完整的圆锥表面。因此,去掉在完整草莓位姿估计方法中的质心分区步骤,直接使用所有曲面数据点两两计算射线交点,获取到所有潜在的草莓位姿点之后,对离散位姿点进行剔除,使用最小二乘法对剩余的位姿点做直线拟合,将拟合出的直线作为草莓空间位姿向量。

(7)采摘点获取

草莓采摘点根据本文方法获取的草莓位姿得到,如图10所示。

图10 采摘点获取示意图

设位姿数据质心点空间坐标为Pc(xc,yc,zc),草莓曲面点云数据y方向最大值为hmax、最小值为hmin、草莓高h=hmax-hmin,位姿估计向量经归一化后为p=(,,)。

对于无遮挡草莓,根据图10a可知,位姿点质心处沿位姿方向向上,垂直距离3h/4处作为采摘点Ph(xh,yh,zh),则Ph为

(18)

对于遮挡草莓,根据图10b所示,由于遮挡情况较复杂且无法预知遮挡部位,无法通过点云信息估计完整草莓高,故将h替换为hk计算采摘点,本文中设hk=0.03 m。

2 实验

为了验证本文提出的草莓位姿估计和采摘点定位方法的准确性和鲁棒性,在训练、测试自然图像草莓目标分割模块和草莓可采摘性识别模块性能的基础上,进一步估计果实的位姿和采摘点,在实际机器人系统上测试并验证本文所提方法的有效性。

2.1 实验条件

采用Intel RealSense D415作为图像采集设备,RGB传感器使用卷帘快门,最大分辨率为1 920像素×1 080像素,视场为69°×42°;深度传感器使用红外结构光技术,深度视野为65°×40°,最高深度输出分辨率为1 280像素×720像素,最高输出帧率为90 f/s。

数据采集地位于北京市昌平区万德草莓种植园,该草莓种植园的种植方式为温室大棚环境下的A架种植,平均行间距为2 m,受光照、种植波次等因素影响,草莓的生长和成熟状况也存在一定差异性,数据集包含了多种拍摄角度和位置的图像数据,具有较强代表性。本文构造了包含上述情况的样本集,样本集数量为2 000幅,其中1 600幅用作训练,400幅用作测试,使用Matlab R2021b环境下的Image Labeler工具进行草莓目标区域标注。训练平台为Intel Core i9-9900K CPU 3.60 GHz,Nvidia Quadro P4000 GPU,32 GB RAM。

2.2 实验结果

2.2.1自然环境图像草莓区域点云分割实验

在测试数据中,选用了不同环境条件下,以及不同成熟程度、不同遮挡情况下的草莓图像来评估草莓目标区域分割模块的性能,测试结果如图11所示。

图11 不同条件下草莓区域分割测试结果

对于弱光照条件下的草莓目标区域点云分割测试结果,得到了正确的草莓目标区域并精准分割目标点云。对于有枝叶遮挡的情况,本文设计的点云分割模块获得了合理的预测结果,还原了图像中草莓所属的像素区域,并成功获得遮挡草莓的目标点云。对于强光照射情况,模块也表现出了较好的分割能力,没有受到光斑的影响。对于强光照射且有枝叶遮挡的条件下,模块的分割结果仍较为准确。从以上测试结果看,本文设计的方法对温室环境下图像的草莓目标点云分割具有较好的适应性。

2.2.2自然环境下草莓位姿估计实验

对不同遮挡情况下的草莓目标点云进行位姿估计实验,实验结果如图12所示。

图12 不同遮挡条件下草莓位姿估计测试结果

根据图12可知,本文设计的草莓位姿估计方法受非结构性环境干扰因素较小。对于无遮挡草莓,本文方法成功估计出未遮挡的完整草莓位姿;对于从轻微到较严重程度的遮挡,基于本文设计的位姿估计方法,也能根据已知点云信息,较合理估计出遮挡草莓的位姿;对于较密集草莓,可知通过完整草莓质心分区这一步骤,可以成功剔除不属于该草莓的点云区域并检测出真实草莓的真实位姿。

设机器人采摘末端中心对准草莓上方茎时的空间位置Pr(xr,yr,zr)为真实采摘参考点,机器人采摘末端中心对准草莓最下端时的空间位置Pd(xd,yd,zd),草莓的真实位姿向量Vr=Pd-Pr,归一化后Vr=Vr/‖Vr‖=(u,v,w),本文方法估计的位姿向量为p=(,,);则位姿估计误差为

(19)

其中

(20)

(21)

(22)

式中ex——x轴方向估计误差

ey——y轴方向估计误差

ez——z轴方向估计误差

e——位姿估计综合误差

图12中草莓位姿估计值及其误差如表2所示。

表2 草莓位姿估计值及其误差

根据图12和表2中数据可知,本文提出的方法在无遮挡、遮挡以及果实密集情况下均能准确地计算位姿。其中,对于无遮挡草莓和较密集草莓,位姿

估计平均误差为4.03%;对于不同程度的遮挡草莓,位姿估计平均误差为9.06%;根据估计位姿获取采摘点数据,真实采摘点Pr(xr,yr,zr)与估计采摘点Ph(xh,yh,zh)对比如表3所示。

表3 采摘点估计值及其误差

由表3可知,本文设计的采摘点获取方法可以较准确地估计草莓采摘点位置。在x方向上的平均误差为2.57 mm,最大误差为4.3 mm;在y方向上的平均误差为1.83 mm,最大误差为3.1 mm;在z方向上的平均误差为2.45 mm,最大误差为4.9 mm;采摘点的x、y、z方向综合误差为2.3 mm,符合实际应用场景需求,可以为草莓采摘机器人系统提供指导。

经分析,误差主要来源于采摘点参考值的测量和相机系统。首先,采摘点参考值由机器人采摘末端中心点确定,关节和采摘末端的结构精度会导致最终测定值存在累计误差。其次,本文采用的相机获取深度信息原理为红外结构光,环境干扰也会对深度信息的精度造成误差。

2.3 真实采摘测试

在实验数据的采集地北京市昌平区万德草莓种植园,将本文方法应用在大族El-fin10机器人平台上,进行了算法的实际采摘测试。算法运行的硬件平台为Intel i9-9900K CPU,Nvidia Quadro P4000 GPU,软件平台为Win10 环境下的Matlab 2021b,对草莓园9号棚中的500个草莓进行实验,最终成功识别草莓空间位姿找到草莓目标位置并驱动机械手到达果茎位置完成采摘动作的有463个,采摘成功率为92.6%,单草莓平均计算耗时约为92 ms,在把机械臂的运行速度设置在中速时,单个草莓采摘动作的执行平均耗时约为5.7 s,符合草莓采摘的实际情况和需求。经分析,部分草莓采摘失败的原因主要有:待采摘草莓与传感器距离过近,低于传感器深度最小获取距离,导致无法成功获取草莓目标曲面点云;待采摘草莓与传感器距离过远,导致点云分辨率下降,曲面与真实情况差异较大,导致计算出的采摘点偏离真实值过多;目标被遮挡的过于严重,获得的点云信息无法拟合出草莓空间位姿,进而无法获得采摘点。

真实采摘测试场景如图13所示。如图13a所示,采摘机器人在观察视角姿态获取到图像数据和深度信息后,通过本文设计的方法对当前视野中的草莓目标进行采摘点估计。由图13b可知,测试场景包含了未成熟草莓、成熟未遮挡草莓以及成熟遮挡情况的草莓。对于遮挡情况草莓,采摘机器人对准草莓目标并运动到草莓茎处,完成草莓采摘动作。对于无遮挡草莓,算法给出了准确的草莓采摘点空间坐标位置,指引机器人完成了对草莓目标的对准以及采摘动作。机器人运动过程如图14所示。

图13 真实场景测试

图14 机器人运动过程

由实际场景采摘实验的结果可以看出,本文设计的方法可以准确地估计出成熟草莓的空间位置坐标,且对于遮挡较为严重的草莓,也能做出较为合理的采摘点估计,指引采摘机器人完成采摘动作。

3 结束语

使用草莓颜色和饱和度信息对草莓目标进行预定位,并结合卷积神经网络对草莓目标完成精确区域点云分割;基于草莓目标区域图像,完成对草莓目标的成熟性判断和是否遮挡判断;基于分割得到的目标点云,对草莓进行位姿估计和采摘点估计。实验结果表明:本文方法的完整草莓位姿估计平均误差为4.03%、遮挡草莓位姿估计平均误差为9.06%,采摘定位综合误差为2.3 mm,该方法可以估计出不同遮挡条件下的成熟草莓并成功提取草莓采摘点,指引草莓采摘机器人完成草莓采摘动作。

猜你喜欢

位姿草莓向量
向量的分解
聚焦“向量与三角”创新题
草莓
基于共面直线迭代加权最小二乘的相机位姿估计
基于CAD模型的单目六自由度位姿测量
向量垂直在解析几何中的应用
小型四旋翼飞行器位姿建模及其仿真
向量五种“变身” 玩转圆锥曲线
基于几何特征的快速位姿识别算法研究