同步定位与建图方法技术

技术编号:14399164 阅读:74 留言:0更新日期:2017-01-11 12:30
本公开的实施例关于一种同步定位与建图方法,包括基于帧间运动的大小从所述图像帧中选出关键帧序列,基于关键帧序列的帧间匹配结果将图像帧导入姿态图,基于姿态图构建一个或多个有效检测回环以用于进行捆集调整以及基于所捆集调整的姿态图修正图像帧。该方法可以有效压缩优化计算的规模。

【技术实现步骤摘要】

本公开属于机器视觉领域,尤其是涉及一种同步定位和建图方法。
技术介绍
现阶段机器人和/或自动驾驶交通工具的移动大多依靠人工路径规划,机器人和/或自动驾驶交通工具的自主导航能力依赖于同步定位与建图技术(SimultaneousLocalizationandMapping,以下简称为SLAM)。其旨在解决当机器人和/或自动驾驶交通工具进入未知工作环境时,利用传感器信息,对周围环境高效率且准确地进行构建(Mapping),同时得到设备在空间中的位置与姿态(Localization)。除了可以应用在机器人领域外,虚拟现实与增强现实设备的空间追踪以及自动驾驶也同样可以使用SLAM技术。SLAM问题自提出以来已经过去了近30年,这期间SLAM问题所用的传感器与计算方法都发生了巨大的变化。现在的SLAM技术大多采用视觉为主的传感器,包括单目传感器,多目传感器,以及彩色图像及深度信息(RGB-D)的传感器等。现阶段主流的基于视觉的SLAM方案可根据优化方法分为两类,一类为使用滤波器的SLAM方法,另一类的是使用图优化的SLAM方法。使用滤波器的SLAM方案模型构建比较简单,但误差会逐渐累计不可修复。在这类方法中,Davison等人在文献“A.Davison,I.Reid,andN.Molton.MonoSLAM:Real-TimeSingleCameraSLAM.IEEETransactionsonPatternAnalysisandMachineIntelligence,pp.1052-1067,2007.”中提出的MonoSLAM方案是基于扩展卡尔曼滤波器(简称EKF)的单目传感器SLAM方案,通过在图像中构建路标点并使用EKF对SLAM进行模型构建而求解。是基于滤波器的SLAM中比较优秀的方案。使用图优化方法的SLAM方案由于要构建姿态图往往运算量比较大。在这类方法中,Artal等人在文献“R.Artal,J.Montiel,andJ.Tardos.ORB-SLAM:AVersatileandAccurateMonocularSLAMSystem.WorkshoponResearch,EducationandDevelopmentofUnmannedAerialSystems,pp241-248,2015.”中提出的ORB-SLAM是目前基于图优化方法的单目视觉SLAM最优方案。ORB-SLAM通过对图像提取ORB特征描述符(一种提取速度极快的特征描述符),可以达到很高的速度。并且通过完善的图优化操作,得到的地图也具有很高的精确度。以上两种方法是目前视觉SLAM采用滤波器或图优化方法中比较有代表性的方案,也是实际使用中比较主流的方案。但现有方法仍有一定不足。首先单目SLAM方案难以估计现实世界的尺度,往往难以构建出准确规模的地图;其次SLAM方案生成的一般是三维点云地图,由空间中的散点构成,在空间上不具备连续性,无法用于导航;另外基于图优化方案的SLAM会将每帧图像加入姿态图进行优化,会导致姿态图过大优化速度慢。
技术实现思路
本公开的实施例关于一种同步定位与建图方法,包括基于帧间运动的大小从多个图像帧中选出关键帧序列,基于关键帧序列的帧间匹配结果将多个图像帧导入姿态图,基于姿态图构建一个或多个有效检测回环以用于进行捆集调整以及基于所捆集调整的姿态图修正多个图像帧。在一些实施例中,多个图像帧包括彩色图像和深度图像两者。在一些实施例中,将修正的多个图像帧变换为三维点云并拼接为点云地图。在一些实施例中,基于八叉树建图将点云地图转化为三维栅格地图。在一些实施例中,关键帧序列包括多个图像帧的第一帧。在一些实施例中,基于帧间运动的大小选出关键帧序列包括当图像帧与关键帧序列中的最后一帧之间帧间运动的值在第一帧间运动阈值以上且在第二帧间运动阈值以下时,将该图像帧添加入关键帧序列作为新的最后一帧。在一些实施例中,当图像帧与关键帧序列中的最后一帧之间帧间运动的值小于第一帧间运动阈值或大于第二帧间运动阈值时,丢弃该图像帧并导入下一图像帧。在一些实施例中,姿态图包括代表相机姿态的状态变量的节点和代表不同姿态运动变换关系的连接节点的边。在一些实施例中,姿态图基于每一图像帧与其前后帧之间的运动变换关系而形成为线状。在一些实施例中,构建检测回环包括在具有至少一个可匹配特征点的非相邻节点之间建立运动变换关系。本公开的实施例引入深度图像准确估计环境的尺度,通过八叉树建图建立三维彩色栅格地图用于导航,并且提取关键帧加入姿态图,有助于压缩图优化规模从而提高优化速度和/或效率。该方法相比于同类算法有20%-50%的效率提升,通过引入深度图像信息获得了比较准确的现实环境地图尺度,以及使用八叉树建图得到的彩色三维栅格地图可以直接用于导航。附图说明本公开提供了附图以便于所公开内容的进一步理解,附图构成本申请的一部分,但仅仅是用于图示出体现专利技术概念的一些专利技术的非限制性示例,而不是用于做出任何限制。图1是根据本公开一些实施例的同步定位与建图方法的流程图。图2分别是根据本公开一些实施例的同步定位与建图方法所建立的地图在优化之前与之后的三维点云地图。图3是根据本公开一些实施例建立栅格地图的示意图。图4是根据本公开一些实施例在姿态图中构建检测回环的示意图。具体实施方式下文将使用本领域技术人员向本领域的其它技术人员传达他们工作的实质所通常使用的术语来描述本公开的专利技术概念。然而,这些专利技术概念可体现为许多不同的形式,因而不应视为限于本文中所述的实施例。提供这些实施例是为了使本公开内容更详尽和完整,并且向本领域的技术人员完整传达其包括的范围。也应注意这些实施例不相互排斥。来自一个实施例的组件、步骤或元素可假设成在另一实施例中可存在或使用。在不脱离本公开的实施例的范围的情况下,可以用多种多样的备选和/或等同实现方式替代所示出和描述的特定实施例。本申请旨在覆盖本文论述的实施例的任何修改或变型。对于本领域的技术人员而言明显可以仅使用所描述的方面中的一些方面来实践备选实施例。本文出于说明的目的,在实施例中描述了特定的数字、材料和配置,然而,领域的技术人员在没有这些特定细节的情况下,也可以实践备选的实施例。在其它情况下,可能省略或简化了众所周知的特征,以便不使说明性的实施例难于理解。此外,下文为有助于理解说明性的实施例,将各种操作依次描述为了多个离散的操作;然而,所描述的顺序不应当被认为是意味着这些操作必须依赖于该顺序执行。而是不必以所呈现的顺序来执行这些操作。下文中的“在一些实施例中”,“在一个实施例中”等短语可以或可以不指相同的实施例。术语“包括”、“具有”和“包含”是同义的,除非上下文中以其它方式规定。短语“A和/或B”意味着(A)、(B)或(A和B)。短语“A/B”意味着(A)、(B)或(A和B),类似于短语“A和/或B”。短语“A、B和C中的至少一个”意味着(A)、(B)、(C)、(A和B)、(A和C)、(B和C)或(A、B和C)。短语“(A)B”意味着(B)或(A和B),即A是可选的。参考图1所示的方法流程图,在一些实施例中,同步定位和建图需要先取得一系列的多个图像帧作为输入,如步骤S101所示。该多个图像帧包括彩色图像和深度图像,尤其是可以本文档来自技高网
...
同步定位与建图方法

【技术保护点】
一种同步定位与建图方法,包括:基于帧间运动的大小从所述多个图像帧中选出关键帧序列;基于所述关键帧序列的帧间匹配结果将所述多个图像帧导入姿态图;基于所述姿态图构建一个或多个有效检测回环以用于进行捆集调整;以及基于所捆集调整的姿态图修正所述多个图像帧。

【技术特征摘要】
1.一种同步定位与建图方法,包括:基于帧间运动的大小从所述多个图像帧中选出关键帧序列;基于所述关键帧序列的帧间匹配结果将所述多个图像帧导入姿态图;基于所述姿态图构建一个或多个有效检测回环以用于进行捆集调整;以及基于所捆集调整的姿态图修正所述多个图像帧。2.如权利要求1所述的方法,其中所述多个图像帧包括彩色图像和深度图像两者。3.如权利要求2所述的方法,还包括将修正的多个图像帧变换为三维点云并拼接为点云地图。4.如权利要求3所述的方法,还包括基于八叉树建图将所述点云地图转化为三维栅格地图。5.如权利要求1所述的方法,其中所述关键帧序列包括所述多个图像帧的第一帧。6.如权利要求5所述的方法,其中基于帧间运动的大小选出关键帧序列包括当图像...

【专利技术属性】
技术研发人员:朱少岚
申请(专利权)人:宁波傲视智绘光电科技有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1