基于Kinect传感器的移动机器人环境检测方法

2018-07-23 02:14
电子科技 2018年7期
关键词:移动机器人像素点深度

张 博

(惠州工程职业学院,广东 惠州 516001)

移动机器人在现代社会已具有越发广泛的应用,如在人类难以到达或有危险的环境中代替人类完成某项任务、在位置环境中实现导航、将传感器采集的信息进行处理并执行决策等[1-2]。虽目前有诸多种类的感知环境传感器,且移动机器人环境检测方法不断被研究,但依然存在无法识别特定目标、识别精度低和受环境影响大的缺点[3-5]。本文针对这些缺点,提出了一种基于Kinect传感器的移动机器人环境检测方法。该方法基于Kinect传感器,将传感器采集的图像视频信息与深度数据进行处理,从而实现对环境中的特征已知目标与未知目标的识别。其中,特征已知目标可以通过颜色阈值分割进行检测,特征未知目标则是利用地面深度算法并获取图像轮廓以达到识别检测的目的,对于移动机器人的位置信息可通过传感器成像模型进行三维空间定位。

1 基于Kinect传感器的移动机器人系统

Kinect传感器是一种三维激光传感器,由微软在2010年推出,其能获取光学图像与位置信息。并具有采集信息丰富,实时性强,结构简单,价格低的优点。

1.1 数据采集与处理

图1为本文所使用的机器人Kinect感知系统,其为电机驱动,将光源发射器与接收器安装在视频摄像头两侧以获取数据。Kinect传感器通过检测激光发射器照射到物体上形成的光斑以获取目标深度数据,并通过彩色摄像头获取环境中每点颜色信息[6-7],最后数据由机器人所带计算机进行处理。图2为Kinect传感器采集的原始彩色图像。对应的深度图为图3,用颜色表示深度信息[8]。

图1 机器人Kinect感知系统实验平台

图2 原始彩色图像

图3 原始深度图像

从图2和图3中可以看出,由于Kinect彩色摄像头与深度光源摄像头的光心位置不同,造成了Kinect采集的彩色图像与深度图像像素点不对应[9-10]。所以需要对两者进行匹配,将深度生成器视角平移到与彩色生成器视角重合的位置,视角匹配后的深度图像如图4所示。

图4 匹配后的深度图像

1.2 深度摄像机标定

将图像的像素点联系到目标的物理坐标为摄像机标定,即二维到三维的转化。设摄像机坐标系为OCXCYCZC,图像像素坐标系为O1XY,像素点偏离图像中心位置表达式为式(1)、(2)、(3)。式中,fx,fy为摄像机X,Y方向的焦距,XC,YC,ZC为像素点(u,v)偏离图像中心(u0,v0)在X,Y,Z方向的距离, 为像素点空间深度值。

(1)

(2)

ZC=depth(u,v)

(3)

2 特征已知目标的检测

2.1 颜色特征已知目标的识别

本文采用Kinect传感器基于颜色阈值分割对特征已知目标进行检测,由先验知识得到目标物体HSI颜色空间阈值。并对采集的原始彩色图像进行分割,记录连通域质心、边界信息等,步骤如下:首先对图像进行扫描并由阈值分割结果建立行连通域,然后将连通域整合完整,最后将分割的大区域作为分割颜色目标,小区域为噪声。原始图像、目标物和路标识别结果,如图5~图7所示。

图5 原始图像

图6 目标识别

图7 路标识别

2.2 已知目标定位

对识别出的目标进行定位以得到其离机器人的距离。设目标彩色图质心坐标为(xc,yc),匹配后对于深度图坐标为xd=xc且yd=yc,该点深度数据即为目标质心离机器人的深度距离,由式(1)和式(2)得到目标质心空间坐标。

3 特征未知目标的检测

本文通过轮廓识别来达到障碍物、墙壁等特征未知目标的检测。

3.1 地面模型的建立

假设地面为水平的,传感器检测信息中位于地面以上且与地面接触为未知目标物体。传感器采集的深度数据对应的颜色变化方向为深度传感器视场的Z轴[11-15],因而可建立一个稳定的地面模型以检测未知目标。传感器采集的地面深度图如图8所示,其中黑色部分为无效数据,由物体反光、强光、边缘复杂等产生。

图8 地面深度图

距离相同深度也相同,在无障碍物的环境下采集数据,距离传感器近则数据完整,距离远则具有不确定性。深度图中每一行为与传感器距离相同地面的深度数据,对每一行进行扫描并除去无效数据,有效数据加权平均从而得到基于深度的地面模型,如图9所示。该地面模型具有良好的适用性与稳定性。

图9 地面模型深度图

3.2 未知目标识别

未知目标的识别是采用建立的地面模型去除法,将采集的深度数据减去地面模型数据,所得结果小于等于所设阈值认为是地面信息;反之则为地面上的未知目标,其初步检测结果如图10所示。

图10 初步分割目标

每个目标在初步检测之后的分割识别步骤具体为:对Kinect传感器采集的深度数据利用图像处理方法进行边缘平滑处理,为得到目标物体边缘特征对深度数据映射图进行Canny边缘检测,并存储满足条件的连通体,记录其坐标与长宽信息。

3.3 未知目标定位

本文提出边界列扫描方法来定位未知目标,具体步骤为:得到初步分割后的目标物体外围定点坐标,以及左右边界相对位置信息。以左边界进行说明,目标物体左上顶点与左下顶点坐标为(x1,y1)和(x1,y2),从y1开始进行列扫描,并记录第一个有效深度值,作为目标种子点。而当检测到第二个有效深度值时将其与第一个进行比较,两者之差小于阈值则将其合并为一个种子点,反之记录第二个有效深度值为新的目标种子点,直至到达y2为止。记录下该列目标的个数、像素点数、坐标等信息,并将所含像素点数最多的目标作为最终目标,将其与边界长度进行比较,目标像素点数为边界像素点数的80%则视为已达到边界,否则横坐标加一继续进行扫描。对得到的最终目标深度数据加权平均,从而得到目标物体与机器人之间的深度距离,最后通过式(1)和式(2)求得边界的空间坐标。

4 实验验证

分别在窄小的办公室与空旷的大厅,基于UP-Voyager IIA移动机器人对本文提出的检测方法进行验证。在有墙壁、书柜等障碍物的办公室采集的图像如图11,深度数据映射图如图12所示。采用本文方法对目标物体的定位结果,如图13所示。白色线框表示边界信息,从图中可知机器人能够有效识别出环境中的目标物体。

图11 办公室彩色图

图12 办公室深度数据图

图13 办公室识别结果

图14 大厅彩色图

图15 大厅深度数据图

图16 大厅识别结果

采集的空旷大厅彩色图、深度数据图与识别结果图分别为图14~图16。从图中可看出,本文所提出的检测方法依然可以取得良好的识别效果。

5 结束语

本文针对目前环境检测机器人出现的无法识别特定目标、识别精度低和受环境影响大的缺点,提出了一种基于Kinect传感器的移动机器人环境检测方法。该方法基于Kinect传感器,将传感器采集的图像视频信息与深度数据进行处理,从而实现对环境中的特征已知目标与未知目标的识别。最后分别在窄小的办公室与空旷的大厅对此检测方法进行基于移动机器人实验平台的验证,验证结果表明该方法能够有效的进行环境的识别检测,且满足实际工作需求。

猜你喜欢
移动机器人像素点深度
移动机器人自主动态避障方法
基于局部相似性的特征匹配筛选算法
深度理解一元一次方程
深度观察
深度观察
基于5×5邻域像素点相关性的划痕修复算法
深度观察
基于canvas的前端数据加密
基于Twincat的移动机器人制孔系统
基于逐像素点深度卷积网络分割模型的上皮和间质组织分割