果蔬采摘机器人关键技术研究进展*
2021-10-25伍荣达陈天赐张世昂朱立学
伍荣达,陈天赐,张世昂,朱立学
(仲恺农业工程学院机电工程学院,广州510225)
0 引言
我国是世界水果消费和生产大国,传统的水果和蔬菜收获是一项劳动密集型任务,除了高昂的劳动力成本外,在恶劣的野外条件下接受重复性工作的熟练劳动力还增加了生产的不确定性。为了确保水果和蔬菜的产量和竞争力,需要从繁琐的手动操作转变为机械化连续自动收获,提高效率并减少对收获的劳动力依赖性。目前国内外学者对多种水果采摘机器人进行了深入研究,并取得大量的科研成果,但也还存在不少问题。果蔬采摘机器人可以通过机器视觉和末端执行器等技术对水果和蔬菜实现自主作业,这将是降低果蔬采摘成本,提高农民收入的重要途径。
1 果蔬采摘机器人研究进展
1.1 国内研究现状
自20世纪90年以来,我国开始进行农业机器人研究。果蔬采摘机器人主要分为4大部分,包括机械臂控制系统、视觉识别和定位系统、末端执行控制系统和移动装置系统。苏州大学开发了一台由五自由度机械臂、柔顺抓取力控制的末端执行器和机器人视觉伺服控制系统组成的苹果采摘机器人,如图1(a)所示。针对夜间的光线不足而导致采取的图像存在着黑暗、模糊、细节不清的问题,Wei J等[1]提出了一种基于图像增强引导滤波器的Retinex算法,该算法通过线性制导滤波器作为平滑运算函数,来估计反射分量,利用不同的伽马变换来调整照明元件和反射分量图像,该算法提高了图像增强效果,节省了处理时间,有助于提高机器人的精度和效率。此外,对苹果振荡导致识别率下降的问题,吕继东等[2]提出了一种采摘机器人在果实振荡状况下的动态识别方法,解决由于果实振荡影响采摘机器人识别定位时间,进而影响采摘速度和效率的问题。采用分割法和帧间差分法对振荡果实进行动态区域标识,该算法可以使识别时间少于0.5 s。赵德安等[3]提出了一种全天候采摘机器人,其室内环境采摘率为81.25%,采摘时间为7.81 s。青岛悟牛公司研发了一款水果采摘机器人,如图1(b)所示,通过深度学习框架,不断进行优化升级,目前可适应果园复杂的光线条件,对果实进行精准的识别定位与采摘。该采摘机器人可以在0.2 s的时间内迅速完成1 m2范围内的苹果识别,识别准确率达到93%以上。为了采摘模型能够有效实现果实与果柄的分离,西北农林大学的傅隆生[4]等基于猕猴桃采摘机器人,设计了一种从果实底部接近、旋转包络分离毗邻果实并抓取的末端执行器,如图1(c)所示,采用末端执行器向上旋转方式分离果柄,该末端执行器对毗邻果实的分离成功率100%,采摘成功率在96.0%以上,单果平均耗时22 s。崔永杰等[5]基于图像处理对自然环境中的猕猴桃进行识别和特征提取,利用不同颜色空间和Ostu法进行阈值分割,用Canny算子和Hough变换逐个识别果实信息。试验结果表明:相互分离果实的识别率为96.9%,邻接果实识别率为92.0%,被枝叶部分遮挡果实识别率为86.6%,重叠的果实识别率为81.6%。
图1 国内果蔬采摘机器人
1.2 国外研究现状
以日本和欧美为代表的发达国家自20世纪80年代相继开始研究采摘机器人。日本的近藤等[6]研制一种七自由度的番茄采摘机器人,如图2(a)所示,此机器人主要由机械臂、末端执行器、视觉系统和移动平台组成。视觉系统主要通过彩色摄像机来搜索并判别成熟的番茄果实,再利用计算机视觉中的三角测量原理对目标进行空间定位。机器人进行采摘时,移动基座行走到指定的位置后,采集彩色图像,然后利用视觉系统确定出番茄果实相对机械臂坐标系的位置,判断番茄是否达到预定的收获标准,若达到收获标准,则控制机械手靠近并摘取果实。该机器人采摘成功率为70%左右,采摘时间为15 s。但是在番茄被叶茎遮挡时存在着无法成功识别的情况,这影响了机器人采摘效率。Shinsuke Yasuka⁃wa等[7]为了开发番茄采摘机器人,提出了利用红外图像和镜面反射检测果实的方法,其识别成功率为88.1%,但是当主茎遮挡番茄时,识别效果并不理想。挪威大学的Lars Grimstad设计了一种自动采摘草莓机器人,如图2(b)所示,该机器人能够在多隧道中连续摘草莓[8],其提出的一种新型障碍物分离算法,可以使用执行器将周围的树叶、草莓和其他障碍物推开,从而收割成簇的草莓。针对光照变化影响,该团队提出了改进的基于颜色对光强度的视觉系统。此外,该团队还开发了一种具有优化收割顺序的低成本双臂采摘系统,提高了收割效率,降低了碰撞风险,采摘成功率在75%~100%之间,与单臂采摘机器人相比,其采摘速度有所提高,单臂采摘单个草莓时间为6.1 s,双臂采摘仅需要4.6 s。佛罗里达大学的Harrell等[9]开发了一款柑橘采摘机器人。该机器人先使用贝叶斯分类器检测柑橘并用超声波测距传感器测量柑橘深度值,再通过三自由度机械臂操控一个旋转唇状刀片分离果实与果枝,采摘成功率为75%,采摘时间为3~7 s。在外界干扰和采摘果实时产生的果树振荡的影响下,柑橘会发生运动,依靠控制器补偿果实运动的控制方法容易受到测量噪声的影响,为此,S S Mehta等[10]设计了一种基于图像的视觉伺服控制系统,如图2(c)所示,在未知果实运动的情况下对目标果实进行控制器调节,该方法基于Lyapunov的稳定性分析,保证机器人最终对目标水果的均匀约束调节。为了验证控制器的可行性,还将其移动120 mm以评估控制器的性能,实验表明了该控制器可以稳定地进行闭环控制,具有较好的抗干扰能力。
图2 国外果蔬采摘机器人
2 视觉控制系统
视觉控制系统如今已经广泛应用在多个领域,例如,视觉识别定位技术可以帮助机器人识别出目标果实并确定其在空间中所处的位置;还可以使用视觉伺服技术控制机械臂精确到达目标作物,从而控制机器人采摘果实。计算机视觉识别定位算法的相关利用提高了复杂农业环境中的目标识别和定位、3D重构等。
2.1 目标识别技术
目标识别可以分为两部分:图像获取和视觉处理。图像获取即利用相机将空间中的三维信息投影到二维图像空间中,而视觉处理是通过算法对获得的二维图像进行信息提取,从而得到视觉反馈。
2.1.1 传统的图像特征识别
多数水果具有显著的颜色和形状特征,与背景形成鲜明对比,从而可以通过算法将目标果实与背景进行分割。在机器视觉技术中,图像处理的重要部分是图像分割算法。例如,在猕猴桃的识别上,崔永杰等[11]选用R-G颜色空间区分目标与背景,使用分割像素方法来评价分割效果,利用Ostu法进行阈值分割。实验表明,相互分离果实识别率为96.9%,重叠果实识别率为86.6%,试验结果表明,受重叠果实遮挡的影响,该区域的识别效果明显降低。针对果实重叠问题,乔玉晶等[12]利用形态学梯度对果实边缘粗化突出的方法,提高了在果实重叠情况下的图像分割识别率。陈礼鹏等[13]提出了一种基于猕猴桃果萼图像的多目标果实识别方法,可以较好地识别多个目标果实,为后续的机械臂的路径规划提供信息支持,但其准确率还有待提高,并且基于颜色特征对目标进行分割时,鲁棒性低,对环境的变化敏感,尤其是在室外。因此,为了减轻光照变化的影响,Wang Z等[14]提出一种针对视觉系统变化光照的鲁棒性水果的分割算法,该方法利用小波变换对物体表面的光照进行归一化处理,再用Retinex算法对归一化后的图像进行高亮显示,最后利用K-means聚类对图像进行分割。实验表明,该方法在不同的光照变化下具有较好的鲁棒性并可以对不同颜色的水果进行精确的分割。
在图像识别研究中,能反映目标外形并可以有效区分目标与背景之间的差异特征参数都能作为识别目标的特征,图像形状特征主要来自目标的几何特征,针对不同形状的果实有许多典型的特征提取算法。王玉翰[15]通过选取园方差、离散度、伸长度等作为形状特征,可以有效地识别出番茄。王玉飞等[16]提出了基于形状和纹理特征分析的识别方法,在研究中把圆形度、凹度和矩形度作为形状特征参数对番茄进行识别实验,正确识别率达90%以上,此方法虽然可以基于形状纹理取得较好的识别效果,但是所采用的纹理特征不能较好得体现出果蔬纹理的差异性。为此,陶华伟等[17]提出一种颜色完全局部二值模式纹理特征提取算法,利用匹配得分融合算法将颜色和纹理特征相融合,采用最邻近分类器实现果蔬农产品分类,该方法对比与常规的特征纹理特征提取方法,其识别率提升了5%,识别时间减少了1.1 s。
2.1.2 基于深度学习的图像识别
深度学习的概念源自于人工神经网络,深度学习就是通过采用多个特征层进行深度卷积,并从大量的数据中自动学习图像特征,并将其扩展到实际场景,近年来由于深度学习发展迅速,很多学者将其应用到水果图像识别中。例如,传统的基于特征的估计方法会出现无法识别出良好特征的情况,或者特征识别和匹配的过程很慢。针对此问题,Ty Nguyen等[18]开发了一种无监督的学习算法,用于训练深度卷积神经网络(Deep Convolution⁃al Neural Network,D-CNN)来估计平面单应矩阵,实验证明,基于无监督的深度卷积神经网络在精度、速度和鲁棒性上均优于传统的图像特征识别方法。Fu等[19]使用Zeiler and Fergus network(ZFNet)的反向传播和随机梯度下降技术,对快速卷积神经网络(Faster Convolutional Neural Network,R-CNN)进行了端对端训练,其检测单独猕猴桃的识别率为94.3%,被遮挡果实和重叠果实的识别分别为82.5%和85.6%,该模型处理图像的时间很短,对光方差和树叶遮挡具有较好的鲁棒性。
2.2 视觉伺服控制技术
由于运算能力和图像处理能力的不足,早期的视觉控制系统大部分都是开环控制,即视觉系统获取到目标的位姿,然后控制机器人运动。开环的视觉控制只使用于静态物体的视觉伺服系统,控制精度受传感器分辨率、标定精度等因素的影响。为了克服开环系统控制的缺陷,J Hill[20]提出了视觉伺服反馈闭环控制,机器人视觉伺服系统使用视觉传感器获取图像信息并反馈给控制器分析和处理,通过算法得出机器人的控制量,从而驱动机器人到达目标位姿,形成机器人闭环控制。视觉伺服涉及到多个领域的技术,包括控制理论、图像处理、运动学、机器视觉等。根据反馈信息的类型,机器人视觉伺服研究主要可以分为两种,分别介绍如下。
2.2.1 基于位置的视觉伺服控制
基于位置的视觉伺服(Position based visual servo⁃ing,PBVS)如图3所示,通过直接对图像进行处理后计算出目标相对于相机和机器人的位姿,即利用视觉数据来重建机器人的3D位姿,并且在笛卡尔空间生成运动误差并映射到执行器命令中去。当使用PBVS将图像的2D数据映射到笛卡尔空间数据时,则必须要对相机的内参外参进行标定。相机内参取决于光学特性,即镜头和CCD传感器特性,当其光学装置是固定的时候,其内参可以离线校准,一般采用张正友标定法[21]对相机内参进行标定。而外参是相机坐标系相对于世界坐标系的相对姿态,会随着机器人或目标的移动而变化,因此,为了执行动态的边看边动的跟踪任务,外参的实时估计是必须的。Perspective-n-Point(PnP)算法可以确定姿态,通过4个共平面点的PnP算法可以实现在线快速的姿态估计。M Palpacelli等[22]设计了一项用来评估姿态估计方法准确性的测试,先保持相机固定,利用精密测微台,将光学目标沿每个轴移动7 mm,通过分析数据的平均值和标准差来进行评价,同时,通过3阶贝塞尔曲线,可以确保位置和速度连续以及在终点处以垂直切线的方向到达。
图3 PBVS(基于位置的视觉伺服系统)
2.2.2基于图像的视觉伺服控制
在基于图像的视觉伺服系统(Image-based visual servoing,IBVS)如图4所示,伺服误差直接定义在图像特征空间,通过驱动机器人沿着路径移动,逐渐减小图像坐标系中图像特征点的当前位置与目标特征点之间的距离。PBVS需要基于系统标定实现的,在农业领域中,其作业环境复杂多变,常常无法进行有效地标定,而IB⁃VS相比于PBVS省略了位姿估计的步骤,其误差直接从图像平面特征生成,控制操作是在图像坐标系中执行,不需要依赖复杂的标定技术。基于图像的视觉伺服控制的关键问题就是对图像雅可比矩阵的求解,其图像特征是关于相机位姿的一个高度非线性化函数[23]。彭叶予光等[24]使用卡尔曼滤波器设计了一个在线估计关节-图像雅可比矩阵的IBVS系统,实现无标定技术下的机器人执行器的高精度定位,实验表明,该系统的定位精度为0.1像素。虽然IBVS克服了PBVS的控制精度受机器人运动学模型和内外参数标定影响等问题,控制精度更高,但是图像雅可比矩阵的求解是难点,因此该方法只能工作在小范围区域内,此外,IBVS的控制精度跟图像特征选取有关。为解决雅可比矩阵求解过程复杂的问题,阳建峰[25]提出一种基于遗传算法优化RBF神经网络的无标定视觉伺服控制方法,通过RBF神经网络算法的拟合逼近非线性映射能力,学习图像特征变化与机器人位姿变化之间的视觉映射模型关系,利用遗传算法对RBF神经网络进行参数优化能够提高训练效率。仿真实验表明,该方法相比于传统的求解逆雅可比矩阵,省去了繁琐的计算过程和奇异性问题,具有更快的收敛速度、误差更小的控制效果。
图4 IBVS(基于图像的视觉伺服系统)
3 末端采摘装置
不同种类的水果会有不同的形状、果皮特性,末端采摘装置不匹配将会导致采摘成功率、效率下降。傅隆生等[4]提出了一种面向机器人的自然生长条件下簇生猕猴桃果实的无损采摘方法,如图5(a)所示,该方法从果实底部接近、旋转包络分离毗邻果实并抓取的末端执行器,采用末端执行器向上旋转方式分离果柄,有效解决了毗邻果实分离和无损采摘的问题。杨庆华等[26]设计了一种基于气动柔性驱动器的苹果采摘末端执行器,如图5(b)所示,该设计以启动柔性驱动器作为其弯曲关节,用力学分析方法建立关节弯曲量及输出力与其内腔气体压力之间的数学关系,该方法能够准确抓住苹果,并具有很好的柔顺性。成亮等[27]为实现水果采摘自适应性及通用性,基于欠驱动原理设计了一种能够根据水果的形状自动调整手指之间的相对位置,并能实现无损采摘的自适应多功能水果采摘装置。为了在线估计机械臂末端抓取过程的目标位姿,樊绍巍等[28]提出了一种针对同步三指式末端执行器的目标位姿估计方法,该方法在不引入视觉传感器的情况下,如图5(c)所示,通过接触力信息进行位姿估计,在系统具有两次或冗余接触信息时,分别采用空间平面相交的方法和最小二乘法进行位姿估计,为主动规划运动奠定基础。
对于数量多且体积小的果实,采取上述抓取式的执行器不仅效率低,且易损伤果实,为此Ya Xiong等[29]提出一种基于电缆驱动的非接触式夹持器,如图5(d)所示,该执行器具有六根手指,可以形成闭合空间吞下目标果实,并推动其他果实远离目标,通过切割茎来采摘草莓,该夹具还配有3个红外传感器,可以控制机械臂纠正误差。此外,该执行器可以一次性存储多个草莓,减少机械臂的驱动时间。但是夹持器在草莓密集区域或遮挡区域中采摘时,其采摘成功率不高。
图5 末端执行器
4 结束语
(1)果蔬采摘机器人与工业机器人相比,其作业环境复杂多变,受天气和生长环境影响明显,尽管人工智能及其深度学习算法提高了目标识别率,但是视觉系统受光照影响和遮挡等干扰时仍然存在较大的识别误差,如何提高识别率需要进一步的研究。开发多特征融合的图像特征提取算法可以最大程度地利用视觉信息来分析各个特征之间的优势,实现有效的特征互补,以提高光照不均匀、目标被遮挡等情况下的识别率。
(2)果蔬采摘机器人的商用化意味着其必须能快速感知,快速计算并能快速响应环境的变化,但是目前采摘机器人的研究表明,用于快速采摘的机器人仍然远远没有实现,其主要原因是作物高密度的植被遮挡而存在复杂的感知环境和移动过程。基于强化学习的无标定视觉伺服控制,可以优化动作选择策略,能够在高密度植被下不断逼近最优的运动路径,缩短其动作探索时间,进而提高采摘的效率。
(3)果蔬采摘机器人要在经济上可行,研究重点应放在开发简单的机械臂。当前的果蔬采摘机器人多数采用工业机械臂作为采摘驱动部分,对于采摘机器人而言,具有多个简单轴操纵器的机器人比目前适应于工业的昂贵机械臂具有更快速、更高效和更低的成本,此类机械臂为开发适用于农业的机器人奠定基础。
(4)多数采摘机器人都是适用于某一种果蔬,这种采用专门的机械结构和控制程序的技术不利于采摘机器人功能的扩展。通过将采摘机器人的功能模块化,可以更换不同自由度的机械部分或控制装置以便适应不同类型果蔬的采摘。未来水果种植方式可以朝着规模化和多种类的方向发展,因此,模块化技术的采摘机器人将大幅度减少重复开发的费用与维护成本,提高采摘机器人的灵活性与适应性。