APP下载

基于双目立体视觉的重叠柑橘空间定位

2020-03-13刘妤刘洒杨长辉王恺谢铌

中国农业科技导报 2020年9期
关键词:三维空间双目像素点

刘妤, 刘洒, 杨长辉,2, 王恺, 谢铌

(1.重庆理工大学机械工程学院, 重庆 400054; 2.西安交通大学机械工程学院, 西安 710049)

柑橘是我国广泛种植的水果之一,同时也是世界贸易量较大的一种水果。目前,柑橘采摘主要以人工为主,费时、费力且效率不高。采摘机器人可以有效提高采摘效率,是农业机械发展的必然趋势,但是现有的机器人采摘成功率并不理想,其主要原因之一是定位的准确性问题,因此,提高定位精度是采摘机器人走向应用需解决的问题之一。

目前,针对果蔬目标的三维空间定位方法主要有以下几种:①利用单个摄像机定位目标,这种方法容易因特征点提取不准确而增大定位误差。如Baeten等[1]利用单个相机焦距、图像平面内像素大小及苹果目标中心之间的关系确定相机到目标果实的距离;Henten等[2]应用单相机移动的方法实现了对温室内黄瓜的定位,结果表明,当距离小于600 mm时,定位误差为7.5 mm。②利用激光测距传感器定位目标,这种方法对光学系统要求较高,成本也较高。如Bulanon等[3]利用激光测距传感器完成了对苹果目标的三维定位;Yin等[4]应用激光测距仪获取了成熟番茄的深度信息,平均测距误差为1.06 mm;Jiménez等[5]基于AR-4000-LIR激光测距仪研究了树上柑橘的定位,实测定位精度为10 mm。③利用三维相机定位目标,这种方法适合室内目标空间定位,户外定位效果较差,且成本昂贵。如Silwal等[6]利用三维相机采集苹果图像,并将该三维图像映射为二维彩色图像,进而获得果实目标的空间位置信息;王滨等[7]提出了一种基于Kinect传感器的猕猴桃空间坐标获取方法,定位误差小于2 mm。④利用双目立体视觉技术定位果实目标,当被测目标与摄像机保持在一定距离范围内时,定位误差较小,且成本较低,但目前多数研究未涉及户外环境下重叠成簇果实目标的三维空间定位。如Tarrío等[8]结合双目立体视觉及结构光的三维视觉系统研究了成簇草莓的识别和定位方法,定位精度为厘米级;蒋焕煜等[9]结合双目立体视觉技术实现了成熟番茄的定位,结果表明,当工作距离小于650 mm时,定位误差为(-7~5)mm,当工作距离小于1 050 mm时,定位误差为(±10)mm;仲琴等[10]提取了番茄轮廓,并利用双目视觉对番茄的形心进行了立体匹配和定位;Li等[11]采用CMOS视觉传感器构建了应用于菠萝定位的双目立体视觉系统,定位精度为2~3 cm。

综合分析,目前针对果蔬目标的空间定位研究多数只适用于室内结构光环境,而少数针对户外环境果实三维空间定位的研究中多数限于单果目标定位,较少涉及重叠果蔬空间定位且定位精度有待提高。因此,本文基于双目立体视觉,以户外重叠柑橘为对象,提出了一种三维空间定位方法,以期实现重叠柑橘的准确空间定位。

1 材料与方法

1.1 双目立体视觉系统搭建

重叠柑橘原始图像通过自主研发的采摘机器人视觉平台获取。该平台主要由双目相机(Bumblebee2)、1394数据采集卡、计算机等组成,其中,计算机操作系统采用Win7,图像处理软件采用OpenCV3.10。本文所涉及的重叠柑橘图像均是2018年12月在学校的柑橘种植基地通过视觉平台[12]采集。

1.2 双目相机标定

为消除重叠柑橘图像的畸变,首先运用张正友标定法[13]对双目相机进行标定,以获取双目相机的相关参数。图1所示,利用12×10棋盘格标定板,标定过程如下:①固定双目相机,在一定范围内平移、旋转棋盘格标定板,采集36组处于不同方位的棋盘格双目左右图像;②依次对36组棋盘格图像进行角点检测,得到相应的单应性矩阵;③求解相机的内、外参数;④求解相机的畸变系数;⑤对初步得到的标定结果优化求精。

图1 双目相机棋盘格图像

考虑到双目相机的安装误差会导致左、右相机的成像平面不共面,从而增大定位误差,因此,为提高定位精度,对双目相机进行立体标定,如图2所示。

图2 双目相机立体标定

用旋转矩阵R和平移矩阵T描述双目左、右相机坐标系之间及其与世界坐标系的相对位置关系(图3)。设点P在世界坐标系下的坐标为Pw,则点P在左、右相机坐标系下的坐标Pl、Pr如下。

图3 双目相机空间位置关系

(1)

Pr=RPl+T

(2)

式中,Rl、Tl为左相机的旋转矩阵和平移向量,Rr、Tr为右相机的旋转矩阵和平移向量,这四个参数在前述相机标定中均可得到。

联立式(1)(2)可得式(3)。

(3)

设(uj,vj)为实测得到的角点坐标,(uc,vc)为标定得到的角点坐标,按式(4)所示,通过分析实测与标定所得到的角点坐标差异完成重投影误差分析。

(4)

式中,N为试验次数,本文N=36。

1.3 重叠柑橘轮廓曲率分析

结合Lab和HSV颜色空间,基于颜色特征对柑橘区域进行提取。

柑橘属类球体,在重叠柑橘区域的边缘交界处,曲率会发生突变,而树叶也呈外凸形状,被树叶遮挡形成的边缘处同样会发生曲率突变,利用这一特征可实现柑橘重叠区域边缘的分割。

柑橘轮廓各像素点的曲率[12]Ki如式(5)所示。

(5)

式中,n为柑橘轮廓的像素点个数;lth为轮廓的长度;h为采样间隔(本文取为5);θi为当前采样点到前一采样点连线与x轴的夹角;θi+1为后一采样点到当前采样点连线与x轴的夹角,可按下式计算[13]。

(6)

式中,(xi,yi)、(xi+1,yi+1)分别为前、后采样点的坐标。

1.4 重叠柑橘中心点匹配及三维空间定位

基于极线约束和图像相似度,对双目相机左右图像重叠柑橘中心点进行匹配。具体步骤如下:①对双目左右图像进行柑橘图像的分割与识别,得到柑橘中心点;②以柑橘中心点为圆心,以拟合椭圆长半轴扩充0.2倍后的长度为半径画圆,并将该区域图像从原始图像中分割出来,作为待匹配区域;③当待匹配的双目图像中柑橘中心点的行像素相差6个像素以内时,运用SURF算法、SSD算法及RANSAC算法进行特征点的检测和匹配;④定义匹配的特征点对数目为双目左右柑橘图像的相似度,当两幅图像相似度大于25时,对重叠柑橘中心点进行匹配。

按照上述步骤完成所有柑橘中心点匹配,再基于双目立体视觉视差原理获取重叠柑橘目标的三维空间坐标信息。图4所示为双目相机定位原理示意图,在平行双目立体视觉[14]中,假设两摄像机内部参数完全相同,世界坐标系与左摄像机的摄像机坐标系重合,设空间点P(X,Y,Z)在摄像机上成像的图像坐标分别为Pl=(ul,vl)、Pr=(ur,vr),两摄像机光心距离OlOr=d,焦距为f,则根据三角形相似关系可得空间点坐标如下。

图4 双目相机定位原理

(7)

根据视差原理,由式(7)可计算出重叠柑橘中心的深度值及三维空间坐标,其中Z坐标值即为测量的柑橘中心深度,沿着双目相机光轴方向,根据深度值大小,由近及远对重叠的柑橘进行排序。

1.5 户外定位实验

由式(7)可知,柑橘中心三维空间坐标X、Y、Z均可由图像坐标ul和ur计算得到。考虑到自然环境中X、Y坐标值不易测量,而Z坐标值相对容易测量,因此,本文只对重叠柑橘中心三维空间坐标(X,Y,Z)中的Z坐标进行定位实验。具体步骤如下:①在重叠柑橘中心处分别标上对应的标签;②启动双目立体视觉系统,通过图像处理获取重叠柑橘中心的三维空间坐标Pi(Xi,Yi,Zi),并统计对应柑橘的Zi坐标;③保持激光测距仪前端面与双目相机镜面共面,测量柑橘目标表面处的深度值,记为dz;④用游标卡尺测量每个柑橘的横径Dc、纵径Dl,并计算柑橘的平均半径r。

按照上述步骤依次对20组重叠柑橘进行测量,实际柑橘中心处的深度值da=dz+r,其中r=(Dc+Dl)/4。以人工测量获得的柑橘中心值为标准值,则本文方法测得的柑橘中心处深度误差值de=Zi-da,平均误差eave计算公式如下。

(8)

2 结果与分析

2.1 双目相机标定结果分析

采用张正友标定法得到的双目相机内外参数、畸变系数,而经双目立体标定得到的旋转矩阵R和平移矩阵T,如表1所示。利用相关参数可以对双目相机进行畸变校正和立体校正。

表1 双目相机标定结果

左右相机的重投影误差分析结果如图5所示,由式(4)计算得到左、右相机在x、y两个方向上的误差分别为0.297 43和0.250 99个像素、0.302 86和0.252 88个像素,均在允许的误差范围之内,满足精度要求。根据立体标定结果,最终得到两相机的焦距f为1 341个像素,光心在X轴方向上的距离值d为121.903 mm,接近双目相机基线长度120 mm,这表明立体标定的结果是正确的。

图5 双目相机重投影误差分析

2.2 重叠柑橘轮廓分析

2.2.1双目相机标定 从图6可以看出,双目左右柑橘图像经立体校正后行像素基本对齐,表明双目相机标定效果较好。

图6 双目左右图像立体校正

2.2.2柑橘轮廓分析 从图7可以看出,经阈值分割且滤波去噪后,柑橘区域提取效果较好。以双目右图像为例,经高斯平滑后的柑橘轮廓清晰,由式(5)所求得的轮廓像素点曲率,如图8所示。

2.2.3柑橘轮廓像素点曲率分析 正常的柑橘轮廓像素点曲率范围为[-0.2,0.2],超出该范围的即为异常轮廓像素点,即柑橘重叠或被树叶遮挡时边缘交叠处的轮廓像素点。将图8中曲率异常的像素点映射到图7所示轮廓上,如图9所示,轮廓曲率异常的像素点位于曲率变化较大的像素点位置。沿轮廓序列逆时针方向,依次连接相邻两个异常像素点,获得轮廓线段。

图7 柑橘区域提取

2.2.4柑橘轮廓线段距离分析 通常情况下,柑橘轮廓是一个外凸的曲线,轮廓上任意两像素点构成的线段一定会在轮廓内部。而柑橘被树叶遮挡所产生的轮廓片段一般呈现内凹形状,该段轮廓上任意两像素点构成的线段大部分会在封闭的柑橘轮廓外面。为了通过寻找异常线段确定因树叶遮挡而产生的轮廓,对图8中线段上的像素点到对应轮廓上的距离dmin进行分析,并对dmin的符号做如下约定:当像素点在轮廓内时,dmin取正值;当像素点在轮廓外时,dmin取负值;当像素点在轮廓上时,dmin取零。结合图9中线段(蓝色线条)上的像素点与对应封闭轮廓(黑色曲线)的位置关系,设每条线段上dmin≥0的像素点个数为nm,dmin<0的像素点个数为nl,对应的轮廓片段上的像素点个数为nsum,每个像素点到相应线段的距离为di,整段轮廓到线段上的平均距离为Dave,其计算如式(9)所示。

图8 轮廓线段确定

图9 柑橘轮廓筛选

(9)

2.2.5重叠柑橘轮廓确定 分别统计图8中12条线段上的像素点个数nm、nl以及对应的Dave,结果如表2所示。

表2 像素点统计

当满足式(10)或(11)时,该线段为正常线段,其对应的轮廓片段为柑橘轮廓,否则不是柑橘轮廓。

(10)

Dave≥T3

式中,Dave用于检测轮廓片段的平直性。

当Dave≥5.5时,该轮廓片段弯曲度接近完整柑橘轮廓,因此,阈值T3的取值为5.5;当Dave<1.2时,该轮廓片段过于平直,不符合柑橘轮廓的形状特征,不是柑橘轮廓,因此,阈值T2的取值为1.2;当1.2≤Dave<5.5时,该轮廓片段是否为柑橘轮廓需要进一步判断,此时,若线段中像素点个数nm占像素点总数nm+nl的比例T1不小于45%,则该轮廓片段为柑橘轮廓,反之则是因树叶遮挡而产生的非柑橘轮廓,因此,阈值T1的取值为45%。

经分析,正常的线段有A1、B1、B2、B3、D1、D4、D5、D8。在两正常线段的交点处分割重叠柑橘轮廓,则正常线段对应的轮廓片段为柑橘轮廓(图9中绿色曲线),其余的轮廓片段则不是柑橘轮廓(图9中红色曲线)。

在分割后的轮廓像素点集中剔除非柑橘轮廓(图9中红色曲线)像素点,由于粗略分割后的柑橘轮廓是不完整的,为了还原目标果实,本文基于最小二乘法的椭圆拟合插值算法[15]重构柑橘轮廓,并将椭圆中心作为柑橘的中心点,结果如图10所示。

图10 重叠柑橘轮廓重建及中心点获取

2.3 重叠柑橘中心点匹配及三维空间定位结果

重叠柑橘中心点匹配过程如图11所示,排序结果如图12所示,对应的柑橘目标三维空间坐标如表3所示。

表3 重叠柑橘中心三维空间坐标

图11 双目左右图像重叠柑橘中心点匹配

对于存在遮挡关系的两个柑橘A、B,若A遮挡B,即柑橘A在柑橘B的前面(用“A→B”表示),则柑橘A的中心深度值小于柑橘B。按照此判断标准,对图12中存在遮挡关系的重叠柑橘1/2/5,3/6,7/8进行判断,则有1→2、1→5、2→5,3→6,7→8。

图12 重叠柑橘排序

2.4 户外定位实验验证结果

户外定位实验测得的重叠柑橘目标Zi坐标、表面深度值dz、横径Dc、纵径Dl、中心深度值da和中心深度误差de如表5所示,柑橘中心定位误差均在9 mm以内。而本文方法和人工测量的重叠柑橘中心深度数据对比如图13所示,依据式(8),计算得本文方法的平均测量误差为6.38 mm,在允许的误差范围之内,满足户外重叠柑橘定位的精度要求。

图13 重叠柑橘中心深度测量对比

表5 重叠柑橘相关数据统计

3 讨论

准确获取采摘目标的三维空间坐标是釆摘机器人成功釆摘的重要前提。现有果蔬目标三维空间定位研究多数是针对特定环境,难以应用于户外自然环境[2,6-10],虽然已有研究户外果蔬目标的三维空间定位[1,3-5,11],但仅限于没有重叠和遮挡的情况,没有考虑户外果蔬重叠成簇、被树叶遮挡等实际生长状态,实用性不强。而且,常用的颜色空间模型中,RGB颜色模型对光线变化较为敏感,而Lab和HSV颜色模型与设备无关,能够在一定程度上消除光线变化的影响。为此,本文依托自主搭建的采摘机器人双目立体视觉系统,重点研究了自然环境中重叠成熟柑橘的三维空间定位,结合Lab和HSV颜色空间,基于颜色特征对柑橘区域进行提取,在此基础上提出了一种基于极线约束与图像相似度的重叠柑橘中心深度测量方法,确定了重叠柑橘的遮挡关系,并根据视差原理完成了重叠柑橘的三维空间定位。结果表明,本文方法的定位误差为6.38 mm,可满足柑橘采摘机器人户外采摘作业的定位精度需求。

本文方法可推广应用于户外其他类球形果蔬的三维空间定位。但是,果蔬采摘机器人的作业环境较为复杂,不可避免地存在阴/晴天自然光照变化、图像采集顺/逆光、枝叶等遮挡物在果蔬表面形成阴影等情况,因此,后续主要考虑从以下方面着手提高定位精度:①在视觉系统结构优化方面,借鉴医学上的无影灯原理,在视觉系统中加入主动光源和遮光装置,以补偿自然条件差异对视觉系统的影响;②在定位算法智能优化方面,将深度学习理论[16]应用于视觉系统定位算法,以提高图像分析处理的精度和效率。

猜你喜欢

三维空间双目像素点
采用双目视觉和自适应Kalman滤波的作物行识别与跟踪
霜 降 苏美玲
基于双目视觉的机器人定位与导航算法
图像二值化处理硬件加速引擎的设计
前庭刺激对虚拟环境三维空间定向的影响及与空间能力的相关关系
基于局部相似性的特征匹配筛选算法
机械手的双目视觉定位抓取研究
基于像素点筛选的舰船湍流尾迹检测算法
红领巾环保走进三维空间——“6·5世界环境日”活动方案
超时空转换(时空启蒙篇)