基于多机器人协同的激光SLAM地图方法与流程

文档序号:18084085发布日期:2019-07-06 10:21阅读:692来源:国知局
基于多机器人协同的激光SLAM地图方法与流程

本发明属于激光slam地图技术领域,特别是涉及一种基于多机器人协同的激光slam地图方法。



背景技术:

近年来,随着slam在单体机器人上应用的稳步推进,将现有的slam方法应用到多机器人系统的构思越来越受到关注。与单机器人系统相比,多机器人系统在执行效率、容错性、鲁棒性、可重构性和硬件成本等方面都更具优势,并且能够在人类难以到达的未知环境中执行抢险救灾、资源勘探和空间探测等特殊任务,然而在实际大尺度环境中实现多机器人协同工作则依然是困难重重,其主要原因可归纳如下:

(1)成本问题。拥有slam的单机器人成本(包括硬件、软件和知识产权)过高,尤其拥有3dslam的机器人其市场价大都在百万以上,所以对多机器人系统的推广和产业化带来一定的阻力。

(2)通信问题。在实际大尺度环境中机器人之间的通讯范围往往受限,或缺乏地理信息(如室内无法获取gps或北斗定位信息)时,所有假设机器人之间的通讯不受限的slam算法都将失去意义。

(3)数据关联问题。通常的slam算法是通过传感器的观测值和环境预设路标来回避数据关联问题的缺陷,但是当在未知环境中预设路标不存在时,或者多机器人之间在没有各自相对位置的先验知识情况下,机器人如何能够定位自己在地图中的位置而不会出现所谓“失踪”的问题呢?

(4)地图存储问题。地图是解决slam问题的核心,而地图的容量是随机器人的活动范围呈指数增长的,尤其对3d激光传感器和视觉传感器而言,其所采集的信息点属性丰富且多样,所以需要保存地图的信息量可想而知。对机器人而言,其数据存储量和计算量将随着地图的增大而急剧增大,各种成本也将随之攀升,所以机器人性能的优劣直接制约着地图的应用程度。因此如何能够将地图压缩在可控范围内以及如何能够快速且无损耗提取,是降低单机器人成本的关键,同时也是扩展单机器人活动范围、促进多机器人系统商品化和产业化的关键。

(5)地图融合问题。就slam机器人的原理而言,机器人采用不同的传感器,以及在机器人构图时不同的起点位置,其所构建的地图都是不同的,同一张地图也不能被非构图机器人所使用,这就是slam地图的信息融合问题。其具体表现在单机器人slam算法中的多传感器获取的环境信息融合问题和多机器人各自构建的局部地图的信息融合问题。由于机器人放置位置的随机性、环境大小的可变性、以及多机器人的可扩展性都会为地图信息融合问题的解决带来阻力,而目前对该问题的研究尚在探索之中,所以地图信息融合问题已成为当前移动机器人尤其是多移动机器人slam应用发展的瓶颈。



技术实现要素:

本发明的目的就是提供一种基于多机器人协同的激光slam地图方法,能完全解决上述现有技术的不足之处。

本发明的目的通过下述技术方案来实现:

一种基于多机器人协同的激光slam地图方法,包括的方法有:

步骤1.将slam地图实现栅格化转换;

步骤2.将栅格地图拼接问题用图像配准的最小化问题来表示,并建立数学模型,给出基于icp算法的迭代求解方法;

步骤3.利用基于卷积神经网络的地图匹配算法从待拼接栅格地图中多目标提取局部不变特征点,建立模板特征点到模板中心的向量集,并结合搜索全局地图中对应匹配点位置,估计子图副本的中心位置,并以此作为初始拼接参数;

步骤4.将拼接参数作为icp算法的初值,求解目标函数,最终实现栅格子地图到栅格全局地图的融合;

步骤5.利用地图的稀疏表示与低秩矩阵重建算法,实现对地图的压缩与提取;

同样,利用步骤2-4实现栅格全局地图到栅格子地图的拆分。

进一步,所述机器人为通用移动机器人。

进一步,激光slam地图为二维slam地图。

进一步,移动机器人采集图像为二维特征地图。

进一步,地图方法的形式包括旋转、平移、缩放、拼接以及裁剪。

与现有技术相比,本发明的有益效果在于:

1.与3dslam算法相比,2dslam算法相对简单、成熟,且其所对地图的存储量要求不高,这样可以大大降低机器人自身的计算量和存储量,从而可以从根本上降低单个机器人的软硬件成本。

2.由于采用2dslam算法,其地图本身的信息类型相对不大,所以对数据关联问题的处理,与3dslam算法相比较为容易处理。

3.实现本技术的目标是建立和维护一张所有机器人共有的地图,即使有部分区域或个别机器人存在通信问题,通过各机器人自身所携带的地图一样可以实现定位与导航。

4.本技术提出的均匀化稀疏表示方法以及在此基础上的低秩矩阵重建,可以大大压缩地图的存储容量,同时也可保证地图的提取需要。

5.本技术所提出的基于卷积神经网络匹配的多机器人的二维地图融合算法,可以为大尺度未知环境下多机器人2d地图融合问题的解决提供一种新的尝试。

附图说明

图1是本发明的流程图;

图2是卷积神经网络vgg模型各层特征图;

图3是地图融合前的拼接效果图;

图4是地图融合后的拼接效果图;

图5是n阶小波变换示意图;

图6是均匀化后的n阶小波变换示意图。

具体实施方式

下面结合具体实施例和附图对本发明作进一步的说明。

如图1至图4所示,一种基于多机器人协同的激光slam地图方法,本方法在基于低成本的单线激光传感器的2d实时slam(即时定位与地图构建)快速重建上,利用相对成熟的2dslam技术、改进的图像配准技术、地图压缩与提取技术、以及卷积神经网络的点云配准算法,实现2dslam地图的拼接与拆分,并保证多机器人在该地图上的定位与导航。通过该技术的实施,可以为多机器人系统产品化提供新的尝试,同时也可以为3dslam技术的发展奠定基础和提供依据。其技术的具体步骤如下(如图1所示):

步骤1.将slam地图实现栅格化转换;

步骤2.将栅格地图拼接问题用图像配准的最小化问题来表示,并建立数学模型,给出基于icp算法的迭代求解方法;

步骤3.利用基于卷积神经网络的地图匹配算法从待拼接栅格地图中多目标提取局部不变特征点,建立模板特征点到模板中心的向量集,并结合搜索全局地图中对应匹配点位置,估计子图副本的中心位置,并以此作为初始拼接参数,如图2所示;

步骤4.将拼接参数作为icp算法的初值,求解目标函数,最终实现栅格子地图到栅格全局地图的融合;

步骤5.利用地图的稀疏表示与低秩矩阵重建算法,实现对地图的压缩与提取。

同样,利用步骤2-4也可以实现栅格全局地图到栅格子地图的拆分。

地图融合前与融合后效果,如图3和图4所示。

其具体方法及解决的问题如下:

本技术针对多机器人协同构图时通信范围受限或缺乏地理信息等问题,提出了一种基于卷积神经网络匹配的多机器人的二维地图融合方法。该方法是完全分布式的,且不依赖于任何特殊的机器人通信网络结构,利用基于卷积神经网络的地图匹配算法,实现局部地图的边缘提取特征点,并与全局栅格地图中的信息数据进行匹配,以实现局部子地图与全局地图的动态融合。同时,该算法利用机器人所测局部地图的历史数据和当前数据之间的新增信息,通过渐近收敛的方式获取准确的全局地图,以保证在每次迭代过程中全局地图无偏性。

1.针对传统栅格地图格式无法满足现实需要问题

传统的概率栅格地图是将整个环境分割为均匀的单元栅格,每个栅格赋一个0或1区间的值,0意味着完全为空,1意味着完全占用。这样这个环境空间分为占用空间和空置空间,增加分辨率便意味着增加运行时间和计算机内存的消耗。但是随着人们探测环境的不断扩大和非结构化,环境实体的高维性,不仅导致环境信息的海量存储增加和海量计算增大,同时也为海量数据的融合带来更大的阻力。

传统的尺度均一栅格地图格式,由人为经验确定栅格的尺度,并且每个栅格的尺度大小均是一样的。这种主观划分栅格尺度的方法,使得地图存储容量海量增长,且难以满足大尺度环境地图表达的需要。为此,本课题针对传统栅格地图格式无法满足非结构化、动态、大尺度环境的研究,提出基于均匀化稀疏表示的栅格大小自适应地图创建算法。

二维图像经稀疏变换后的系数矩阵往往具有集群分布的现象,如图5所示,二维图像经离散小波变换之后,较大系数所占的比例较小,它们集中分布在低频的子带上且包含了图像的主要信息;还有少部分系数零散分布在各个高频的子带上,它们包含着图像的轮廓信息,也是图像得以重构的关键。

而图6所示方法,是按照子带频率的高低顺序,将每个子带的系数重新按行排布成一个行数值固定的长矩阵,其每一列数据表示一个新组成的待观测的向量。这种对于非零系数的均匀化操作可使重要系数近似均匀的分布到各个待观测的列向量中,从而大大降低精确重构对rs码译码半径的要求,提高其实际应用价值。

2.针对大尺度未知环境下多机器人地图融合问题

由于机器人放置位置的随机性、环境大小的可变性、以及多机器人的可扩展性都会为地图信息融合问题的解决带来阻力,而目前对该问题的研究尚在探索之中,所以地图信息融合问题已成为当前slam移动机器人尤其是多移动机器人应用发展的瓶颈。

在移动机器人创建栅格地图的过程中,环境被划分成等分辨率的平面栅格。栅格地图中每个像素对应为环境中的一个栅格,假设同一环境下不同机器人所创建的二维栅格地图是数据地图p和模型地图q,且这两幅地图存在一定的重叠区域。利用基于卷积神经网络的地图匹配算法可以从待拼接的栅格地图中分别提取边缘像素点集,数据点集和模型点集设pξ为p的子集,其代表地图p中与地图q重叠区域的边缘像素点集,其中ξ定义为数据点集p的重叠百分比,则栅格地图融合问题可视为图像配准问题,即通过计算二维坐标系刚体变换t={r,t}[30],使得经过变换后的数据点集t(p)能很好的与模型点集q匹配在一起。由此,栅格地图融合问题可进一步表示为如下最小化问题:

s.t.rtr=i2×2,det(r)=1

其中λ为控制参数,|·|为集合的势,代表集合中的元素个数,ξmin表示允许的最小重叠百分比。为便于计算式(1),可采用拟改进的迭代最近点算法(iterativeclosestpoint,icp)。该算法步骤如下:

步骤1:基于前一次迭代获得的刚体变换(rk-1,tk-1),建立点集之间点的对应关系:

为建立点对关系本技术采用基于卷积神经网络的地图匹配算法的多目标分离匹配方法。

步骤2:根据当前建立的点对关系,计算重叠百分比ξk,并更新相应的子集

步骤3:利用更新后的子集计算最新的刚体变换结果(rk,tk):

由于本课题只涉及二维图像点集,所以可采用简单的最小二乘法计算式(4)。

设pi=(xi,yi)t利用式(4),分别对参数(θ,tx,ty)求偏导数,得3个方程,并联立,即可获得当前最新的刚体变换结果:

其中,

重复执行步骤1-3,直到满足|εk-εk-1|<ε,或迭代次数k达到指定的阈值,其中

采用此种拟改进的icp算法虽然保留了原始icp中的迭代思想和原理,具有局部收敛性,但是为了获取全局最优解,该算法还需要较好地初值,所以这也是本课题未来研究的方向之一。

3.针对子图边缘特征点匹配中难以分离检测的问题

由于基于2d激光雷达所采集的信息点属性单一,且局部子地图边缘特征点相似度较高、较多,存在难以分离检测的情况,所以在进行地图融合时会降低匹配成功率。

本项目改进后算法步骤如下:

1)输入源样本纹理到卷积神经网络vgg(visualgeometrygroup)模型计算各层特征图;

2)计算各层特征图的边缘信息并保留;

3)把保留的各层特征图的边缘信息进行叠加;

4)对各层进行梯度下降,输出gram矩阵生成对应的纹理图像。

本发明的优势在于:

①.与3dslam算法相比,2dslam算法相对简单、成熟,且其所对地图的存储量要求不高,这样可以大大降低机器人自身的计算量和存储量,从而可以从根本上降低单个机器人的软硬件成本。

②.由于采用2dslam算法,其地图本身的信息类型相对不大,所以对数据关联问题的处理,与3dslam算法相比较为容易处理。

③.实现本技术的目标是建立和维护一张所有机器人共有的地图(底图),即使有部分区域或个别机器人存在通信问题,通过各机器人自身所携带的地图(底图的子集)一样可以实现定位与导航。

④.本技术提出的均匀化稀疏表示方法以及在此基础上的低秩矩阵重建,可以大大压缩地图的存储容量,同时也可保证地图的提取需要。

⑤.本技术所提出的基于卷积神经网络匹配的多机器人的二维地图融合算法,可以为大尺度未知环境下多机器人2d地图融合问题的解决提供一种新的尝试。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

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