一种基于全景视觉的快速、高鲁棒性的机器人室内定位方法
【专利摘要】本发明属于移动机器人视觉定位技术领域,具体涉及一种基于全景视觉的快速、高鲁棒性的机器人室内定位方法。本发明包括:(1)设计基于SURF特征点的路标;(2)在全景图像中使用改进的SURF特征点匹配算法快速的对设计的路标进行准确识别;(3)根据对环境中设置的三个路标的识别结果计算出机器人在所在二维空间的准确位置。本发明实现了移动机器人的室内定位功能,适用于复杂室内环境下的机器人定位任务,可广泛应用于家庭服务机器人、工业机器人的导航中,算法的快速性和鲁棒性可保证机器人在运动过程中具有较精确的定位能力。
【专利说明】
一种基于全景视觉的快速、高鲁棒性的机器人室内定位方法
技术领域
[0001]本发明属于移动机器人视觉定位技术领域,具体涉及一种基于全景视觉的快速、高鲁棒性的机器人室内定位方法。
【背景技术】
[0002]移动机器人的自定位问题一直是机器人研究领域的基础问题和热点问题。机器视觉凭借其信息量大、价格低廉等优势,被广泛的应用在机器人定位的研究中。
[0003]在传统的视觉定位方法中,基于自然特征的定位方法通常需要提取大量的特征,算法运算量较大、不具备实时性,且易受到光线变化或环境变化所影响。基于人工路标的定位方法相比之下则具有较高的灵活性,通过人工设置路标的特点就可以有针对性的对路标进行识别,降低识别算法的设计难度,提高算法效率。
[0004]在传感器的选择上,全方位视觉可以获得360度的全方位视场,与传统的视觉成像设备相比可以获得更多的环境信息,因此近年来对于该技术的研究得到了长足的发展。然而全景相机所采集到的图像是有畸变的图像,因此通常利用路标的颜色信息而进行定位,这就对环境的光线要求比较高,且要求环境中不存在相同颜色的干扰,鲁棒性差,很难应用于比较复杂的环境下。
[0005]本发明设计的方法解决了移动机器人的室内定位快速性和鲁棒性问题,建立了整个室内定位系统,对于机器人室内定位具有重要的借鉴意义,可以直接应用于家庭服务机器人、工业机器人等领域。
【发明内容】
[0006]本发明的目的在于提供了一种复杂室内环境下的基于全景视觉的快速、高鲁棒性的机器人室内定位方法。
[0007]本发明的目的是这样实现的:
[0008](I)设计基于SURF特征点的路标;
[0009](1.1)利用SURF特征点提取算法对圆、三角形、四边形、五边形的基础几何形状进行特征点检测,记录每个形状的特征点数;
[0010](1.2)将这些形状放置于不同的环境下,利用全景视觉对其成像,记录图像中的每几何形状的特征点与形状模版特征点的匹配率;
[0011 ] (1.3)通过对记录的数据进行分析,综合设计出易于识别的路标形状;
[0012](2)在全景图像中使用改进的SURF特征点匹配算法快速的对设计的路标进行准确识别;
[0013](2.1)根据折反射式全景相机成像原理,在全景图像中存在一个以图像图心为圆心的圆,与曲面镜焦点位于同一水平面上的物点将会成像在这个圆上,利用该圆特性将路标设置于高于摄像机的墙壁上,特征点检测时将圆内的像素置零;
[0014](2.2)设置一个圆形的检测窗口,通过实验确定窗口的合适半径,进一步缩小特征点检测区域,精简搜索区域,缩短运算时间;
[0015](2.3)通过对路标外轮廓的提取,确定了路标中心圆的轮廓,通过计算中心圆的圆心实现路标的精确定位;
[0016](2.4)成功识别路标后将识别到的路标作为新的模板,实时更新模板;
[0017](3)根据对环境中设置的三个路标的识别结果计算出机器人在所在二维空间的准确位置;
[0018](3.1)在环境中放置三个高于机器人的路标,对三个路标进行识别,确定其在全景图像中的坐标,计算出与全景图心的夹角;
[0019](3.2)根据两个角度值与已知的路标实际坐标确定两个圆方程;
[0020](3.3)将两个圆方程联立求得两个交点,其中一个为中间路标的坐标,另一个即为机器人的二维坐标。
[0021]本发明的有益效果在于:
[0022]本发明实现了移动机器人的室内定位功能,适用于复杂室内环境下的机器人定位任务,可广泛应用于家庭服务机器人、工业机器人的导航中,算法的快速性和鲁棒性可保证机器人在运动过程中具有较精确的定位能力。
【附图说明】
[0023]图1是本发明中设计的路标;
[0024]图2是本发明中改进的基于SURF特征匹配的路标识别算法流程图。
[0025]图3是本发明的系统结构框图;
【具体实施方式】
[0026]下面结合附图对本发明进行详细说明。
[0027]本发明设计了一种基于人工路标的快速、高鲁棒性的移动机器人室内定位方法,包括人工路标设计、基于全景视觉的路标识别算法以及定位算法。针对颜色路标受光强影响大的问题设计了有利于特征点识别的路标,提出了基于特征点的人工路标识别算法,利用路标的形状信息(特征点)而非颜色信息进行路标识别,克服了颜色识别算法受光强影响的问题;针对全景图像特征提取运算量大、图像畸变、视角变化和环境复杂等因素引起的误识别问题,在传统特征点匹配算法基础上进行改进,通过缩小检测区域、设置检测窗口、实时更新模板等方法设计了一种快速、准确的路标识别算法;通过在室内设置三个路标,在路标识别算法的基础上实现了机器人的定位算法。本发明实现了移动机器人的室内定位功能,适用于复杂室内环境下的机器人定位任务,可广泛应用于家庭服务机器人、工业机器人的导航中,算法的快速性和鲁棒性可保证机器人在运动过程中具有较精确的定位能力。
[0028]基于全景视觉的快速、高鲁棒性的机器人室内定位方法,设计了人工路标的形状,利用改进的SURF特征点匹配算法对全景图像中路标进行识别,通过识别到三个路标的位置进行机器人在二维空间的绝对定位。其中:
[0029](I)基于SURF特征点检测算法的路标设计,设计的路标具有较多的特征点,易于识别和精确定位;
[0030](2)对传统的SURF特征点匹配算法进行改进,提高算法运行的快速性与识别的准确性,在全景图像中快速的对设计的路标进行准确识别;
[0031](3)根据对环境中设置的三个路标的识别结果计算出机器人在所在二维空间的准确位置。
[0032]在一些实施方式中,人工路标的设计具体为:
[0033](I)利用SURF特征点提取算法对圆、三角形、四边形、五边形等基础几何形状进行特征点检测,记录每个形状的特征点数;
[0034](2)将这些形状放置于不同的环境下,利用全景视觉对其成像,记录图像中的每几何形状的特征点与形状模版特征点的匹配率;
[0035](3)通过对记录的数据进行分析综合设计出易于识别的路标形状,该路标具有不易于被误识别的特征点、且特征点较多有利于识别,另外设计的路标中心的形状有利于对其进行精确定位。
[0036]在一些实施方式中,改进的SURF特征点匹配算法具体为:
[0037](I)根据折反射式全景相机的成像原理,在全景图像中存在一个以图像图心为圆心的圆,与曲面镜焦点位于同一水平面上的物点将会成像在这个圆上,利用该圆特性将路标设置于高于摄像机的墙壁上,特征点检测时将圆内的像素置零,减小了搜索区域,排除了部分干扰;
[0038](2)设置了一个圆形的检测窗口,通过实验确定了窗口的合适半径,进一步缩小了特征点检测区域,尽可能的精简搜索区域,缩短了运算时间;
[0039 ] (3)通过对路标外轮廓的提取,确定了路标中心圆的轮廓,通过计算中心圆的圆心实现了路标的精确定位。
[0040](4)成功识别路标后将识别到的路标作为新的模板,实时更新模板。
[0041 ]在一些实施方式中,定位方法设计具体为:
[0042](I)在环境中放置三个高于机器人的路标,利用本发明的路标识别方法对三个路标进行识别,确定其在全景图像中的坐标,计算出与全景图心的夹角;
[0043](2)根据两个角度值与已知的路标实际坐标确定两个圆方程;
[0044](3)将两个圆方程联立求得两个交点,其中一个为中间路标的坐标,另一个即为机器人的二维坐标。
[0045](I)基于特征点匹配的路标设计
[0046]首先设置了一些基本形状的路标进行实验,包括圆环、三角形、矩形、五边形、六边形和五角星,选择轴对称的形状是为了方便求取中心点从而进行定位,尺寸为290mmX400mm。将这些路标放置在三个不同的室内环境中,利用全景视觉采集图像、检测特征点。将路标均置于距相机3m远的位置,将检测到的特征点和模板进行匹配,根据特征点的正确匹配数量分析出:正确匹配到的特征点数与其角点数量成正比。因此设计了如图1所示的路标形状。对称的形状保证各个视角都具有相同的识别度;路标中存在较多的角点保证较高的识别率;中心的圆形有利于对路标的精确定位。
[0047](2)改进的基于SURF特征点匹配的路标识别算法
[0048]为了提高算法的运行速度和识别成功率,利用一系列手段缩小路标检测区域。动态更新路标模版来消除图像畸变带来的影响,最终设计识别算法流程图参见图2。
[0049]首先,根据全景相机成像原理,在曲面镜理想情况下,在全景图像中存在一个以图像图心为圆心的圆,与曲面镜焦点位于同一水平面上的物点将会成像在这个圆上。室内机器人的运动空间为平面,则该圆上的像素点始终为同一水平面上的物点,高于这一高度的物体对应的像素位于该圆上方。为了避免地面物体的遮挡,路标的放置高度大于机器人上全景相机的安装高度。因此可以利用这一特性将位于该圆外的像素作为特征点检测区域,其余像素全部忽略,这样既提高了运行速度,而且排除了一部分干扰点,提高了匹配率。
[0050]然后,将识别到的路标中心作为圆心设置一个圆形的检测窗口,将该圆内的区域作为下一次检测特征点的区域,进一步的缩小了检测区域。根据成像原理和移动机器人的实际速度,确定机器人在运动情况下路标单位时间内在全景图像中的移动距离,设为P个像素,设路标识别算法运行周期为t,则圆形检测窗口半径为P*t,求得P为305个像素,取t =ls,经试验该半径的检测窗口在机器人运动时不影响路标的识别,进一步提高了识别速度、排除了部分干扰点。
[0051]接下来,针对全景图像存在畸变且不同视角下畸变形状不同,本发明通过实时更新路标模板的方法,在初始化路标模板之后将每次匹配到的特征点所在的路标作为新的模板,配合上缩小检测区域的方法,在运算周期短的情况下机器人运动一小段距离就会更新一次模板,得以保证模板匹配的准确性。
[0052]最后,在确定路标的所在区域后,为了获取较高的定位精度,需要确定路标中心所在的精确位置,即对本文设计的路标中圆的圆心进行定位。首先对检测到的区域从背景中分离,利用Canny算子提取路标的边缘信息。由于路标中心圆的轮廓所占的像素很少且畸变较严重,所以很难利用霍夫圆检测等手段检测出中心圆。本发明首先通过搜索面积最大的轮廓找到路标的外边缘,在此基础上求出路标整体的图心,而中心圆是离图心距离最近的一个轮廓,因此离图心距离最小的一组封闭的像素序列即是路标的中心圆,求出该轮廓的中心既是路标中心的位置。
[0053](3)定位算法
[0054]参见图3,该系统由三个以上路标、装有全景摄像机的移动机器人和数据处理系统组成。利用三个设置好的人工路标,采用基于全景视觉的三角定位算法实现机器人定位。三角定位算法即在试验环境中放置三个以上的人工路标,利用三个路标在全景图像中相对于机器人的角度关系根据几何原理从而确定机器人在二维空间的坐标。其算法原理是:如果已知两个路标的坐标,?1(11,71),?2(12,72)和从机器人到两个路标连线间的夹角&1也可以在识别路标成功后直接求得,则可以根据这三个量确定一个圆,根据同弧所对的圆周角相等的原理,机器人必在这个圆上,且这个圆满足如下的条件:
[0055]l)Pl(xl,yl),P2(x2,y2)满足圆的方程;
[0056]2)机器人到两个路标的夹角等于m。
[0057]这样任意两个路标和它们的夹角就对应于一个圆的方程,当图像中的路标个数为N,且N多3时,可以得到Ν(Ν-1)/2个圆方程。由于是从同一视点看多个路标,视点一定在这些圆的交点上,求解这些圆方程的交点即为该视点的坐标也就是摄像机光心的坐标,即机器人位置。
【主权项】
1.一种基于全景视觉的快速、高鲁棒性的机器人室内定位方法,其特征在于,包括如下步骤: (1)设计基于SURF特征点的路标; (1.1)利用SURF特征点提取算法对圆、三角形、四边形、五边形的基础几何形状进行特征点检测,记录每个形状的特征点数; (1.2)将这些形状放置于不同的环境下,利用全景视觉对其成像,记录图像中的每几何形状的特征点与形状模版特征点的匹配率; (I.3)通过对记录的数据进行分析,综合设计出易于识别的路标形状; (2)在全景图像中使用改进的SURF特征点匹配算法快速的对设计的路标进行准确识别; (2.1)根据折反射式全景相机成像原理,在全景图像中存在一个以图像图心为圆心的圆,与曲面镜焦点位于同一水平面上的物点将会成像在这个圆上,利用该圆特性将路标设置于高于摄像机的墙壁上,特征点检测时将圆内的像素置零; (2.2)设置一个圆形的检测窗口,通过实验确定窗口的合适半径,进一步缩小特征点检测区域,精简搜索区域,缩短运算时间; (2.3)通过对路标外轮廓的提取,确定了路标中心圆的轮廓,通过计算中心圆的圆心实现路标的精确定位; (2.4)成功识别路标后将识别到的路标作为新的模板,实时更新模板; (3)根据对环境中设置的三个路标的识别结果计算出机器人在所在二维空间的准确位置; (3.1)在环境中放置三个高于机器人的路标,对三个路标进行识别,确定其在全景图像中的坐标,计算出与全景图心的夹角; (3.2)根据两个角度值与已知的路标实际坐标确定两个圆方程; (3.3)将两个圆方程联立求得两个交点,其中一个为中间路标的坐标,另一个即为机器人的二维坐标。
【文档编号】G01C21/00GK106092086SQ201610407064
【公开日】2016年11月9日
【申请日】2016年6月12日
【发明人】朱齐丹, 刘鹏, 蔡成涛, 吕晓龙
【申请人】哈尔滨工程大学