一种基于改进ORB算法的移动机器人定位方法与流程

文档序号:17941098发布日期:2019-06-18 23:06阅读:209来源:国知局
一种基于改进ORB算法的移动机器人定位方法与流程

本发明涉及移动机器人定位技术领域,更具体地说,涉及一种基于改进orb算法的移动机器人定位方法。



背景技术:

近年来,随着人工智能技术的发展,移动机器人得到了广泛应用,其将人员从繁重体力劳动中解放出来,同时也有效节约了人力成本,移动机器人在其长距离行进过程中需要实时获得其定位信息,常用的移动机器人导航方法包括磁导航、惯性导航、视觉导航等,磁导航可靠性较高,但成本较高且维修困难;惯性导航是移动机器人常用的导航方式,因其会导致累积误差无限增大而不适合长时间精确导航,目前常用的移动机器人导航方式为基于网格的运动统计组合导航方式,这种导航方法虽然稳定性高,但有较大的累积误差。

orb算法是一种基于视觉信息的特征点检测与描述算法,其使用fast(featuresfromacceleratedsegmenttest)算法检测某一待测特征点及周围区域内的像素值,该区域一般为圆形区域,同时,orb算法采用brief(binaryrobustindependentelementaryfeatures)算法进行特征点描述,在特征点附近选取若干对随机点,比较每一对随机点的像素大小并进行二进制赋值,然后组合成一个二进制编码,即为特征描述子,根据匹配点与非匹配点的hamming距离设定阈值,实现匹配,orb算法对fast特征加入了方向信息,同时在特征描述时采用了brief描述子,并对其进行了改进,使其描述子对噪声和旋转具有较好的鲁棒性,尽管orb算法具有较快的运算速度,并且对噪声和图像旋转变化都具有较好的性能,但是由于fast特征不具有尺度不变性,所以对于图像的尺度改变不具有鲁棒性。

基于视觉里程计定位是目前较为新颖的一种移动机器人定位技术,机器人通过摄像机采集图像特征,根据图像特征和运动约束融合信息进行位姿估计和自主导航,随机采样一致性(randomsampleconsensus,ransac)算法是常用的视觉特征配准算法之一,但ransac算法的误匹配率和复杂度较高。



技术实现要素:

1.要解决的技术问题

针对现有技术中存在的问题,本发明的目的在于提供一种基于改进orb算法的移动机器人定位方法,它可以实现利用sift算法提取具有尺度不变性的特征点,再进行brief描述得到描述子,最后利用一种基于评分框架的gms特征配准算法显著提高匹配质量,具有较好的实时性和特征匹配准确率,有效减少了自主导航中里程计累积误差,提高了移动机器人自主定位精度。

2.技术方案

为解决上述问题,本发明采用如下的技术方案。

一种基于改进orb算法的移动机器人定位方法,包括移动机器人和计算机,包括以下步骤:

(1)输入图像对:移动机器人通过摄像机实时采集图像,并将图像实时传输至计算机进行图像处理;

(2)图像网格化:利用gms算法采用网格将图像分割为g=20*20的不重叠单元;

(3)orb描述子:利用orb算法检测提取的特征点再通过brief算法进行特征点描述得到描述子;

(4)贝叶斯视觉建模;

(5)网络加权统计;

(6)网络统计值匹配:利用基于评分框架的gms特征配准算法,由于运动平滑性使匹配特征点邻域有较多正确匹配对,将正确和错误匹配特征数非线性函数作为评分函数,根据设定阈值确定特征匹配标准;

(7)输出匹配结果。

本方案可以实现利用sift算法提取具有尺度不变性的特征点,再进行brief描述得到描述子,最后利用一种基于评分框架的gms特征配准算法显著提高匹配质量,具有较好的实时性和特征匹配准确率,有效减少了自主导航中里程计累积误差,提高了移动机器人自主定位精度。

进一步的,步骤(3)的具体步骤如下:

(3-1)特征点检测:首先采用sift的方法将原图像和高斯核函数卷积构造尺度空间,构造金字塔,对不同尺度的图像进行极值点检测,这样获得的极值点具有尺度不变性,然后通过拟合函数对离散空间点进行插值获得连续空间极值点,确定关键点的位置和尺度;

(3-2)描述子生成:采用brief描述方法对特征点进行描述,brief特征描述子是对图像块二值数字串的描述,通过对比二值数字串的图像灰度,将得到的结果组成二值数字串的形式,二值的具体判断为:

式中p(x)代表图像块p在点x处的灰度值,选择n个(x,y)测试点对,生成的n维二进制数字串为:

具体做法是以关键点为圆心,以一定的长度为半径画圆,在圆内以某一模式选择若干点对,通过上式方法比较每个点对的结果,将比较的结果组成二值字符串即为该特征点的描述子。

进一步的,所述步骤(3-1)中为增加描述子的旋转不变性,采用sift方法通过直方图统计关键点邻域内像素梯度和方向,将直方图峰值所在方向为关键点的主方向。

进一步的,所述步骤(3-2)为了保证描述子具有旋转一致性,采用sift方法将坐标轴旋转作为关键点的方向,以确保旋转不变性。

进一步的,步骤(6)的具体步骤如下:

通过计算匹配对领域的得分来对邻域进行归类,给定单元对{i,j},则得分为:

式中|xik,jk|是单元对{ik,jk}间的匹配对个数,k是匹配i的不相交的区域个数,网格时g=20*20,特征点个数为10000,这样每个单元的特征点n=25,通过得分sij将单元对划分为正确和错误集合为{t,f}:

式中ai是阈值,α=6,ni是所有特征点的个数,当得分sij大于一定的阈值时,则为正确的匹配邻域,那么只保留该区域的所有匹配对。

进一步的,步骤(2)的具体步骤如下:

利用网格将图像分割为g=20*20的不重叠单元,并采用半格宽度在x,y方向上移动网格模式并重复三次,解决实际应用中许多点位于网格边缘的问题。

3.相比于现有技术,本发明的优点在于:

(1)本方案可以实现利用sift算法提取具有尺度不变性的特征点,再进行brief描述得到描述子,最后利用一种基于评分框架的gms特征配准算法显著提高匹配质量,具有较好的实时性和特征匹配准确率,有效减少了自主导航中里程计累积误差,提高了移动机器人自主定位精度。

(2)在orb算法的基础上,针对orb算法不具有尺度不变性的缺点进行了改进,将sift具有较好的尺度不变性结合到orb算法上,为使描述子具有旋转不变性,采用了sift算法中一特征点主方向建立坐标轴的方式,得到具有旋转不变性的brief描述子,最后采用基于评分框架的gms特征配准算法实现精确匹配。

附图说明

图1为本发明的方案流程图;

图2为本发明orb算法与改进的orb算法5幅影像的运行时间对比图;

图3为本发明orb算法与改进的orb算法5幅影像的准确率对比图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述;显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本发明的描述中,需要说明的是,术语“上”、“下”、“内”、“外”、“顶/底端”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。

在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“设置有”、“套设/接”、“连接”等,应做广义理解,例如“连接”,可以是固定连接,也可以是可拆卸连接,或一体地连接,可以是机械连接,也可以是电连接,可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通,对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。

实施例1:

请参阅图1-3,一种基于改进orb算法的移动机器人定位方法,包括移动机器人和计算机,计算机的实验运行环境为intel(r)core(tm)i5-4590m3.3ghz4gb,vs2013和opencv3.2,包括以下步骤:

(1)输入图像对:移动机器人通过摄像机实时采集图像,并将图像实时传输至计算机进行图像处理;

(2)图像网格化:利用gms算法采用网格将图像分割为g=20*20的不重叠单元;

(3)orb描述子:利用orb算法检测提取的特征点再通过brief算法进行特征点描述得到描述子;

(4)贝叶斯视觉建模;

(5)网络加权统计;

(6)网络统计值匹配:利用基于评分框架的gms特征配准算法,由于运动平滑性使匹配特征点邻域有较多正确匹配对,将正确和错误匹配特征数非线性函数作为评分函数,根据设定阈值确定特征匹配标准;

(7)输出匹配结果。

步骤(3)的具体步骤如下:

(3-1)特征点检测:首先采用sift的方法将原图像和高斯核函数卷积构造尺度空间,构造金字塔,对不同尺度的图像进行极值点检测,这样获得的极值点具有尺度不变性,然后通过拟合函数对离散空间点进行插值获得连续空间极值点,确定关键点的位置和尺度;

(3-2)描述子生成:采用brief描述方法对特征点进行描述,brief特征描述子是对图像块二值数字串的描述,通过对比二值数字串的图像灰度,将得到的结果组成二值数字串的形式,二值的具体判断为:

式中p(x)代表图像块p在点x处的灰度值,选择n个(x,y)测试点对,生成的n维二进制数字串为:

具体做法是以关键点为圆心,以一定的长度为半径画圆,在圆内以某一模式选择若干点对,通过上式方法比较每个点对的结果,将比较的结果组成二值字符串即为该特征点的描述子。

步骤(3-1)中为增加描述子的旋转不变性,采用sift方法通过直方图统计关键点邻域内像素梯度和方向,将直方图峰值所在方向为关键点的主方向。

步骤(3-2)为了保证描述子具有旋转一致性,采用sift方法将坐标轴旋转作为关键点的方向,以确保旋转不变性。

步骤(6)的具体步骤如下:

通过计算匹配对领域的得分来对邻域进行归类,给定单元对{i,j},则得分为:

式中|xik,jk|是单元对{ik,jk}间的匹配对个数,k是匹配i的不相交的区域个数,网格时g=20*20,特征点个数为10000,这样每个单元的特征点n=25,通过得分sij将单元对划分为正确和错误集合为{t,f}:

式中ai是阈值,α=6,ni是所有特征点的个数,当得分sij大于一定的阈值时,则为正确的匹配邻域,那么只保留该区域的所有匹配对。

步骤(2)的具体步骤如下:

利用网格将图像分割为g=20*20的不重叠单元,并采用半格宽度在x,y方向上移动网格模式并重复三次,解决实际应用中许多点位于网格边缘的问题。

移动机器人从起点按照预设路径到达指定位置,导航过程中移动机器人实时避障路径规划,根据特征配准更新当前时刻位姿,实现自主定位和地图更新,移动机器人采用基于评分框架的gms算法将当前图像特征与地图库中三维路标匹配,根据里程计和特征匹配融合信息实现位姿和地图更新,本发明可以实现利用sift算法提取具有尺度不变性的特征点,再进行brief描述得到描述子,最后利用一种基于评分框架的gms特征配准算法显著提高匹配质量,具有较好的实时性和特征匹配准确率,有效减少了自主导航中里程计累积误差,提高了移动机器人自主定位精度。

请参阅图1,在orb算法的基础上,针对orb算法不具有尺度不变性的缺点进行了改进,将sift具有较好的尺度不变性结合到orb算法上,为使描述子具有旋转不变性,采用了sift算法中一特征点主方向建立坐标轴的方式,得到具有旋转不变性的brief描述子,请参阅图3,最后采用基于评分框架的gms特征配准算法实现精确匹配,匹配准确率得到显著的提升,请参阅图2改进算法还保留有传统orb算法的高运行速度。

以上,仅为本发明较佳的具体实施方式;但本发明的保护范围并不局限于此。任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其改进构思加以等同替换或改变,都应涵盖在本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1