小型无人机立体视觉目标追踪定位方法(自动化)
王亭亭1, 蔡志浩1,2, 王英勋1,2
(1.北京航卒航天大学,北京100191;2.飞行器控制一体化技术重点实验室,北京100191)
摘要:小型无人机在无卫星导航条件下使用的需求日益强烈,采用立体视觉方法可满足无人机在复杂环境中的目标检测、跟踪与定位。研究了双目立体视觉系统标定、特征点检测提取与匹配、双目测距等技术,实现了对图像中的指定目标进行追踪,同时实现对目标的定位,得到目标的位置,视觉系统标定误差在0.2个像素点以内,目标定位误差小于10cm。以地面机器人作为追踪目标进行算法测试验证,在目标消失时间较短的情况下,能够达到较好的追踪效果。
关键词:无人机;双目视觉;目标追踪;摄像机标定;CamShift算法
中图分类号:V249.1 文章编号:1671 - 637X( 2016) 05 - 0006 - 05
0 引言
近年来小型无人机向自主化、智能化的方向迅速发展,应用范围越来越广,尤其是在无卫星导航条件下的使用需求日渐强烈 目标监控是无人机的重要应用之一,采用立体视觉方法可实现无人机在复杂环境中的H标跟踪与定位。通过搭建双目视觉平台,采用适当的目标跟踪算法可以有效地获取目标的距离和位置,目标的运动方向、轨迹,大小等信息。双目视觉技术利用在不同视角F获得的感知图像,根据三角测量原理计算图像像素间的位置偏差,进而获取场景的三维信息。文献[2]利用TLD目标跟踪算法实现了对单运动目标的较好跟踪;利用单目摄像头实现了小型无人机对地面目标的自动识别跟踪,并给出了控制策略;利用双目视觉实现了六旋翼对目标的跟踪。目前,目标追踪问题主要表现于如何能在复杂背景、光照变化、类似颜色物体、遮挡物等因素存在的情况下抓住目标的特点,进行有效跟踪,并保证实时性。鉴于以上内容,本文利用双目立体视觉进行目标追踪的研究具有重要的意义。
1双目视觉系统标定
双目摄像机的准确标定是计算机视觉准确实现的基础和前提。目前摄像机标定方法有很多种,主要可分为摄像机传统标定方法和自标定方法。本文采用具有较好的鲁棒性和实用性的张氏标定法进行摄像机标定。鉴于普通的COMS网络摄像头感光单元逻辑间距或者感光芯片的尺寸一般不得知,在标定结果判定上难度较大,因此,主要通过标定结果和理想参数的对比分析来判断标定结果的合理性。
1.1双目标定的原理
双目立体视觉系统可通过左右或者上下两个摄像头排列放置得到,通过对同一物体的观察,获得不同视角下的图像。将摄像机模型简化为最简单的针孔模型,双摄像机成像模型如图1所示。
图中:P为空间一点;O1,Dr分别为左右两个摄像机的光心;I1,I r为左右摄像机的成像平面;P1,Pr分别为P在左右两个摄像机平面上的投影点。
双目标定的结果是得到摄像机的内外参数,以及两个摄像机之间的关系。在标定过程中主要用到图像坐标系、摄像机坐标系和世界坐标系3种坐标系。图像坐标系中像素单位(u,v)和物理单位(x,y)两种表示方法的关系为
式中:R为旋转矩阵;T为平移向量。
1.2标定优化与结果分析
图2所示为采用2个Life Cam网络摄像头,摄像头帧速率30帧/s,分辨率640×480,水平视场角500,垂直视场角400,摄像头光心相距约10 cm,搭建双目平台。以一张8 x7的棋盘格作为标定物,定标板每个棋盘格大小为25 mm x25 mm,试验选取了36幅有效图像。
图3显示了图像相对于摄像头的位置关系。首先通过单目标定得到左右两个摄像机的内参矩阵,然后通过立体标定,得到右摄像机相对于左摄像机的旋转矩阵R r和平移向量T r。
根据双目视觉平台中摄像机与飞机机体的位置关系,为简化计算,在试验中使世界坐标系与左摄像机坐标系重合,则左摄像机相对于世界坐标系的旋转矩阵R1为3x3单位阵,平移向量T1为[0 0 0]T;右摄像机相对于世界坐标系的旋转矩阵为R r平移向量为T r。
通过对80幅试验图标定后的误差进行分析,得出如果图像偏转过大或过小,或者图像放置较远或过偏,标定误差会很大,对此应保证标定板偏转角在200~700之间,且成像至少大概占图像的二分之一并尽量靠中间。在实际选取图像时,可以分别分析其误差图,对误差过大的图像改变窗口大小,重新标定,对于始终有较大误差的图像可以剔除,以此实现优化。图4所示为单个相机的重投影误差分布图,根据
标定的结果如下。
左摄像头内参矩阵为
内参矩阵所得光心点坐标在(320 m,240 m)附近,右摄像头相对于左摄像头的旋转矩阵接近单位阵,基本符合预期标定,从平移向量第一个参数可以看出,左右摄像头之间的中心距为- 99. 908 13 mm,基本符合标定结果。
2特征提取与匹配
特征点匹配是立体视觉第二大任务,意在建立两幅图像之间点到点的匹配关系。立体匹配的实质是求最优解,目前比较常用的匹配算法有基于特征的立体匹配算法,基于全局的立体匹配算法和基于局部的立体匹配算法。为了保证算法实时性,采用匹配速度较快的基于特征的立体匹配算法,并采用SURF算法实现特征点提取。
SURF特征提取算法是在SIFT算法的基础上提出的,在继承了SIFT算法鲁棒性的同时,提高了精度且匹配速度快,有很强的实时性。SURF算法主要步骤为:建立积分图像建立尺度空间快速Hessian极值点检测Haar小波建立描述算子通过距离进行匹配。在进行特征点匹配误差分析时,将视差的计算结果分成独立的块,定量测评每块对匹配精度的影响。目前立体匹配算法大部分以此作为衡量算法优劣的标准。
利用SURF算法提取感兴趣区域的目标,通过匹配可以得到几组分别来自左右两幅图像的坐标点,每组点的组成为(u1,v2,u2,v2),其中感兴趣区域由目标追踪部分给出,以降低时间开销。根据前面的讨论,已知图像点坐标与世界点坐标的关系为
采用Kalman滤波对所得位置数据进行处理,进而得到目标相对飞机的位置。
3 目标追踪
目前常用的目标追踪算法有光流法、MeanShift算法、CamShift算法、Kalman滤波和粒子滤波等。每种算法均有自己的优势和劣势,需要根据实际应用采用合适的算法,或者对不同算法进行结合。比如将粒子滤波和均值漂移法相结合,或借助Kalman滤波算法比较强的鲁棒性,通过Kalman滤波算法估计物体的运动信息,以此解决遮挡和类似颜色物体存在造成的跟踪问题。如果物体运动随机性较大,则Kalman滤波算法会失效。因此,还需要结合其他算法或者研究新的追踪算法,同时还要保证实时性的要求。
本文采用改进CamShift算法进行目标跟踪。基本的CamShift算法流程如图5所示。
在此基础上主要进行了如下改进。
1)图像的预处理和颜色阈值的选取。
试验所用网络摄像头白带真彩处理功能,且右摄像头拍摄的图像对比度比左摄像头的高。因此,提高左摄像头图像的对比度并分析目标在两幅图像的HSV下H分量的直方图,选取最大值作为阈值。
2)运动的预测降低相似目标干扰。
假设目标连续3次位置变化中方向和运动速度均不变,用近2次的目标位置信息可估计下一次目标可能的位置,在一定程度上可滤除视野中与目标颜色一致的静止干扰物。
至此,本文的3大环节已基本实现。图6所示为整个算法的实现示意图。其中,虚线框内的双目标定部分为离线实现,其余均为在线实现。
4结果分析
如图7所示,采用MTI-28A53G352,STM32( CortexM3),2轴无刷电机云台和双目视觉平台搭建基于双目视觉平台的目标追踪系统,IMU的输出可以控制云台转动。
如图8、图9所示,在室内环境下,地面目标以0. 33
m/s的速度做定速无规则运动,在摄像头固定和运动两
种情况下做试验。
图8实际测量地面机器人中心点与摄像头的距离
约86 cm,机器人直径约30 cm。保持地面机器人不
动,摄像头在原位置做近似俯仰运动,测得的机器人位
置信息如表1所示。将解算的位置信息与实际测量数
据对比,平均误差约10 cm。
图9是对地面机器人的追踪。从左到右、从上到下分别选取了第9帧、第13帧、第25帧、第33帧、第40帧、第54帧、第70帧、第75帧、第80帧、第84帧、第108帧、第135帧的左摄像机拍到的图像,追踪效果
良好,而且即便是地面机器人从视野中消失,只要能重回视野,依然能追踪得上。当摄像头与目标相对速度低于1.5 m/s,距离在3m以内时,跟踪效果良好。
5结论
本文将双目视觉和目标追踪相结合,在对特定目标追踪的同时,能够得到目标的位置信息。当小型无人机与目标相对速度小于1.2 m/s,距离小于3m时,跟踪效果良好,满足小型无人机在室内环境下对双目视觉系统的要求,同时如果在该方案基础上进行相应改动可以实现低于3m的飞行高度测量以及避障,这对小型无人机在无GPS的室内环境的应用具有很大的意义。