基于激光与视觉的机器人定位目标方法研究
2017-09-13靳若砚王金祥
靳若砚+王金祥
摘 要:本文研究的内容是在移动机器人静止的情況下通过CCD摄像头和激光测距传感器获取运动目标信息,通过对获得数据信息的处理、融合与分析,得出运动目标的方位与距离信息,从而定位目标。实验采用了VC++6.0开发平台,利用开源计算机视觉库OpenCV在机器人上验证本方法,实验结果表明本方法能够正确地、实时有效地定位环境中的运动目标。
关键词:移动机器人;CCD摄像头;激光测距;定位目标
DOI:10.16640/j.cnki.37-1222/t.2017.17.209
1 研究的现状及意义
运动目标定位和跟踪是机器人研究领域的热门方向。在现实场景下,运动目标的定位和跟踪可以应用在军事、民用、医疗等诸多方面,由于该研究内容有着广泛的应用前景,愈来愈受到人们的关注。
现阶段,运动目标检测所采用的算法主要有帧差法,以及基于帧差法的改进算法,例如背景差法,三帧差法等。而确定运动目标的具体距离位置,则需要在此基础上增加其他可以测量距离的传感器,从而获得运动目标在当前空间中的实际坐标位置,进而可以定位运动目标,为目标特征的提取与运动目标的跟踪打下良好的基础。
2 基于CCD摄像头的运动目标定位
由于视觉能获取更多的数据量,所以选用了摄像头作为传感器。利用CCD摄像头捕获到环境中的实时图像,之后对获取到的实时图像数据进行处理。对每一帧图像进行预处理,包括闭运算,去噪等, 减少由于实验结果造成的误差。对摄像头获取的视频图像采用连续帧差、二值化处理获得运动目标的轮廓信息,帧差法是在静止环境中检测运动目标的简洁而有效的方法。
然而,实验结果表明由帧差法得到的图像, 容易受到环境中物体运动带来的灰尘光线的影响, 帧差的结果比实际运动的物体大,而且轮廓不明显,时而会出现“鬼影”现象。本文中采用两帧差方法改进算法,采用了三帧差法。三帧差法可以有效避免环境带来的影响。具体是选取图像序列中的连续三帧图像, 对每一帧图像进行预处理, 分别计算相邻两帧图像的差值;在每一个像素点, 将得到的两个二值图像逻辑相“与“,得到三帧图像的中间帧的二值图像,这样初步解决了运动目标方向信息,为精确定位提供依据。
3 基于激光测距传感器的运动目标定位
通过CCD摄像头可以检测到运动目标或者定位目标,但是, 却不能得到目标的具体位置信息,不能得到目标在三维空间中的坐标。而采用激光测距传感器, 则可以建立空间坐标系, 得到目标物体相对于当前机器人的位置信息。
本文的实验采用的是上海广茂达公司的能力风暴AS-RII智能轮式机器人,该机器人上的激光测距传感器可以感知到其前方0到180度范围内的环境,实验中将激光采集到的数据放在数组中,并在该数组中设置181个元素。本文采用了均值滤波的去噪方法来减少激光产生的噪声,然后对去噪后的距离信息进行处理有效处理,可以获得运动目标的方位与距离信息。
4 多传感器融合目标定位
采用视频传感器虽然可以大致检测出目标的运动区域,但难以保证目标定位的实时性与准确性,因此运用多个传感器信息融合的方法进行目标定位可以很好地克服这一缺陷。
多传感器目标检测的过程如图4-1所示。
首先将单个传感器获取到的数据进行预先处理,然后通过多传感器融合算法将目标数据融合处理。分析CCD传感器得到位置信息与激光测距仪获取的方位信息一致时,且能维持在5s内的时间一致时我们认为方向定位正确,此时方位上的距离机器人较近的距离信息可以记录为运动目标到机器人的距离信息。下图4-2说明了机器人与运动目标(图中的运动人)的关系。
图中C点为CCD摄像头在直角坐标系平面上的投影点,置于机器人的前端A点为激光传感器的激光发射点。其中C点距地面52cm,A点距离地面37cm,AC=16cm,激光发射角度为[00,1800],B是运动目标的中心, O是轮式机器人的中心。
运动目标区域的数据信息包括距离信息和角度信息。假设CCD摄像头采集到的图像经预处理后得到的目标角度分别是C点到运动人左右边界的切线。同理可知,激光传感器的检测角度为此方向距离较近。获得二者的检测数据后,需要对两个传感器进行综合定位,最终在视频图像中表示出目标的正确运动区域。
5 实验分析与总结
在实验中,通过多传感器的信息融合,从而确定运动目标的位置与距离信息。视频图像中采用红色边框框出运动目标区域,在此区域内用绿色的短横线表示出激光传感器感知到的方位信息。在此方位上的较短距离信息为机器人与目标的距离信息。在AS-R平台上实验表明,通过对多个传感器获取到的信息进行科学合理地融合处理,实现了运动目标的定位。通过信息融合的方法定位正确,效率高,鲁棒性好。
作者简介:靳若砚(1996-),女,山西太原人,本科。endprint