APP下载

双目视觉自动检测香蕉植株假茎宽度

2021-07-19王伟李修华史红栩李民赞温标堂

关键词:视差双目级联

王伟,李修华*,2,史红栩,李民赞,温标堂

(1.广西大学 电气工程学院,广西 南宁 530004;2.广西甘蔗生物学重点实验室,广西 南宁 530004;3.中国农业大学 现代精细农业系统集成研究教育部重点实验室,北京 100083;4.广西捷佳润科技有限公司,广西 南宁 530001)

0 引言

广西是我国重要的香蕉主产地,目前广西香蕉种植面积和鲜果产量均位居全国第二位,香蕉产量约占全国总产量的22.0 %[1]。成年香蕉植株由根球茎、假茎、叶、果穗等组成,香蕉植株假茎的茎宽是评价香蕉植株健康和预测香蕉产量的一项重要指标[2]。准确快速地获取香蕉的茎宽对评价香蕉长势、科学指导田间管理具有重要意义。

双目视觉技术从20世纪90年代开始逐渐应用到农业领域,尤其是在果实采摘、辅助导航等方面。LING等[3]研制出一种基于双目视觉传感器的双臂协作番茄收获机器人。GE等[4]提出了一种基于双目立体视觉和高斯混合模型的自然环境中西兰花幼苗识别方法。XIONG等[5]组装了一组微型双目照相机和一个独立设计的光谱仪,实现了自动测量光谱仪到小麦冠层的距离。WANG等[6]利用双目电荷耦合器件(charge coupled device, CCD)彩色相机获取的荔枝彩色图像提出了一种识别和匹配成熟的荔枝果实的方法。JI等[7]针对收割机器人机械手采摘过程中苹果分支障碍物定位的问题,为获取苹果分支障碍物的三维信息,提出了苹果分支障碍物的双目立体视觉定位方法。罗陆锋等[8-9]提出了一种基于双目立体视觉的葡萄采摘防碰空间包围体求解与定位的方法。陈燕等[10]利用双目相机获取荔枝串的空间位置信息,实现采摘机器人对荔枝串的精准定位。沈晓晨等[11]基于双目立体视觉对棉株上的成熟棉花进行三维空间上的识别定位是可行的。何东健等[12]设计了一种基于双目视觉的自动菠萝采收机。

目前双目视觉传感器的成本非常低廉,硬件技术稳定成熟,香蕉植株高大、假茎茎干直径较大,很适合结合双目视觉技术来进行高效低成本的自动测量。因此,本研究采用低成本双目视觉传感器对香蕉假茎进行RGB图像的获取,并通过级联分类器对视差图中的香蕉植株假茎进行识别,从而实现香蕉植株假茎的自动检测。

1 材料与方法

1.1 图像获取

香蕉假茎双目图像的采集地点位于广西扶绥县的广西大学亚热带农科新城内的一处香蕉种植园。实验日期为2019年6月23日和6月27日,香蕉正处于孕蕾期。实验设备主要包括双目相机(LenaCV双目视觉相机,武汉莱娜机器视觉科技有限公司)、移动简易平台及Lenovo 80WB笔记本电脑(Intel-i5CPU、8GB内存、NVIDIA GeForce GTX 10500显卡)。

实验随机选取了100株香蕉植株进行不同距离下的双目图像获取,拍摄时间为8:00 am到6:00 pm,天气状况包含阴、多云、晴朗。拍摄时,传感器被固定放置在一可移动平台上,并通过USB口与笔记本电脑相连来获取及存储图像。传感器在拍摄时保持光轴水平,拍摄高度为垂直距离地面1.0 m处,对每株香蕉植株均选取了4个不同的距离(0.9、1.2、1.6、1.9 m)来采集图像,共得到400对视差图。另外,通过数显游标卡尺对每株被测香蕉假茎1.0 m高度处的茎宽进行了手动测量。实验场景如图1所示,双目相机拍摄香蕉植株假茎的左右图像如图2所示。

图1 实验场景示意图

(a)左视图

1.2 图像预处理

1.2.1 双目视觉原理

本文的测距原理基于平行双目视觉模型,其示意图如图3所示。图3为光心所在的平面,Cl和Cr分别为左右相机的光心且相距为B,焦距为f;P点为需要测量的目标点;Pl和Pr是P点在左右图像上的成像点,其在图像上的坐标分别用(Xl,Yl)、(Xr,Yr)表示。通过三角形PlPrP和三角形ClCrP相似的原理可以得到P点与摄像机之间的距离Z的值[13]。

图3 平行双目视觉原理图

(1)

根据小孔成像原理,当摄像机坐标系与实际坐标系相重合时,有

(2)

(3)

通过式(1)至式(3)就可确定P点的三维坐标。本研究采用的LenaCV双目视觉相机的中心距B为100 mm。

1.2.2 视差图的生成

1)需要进一步增加农民收入,将休闲农业发展成乡村旅游,从而促使乡村文化产业形成一个相对成熟的产业链。促使农村经济发展速度加快,为农民增加就业渠道,将农村闲散的劳动力进行聚集,从而有效提高经济效益。当下,不同地区的农业生产园均按照“产加销、游购娱”的形式发展,创立科技种植、生态养殖、农产品加工销售、田园旅游观光餐饮服务为一体的旅游形式,促使整个农村经济文化得到发展,提高农民经济收入,为农民增加更多的就业机会。

要计算香蕉假茎宽度,必须先匹配得到对象的视差图。视差图的生成主要包括双目标定、立体校正、立体匹配这三个步骤。

① 双目标定采用了基于MATLAB工具箱的标定方法[14]。首先需要通过自制标定板、图像采集、配置MATLAB标定箱、单目标定等步骤分别得到左右两个相机的内部参数(焦距、图像中心、畸变系数等),然后再利用其标定结果对两个相机同时进行双目标定,得到双目相机的外部参数(旋转矩阵和平移矩阵),最后将得到的标定参数导入到OpenCV中供后续使用。

② 立体校正的目的是把实际中非共面行对准的两幅图像校正成共面行对准,将实际的双目系统校正为理想的双目系统,从而降低立体匹配的复杂度,提高立体匹配的准确度[15]。本文采用了OpenCV平台的stereoRectify()函数进行立体校正得到旋转矩阵R、投影矩阵P及重投影矩阵Q,再使用initUndistortRectifyMap()函数得出校准映射参数,最后使用remap()来校准输入的左右图像[16]。

③ 采用双目视觉的核心就是匹配出两台相机拍摄的两幅图片中的同一特征点,立体匹配的过程就好比人的两个眼睛对物体进行观察,在视网膜形成物体空间信息的过程。利用拍摄的两幅二维图像,找到两幅图像的对应像素点,进而较为准确推断出这点的三维坐标,这就是立体匹配的过程[17]。本文采用了BM(Berlekamp_Massey)立体匹配算法实现立体匹配,该方法常用来计算局部范围内的视差值,计算复杂程度低,运行速度快[18]。匹配得到的视差图将以像素点与相机的远近为尺度进行彩色显示,即视差图中的相同颜色代表距离相机的距离近似。

1.3 级联分类器的训练

将400幅视差图样本随机分为训练集与测试集,训练集样本170个,测试集样本230个。本文利用级联分类器来训练识别香蕉植株假茎茎干的模型。训练样本包括170个正样本和500个负样本,正样本为对训练集样本通过裁剪得到的主体为香蕉假茎的视差图,负样本为随机裁剪得到的主体为背景的视差图。由于香蕉作物的假茎由叶鞘层层紧抱形成圆柱形,韧性较差,通常形态为笔直状,虽易发生轻微倾斜,但极少发生明显弯曲,因此可采用矩形来近似表征假茎主体;正负样本均采取了长宽比均为2∶1的矩形来截取。然后调用OpenCV中的OpenCVTrainCascade对正负样本进行训练。

训练的过程中,分类器将首先提取训练样本视差图的LBP特征。LBP是一种描述图像局部纹理的特征,具有旋转不变性和灰度不变性等优点[19]。LBP算子定义在3×3的窗口内,将中心像素和周围8个像素点进行比较,像素值大于中心像素点的赋值为1,像素值小于中心像素点的赋值为0,从而生成新的8位二进制数,然后将其转化为十进制数来代替中心像素值。强分类器的训练过程如图4所示。首先利用数据和数据权重Wi训练弱分类器,每次迭代就训练得到1个弱分类器,训练好的弱分类器继续参与下一次的迭代。弱分类器可以看做LBP的特征训练器,每个简单的特征对应一个弱分类器,得到n个弱分类器后,通过公式(4)进行线性组合后取sign就可得到一个强分类器[20]。

图4 强分类器训练过程

(4)

式中,t是弱分类器的序号;x是LBP特征。

进一步将若干个强分类器进行串联就得到了最终的级联分类器模型。本研究训练得到的级联分类器包含了9个强分类器,其模型结构如图5所示。待测图片必须全部依次满足9个强分类器的特征才会被认定为香蕉植株。

图5 级联分类器流程图

1.4 香蕉假茎茎宽的估算

图6 香蕉植株假茎宽度测量示意图

① 通过双目标定、立体校正、立体匹配得到视差图,然后通过训练好的级联分类器对待测香蕉植株视差图进行识别,并将目标假茎茎干用矩形框ABCD标出,存储其平面坐标系下的坐标。

② 为了降低后续寻找实际边界点时受到噪声及边界线不平滑带来的影响,本研究将采取分段求平均的策略,将识别的矩形框沿Y轴方向自上而下分割为10等份。

③ 寻找所有水平等分线与假茎边界的实际交点。

以水平等分线上的A点为例,先计算AB到CD的中点相机坐标系下的Z值,求出其平均值记为Zmid,然后根据A点Z值是否满足式(5)就可以判断A点是否在假茎上:若不在,则将A点逐步向右平移两个像素,直到到达假茎边界处引起状态改变;若在,则将A点逐步向左平移两个像素,直到到达假茎边界处引起状态改变;记该边界点处的点为A1。

采用同样的方法寻找离B点最近的假茎边界点,并记为B1。

继续向下寻找其他10条等分线与假茎的交点(边界点)得到水平线段A2B2,A3B3,…,A11B11。

④ 计算每条水平边界线段的中点M1,M2,…,M11,并通过线性拟合得到假茎的近似中心线MN,MN的斜率即可代表假茎的倾斜度θ。

⑤ 计算所有水平边界线段的实际长度dn。以求取A1B1的长度d1为例,先计算A1和B1在相机坐标系下的坐标(X1,Y1,Z1)、(X2,Y2,Z2),根据两点间的距离公式(6)就可计算得到d1。求d1,d2,…,d11的平均值d作为香蕉假茎的平均水平跨度。

⑥ 利用④求取的假茎倾斜度θ,根据式(7)对假茎的水平跨度d进行校正得到假茎的实际宽度d′。

|Z-Zmid|≤δ,

(5)

(6)

d′=dcosθ。

(7)

2 结果与分析

2.1 级联分类器识别结果

通过训练好的级联分类器对测试集中的230幅视差图进行测试,有218幅视差图中的假茎茎干被正确识别,识别率为94.8 %,平均用时约为0.8 s,视差图识别假茎的结果如图7所示。

图7 视差图的假茎识别结果

2.2 测量结果与分析

在不考虑测量距离的情况下,首先对所有测试集的测量结果进行了总体分析,结果如图8所示,系统的测试值与人工测量值的决定系数R2为0.604 0,其绝对误差均值为12.3 mm,相对误差均值为4.6 %。进一步分析了不同距离下的测量精度,结果见表1及图9所示。从结果可以看出,固定距离下的系统的测量值与人工测量值的决定系数R2均明显提高,1.2 m处的R2最高,达到了0.853 8,相对误差仅为2.0 %;但不同距离下的测量值存在一定波动。究其原因,其一可能为系统本身的原因导致不同距离下的测量精度有所差异;其二则可能为测量时双目相机的光轴平面无法严格保持水平而引入测量差异,后续可通过增加云台等方式减小此类干扰。除此之外,香蕉假茎上退化的叶片、叶柄等物体的存在使得视差图中的假茎边缘噪声较大,是引起总体测量误差的主要原因。

图8 假茎宽度总体测量结果

表1 不同距离下的测量结果

(a)测量距离=0.9 m

3 结论

① 采用双目视觉传感器可以对香蕉假茎进行快速的识别,识别率达到94.8 %。

② 双目视觉传感器不仅可以识别假茎,还可以快速对其宽度进行自动检测。试验结果发现不同的测量距离会影响检测精度,1.2 m距离处的测量精度最高,此距离下的自动检测值与人工测量值的R2为0.853 8,相对误差仅为2.0 %。

③ 综合实验表明本文提出的双目视觉自动检测香蕉植株假茎系统对香蕉植株具有较好的检测精度,可以实现快速检测香蕉假茎茎宽的目的。

猜你喜欢

视差双目级联
采用双目视觉和自适应Kalman滤波的作物行识别与跟踪
铀浓缩厂级联系统核安全分析
实现级联形状回归方法对视线追踪
霜 降 苏美玲
基于双目视觉的机器人定位与导航算法
多供取料的Q模型级联的数学描述
基于归一化互相关的半透明遮挡视差估计
基于自适应窗的立体相机视差图优化方法研究
机械手的双目视觉定位抓取研究
基于单应性矩阵的图像拼接方法的对比分析