张军凯,李 欣,韩俊先,赵 娟,程龙雪
(河北机电职业技术学院 电气工程系,河北 邢台 054000)
苹果作为一种深受大众喜爱的水果,在我国种植面积广泛,但由于苹果生长位置较高,需要进行登高采摘,劳动强度较大[1-2]。随着城镇化进程的加剧,大量的农村劳动力涌入城镇就业,从事农业生产的人口规模逐渐减小[3],故缺乏劳动力和高强度的苹果采摘劳动形成了一对鲜明的矛盾,而实现苹果采摘自动化成为解决该矛盾的有效手段。目前,苹果采摘系统广泛采用图像识别技术。传统的图像识别需要将图像进行灰度化处理和图像分割,进而确定苹果位置[4-5];但不同天气的光照强度直接影响着图像分割精度,故传统的图像识别技术不能有效适应所有地形和天气情况。本系统基于改进型深度学习网络,具有很强的环境适应能力[6-7],同时改进型深度学习网络可以有效降低学习样本量,提高识别经度;采用单目视觉系统和激光测距器可实现苹果定位,采用双反馈系统对采摘机械臂进行控制。测试结果表明,系统具有良好的图像识别精度和采摘机械手控制精度。
为了实现苹果的自动化采摘,基于深度学习网络设计了苹果自动采摘系统,如图1所示。其中,电瓶为整个系统供电,中央控制器完成行走系控制、机械臂控制和深度图像识别与目标苹果定位。中央控制器通过后轮驱动器和前轮驱动器控制后驱动轮和前驱动轮,实现采摘系统的移动;机械臂通过水平舵机实现水平转动,大臂舵机和小臂舵机实现采摘机械臂的关节运动,小臂伸长气缸实现采摘终端的前后移动,采摘终端配有采摘器、摄像头和激光测距器。
工作时,摄像头采集苹果图像,在中央控制器完成深度学习,识别图像中苹果区域;激光测距器完成距离测定,进而实现目标苹果图像坐标向空间坐标的转换;根据视觉定位系统得到的目标苹果空间坐标位置,中央控制器调整机械臂舵机与气缸伸长量,完成采摘终端向目标苹果的转移,实现采摘;中央控制器控制行走底盘,向下一处采摘地点转移。
图1 系统组成Fig.1 Structure of system
CCD摄像头采集图像是进行整个分析过程的基础,但由于光照强度及天气等原因会对采集到的图像造成干扰,因此需要对CCD摄像头采集的图像进行滤波处理,降低自然环境因素对于图像的影响。
CCD摄像头采集到的苹果枝头的图像如图2(a)所示。由于光照的影响,在苹果叶片边缘出现模糊,同时苹果的果实上出现叶片影子的暗区域以及阳光直射造成的明亮区域。采用目前的主流降噪方法(即均值滤波、高斯滤波和中值滤波)对图像进行预处理,均值滤波[8]结果如图2(b)所示。由图2(b)可知:整张图片明显发亮,对于苹果果实上的暗区域和亮区域调整效果明显,但整张图像趋于模糊。高斯滤波[9]结果如图2(c)所示。由图2(c)可知:叶片边界趋于清晰,果实整体色调趋于统一。中值滤波[10]结果如图2(d)所示。由图2(d)可知:叶片边缘出现模糊情况,同时果实存在色调、亮度不统一问题。因此,选用高斯滤波作为图像预处理算法。
图2 图像预处理Fig.2 The preprocessing for image
传统的图像识别技术是将图像灰度化处理后进行图像分割,进而得到图像的边界信息,整个过程采用灰度化算法、二值化算法和边界算法固定,对环境变化的适应能力差;深度学习的图像识别技术是在全彩色状态下对图像进行分析,具有自主识别的特点,深度学习算法具有适应能力强、准确度高的特点。因此,本系统在经典VGG16深度学习网络[11-12]上进行优化,以提高识别速度和精度。
传统卷积深度学习网络分为卷积层、池化层、全连接层等。其中,卷积层作用为输入图像和卷积核进行卷积运算得到的结果,在池化层完成图像降维,实现特征的提取;卷积层、池化层进行多次重复设置,最终实现图像特征提取,在全连接层特征图像得到整合,进而完成图像特征提取[13-14]。
建立整个网络的损失函数,用来表征预测值与实际值的差距。输入图像从输入层进入网络,经历多个卷积层和池化层后,在全连接层实现图像特征提取,同时计算损失函数,完成正向学习过程;利用损失函数对每个卷积层参量进行梯度计算,得到结果用于优化卷积层参量,完成逆向学习。
目前,主流的深度学习网络为VGG16网络,其网络特点为卷积层和池化层结构单一,由16层结构相同的卷积层和池化层组成。其中,卷积层中卷积核大小为3×3,填充量为1;池化层窗口为3×3,步幅为2。由于将图像进行统一卷积处理,造成学习周期较长,因此在其基础上进行改进,改进后深度学习网络结构如图3所示。由图3可知:在VGG16最后一层卷积池化层后,增加区域推荐网络;将区域推荐学习网络学习得到的特征图和VGG16得到的卷积特征图,在Roi Pooling池化层进行融合,完成特征图像大小的格式统一,而后进入全连接层,完成特征图像的边界框预测和类别预测。整个优化学习网络的核心为区域推荐学习网络和Roi Pooling池化层。
图3 基于VGG16的深度学习优化网络Fig.3 The deep learning optimization network based on VGG16
区域推荐网络的卷积层填充数为1,通道数为256;以每个像素为中心,建立大小不同的方形区域(即建立锚框),每个锚框具有256个通道。建立背景分类器,原理如下:①计算每个锚框预测概率p,按照预计概率p由大到小将此类锚框进行排列,得到一次向量L;②将预测概率p最大的锚框与其他本类锚框进行交并比计算,将大于阈值的非基准锚框剔除;③按照步骤②方法,将预测概率p第2大的锚框与本类锚框进行交并比计算,将大于阈值的非基准锚框剔除;④重复步骤②和步骤③,直到向量L中的所有锚框的交并比均小于阈值为止,剩下的锚框即为预测锚框。区域推荐网络的损失函数为
(1)
VGG16学习网络得到的卷积特征图像,经过区域推荐网络后大小发生变化;Roi Pooling池化层的作用为实现不同大小的图像融合,即完成VGG16学习网络特征图像并和经过区域推荐网络的特征图像的融合。Roi Pooling池化层原理如下:假定输入前图像大小为16×16,输出标准大小为8×8,过程为将16×16平均分为2×2的8个区域,每个区域取最大特征值,进而构成大小为8×8的标准图像。
对改进型学习算法和VGG16学习网络进行比较,测试两种深度学习网络达到稳定预测值所需要的样本容量和稳定预测值精度,采用AP值来表征稳定预测精度,即
(2)
其中,P为预测准确度;R为预测样本召回度。
改进型学习算法和VGG16学习网络稳定预测值及所需样本量如图4所示。
图4 改进型学习算法性能对比Fig.4 The performance comparison for improved learning algorithm
其中,VGG16网络达到的稳定准确率AP值为0.855,稳定所需样本量为13;改进型学习网络能达到的稳定准确率为0.92,稳定所需样本量为11。结果表明:改进型学习网络在学习速度和准确率上均优于VGG16网络。
摄像头采集的图像通过改进型深度学习网络,得到苹果的特征边界。采用图像定位的方法,根据图像中苹果位置,计算实际环境中苹果的位置坐标,进而控制采摘机械臂,完成苹果的采摘。其中,苹果定位系统采用单目图像定位系统配合激光测距方案[15],采摘机械臂采用双反馈控制系统。
苹果视觉定位系统如图5所示。图5中,苹果空间坐标P(X,Y,Z)在成像平面内,已知整个图像的中心坐标为O(u0,v0),P点在成像平面的投影点为P1(u,v),则投影平面内P1点到O点的坐标增量为Δu和Δv,则
(3)
其中,du和dv为水平方向和竖直方向像素点间距对应的实际距离(mm/pixel)。
图5 苹果视觉定位Fig.5 The visual positioning for apple
由相似三角关系可知,苹果空间坐标P的水平坐标和竖直坐标与成像平面水平坐标和竖直坐标增量的关系,即
(4)
其中,f为摄像头焦距;Z为摄像头镜头到苹果位置之间的距离,由激光测距仪检测得到。
通过视觉系统计算目标苹果的空间位置坐标P,机器人控制器比对目标苹果位置坐标和采摘终端位置坐标,通过逆运动学方程调整机械臂各关节舵机和小臂伸长气缸,完成机械臂采摘机构向苹果移动,进而实现采摘。
机械臂控制系统如图6所示。其中,上控制闭环实现机械臂采摘控制、机器人动作控制器、计算机械臂逆运动学方程、机器人各关节舵机调整,伸长气缸调整、进而控制采摘机械臂完成采摘作业;下控制闭环CCD摄像头采集苹果图像,通过改进型深度学习算法提取苹果特征信息,进而确定苹果在成像平面上的坐标增量,通过机器视觉控制器实现图像位置向空间位置坐标的转化。整个系统工作过程为CCD摄像头采集苹果图像,通过深度学习算法提取苹果图像特征,输入信号在机器视觉控制器内进行分析,将苹果图像坐标转化为苹果空间距坐标;采摘端坐标和目标苹果坐标在机器人控制器进行比对,通过机器人逆运动学方程调整机器人关节舵机和小臂气缸,改变采摘终端位置,直到完成苹果的采摘。
图6 采摘机械臂控制系统Fig.6 The control system for picking manipulator
为了实现苹果采摘的自动化,基于深度学习网络设计了苹果图像自动识别技术;采用单目视觉系统配合测距仪的方案,实现了图像坐标向空间坐标的转移,通过控制机械臂采摘终端,最终实现了机械臂向苹果移动,完成采摘任务。本系统两大关键环节为图像识别和机械臂控制,现对二者进行测试,结果如图7所示。
对深度学习网络苹果识别精度进行测试,进行8组试验,对比图像中苹果个数与识别个数,结果如图7(a)中实线及偏差棒所示。图像中苹果个数区间为20~27,偏差分布区间为0~2,在第6组和第7组时出现最大偏差;相对误差分布如图7(a)中虚线所示,分布区间为0~7.8%。测试结果表明,深度学习网络具有较高的识别精度。
对采摘机械手进行动作精度测试,测试方法为指定采摘终端移动距离,控制机械手移动,得到实际移动距离,计算二者之间的误差,测试结果如图7(b)所示。其中,数据点为实际移动距离,偏差棒为实际移动距离和设置距离之间的偏差,实际移动距离分布区间为[895mm, 1414mm],偏差分布区间为[-10mm, 12mm]。测试结果表明:机械手具有较高的控制精度,偏差分布区间可以满足苹果采摘要求。
图7 系统测试Fig.7 The test for system
为了实现苹果采摘的自动化,基于改进型深度学习网络设计了视觉采摘系统。首先,对摄像头采集的苹果图像进行高斯滤波处理;其次,在VGG16深度学习网络基础上增加区域推荐网络,将区域推荐学习网络学习得到的特征图和VGG16得到的卷积特征图在Roi Pooling池化层进行融合,完成图片大小的格式统一。测试结果表明:改进型网络在所需样本量为11,小于VGG16网络所需的13个样本量,同时改进型学习网络能达到的稳定准确率为0.92,优于VGG16深度学习网络的0.855;基于单目视觉系统和激光测距器,可实现目标苹果由图像坐标向空间坐标的转化。测试结果表明:苹果识别相对误差小于7.8%,机械臂实际移动距离分布区间为[895mm,1414mm],偏差分布区间为[-10mm, 12mm],表明机械臂具有较高的控制精度。