APP下载

柑橘果园机器人仿生眼的目标跟踪与定位系统

2020-11-09陈继清徐关文莫荣现黄仁智

科学技术与工程 2020年27期
关键词:双目云台坐标系

陈继清, 徐关文, 强 虎, 刘 旭, 莫荣现, 黄仁智

(1.广西大学机械工程学院, 南宁 530007;2.广西制造系统与先进制造技术重点实验室, 南宁 530007)

柑橘是世界四大水果之一,同时也是中国水果类消费品的重要成员。其中,广西连续几年的柑橘产量都居全国之首,柑橘产业园有500多个[1]。柑橘园区机器人能完成观测柑橘的生长情况,害虫入侵预警等工作,并在柑橘成熟期装载上柑橘采摘机械手采摘。柑橘园区机器人非常依赖与之匹配的视觉系统,通过对图像的处理获取周围环境的信息,并执行。在农业机器人共性技术的研究中,视觉系统正在逐渐成为研究热点[2-3]。Li等[4]等采用改进的大津法(OTSU)动态阈值分割方法实现了复杂环境下苹果果实的识别和提取; 李文洋[5]研究了猕猴桃采摘机器人的视觉路径导航路径的生成方法;Xiang等[6]研究了基于双目立体相机获取的深度图的聚类番茄识别方法。在300~500 mm的采集距离下,番茄群集的识别精度为87.9%;郭凯敏等[7]研究了基于Bumblebee双目视觉系统的西红柿采摘机器人,实现了对果实的识别与定位,并达到采摘工作要求;宋健等[8]研制的茄子采摘机器人结合基于亮度的阈值分割算法与四连通标记法提取果实感兴趣特征,最后通过双目匹配算法获得采摘果实的三维信息;Mehta等[9]研制的柑橘采摘机器人基于闭环伺服控制,其双目摄像头一个安装在固定位置,另一个安装在末端执行器,采摘成功率达到95%。

上述文献都对园林机器人双目视觉系统的研究取得了不错的进展,但是都仅限于双目为平行光轴下的图像处理,其双目平台都为静平台,很少考虑为园林机器人视觉系统增添自由度,尤其是对多自由度双目云台的目标跟踪与定位研究更是少之又少,不能使其像人类的头眼结构一样灵活运动以获得更大的视野范围和目标定位效果。针对此,搭建柑橘园区机器人的仿生眼视觉平台,提出了一种基于双目仿生眼的柑橘果园机器人目标跟踪与定位系统,实验验证该视觉系统能够满足机器人的精度和实时性要求。

1 仿生眼平台

目前市场上绝大多数的果园机器人只配备主光轴平行的双目系统,为固定云台,大大限制了机器人感知环境能力[10]。人眼具有快速目标跟踪定位的功能,机器人也需要相应的图像跟踪。因此设计了基于人类头眼运动特点和生理结构的仿生眼机构。该系统可以模仿人类视觉系统为了跟踪目标而做出的平滑追踪、扫视等动作,从而提高了机器人自身姿态变化和目标姿态变化对图像质量的影响。

图1为设计的主动双目视觉机构,由左、右偏航子平台(眼球)、俯仰平台和旋转底座(颈)组成。旋转底座上的电机与中位轴、中位轴与俯仰子平台、俯仰子平台电机与左偏航子平台、左右偏航子平台电机与相机均用转动副连接,参照人眼目标跟踪时共轭运动的优越性,将左、右偏航子平台通过杆件相接,可做同步的俯仰运动,因此仿生视觉平台具备空间4个自由度的运动,分别为左右相机的偏航运动、左右相机同步的俯仰运动以及底部仿人颈平台的水平旋转。

对每个关节做受力分析,进行最大力矩估算。图2为机构简图,图2中αi(i=1,2,3,4) 为关节旋转角度。为了简化计算,将两个相机看成一个质点,质量m为190 g。L为相机质心到俯仰轴线的长度,L=205 mm。B为两个相机质心的距离,B=80 mm。

1为相机;2为左偏航子平台;3为右偏航子平台;4为俯仰平台;5为旋转平台图1 仿生云台结构设计Fig.1 Bionic head 3D structure design

图2 机构简图Fig.2 Mechanism diagram

以旋转底座关节为例,估算其电机所需功率计算过程如下。

计算转动惯量Jr:

(1)

计算最大力矩T:

T=Jα=m(Jr+Jl)α

(2)

计算所需功率P:

P=Tω=30 W

(3)

式中:Jr为右眼转动惯量;Jl为左眼转动惯量;α为角加速度;ω为角速度。

同理可估算出偏航电机所需功率为1.2 W,俯仰电机所需功率为7 W。选择由Maxon公司生产的直流减速电机,电机自带光电增量式传感器。

2 仿生眼建模

首先介绍一个仿生眼图像观测模型[11]。仿生双目机构是一个4自由度的主动视觉云台,观测图像为理想图像经过一系列空间转换而产生,最重要的空间转换因素为云台关节的位姿改变。

2.1 坐标系设置

针对仿生眼平台,定义如图3所示5种坐标系,其中Ow-XwYwZw为世界坐标系,设置在仿生眼机构底座中心。O1=X1Y1Z1为俯仰平台坐标系。O4=X4Y4Z4和O2=X2Y2Z2和分别为左右子偏航平台坐标系。O5-X5Y5Z5和O3-X3Y3Z3分别为左、右相机坐标系。根据机器人运动学原理,可以得到相邻两个坐标系之间的变换矩阵[6]:

(4)

式(4)中:L1、L2、L3为相邻两个坐标原点之间的长度:q1、q2、q3、q4、q5为坐标系进行变换所要转的角度。

图3 坐标系设置Fig.3 Coordinate system settings

2.2 相机内参数标定

对于一个线性空间不变成像系统,其空间域成像过程可用式(5)描述[12]:

g(x)=k(x)*f(x)

(5)

式(5)中:g(x)表示像;f(x)表示物;k(x)为点扩展函数;*表示卷积运算。式(5)用齐次坐标表示,得

(6)

(7)

(8)

2.3 相机外参数自适应标定

仿生眼云台需要配合四个自由度的电机转动对目标进行跟踪,其相机外参数具有不确定性。针对此,提出一种相机外参数矩阵自适应标定的方法。以偏航云台左相机为例,设在T0时某点在世界坐标系Ow-XwYwZw上的坐标为Pw=[Xw,Yw,Zw,1]T,其经过运动学转换之后映射到左相机坐标系O4=X4Y4Z4上的点坐标为PL=[X4,Y4,Z4,1]T,可以得到

(9)

同理可以得到世界坐标系O4=X4Y4Z4上的点Pw在右相机坐标系O3=X3Y3Z3中的坐标为PR:

(10)

(11)

(12)

式(11)、式(12)经过最小二乘法处理后便可以得到目标的三维信息,实现目标定位[13]。

3 目标定位与追踪

基于颜色直方图的Camshift目标跟踪算法是目前主流的目标跟踪算法,该算法主要解决了基于核函数的固定窗口宽度会降低均值漂移(meanshift)算法准确率的缺点[14]。该算法本质上是一种密度函数梯度估计的非参数方法,在局部搜索区域内迭寻优。Camshift算法与MeanShift算法相比,给出了一种新的观测方向函数,具有更高的跟踪精度与实时性。算法流程如下。

(1)初始化搜索窗口的大小和位置。

(2)将图像从RGB空间转换到HSV空间。选取搜索窗口中每个像素的H分量,得出目标的颜色直方图。

(3)执行MeanShift算法,由投影图的灰度,计算搜索窗零阶矩和一阶矩:

(13)

搜索窗的质心(x0y0):

(14)

搜索窗长度:

(15)

式中:Ic(x,y)为图像像素(x,y)。

(4)搜索窗的中心移动到质心位置,若距离大于阈值,则重复步骤(2)、步骤(3),直到收敛。

(5)计算搜索窗口的二阶矩:

(16)

自适应更新目标区域的大小和方向,l为搜索窗长度,w为搜索框高度,q为调整角度,其表达式为

(17)

(6)返回步骤(1),实现对视频下一帧的目标识别与追踪。

4 仿生眼控制系统

研究的仿生眼平台为基于图像的视觉伺服(IBVS)控制系统[15]。采用基于目标特征点脱靶量为控制参数的PID运动控制器,目标特征点的脱靶量由其在图像平面的像素与图像平面的中心像素做差得到,输出云台在水平、俯仰、偏航方向所要旋转的角度,使相对运动的目标始终处于两条视轴的交汇处。脱靶量与云台旋转角度的转换关系为

(18)

式(19)中:Δqx,Δqy分别为需要转动的水平和俯仰角度;(u*,v*)为图像中心像素坐标;(u,v)为目标的像素坐标;Fx、Fy为相机的焦距。

控制器的输出和输入之间存在非线性时,控制器PI/PID积分部分会产生一种不良现象即控制器的windup问题[16]。实际的仿生眼控制系统具有突出的饱和非线性特性。引入适当的补偿环节,使控制系统在出现饱和现象时仍能达到满意系统响应,提出一种变结构PID控制器,其结构如图4所示。

e为误差;es为饱和误差项;un为PID输出;us为前反馈输出;r为系统输入;y为系统输出图4 基于Anti-windup的PID控制器结构Fig.4 PID controller structure based on Anti-windup

当控制器输出信号饱和时,饱和误差项为un-ux,采用系数η实现积分项自适应调整,其自适应变化率为

(19)

5 实验结果与分析

实验在仿生眼平台上进行。本系统中可通过控制云台位姿变化实现图像平面对于目标的跟踪定位。以柑橘为研究对象,在自然光环境下开展试验,以验证本文仿生眼目标跟踪与定位系统的有效性和可行性。

图5 控制系统框架Fig.5 Control system framework

仿生眼平台控制系统的整体框架如图5所示。视觉传感器为两台相同型号为MER-132-30UC-L 的大恒CCD摄像机,和两个型号为M1224-MPW2的镜头,分别安装在双目云台上,通过USB3.0传送数据。采用PC机作为控制系统上位机,主要负责处理由相机所拍摄的图像序列信息,同时与运动控制器进行通信,其CPU为intel®coreTMi5-4200。运动控制器采用STM32F103型号的单片机,通过发送PWM脉宽调制信号到驱动模块,信号经功率放大后驱动电机工作,同时逆变器实时进行AD采样,实现过流与电压保护作用。上位机与运动控制模块经过RS232串口通信,4个电机的反馈信息通过串行端口传输到控制模块,实现闭环控制。图像处理平台基于Visual Studio 2017与OPENCV4.1.2搭建。

选取一张带茎叶干扰的柑橘图像作为研究对象,图6为Camshift算法图像预处理过程。如图6(a)所示为原图图像。如图6(b)、图6(c)所示,将图像从RGB颜色空间转到HSV空间,图6(d)为图像H分量的直方图。将直方图做反向投影后得到色调H的概率分布,然后得到搜索窗口与窗口质心位置。目标在图像上的质心像素相对图像中心像素的偏移值作为云台控制器控制参数,输出云台旋转角度,使仿生眼跟踪目标。图7为目标跟踪效果图,模拟机器人移动场景,在跟踪过程中有意让叶子遮挡大部分目标,目标仍然被有效跟踪。

图7 跟踪效果Fig.7 Tracking effects

图6 图像预处理过程Fig.6 Image pre-processing

选取图像平面分辨率为400×300,则其中心像素坐标为O(200,150)。图8为云台跟踪目标过程中目标在相机图像平面的质心像素,目标始终稳定在左右图像平面的中心点O(200,150)附近。仿生眼具有良好的跟踪性能,且每帧图像处理过程小于0.1 s,实用性高。

定义物理量中心位置像素误差(error of center pixel,CPE)来作为云台伺服跟踪效果的标准,其表达式为

(20)

式(20)中:(u*,v*)为图像中心像素坐标;(u,v)为提取的目标质心实时像素坐标。

图8 目标特征点像素值Fig.8 Target feature point pixel value

图9 中心位置像素误差Fig.9 Pixel error of center position

选取10 s的采样时间段,如图9所示的仿生眼中心位置像素误差值。其中,左眼实时中心位置像素误差(CPE)如图9(a)所示,平均CPE为7.2,右眼实时CPE如图9(b)所示,平均CPE为6.1。误差主要是由于相机模型误差与机械传动误差造成的。仿生眼平均CPE低于10,能够达到本系统所需要的跟踪效果。

6 结论

在仿生眼运动平台上展开研究,得到以下结论。

(1)提出一种相机外参数自适应标定方法对仿生眼系统建模,解决了仿生眼平台相机外参数不确定性问题。

(2)采用基于Camshift的目标跟踪算法,并结合基于Anti-windup的变结构自适应抗饱和PID控制器来设计仿生眼控制系统,大大降低了仿生眼系统饱和非线性特性。

(3)在仿生眼平台上进行了相关实验,实验验证了该仿生眼系统有较好的目标跟踪效果并在一定程度上能达到实时性的要求。

猜你喜欢

双目云台坐标系
霜 降 苏美玲
基于双目视觉的机器人定位与导航算法
独立坐标系椭球变换与坐标换算
帮我买云台
Help me buy a…Tripod head帮我买云台
基于双目测距的卡尔曼滤波船舶轨迹跟踪
基于STM32的无线FPV云台设计
坐标系背后的故事
三角函数的坐标系模型
当液压遇上悬臂云台 捷信GHFG1液压悬臂云台试用