孟颍辉,王洁琼,田二林,于 源
(郑州轻工业大学 计算机与通信工程学院,郑州 450002)
德国、荷兰和日本等发达国家研究开发了多种类型的果蔬自动采摘机器人,如苹果、黄瓜和樱桃等自动收获机器人,但在果实识别率、采摘成功率等方面还存在尚待解决的问题。视觉系统是采摘机器人的核心部分,要实现采摘机器人的自主导定位和导航,必须设计具有智能化和高效率的机器视觉系统。在视觉系统对果树或者果实进行识别时,首先要对果实或者果实的轮廓特征进行提取,如将图像边缘检测技术引入到采摘机器人视觉系统的设计上,对提高采摘机器人的视觉导航和定位的效率和精度具有重要意义。
采摘机器人视觉系统是机器人最关键的部分之一,其性能的好坏直接影响定位导航功能的发挥。图像边缘检测技术可以对果树或者果实的特征轮廓进行提取,提取后可以对其中心位置坐标就行求解,从而为采摘机器人的定位提供数据信息;采摘机器人控制系统依据这些信息对采摘机器人的行走和作业姿态进行调整,完成作业过程,其流程如图1所示。
图1 果实识别定位流程图
边缘检测算法主要根据目标的基本特征提取出目标物和图像背景之间的边界线,即灰度值发生较大变化的区域,是图像特征不连续的区域,除了灰度值发生变化,还可以是颜色、纹理结构等的突变,还可以是不同区域之间的界限。图像边缘检测技术可以用来捕捉目标物体,区分目标物和背景,还可以区分不同的区域。在采摘机器人视觉系统中,可以通过对果实边缘或者果树边缘的提取,求得边缘中心,然后对果实和果树进行定位,实现自主定位和导航。按照图像灰度来区分,物体边缘可以分为3种类型:阶阶跃型、房顶型和凸圆型,如图2所示。
图2 边缘特征类型
在求边缘时一般需要将边缘进行平滑处理,然后利用求导来实现。在计算边缘点时,以一维信号为例,假设高斯函数平滑后信号为f(x),将其在x=a处进行泰勒展开可得
(1)
其中,x=a的1和2阶导数分别是f(a)与f′(a)。对于一维信号,当f′(a)=0、f″(a)>0时,可以用局部极小值点来表示边缘点;当f′(a)=0、f′(a)<0时,可以用局部极大值点来表示边缘点;当f″(a-)f″(a+)<0时,可以用拐点来表示边缘点。边缘提取一般分为4个步骤,如图3所示。
图3 边缘检测流程
边缘检测主要由滤波、增强、检测和定位4个步骤组成,通过这4个步骤可以得到较为准确的边缘。
为了提高边缘检测的准确性,可以采用2阶求导的方式,而拉普拉斯算法是常用的2阶求导方法。图像f(x)的拉普拉斯算子公式为
(2)
使用差分方程得到对x和y方向上的2阶偏导数近似为
(3)
这一近似式是以点f[i,j+1]为中心的,用j-1替换j得到
(4)
它是以点[i,j]为中心的2阶偏导数的理想近似式,同理有
(5)
合并式(4)和式(5)得到拉普拉斯算子的模板,即
(6)
有时候希望邻域中心点具有更大的权值,可以采用近似拉普拉斯算子,即
(7)
当拉普拉斯算子输出出现过零点时就表明有边缘存在,采摘机器人视觉系统在检测到边缘后便可以对目标物的中心坐标进行求解,然后根据坐标信息进行定位和导航。
采摘机器人视觉系统在进行导航和定位时,主要是依据目标物的坐标信息,需通过采集图像的坐标,然后与大地坐标的进行转换得到,而为了得到图像坐标信息,需对待采摘目标物的特征进行特征提取。本次将其使用在采摘机器人视觉系统中进行验证。
如图4所示,在采摘机器人开始作业之前,首先要对果树进行位置定位,以果树的边缘提取为例,对基于边缘检测技术的特征提取方法进行验证,通过边缘提取得到了如图5所示的提取结果。
图4 待采摘果树示意图
图5 边缘提取结果
根据边缘提取结果,可以对待采摘目标果树的边缘位置进行确定,然后通过求中心来得到果树的位置坐标。通过对多颗待采摘果树的测试,得到了如表1所示的坐标位置信息。
通过果树边缘点和位置的确定,利用求中心的方法可以求得果树的平面位置坐标,然后将坐标进行转换后,便可以直接识别的坐标位置信息。如表2所示,为了验证果树位置坐标输出数值的可靠性,将实际测得的坐标和通过边缘检测得到的位置坐标的值进行了对比,结果表明:通过边缘检测技术计算得到的坐标值和实测值相差不大,可作为采摘机器人视觉系统定位导航的数据参考。
表1 果树位置图像原始和转换坐标信息
表2 果实实时定位信息
续表2 m
为了提高采摘机器人视觉系统的定位导航效率和精度,将图像边缘检测技术引入到了导航系统的设计上,通过边缘检测提取果树或者果实的位置信息,然后计算其中心坐标,确定具体的位置坐标,最后转换为采摘机器人可以直接识别的坐标信息。为了验证方案的可行性,对系统进行了测试,结果表明:采用基于图像边缘检测技术的视觉系统可成功地输出果树的位置信息,将其和实测的位置信息进行了对比,其误差较小、可靠性较高,对于采摘机器人定位导航系统性能的提升具有重要的意义。