随着学会的队伍不断发展壮大,分支机构的发展愈发完善,丰富多彩的分支活动与学术分享也频频呈现。疫情期间,CAAI认知系统与信息处理专委会积极倡导学会“疫情防控不放松,学习充电不间断”的理念,邀请年轻学者结合本专委会自身领域研究精选相关文献进行研究与再解读,与大家分享《草莓采摘机器人的果实定位与环境感知》。
随着农业智能化发展,机器视觉越来越多的应用于农业之中。近期IEEE Access发表了“Fruit Localization and Environment Perception for Strawberry Harvesting Robots”,文中介绍了一种应用于草莓采摘机器人的机器视觉系统,可以实现草莓定位与环境感知。首先利用深度卷积神经网络对草莓进行检测,然后通过坐标变换、基于密度的聚类方法和位置逼近方法对草莓进行局部定位。环境感知对于农业机器人来说至关重要,保证了机器人与人、目标物体与周围环境之间的安全交互。
1、系统总体设计
文中的草莓采摘机器人采用静态采摘,即当机器人处理图像时处于静止状态,处理完成后向机器人控制系统发出指令。因此,当机器人处于静止状态时,机器视觉系统通过相机模块获取的RGB和深度图像实现草莓定位和环境感知计算。
所提出的机器视觉系统的整体架构如图1所示。利用实例分割网络R-CNN对草莓、皮带和桌子等目标进行检测。然后,对检测到的草莓进行二维成像安全检测、坐标变换、3D坐标近似计算和3D空间安全检测,得到草莓在安全操作区域内的3D坐标,从而实现安全高效的采摘。
图1 整体架构
在图1中,与草莓定位相关的以红色显示,与环境感知相关的以蓝色显示,两者相互协调,最终确定草莓在安全区域内的位置,与这两者都相关的以绿色显示。
2、实例分割与定位
A、水果检测与分割
Mask R-CNN[1]是一个深度神经网络,可以为每个实例生成边界框和掩膜,用于水果、桌子和皮带的检测与分割。如图2所示,把ResNet-101作为基础的卷积神经网络进行特征提取。
图2 用于草莓检测与分割的Mask R-CNN
草莓采摘机器人的目标是成熟的草莓,而桌子和皮带在操作过程中可能会与夹钳发生碰撞,所以文中把检测物体分为四个目标群体,分别是成熟草莓、未成熟草莓、皮带和桌子。草莓检测和分割结果如图3所示。图3(a)为输入图像,图3(b)显示检测和分割结果,包括边界框、掩膜和类名,图3(c)显示了彩色分割的掩膜,不同的颜色代表不同的对象。
图3 检测与分割结果
B、草莓分割后的坐标变换
通过图像处理生成了多个掩膜,其中每一个掩膜都代表一个检测到的目标。然后将掩膜进行3D投影,得到在相机框架下的3D坐标。坐标变换的工作流程如图4所示,首先从检测结果中提取掩膜,然后与相应的深度图进行结合,进行坐标变换,得到相机框架下的3D坐标。
图4 坐标变换的工作流程
坐标变换过程及其结果如图5所示。第一列和第二列分别是检测到的掩膜和相应的深度图像,第三列显示了成熟草莓的3D边界框。
图5 草莓坐标变换的例子
C、目标近似定位方法
文中通过点聚类的方法滤除了图像中的噪音,得到原始点和周围区域的边界框,如图6(a)所示,其中边界框只能表示草莓的一部分。由于RGB-D相机通过投影得到3D点,因此正对相机的检测效果较好。在采摘过程中,如果相机正对草莓,那么草莓在x轴和z轴上的长度几乎相同,为了更准确地实现草莓的定位,将z轴的长度设为与x轴长度相同,如图6(b)所示。
图6 定位优化
3、环境感知
A、问题定义
草莓采摘机器人需要对周围环境进行感知,以便对动作进行预测。在实验过程中,当草莓离桌子或皮带太近时,机械手会与桌子或皮带发生碰撞。采摘的安全区域如图7所示,图7(a)是正视图,表示安全区域位于皮带下方。图7(b)是侧视图,表示安全区域位于皮带下方以及与桌子之间的安全距离。
图7 草莓采摘的安全范围
B、皮带的安全解决方案
草莓桌上方的皮带用来支撑草莓植株生长,使草莓更容易采摘,同时也防止枝干折断。大多数成熟的草莓都挂在皮带下面,但也有一些在皮带上方,这可能会影响采摘效果。于是需要识别草莓与皮带的位置关系。
文中首先利用Canny[2]提出的Canny边缘检测算法来确定所有边缘点。然后采用Kiryati等人提出的Hough变换算法[3],它利用边缘检测获得图像中的多条直线,包括它们的起始坐标和结束坐标。然后利用这些坐标计算线性方程(y=m·x+b),通过最小二乘法对所有点进行最佳插值。
C、桌子的安全解决方案
草莓采摘机器人需要掌握桌子具体的3D坐标,以便计算草莓与桌子之间的距离。为了表示桌子的3D坐标,文中将一个3D平面拟合到检测到的桌子的3D点上。检测与分割结果如图8(a)所示,将掩膜进行3D投影,得到在相机框架下的3D坐标。在图8(b)和图8(c)中,用绿色表示拟合平面。图8(c)显示了点云和检测到草莓,以及目标和桌子之间的距离。
图8 坐标变换及与桌子的曲线拟合
D、安全操作区域
将检测到的草莓位置与皮带和桌子的位置进行比较,以确定草莓是否在安全操作区域内。首先,忽略皮带上方的草莓,将草莓和皮带的位置在2D图像中进行比较。然后,在RGB相机的框架中比较草莓和桌子在3D空间中的位置。第三步也是最后一步,只有在皮带下方并且在安全操作空间内的草莓才会被采摘。
4、实验
A、检测方法评估
文中对阳性和假阳性共120张图像进行评估,检测结果的指标包括准确率、召回率、F1得分和平均精度(AP),其中设置三个置信度,范围在0.7-0.9之间,结果见表1。成熟草莓的检测准确率较高,因为成熟草莓易于定义,而未成熟草莓则较难定义,因为它们包括从幼小草莓到部分成熟的漫长生长过程,这可能会影响检测网络的效果。
表1 检测方法评估结果
B、桌子安全解决方案实验
文中通过RGB图像、深度图像和点云对桌子的安全解决方案进行了评估。通过RGB图像和深度图像获取检测和定位结果,通过人工测量点云中目标与桌子之间的距离来获得地面真实距离。根据经验将安全距离设置为10cm,对收集到的包含112个草莓的20组数据进行了测试,分类结果如表2中所示,总准确率为97.3%。
表2 桌面安全解决方案评估结果
C、采摘机器人的定位评估
在草莓采摘机器人上对草莓的检测和定位方法进行了测试。该采摘机器人包括车载平台、摄像机、机械臂和采摘草莓的夹持器[4]、[5],如图9所示。通过GPU(gtx1060,NVIDIA,USA)运行机器视觉和操纵控制系统,每一帧图像的平均处理时间为0.82s,包括运行检测网络、坐标变换和其他计算,图像的分辨率为640×480。表3分别列出了检测网络、坐标变换等计算的平均时间及其标准差。
图9 草莓采摘机
表3 机器视觉系统时间
5、结论
文中提出了一种草莓采摘机器人的定位方法和环境感知算法。该定位方法通过深度卷积神经网络生成的掩膜和RGB-D相机的深度图像实现。为了提高定位精度,采用基于密度的点聚类方法滤除了三维点云中的噪声点,同时采用相同的网络对桌子和皮带进行检测和定位,并将它们的位置与草莓的位置进行比较,以确定草莓是否在安全操作区域内。通过Hough变换算法的直线拟合比较草莓与皮带的位置,通过三维平面拟合比较草莓与桌子的位置。实验结果表明,优化后的定位方法能准确定位目标,且准确采摘率为74.1%,对于皮带与桌子的安全识别率分别为96.9%和97.3%。在以后的工作中,还可以进一步优化定位算法,以适应更复杂的场景,如草莓的遮挡和悬挂位置异常等情况。
参考文献
[1] K.He, G. Gkioxari, and P. Dollár, and R. Girshick, ``Mask R-CNN,'' in Proc. IEEE Intl. Conf. Comput. Vis., Oct. 2017, pp. 2961_2969.
[2] J.Canny, ``A computational approach to edge detection,'' in Readings in ComputerVision: Issues, Problem, Principles, and Paradigms. Amsterdam, The Netherlands: Elsevier, 1987, pp. 184_203.
[3] N.Kiryati, Y. Eldar, and A. M. Bruckstein, ``A probabilistic Hough transform,'' PatternRecognit., vol. 24, no. 4, pp. 303_316, 1991.
[4] Y.Xiong, C. Peng, L. Grimstad, P. J. From, and V. Isler, ``Development and _eldevaluation of a strawberry harvesting robot with a cable-driven gripper,'' Comput. Electron. Agricult., vol. 157, pp. 392_402, Feb. 2019.
[5] Y.Xiong, Y. Ge, L. Grimstad, and P. J. From, ``An autonomous strawberry harvesting robot: Design, development, integration, and _eld evaluation,'' J. FieldRobot., vol. 36, pp. 1_23, Aug. 2019.
本文由CAAI认知系统与信息处理专委会供稿
来源:oschina
链接:https://my.oschina.net/u/4352984/blog/4559223