刘 然, 吴 昊, 汤晶宇, 肖 冰*, 毕宏伟
(1.国家林业和草原局哈尔滨林业机械研究所,黑龙江 哈尔滨 150086;2.国家林业和草原局林业机电工程重点实验室,黑龙江 哈尔滨 150086;3.国家林业和草原局林业装备工程技术研究中心,黑龙江 哈尔滨 150086)
中国是世界上面积最大的林果种植地之一,同时林果产量位于世界前列[1],林果业的快速发展逐渐成为中国农林业的主要经济来源之一。林果的采收是其中一个重要的环节,大多的采收过程都是以人工作业来完成,不但费时费力,而且在采摘过程中时常需要攀爬梯子在树冠旁作业,容易造成工人受伤的情况发生。随着林果种植面积规模的不断扩大,人工成本的不断增加,需要提供更多的林果采收机器,以实现机器换人[2]。近年来最具智能化的机器人不断地应用于现代农林业,采摘机器人代替人工进行采收作业具有良好的发展前景。任何一种林果采摘机器人的成功运行都离不开对目标果实的准确识别与定位,其为机械手提供正确的空间位姿,来完成对林果的采摘[3]。因此,林果采摘机器人中视觉系统的好坏决定了采摘成功率与采摘效率的高低[4]。本文针对林果采摘机器人视觉系统中的识别和定位方法进行分析梳理,结合近年来最新的图像识别与定位技术,提出一些改进措施。
林果采摘机器人是主要与林果相关的采摘机器人,本文将列举具有代表性的采摘机器人(包括苹果、柑橘等)。美国Silwal等设计了一种七自由度苹果采摘机器人[5],如图1所示。机器人视觉系统采用全局相机,可以对周围果树果实进行360°识别定位,识别范围广,在成功定位果实后,使用7自由度机械手对目标果实进行采摘。经过多次试验得出,每个果实的平均定位时间为1.5 s,平均采摘时间为6 s,采摘成功率为84%。该机器人的机械臂具有7自由度,提高了机器人的灵活性和避障能力。但是本次实验场地主要针对规则特定的栽培环境,并且去除了成簇的果实,降低了环境的复杂性。
图1 苹果采摘机器人1.全景摄像头;2.7自由度机械臂;3.末端执行器;4.控制系统;5.移动底盘
西安交通大学杨长辉[6]等设计了一种柑橘采摘机器人,如图2所示。该采摘机器人的设计方案主要针对自然环境下的柑橘采摘作业,利用深度相机Kinect V2和卷积神经网络来构建识别与定位系统,可以获得采摘目标和障碍物的位置信息,为复杂环境下机器人对目标果实进行精准采摘奠定基础。但是在采摘精度提高的同时采摘速度降低,未来在实用性上还需提高。
图2 柑橘采摘机器人1.采摘执行器;2.采摘机械臂;3.深度相机;4.机器人控制系统;5.履带式移动底盘
迄今为止,国内外学者在研究采摘机器人的首要研究内容时都离不开机器人的视觉系统,林果采摘机器人作业时首先要获取目标林果的数字图像,其次是使林果图像中目标林果和背景区分开来并将提取其特征轮廓,最后将识别过后的目标林果的三维位置信息传递到采摘机器人控制系统,利用机械臂的末端执行器来完成采摘动作。因此,本文将着重研究近年来的林果采摘机器人视觉系统中的识别与定位技术。
林果识别一般是林果采摘的第一步,通过机器人视觉系统中的视觉传感器对目标林果进行特征识别,提取出林果的形状、颜色特征,最后通过这些特征来识别出正确的目标果实[7]。本文将林果识别方式主要分为传统数字图像处理技术与机器学习的林果识别和基于深度学习网络技术去梳理研究。
2.1.1 传统图像处理技术和机器学习的林果识别
传统的林果识别主要依靠对果实的形状、颜色、纹理特征来识别,而且这些方法通常会与机器学习的图像识别进行结合使用,国内外对此已做了大量研究工作,并取得了相关的研究成果。江苏大学蔡健容[8]等利用Otsu自适应阈值算法对柑橘图像进行分割,利用形态运算消除分割后的噪声,利用优化的圆形霍夫变换提取出目标柑橘轮廓的中心和半径,并且在色彩上基于2R-G-B色差图来进行分割,减少在光照条件下果实反光对识别效果较差的问题,经过验证识别柑橘的成功率在95%左右。中国农业大学司永胜[9]等提出了利用色差R-G和色差比(R-G)/(G-B)相结合的苹果识别方法,针对苹果轮廓图像,采用多次遗传算法进行形状特征提取,处理苹果图像中苹果重叠的问题,该方法可以消除一部分的阴影和光照的影响,识别率达到97%左右。田有文[10]等提出利用支持向量机的方法对葡萄图像识别,并能通过纹理和颜色特征来识别出是否具有病虫害。西北农业大学崔永杰[11]等对自然环境下猕猴桃的识别进行研究,选用0.9R-G颜色特征和Otsu法进行阈值分割,再通过Canny算子提取猕猴桃边界,最后利用椭圆形Hough变换对边界形状进行拟合并对目标进行识别。麦春艳[12]等针对自然光照条件下苹果识别做出进一步对比研究,通过对比提出BPNN的苹果颜色分割方法以及Log边缘检测算子与Hough边缘算子相结合的识别方法,在自然环境下识别率达到91%。华南农业大学罗陆锋[13]等为了识别双串叠贴葡萄,提出了一种改进的K-means聚类方法对葡萄图像进行分割,并将此算法移植到采摘机器人的双目视觉系统中,在模拟采摘实验中证明了可行性。
2.1.2 基于深度学习网络的林果识别
随着近年来深度学习的快速发展,相比于传统图像和机器学习的图像识别,由于深度学习对目标的高维特征提取能力较强,因此其被应用于采摘机器人中视觉系统的频率越来越高,并取得了更佳的识别效果。BARGOTI[14]等构建了一种改进的Faster R-CNN林果识别检测系统,可以对芒果、杏仁和苹果三种水果目标进行识别。华南农业大学彭红星[15]等提出一种改进的SSD深度学习水果检测模型,将原有的VGG模型替换成ResNet-101模型,并将此模型利用迁徙学习和随机梯度下降法进行优化,可以在自然环境下对苹果、脐橙、柑橘和荔枝进行识别检测。岳有军[16]等采用改进的Mask RCNN网络对苹果进行识别检测,在网络中加入边界加权损失函数,有效地提高边界识别结果的准确性,对复杂环境下的苹果识别检测而言效果更加显著。魏纯[17]等搭建YOLO V2卷积神经网络柑橘识别模型,并将识别模型输入双目识别视觉系统中,经实验证明了该系统的准确性和稳定性。赵辉[18]等提出一种改进的YOLO V3苹果果实识别方法,在模型网络中增加SPP模块,进一步地提高全局和局部特征的融合度,提高了对小型果实的识别率,在实验中对比该识别模型在鲁棒性和实时性上要高于Faster RCNN和RetinaNet识别网络。蔡舒平[19]等利用改进的YOLOV4目标识别模型对果园障碍物进行识别分类,将网络中用逆残差组件取代原有的残差组件,让网络模型更加轻量,增强了对果园障碍物识别的实时性,为后续机器人的林果采摘奠定基础。综合上述分析传统数字图像识别方法在复杂果园环境下容易受到环境因素干扰,而机器学习的图像识别在数据获取中也存在鲁棒性不强的问题,而深度学习的神经网络更加适合复杂的林果采摘环境。
林果定位是林果识别后的关键步骤,由于国内外林果采摘视觉系统传感器各不相同,导致其定位方式不同。本文重点探讨单目相机、双目相机、深度相机的林果定位。
2.2.1 基于单目相机和双目相机的林果定位
单目相机的三维定位就是通过单目相机获取目标信息,然后通过图像特征信息、几何投影和相机模型参数来确定目标信息。Bulanon[20]等利用单目彩色相机从多个角度去定位同一个柑橘果实目标,并用实验证明该方法提高了柑橘机器人的采摘效率。Si[21]等将单目相机安装在采摘机器人机械臂末端,确定果实的质心位置,通过控制器规划机械臂完成果实的抓取动作。虽然单目相机结构简单,能够较快的获取图像二维位置信息,但是获取三维信息需要结合目标的几何特征点和投影信息,所以定位精度较低,采摘成功率不高。双目视觉是建立在单目视觉基础上的,Plebe[22]等在橙子采摘机器人的两个臂上分别安装了双目摄像头,通过对橙子质心的立体匹配确定橙子在三维坐标系下的坐标。为了提高采摘机器人的采摘速度,Williams[23]等设计了一种四臂采摘机器人,而且每个机械臂都对应一套双目视觉系统,四臂猕猴桃采摘机器人如图3所示。视觉系统对完整的猕猴桃图像处理时间为3 s,视觉定位成功率可达到89.6%,机器人机构设计灵活,四臂和四对双目视觉可以协同工作。Luo[24]等提出一种双目视觉的葡萄簇空间信息获取方法,该方法能够有效避免末端执行器对葡萄果实的伤害。
图3 四臂猕猴桃采摘机器人1.双目摄像头;2.猕猴桃收纳槽;3.末端执行器;4.照明
2.2.2 基于深度相机的林果定位
随着科技的的不断进步,人们通过对3D技术的使用来还原人眼看到的真实信息,RGB-D相机是基于飞行时间法的彩色深度相机,主要由景深相机、彩色相机和激光传感器构成。其中彩色相机获取林果的二维彩色图像,利用激光和景深相机来获取图像的深度值。Nguyen[25]等利用RGB-D相机来识别果园非结构环境中树上的红色与绿色苹果,并开发了一种基于颜色和形状特征的双色苹果检测和定位算法,该方法位置估计误差均小于10 mm,同时检测20个苹果用时低于1 s。Tao[26]等为了提高机器人在三维空间的识别能力和感知能力,提出了一种基于点云数据的苹果识别与定位方法,该方法训练一个基于GA优化支持向量机的自动识别分类器,结合RGB-D相机获取苹果树点云数据,针对遮挡的苹果具有较好的识别定位能力,如图4所示。
图4 基于RGB-D相机与点云分割的苹果识别与定位
林果采摘机器人目标识别与三维定位一直以来都是林业机械研究领域的关键技术问题,相比于传统的识别定位方法,基于深度学习的神经网络结合深度相机的识别定位方法更加值得研究关注。但是由于农业环境的复杂和不确定性,视觉系统在实际应用环境中仍然存在较大的定位误差。根据目前存在的不足提出三条建议:
(1)在林果的实际采摘环境中,需要采摘的目标对象往往不属于同一类型,而深度学习的图像识别算法需要根据特定的采摘对象来对神经网络模型进行训练,容易造成算法通用性不强的问题,未来应加强算法的通用性,更好地识别相似特征的林果目标。
(2)为了降低林果采摘系统的定位误差,需要结合机器人控制系统和机构的创新设计,提高视觉和机器人的容错技术,实现精确定位和精准采摘。
(3)规范林果的种植环境,减少非结构环境,是降低机器人对林果的识别与定位难度的有效方法。