APP下载

基于视觉双窗口的机器人视觉跟随式导航仿真

2023-03-29王连枝朱朝旭李宝玺

计算机仿真 2023年2期
关键词:摄像头对象矩阵

王连枝,朱朝旭,赵 帅,李宝玺

(开封大学电子电气工程学院,河南 开封 475000)

1 引言

作为计算机视觉技术应用领域内的重要课题之一,跟随式导航技术利用摄像头拍摄目标对象[1],并对图像序列进行分析,基于图像内目标特征实现目标跟随[2],基于跟随结果生成导航路线。该技术被普遍应用于机器人视觉导航、交通监控等诸多领域内[3]。

杨辉与吴赛燕等人将STM32与物联网应用在机器人导航问题中[4],依照所处环境获取目标图像,分析图像确定目标移动轨迹,实现机器人的自主导航。孟庆宽与杨晓霞等人研究普通光照条件下机器人导航技术[5],利用视觉传感器获取目标图像,基于图像熵对灰度图完成机器人导航功能。上述方法均采用单目摄像头采集目标图像,其主要优势为运算速度较快。但该类方法在实际应用过程中未考虑实际场景的三维信息,导致所跟随的对象均具有相对性,由此造成机器人最终导航结果产生偏差。针对这一问题,研究基于视觉双窗口的机器人视觉跟随式导航方法,将视距双窗口摄像头应用于机器人导航问题中,提升跟随对象跟随精度,实现机器人的准确导航。

2 机器人视觉跟随式导航方法

图1所示为基于视觉双窗口的机器人视觉跟随式导航方法实现流程。

基于视觉双窗口的机器人视觉跟随式导航过程中,在机器人视觉图像上选取引导目标矩形图像区域,机器人通过视觉双窗口摄像头采集跟随对象图像,标定视觉双窗口摄像头,实现视觉双窗口摄像机图像与现实场景内图像间的映射。在此基础上,对视觉双窗口摄像头采集的图像序列进行特征立体匹配,并提取三维坐标,实现跟随目标的视觉跟随定位。获取视觉双窗口摄像头在水平方向上的位置,以基于行为的控制结构作为机器人导航控制结构的基础,通过一个宏行为MB_Move To Target完成基于视觉双窗口的机器人视觉跟随式导航路线生成,控制机器人运动方向。

2.1 机器人视觉双窗口摄像头的空间点定位

机器人视觉双窗口摄像头的空间点标定采用TSAI提出的两步标定算法获取参数[6]:

1)左摄像头内、外参数:焦距、平移向量和旋转矩阵、平移向量;

2)右摄像头内、外参数:焦距、实际图像中心坐标和旋转矩阵、平移向量。

上述外参数均与各自标定过程中设定的世界坐标系相对应。以确定双窗口视场中空间点的三维坐标为目的,依照人类视觉惯性[7],将机器人双窗口摄像头统一至相同世界坐标系内。以左摄像机光心为世界坐标系原点,也就是机器人位于左摄像头光心区域,在此条件下,可利用空间转换矩阵[RT]描述右摄像机坐标系or-xryrzr同当前世界坐标系o-xyz

(1)

式(1)内,R和T分别表示机器人视觉双窗口摄像头与世界坐标系的旋转矩阵与平移向量,两者的计算公式如下

(2)

式(2)内,Ra和Rl分别表示左、右摄像头的旋转矩阵,Ta和Tl分别表示左、右摄像头的平移向量。依照计算机图像坐标(u,v)与世界坐标(XW,YW,ZW)间的相关性[8],结合式(1)能够得到视觉双窗口条件下空间点三维坐标,详细过程如下:

将机器人视觉双窗口摄像头内参数分别代入矩阵

(3)

式(3)内,fl和fa表示左、右摄像头焦距;dx和dy分别表示图像在x与y方向单位像素的尺寸;(ul0,vl0)和(ua0,va0)分别表示左、右摄像头实际图像坐标中心。

以(XW,YW,ZW)和(ul,vl)、(ua,va)分别表示空间点P的世界坐标和在机器人各摄像头图像上的投影点,由此可得以下两组矩阵方程

(4)

式(4)内,G表示4阶单位矩阵。对式(4)进行展开处理能够将其转换为矩阵M与矩阵U。

设定M[XWYWZW]′=U,选取最小二乘法确定P在以机器人左摄像头光心为原点的世界坐标系内的三维坐标

(5)

通过视觉双窗口摄像头的空间点标定可实现机器人视觉双窗口摄像机图像与现实场景内图像间的映射,提升后续跟随对象识别与定位的精度。

2.2 基于视觉双窗口立体特征匹配的机器人视觉跟随算法

机器人采用视觉双窗口摄像机采集跟随对象图像后,由于各图像内跟随对象间不存在显著的特征区别[9],因此对图像进行立体特征匹配极为重要,能够有效改善视觉双窗口图像采集过程中的重复纹理以及重叠遮挡等问题[10]。基于视觉双窗口立体特征匹配的机器人视觉跟随算法实现流程如图2所示。

图2 基于视觉双窗口立体特征匹配的机器人视觉跟随算法流程

机器人利用二维扩展Kalman滤波器分别跟随两个不同摄像头所采集图像序列内的跟随对象,以所采集图像序列为基础,实现跟随对象的三维扩展Kalman滤波器预测跟随;若在不同摄像头所采集图像序列的预测区域内分别存在若干个候选跟随对象,那么机器人通过视觉双窗口下的外极线约束条件清除错误的候选跟随对象[11],完成正确的跟随对象匹配,实现机器人视觉跟随目的。

基于视觉双窗口立体特征匹配的机器人视觉跟随算法主要特点体现在两方面,分别是跟随过程中,二维与三维扩展Kalman滤波器同时用于预测,以及通过外极线约束处理视觉双窗口下不同二维候选跟随对象的对应问题。前者能够缩小跟随对象的搜索范围,降低因特征缺失导致的跟随对象跟随错误问题;后者能够清除错误的匹配关联,由此得到准确的候选跟随对象。

(6)

(7)

(8)

(9)

若存在跟随对象Dn,那么利用Dn的信息更新不同状态变量的预测误差(Δwk+1,Δvk+1,Δak+1),公式描述如下

Δwk+1=|wk+1-wk-1|

(10)

Δvk+1=α∘|vk+1-vk-1|+(1-α)∘Δvk

(11)

Δjk+1=β∘|jk+1-jk-1|+(1-β)∘Δjk

(12)

若在跟随对象Dn的预测区域内存在不止一个候选跟随对象,那么根据外极线约束清除错误的跟随对象。外极线约束原理如下:

以w1(w2)和F分别表示Dn在机器人视觉双窗口摄像头采集的两个图像上的位置坐标和视觉双窗口的基础矩阵,那么w2(w1)的位置处于同w1(w2)相关联的外极线b2(b1)上,公式描述如下

b1=FTw2,b2=Fw1

(13)

由此,在搜索w2(w1)过程中可将搜索范围约束在b2(b1)范围内,即搜索范围降低,搜索效率提升。但实际机器人视觉跟随过程中,考虑不同噪声与误差的存在[12],在机器人实际视觉跟踪过程中所检测到的跟随对象无法完全符合外极线约束,针对此问题,将候选跟随对象同外极线间的距离作为约束准则,距离与二维匹配程度之间呈反比例相关。

2.3 基于视觉跟随结果的机器人导航

机器人的视觉跟随式导航过程中,需实时响应具有突发性与多样性的紧急事件[13],因此在导航过程中以基于行为的控制结构作为机器人导航控制结构的基础。通过一个宏行为MB_Move To Target完成基于视觉双窗口的机器人视觉跟随式导航[14]。

基于视觉双窗口的机器人视觉跟随式导航工作内包含的基本行为包括机器人以稳定速度前行的基本行为、堵转状态下控制自动解脱的基本行为、前方障碍物条件下控制转弯的基本行为、沿墙壁前行并保持相应距离的基本行为、跟随视觉引导对象调整航向的基本行为[15]。基于上述基本行为,利用式(14)表示通过宏行为完成的基于视觉双窗口的机器人视觉跟随式导航工作

MB_MoveToTarget(Ψ,)

(14)

式(15)内,Ψ=(Q,E,f,q0,H)表示有限状态自动机,Q=(S0,S1,S2,S3,S4,S5)表示状态集,其中S0—S5表示机器人的初始状态,朝跟随对象运动状态,依左、右侧障碍物运动状态,达到对象状态与未到达对象状态;E={e1,e2,…,eg}和f分别表示事件集和由Q×E至Q的映射,q0和H分别表示初始状态和终止状态集,两个分别与S0和{S4,S5}对应。表示与S0—S5相对的组合行为集。

3 测试分析

实验为验证本文所研究的基于视觉双窗口的机器人视觉跟随式导航方法在实际机器人导航中的应用效果,在Matlab 2013a软件上实施相关仿真,仿真过程中设定仿真对象与跟随对象分别为某型号无人机与某型号车辆,选取视觉双窗口摄像头开发板,仿真测试结果如下。

3.1 目标跟随测试

3.1.1 目标跟随结果

仿真对象采用本文方法对跟随对象进行视觉跟随,对比仿真对象采用本文方法跟随设定跟随对象过程中,跟随对象在各帧图像上的中心坐标值与跟随对象实际坐标,结果如表1所示。

表1 跟随对象中心点坐标对比结果

由表1能够得到,采用本文方法跟随设定的跟随对象时,所得跟随对象中心点位置坐标同其实际中心点坐标值大致相同,这表明采用本文方法可有效跟随设定的跟随对象,满足本文方法应用需求。

3.1.2 单一对象跟随误差

仿真复杂的背景条件与光照条件,并在图像中仿真出与设定跟随对象雷同的干扰对象。采用本文方法对单一跟随对象实施跟随测试。测试本文方法在应用过程中,每一帧图像内跟随位置误差与分重叠区域比的波动情况,两者值越低说明本文方法跟随精度越高,结果如图3所示。

图3 单一对象跟随误差对比结果

分析图3能够得到,本文方法在背景较为复杂的条件下跟随单一对象能够能够得到较高的跟随精度。由图3(a)得到,单一对象跟随过程中每一帧图像的像素误差均低于10像素,像素误差均值约为6像素。分析图3(b)得到,单一对象跟随过程中每一帧图像的非重叠区域比均低于0.50,均值约为0.30。设定对象在运动过程中尺度产生显著波动情况,且在仿真过程中出现同设定对象较为雷同的干扰对象,但本文方法的跟随误差并不显著波动,这说明本文方法能够基于准确地特征在背景较为复杂的条件下实现准确的设定对象定位,结合本文方法的高跟随精度能够说明本文方法较好的鲁棒性。

3.1.3 双对象跟随

仿真过程中本文方法采用视觉双窗口采集设定对象图像。同时考虑跟随过程中所跟随对象数量不为一的情况,因此对本文方法对双对象同时跟随的性能进行仿真测试,结果如图4所示。

分析图4得到,对象A与对象B在37—56帧、第88—105帧中出现存在彼此遮挡又产生分离的现象。采用本文方法对同时跟随两个对象,在两者彼此分离地条件下能够准确地跟随两个对象;在两者彼此遮挡又分离后,依旧能够准确跟随两个对象,由此说明采用本文方法在双对象条件下依旧能够实现准确的跟随。

图4 多对象跟随结果

综合3.1节仿真测试所得结果结果得到,本文方法具有较好的跟随性能,能够根据实际需求得到准确的跟随结果。

3.2 导航测试

本文方法能够根据对象跟随结果生成仿真对象的导航路线,并且能够自主进行避障设计。图5所示为本文方法导航路线生成结果的二维图。

图5 导航路线二维图

分析图5得到,采用本文方法能够准确根据仿真对象的运动轨迹生成导航图,并且在存在障碍物的条件下,可以准确避开障碍物,并在其后回归准确的导航路线中,由此验证了本文方法导航性能。

4 结论

本文研究基于视觉双窗口的机器人视觉跟随式导航方法,该方法利用视觉双窗口摄像头采集对象的图像,针对视觉双窗口所采集的图像进行处理,完成对象跟随与导航。仿真结果显示本文方法具有较高的跟随精度与准确的导航性能。在后续研究过程中将继续完善本文方法,提升本文方法在复杂环境下的应用性能。

猜你喜欢

摄像头对象矩阵
神秘来电
浙江首试公路非现场执法新型摄像头
摄像头连接器可提供360°视角图像
基于太赫兹技术的新一代摄像头及其在安防领域的应用探讨
攻略对象的心思好难猜
基于熵的快速扫描法的FNEA初始对象的生成方法
初等行变换与初等列变换并用求逆矩阵
区间对象族的可镇定性分析
矩阵
矩阵