CN110125928A - 一种基于前后帧进行特征匹配的双目惯导slam系统 - Google Patents

一种基于前后帧进行特征匹配的双目惯导slam系统 Download PDF

Info

Publication number
CN110125928A
CN110125928A CN201910237788.0A CN201910237788A CN110125928A CN 110125928 A CN110125928 A CN 110125928A CN 201910237788 A CN201910237788 A CN 201910237788A CN 110125928 A CN110125928 A CN 110125928A
Authority
CN
China
Prior art keywords
module
frame
submodule
binocular
feature
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910237788.0A
Other languages
English (en)
Other versions
CN110125928B (zh
Inventor
邢科新
冯传涛
林叶贵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University of Technology ZJUT
Original Assignee
Zhejiang University of Technology ZJUT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University of Technology ZJUT filed Critical Zhejiang University of Technology ZJUT
Priority to CN201910237788.0A priority Critical patent/CN110125928B/zh
Publication of CN110125928A publication Critical patent/CN110125928A/zh
Application granted granted Critical
Publication of CN110125928B publication Critical patent/CN110125928B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1653Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/251Fusion techniques of input or preprocessed data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • G06T7/248Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/757Matching configurations of points or features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Geometry (AREA)
  • Evolutionary Computation (AREA)
  • Multimedia (AREA)
  • Evolutionary Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Remote Sensing (AREA)
  • Computer Graphics (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Image Analysis (AREA)

Abstract

一种基于前后帧进行特征匹配的双目惯导SLAM系统,双目信息采集、特征提取与匹配模块包括双目特征提取子模块和估计帧间运动子模块;IMU模块包括IMU信息采集子模块和运动估计子模块;双窗口非线性优化模块包括双窗口窗子模块,跟踪和优化局部地图子模块,关键帧子模块;局部建图模块包括插入关键帧模块、检查点云图模块和检查关键帧子模块;回环检测及优化模块包括回环检测子模块、计算相似变换、闭环融合和全局优化子模块。本发明提供一种鲁棒性好、准确性高、实时性好的一种基于四幅图片的特征匹配的双目惯导SLAM系统。

Description

一种基于前后帧进行特征匹配的双目惯导SLAM系统
技术领域
本发明属于机器人技术领域,具体涉及到传感器融合、移动机器人定位与地图构建系统。
背景技术
SLAM(Simultaneous Localization and Mapping)译为“同步定位与地图构建”,它主要用于解决机器人在未知环境运动时的定位和地图构建问题。SLAM试图解决这样的问题:一个机器人在未知的环境中运动,如何通过对环境的观测确定自身的运动轨迹,同时构建出环境的地图。SLAM技术正是为了实现这个目标涉及到的诸多技术的总和。
视觉SLAM以相机为主要传感器,它可以从环境中获取丰富的信息,拥有较强的场景辨识能力,但是易受光照、遮挡物、快速运动等因素的干扰,系统的鲁棒性和精度都不能得到保证。而惯性传感器(IMU),可以得到与视觉无关的,关于移动机器人自身的角速度、加速度的测量数据,从而对运动有一个约束,但IMU数据易受高斯白噪声和零偏影响,仅用IMU来做位姿估计,很快就会漂移。然而,视觉图像在固定不动时,并不会产生漂移。所以,利用视觉确定IMU的零偏,同用IMU来辅助移动机器人快速运动的定位和纯旋转的处理,惯性传感器(IMU)与相机传感器具有明显的互补性,将二者融合可以提高系统的精度和鲁棒性。IMU可以在追踪中提供较好的初始位姿,提供重力方向和提供一个时间误差项以供优化。
发明内容
为了克服已有移动机器人在光照变化较大、快速运动情况下定位与地图构建系统的鲁棒性较差、准确性较低、实时性差,本发明提供一种鲁棒性好、准确性高、实时性好的一种基于前后帧进行特征匹配的双目惯导SLAM系统。
本发明解决其技术问题所采用的技术方案是:
一种基于前后帧进行特征匹配的双目惯导SLAM系统,所述系统包括双目信息采集、特征提取与匹配模块,IMU模块,双窗口非线性优化模块,局部建图模块,回环检测及优化模块;所述双目信息采集、特征提取与匹配模块包括双目特征提取子模块和估计帧间运动子模块;所述IMU模块包括IMU信息采集子模块和运动估计子模块;所述双窗口非线性优化模块包括双窗口窗子模块,跟踪和优化局部地图子模块,关键帧子模块;所述局部建图模块包括插入关键帧模块、检查点云图模块和检查关键帧子模块;所述回环检测及优化模块包括回环检测子模块、计算相似变换、闭环融合和全局优化子模块。
进一步,所述双目信息采集、特征提取和匹配模块中,双目特征提取子模块获取双目采集的图片,特征提取子模块,用blob和角点算子对左右相机采集的数据进行处理,获得图像中的特征候选者,提取候选特征点的描述子,用极线搜索的方式匹配,通过四张图片匹配,将当前帧中的特征点与前一帧进行匹配。即从当前帧左图中的特征点开始与当前帧右图匹配,当前帧右图与前一帧右图匹配,然后前一帧右图与前一帧左图匹配,再前一帧左图与当前帧左图匹配,如果最后匹配的特征与起始匹配一致,则确定为特征点,同时也进行左右匹配;估计帧间运动子模块根据匹配的特征点,可以通过RANSAC算法和PnP算法估计当前帧和前一帧之间帧间运动。
再进一步,所述IMU模块中,IMU信息采集子模块获取移动机器人运动数据角速度和加速度;运动估计子模块通过积分对IMU数据进行处理,然后计算出连续图像两帧之间的帧间运动增量,得到机器人的运动模型与机器人当前的位姿估计。
所述双窗口非线性优化模块中,双窗口子模块采用双窗口结构组织变量进行优化和相关观测,在前端建立双窗口结构,它由一个时间窗口和一个空间窗口组成,空间窗口包含关键帧和观察点的位姿之间的约束,除了这样的位姿点约束之外,时间窗口使用来自IMU的读数使最近帧的连续位姿相关的约束,有了这些约束条件,两个窗口中涉及的所有变量都可以通过非线性优化来完善;跟踪和优化局部地图子模块跟踪特征点并在在局部地图上执行非线性优化,它不仅改进了当前帧的位姿估计,而且改进了双窗口中帧和点的位姿;关键帧子模块根据关键帧选取规则确定当前帧是否是关键帧,若是关键帧,则为新帧创建新的地图点。
所述局部建图模块中,插入关键帧子模块将双窗口优化过的关键帧插入在局部地图,局部地图会在新关键帧和其连接的关键帧之间创建新的地图点;检查地图点云子模块移除局部地图中异常的地图点;检查关键帧子模块删除冗余的关键帧。
所述回环检测及优化模块中,回环检测子模块通过词袋模型将当前帧在数据库中关键帧集合进行查询,检测回环;计算相似变换子模块用于如果一个候选关键帧有一个SE(3)变换,并且有足够的匹配特征支持新的关键帧,那么我们接受候选者作为闭环关键帧,然后,闭环关键帧中观察到的地图点和新关键帧匹配。闭环融合子模块,将匹配的点云进行数据融合,并更新关键帧位姿;全局优化子模块优化所有的关键帧和三维点的位姿,减少累积误差。
本发明的技术构思为:本发明创新性将IMU数据和双目视觉数据融合在一起,采用紧密耦合的方法,用IMU和视觉图像的信息共同来估计状态量,提高了系统准确性。充分利用了左右相机的图像信息,用前后两帧的四张图片做特征点匹配,采用快速特征检测和匹配策略,提取了更加精确的特征点,再根据特征点,通过RANSAC估计当前帧和前一帧之间的增量运动。在前端建立两个约束,一个视觉约束和一个IMU约束,对每一帧进行优化,提高了SLAM算法的鲁棒性。由IMU获得的数据,可使ORB描述子定向沿着2D图像中的投影重力方向,改进匹配性能。
本发明提出的移动机器人SLAM系统融合了IMU数据和双目视觉数据,采用积分的方法对IMU数据进行处理,把相邻两帧图像之间的一段时间的IMU数据积分起来,得到两帧之间的IMU相对运动。双目视觉数据使用了准确性更好的四张图片匹配和立体匹配,给定一个立体图像对,通过blob和角点算子处理,找出两个图像中的特征候选者。然后,通过四张图片匹配将当前帧中的这些特征点与前一帧进行匹配,根据匹配的特征点,用RANSAC算法和PnP算法估计当前帧和前一帧之间帧间的运动。为了改善特征匹配,由IMU获得的数据,可使ORB描述子方向沿着2D图像中的投影重力方向。为了提高定位的准确性,用IMU和视觉信息建立两个约束,将IMU误差和视觉重投影误差联合起来,对每帧都执行非线性优化,更加精准的跟踪移动机器人的运动。通过关键帧选择策略,选取新的关键帧,生成新的地图点,完成局部地图点的稀疏构建。局部地图和回环检测线程并行运行,两个线程都在插入新关键帧时执行,在建图线程中不进行优化。本发明实现了基于双目惯导信息的移动机器人同步定位与建图,能够对移动机器人运动的位姿和周围环境信息进行精确的估计。
本发明的有益效果主要表现在:充分利用了双目视觉图像信息,用四张图片进行特征点匹配,得到更加准确的特征点,并采用紧耦合的方式融合了IMU信息,形成两个约束,系统的鲁棒性更好、准确性更高。采用快速特征检测和匹配策略,提高了系统的实时性。
附图说明
图1是本发明系统结构图示。
图2是本发明系统流程图示。
图3是本发明特征点匹配流程图示。
具体实施方式
下面结合附图对本发明作进一步描述。
参照图1~图3,一种基于前后帧进行特征匹配的双目惯导SLAM系统,所述系统包括双目信息采集、特征提取与匹配模块(1),IMU模块(2),双窗口非线性优化模块(3),局部建图模块(4),回环检测和优化模块(5);所述双目信息采集、特征提取与匹配模块(1)包括双目特征提取子模块(1.1)和运动估计子模块(1.2);所述IMU模块(2)包括IMU信息采集子模块(2.1)和运动估计子模块(2.2);所述双窗口非线性优化模块(3)包括时间窗口模块和空间窗口子模块(3.1),跟踪和优化局部地图子模块(3.2),关键帧子模块(3.3);所述局部建图模块(4)包括插入关键帧子模块(4.1)、检查点云图子模块(4.2)和检查关键帧子模块(4.3);所述回环检测及优化模块(5)包括回环检测子模块(5.1)、计算相似变换子模块(5.2)、闭环融合子模块(5.3)和全局优化模块(5.4)。
所述双目信息采集、特征提取与匹配模块(1)中,双目特征提取子模块(1.1)对双目数据进行处理,获得图像中的特征候选者,提取候选特征点的描述子,通过四张图片匹配将当前帧中的这些特征点与前一帧进行匹配;运动估计子模块(1.2)由双目特征提取子模块(1.1)中匹配的特征点,可以通过RANSAC算法和PnP算法估计当前帧和前一帧之间帧间运动。
所述IMU模块(2)中,IMU信息采集子模块(2.1)采集IMU数据信息;运动估计子模块(2.2),把相邻两帧图像之间的一段时间的IMU积分起来,得到两帧之间的增量运动。
所述双窗口非线性优化模块(3)中,双窗口子模块(3.1)在前端建立双窗口结构,它由一个时间窗口和一个空间窗口组成,空间窗口包含关键帧和观察点的姿势之间的约束,时间窗口使用来自IMU的读数使最近帧的连续位姿相关的约束,有了这些约束条件,两个窗口中涉及的所有变量都可以通过非线性优化来完善,时间窗口包括T个最近的帧,时间窗口中的帧可以是关键帧,空间窗口中的S个关键帧不包括在第一个窗口中的关键帧,空间窗口中的这些关键帧与位姿点约束相关,参考关键帧通常是插入到地图的最新关键帧;跟踪和优化局部地图子模块(3.2)改善特征匹配,ORB描述子定向沿着2D图像中重力方向的投影,提取双目特征提取子模块(1.1)中已获得匹配特征点的ORB特征描述子,对于局部地图中的每个点,我们在当前帧的立体匹配中寻找它的最佳匹配,然后,在局部地图上执行非线性优化,它不仅改进了当前帧的位姿估计,而且改进了双窗口中帧和点的位姿;关键帧子模块(3.3)根据关键帧选取规则确定当前帧是否是关键帧,若是关键帧,则为新帧创建新的地图点。
所述局部建图模块(4)中,插入关键帧子模块(4.1)将双窗口优化过的关键帧插入在局部地图;检查地图点云子模块(4.2)移除局部地图中异常的地图点;检查关键帧子模块(4.3)删除多余的关键帧。
所述回环检测及优化模块(5)中,回环检测子模块(5.1)对于一个新的关键帧来说,利用词袋模型找出候选关键帧;计算相似变换子模块(5.2)用于如果一个候选关键帧有一个SE(3)变换,并且有足够的匹配特征支持新的关键帧,那么我们接受候选者作为闭环关键帧,然后,闭环关键帧中观察到的地图点和新关键帧匹配;闭环融合子模块(5.3)将匹配的点云进行数据融合,并更新关键帧位姿;全局优化模块子模块(5.4)在地图上对关键帧执行优化,当位姿图优化开始时,前端的双窗口优化暂停,当位姿优化完成时,不仅地图被更新,而且时间窗口中的帧的状态也被更新。
本实施例中,所述双目信息采集、特征提取和匹配模块(1)中,双目特征提取子模块(1.1),由双目相机采集的图片,进行特征点提取:
使用blob算子角点算子对输入的图片进行滤波。
对滤波后的图像使用非最大和非最小抑制,得到斑点最大值,斑点最小值,最大角点和最小角点设为候选特征点。
描述子提取:用sobel算子与原图卷积的结果作为特征点的描述子。
进行特征匹配:匹配策略采用SAD算法,由SAD(u,v)=Sum{|Left(u,v)-Right(u,v)|}选择最小值,以左目图像的匹配点为中心,定义一个窗口D,其大小为(2m+1)*(2n+1),统计其窗口的灰度值的和,然后在右目图像中逐步计算其左右窗口的灰度和的差值,最后搜索到的差值最小的区域的中心像素即为匹配点。过程如下:
1.构造一个窗口。
2.用窗口覆盖左边的图像,选择出窗口覆盖区域内的所有像素点。
3.同样用窗口覆盖右边的图像并选择出覆盖区域的像素点。
4.左边覆盖区域减去右边覆盖区域,并求出所有像素点差的绝对值的和。
5.移动右边图像的窗口,重复3,4的动作。
6.找到这个范围内SAD值最小的窗口,即找到了左边图像的最佳匹配。
对上述的候选特征点进行匹配,通过四幅图片匹配将当前帧中的这些特征点与前一帧进行匹配。即,从当前帧左图像中的特征点开始在当前帧右图像中匹配,当前帧右图像与前一帧右侧图像匹配,然后前一帧右侧图像与前一帧左侧图像匹配,再前一帧左侧图像与当前帧左侧图像匹配。如果最后匹配的特征与起始匹配一致,则确定为特征点。此外,当前的左图像与当前的右图像中的特征点也进行匹配,产生立体匹配;在对左右图像进行匹配时,使用外极约束去优化匹配;采用这种方法进行特征匹配可以得到更加精确的特征点。
运动估计子模块(1.2),每次从匹配点中随机取出3组,进行高斯牛顿迭代,求出基于这3组点的位姿,再通过内点判断这个位姿的精确度,多次抽样——迭代后,得到一个准确的位姿,通过RANSAC保证了这种抽样的鲁棒性。得到两帧间相对运动、初始地图点云,进一步得到地图点。
所述IMU模块中(2)中,IMU信息采集子模块(2.1)获取机器人移动的角速度和加速度数据;运动估计子模块(2.2)根据IMU信息采集子模块(2.1)数据,估计增量运动。
对惯导来说,陀螺仪误差来源的地球自转,相对较小,可以忽略,加速度计和陀螺仪(分别为ba,bg)的偏差是随机游走过程,则可以得到IMU的运动方程:
为了简化符号,变量的下标s意味着变量是指IMU传感器;上标w代表在世界坐标系范围内,运算符[·]×生成3维矢量的反对称矩阵。上述等式组中,和vW是世界坐标系中的IMU传感器位置和速度,gW是位置处的重力,是从传感器坐标系到世界坐标系的旋转,是加速度计和陀螺仪测量,na,ng,nba和nbg分别是ba和bg的高斯白噪声。ΨW是在世界坐标系中定义的,表示世界坐标系内的方位误差,使得位置和速度的误差定义为估计和真实值之间的差异,从而得到误差状态向量:
将所有高斯白噪声项放入噪声矢量中,
线性高斯误差状态传播方程为:
这里:
W的协方差函数为:
其中σ是相应高斯白噪声的噪声密度(即,功率谱密度的平方根),并且δ(·)是狄拉克函数。由线性高斯系统的协方差,可推导出方程协方差矩阵了,即得到状态向量P(δX)的协方差。
所述双窗口非线性优化模块(3)中,双窗口模块(3.1),双窗口对跟踪线程中的每个输入帧执行非线性优化,每帧的状态可以由两部分组成:姿势状态和速度/偏差状态其中,是一个SE(3)变换从世界坐标系到左相机坐标系,是IMU传感器在世界坐标系的速度,加速度计偏差ba和陀螺仪偏差bg.
对于相机位姿,扰动ε被定义为:
其中log(·)v将SE(3)元素映射到其最小正切向量,是6维的。
目标函数涉及到两种类型的误差:重投影误差和IMU约束误差。这些误差被假设为具有均值和协方差特征的随机变量。对于路标索引j是帧k在相机i处的观测(i=0表示左侧相机,i=1表示右侧相机),重投影误差为:
其中下标r表示重投影误差,下标L表示地标,下标C0表示左相机帧,下标Ci表示相机的帧索引i,并且上标C0(k)表示在k处的左相机帧。因此,将在世界坐标系中表示的地标转换为在k处的相机i坐标系。而且,zi,j,k是对的实际观察,hi将第i个相机框架中协调的世界点投影到第i个相机图像中。
IMU误差项为:
其中下标s表示该约束是由于IMU传感器读数引起的.是k+1帧处的预测左摄像机位姿,给定帧K处的状态从左摄像机到IMU传感器的转换为和IMU读数 是帧K+1处的预测速度和偏差。
优化的目标函数是:
其中S和T分别是空间和时间窗口大小。是点观测的信息矩阵,可以通过假设图像中的1个像素各向同性观测噪声来获得,是IMU误差项的权重矩阵,可以近似如下。
其中是在时期tk+1处预测的IMU误差状态向量的传播协方差。
跟踪和优化局部地图子模块(3.2),提取双目特征提取子模块(1.1)中已获得的立体匹配的ORB特征描述子。为了改善特征匹配,由IMU获得的数据,可以使ORB描述子定向沿着2D图像中重力方向的投影。假设一个摄像机在投影矩阵K和可能有失真的针孔模型之后投射世界点。
K由水平和垂直方向的焦距(fu,fv)组成,和以像素为单位的主点坐标(pu,pv)。
也假定当前摄像机帧中的重力矢量为gc=[gx,gy,gz]T.上标c表示相机帧,下标x,y,z表示相机的三个轴,对于一个特征点的像素坐标(表示变量包含噪声),我们首先对其进行去偏移处理,得到未失真的像素坐标p=[u,v,1]T。因此,实际上在齐次坐标中沿重力方向p'=p+Kgc创建一个校正点,并将其畸变,从而在图像中的一个实际点。结果,该特征的投影的二维重力方向是:
对于局部地图中的每个点,我们在当前帧的立体匹配中寻找它的最佳匹配。然后,在局部地图上执行非线性优化。它不仅改进了当前帧的位姿估计,而且改进了双窗口中帧和点的位姿。
关键帧子模块(3.3):如果当前帧中的被跟踪的地图点由其参考关键帧中观测到的地图点的60%以下组成,并且当前帧跟踪至少50个点,则生成新的关键帧。
所述局部建图模块(4)中,插入关键帧模块(4.1)给定一个新的关键帧,局部地图会在新关键帧和其连接的关键帧之间创建新的地图点;检查地图点云模块(4.2),由于共视图的地图点而更新关键帧之间的连接,移除异常点地图点;检查关键帧模块(4.3)删除多余的关键帧;如果大多数观测到的点被其他的关键帧观测到,则删除这个多余的关键帧,建图线程不进行优化。
所述回环检测及优化模块(5)中,回环检测子模块(5.1)通过词袋模型比对当前帧与过去的关键帧,相似度超过某一阈值时就可以认为检测到回环;计算相似变换子模块(5.2)由于双目的尺度已获得,使用比Sim3要少一个自由度的SE3,当检测到闭环时,对闭环连接的两个关键帧的位姿进行优化,优化求解两帧之间的相似变换矩阵,使得二维对应点的投影误差最小;闭环融合子模块(5.3)对所有匹配的点云进行数据融合,并更新关键帧位姿,以及在图中的边;全局优化模块子模块(5.4)建立一个全局优化,优化所有的关键帧和三维点的位姿,减少累积误差。

Claims (6)

1.一种基于前后帧进行特征匹配的双目惯导SLAM系统,所述系统包括双目信息采集、特征提取与匹配模块,IMU模块,双窗口非线性优化模块,局部建图模块,回环检测及优化模块;所述双目信息采集、特征提取与匹配模块包括双目特征提取子模块和估计帧间运动子模块;所述IMU模块包括IMU信息采集子模块和运动估计子模块;所述双窗口非线性优化模块包括双窗口窗子模块,跟踪和优化局部地图子模块,关键帧子模块;所述局部建图模块包括插入关键帧模块、检查点云图模块和检查关键帧子模块;所述回环检测及优化模块包括回环检测子模块、计算相似变换、闭环融合和全局优化子模块。
2.如权利要求1所述的一种基于前后帧进行特征匹配的双目惯导SLAM系统,其特征在于,所述双目信息采集、特征提取和匹配模块中,双目特征提取子模块获取双目采集的图片,特征提取子模块,用blob和角点算子对左右相机采集的数据进行处理,获得图像中的特征候选者,提取候选特征点的描述子,用极线搜索的方式匹配,通过四张图片匹配,将当前帧中的特征点与前一帧进行匹配。即从当前帧左图中的特征点开始与当前帧右图匹配,当前帧右图与前一帧右图匹配,然后前一帧右图与前一帧左图匹配,再前一帧左图与当前帧左图匹配,如果最后匹配的特征与起始匹配一致,则确定为特征点,同时也进行左右匹配;估计帧间运动子模块根据匹配的特征点,可以通过RANSAC算法和PnP算法估计当前帧和前一帧之间帧间运动。
3.如权利要求1或2所述的一种基于前后帧进行特征匹配的双目惯导SLAM系统,其特征在于,所述IMU模块中,IMU信息采集子模块获取移动机器人运动数据角速度和加速度;运动估计子模块通过积分对IMU数据进行处理,然后计算出连续图像两帧之间的帧间运动增量,得到机器人的运动模型与机器人当前的位姿估计。
4.如权利要求1或2所述的一种基于前后帧进行特征匹配的双目惯导SLAM系统,其特征在于,所述双窗口非线性优化模块中,双窗口子模块采用双窗口结构组织变量进行优化和相关观测,在前端建立双窗口结构,它由一个时间窗口和一个空间窗口组成,空间窗口包含关键帧和观察点的位姿之间的约束,除了这样的位姿点约束之外,时间窗口使用来自IMU的读数使最近帧的连续位姿相关的约束,有了这些约束条件,两个窗口中涉及的所有变量都可以通过非线性优化来完善;跟踪和优化局部地图子模块跟踪特征点并在在局部地图上执行非线性优化,它不仅改进了当前帧的位姿估计,而且改进了双窗口中帧和点的位姿;关键帧子模块根据关键帧选取规则确定当前帧是否是关键帧,若是关键帧,则为新帧创建新的地图点。
5.如权利要求1或2所述的一种基于前后帧进行特征匹配的双目惯导SLAM系统,其特征在于,所述局部建图模块中,插入关键帧子模块将双窗口优化过的关键帧插入在局部地图,局部地图会在新关键帧和其连接的关键帧之间创建新的地图点;检查地图点云子模块移除局部地图中异常的地图点;检查关键帧子模块删除冗余的关键帧。
6.如权利要求1或2所述的一种基于前后帧进行特征匹配的双目惯导SLAM系统,其特征在于,所述回环检测及优化模块中,回环检测子模块通过词袋模型将当前帧在数据库中关键帧集合进行查询,检测回环;计算相似变换子模块用于如果一个候选关键帧有一个SE(3)变换,并且有足够的匹配特征支持新的关键帧,那么我们接受候选者作为闭环关键帧,然后,闭环关键帧中观察到的地图点和新关键帧匹配。闭环融合子模块,将匹配的点云进行数据融合,并更新关键帧位姿;全局优化子模块优化所有的关键帧和三维点的位姿,减少累积误差。
CN201910237788.0A 2019-03-27 2019-03-27 一种基于前后帧进行特征匹配的双目惯导slam系统 Active CN110125928B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910237788.0A CN110125928B (zh) 2019-03-27 2019-03-27 一种基于前后帧进行特征匹配的双目惯导slam系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910237788.0A CN110125928B (zh) 2019-03-27 2019-03-27 一种基于前后帧进行特征匹配的双目惯导slam系统

Publications (2)

Publication Number Publication Date
CN110125928A true CN110125928A (zh) 2019-08-16
CN110125928B CN110125928B (zh) 2021-04-06

Family

ID=67568724

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910237788.0A Active CN110125928B (zh) 2019-03-27 2019-03-27 一种基于前后帧进行特征匹配的双目惯导slam系统

Country Status (1)

Country Link
CN (1) CN110125928B (zh)

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110648353A (zh) * 2019-08-30 2020-01-03 北京影谱科技股份有限公司 一种基于单目传感器的机器人室内定位方法和装置
CN110930519A (zh) * 2019-11-14 2020-03-27 华南智能机器人创新研究院 基于环境理解的语义orb-slam感知方法及装置
CN110986968A (zh) * 2019-10-12 2020-04-10 清华大学 三维重建中实时全局优化和错误回环判断的方法及装置
CN111311684A (zh) * 2020-04-01 2020-06-19 亮风台(上海)信息科技有限公司 一种进行slam初始化的方法与设备
CN111539982A (zh) * 2020-04-17 2020-08-14 北京维盛泰科科技有限公司 一种移动平台中基于非线性优化的视觉惯导初始化方法
CN111797688A (zh) * 2020-06-02 2020-10-20 武汉大学 一种基于光流和语义分割的视觉slam方法
CN111882607A (zh) * 2020-07-14 2020-11-03 中国人民解放军军事科学院国防科技创新研究院 一种适用于增强现实应用的视觉惯导融合位姿估计方法
CN111929699A (zh) * 2020-07-21 2020-11-13 北京建筑大学 一种顾及动态障碍物的激光雷达惯导里程计与建图方法及系统
CN112233177A (zh) * 2020-10-10 2021-01-15 中国安全生产科学研究院 一种无人机位姿估计方法及系统
CN112258546A (zh) * 2020-10-18 2021-01-22 东南大学 一种slam系统的关键帧选取方法
CN112344923A (zh) * 2021-01-11 2021-02-09 浙江欣奕华智能科技有限公司 一种机器人的定位方法及其定位装置
CN112801077A (zh) * 2021-04-15 2021-05-14 智道网联科技(北京)有限公司 用于自动驾驶车辆的slam初始化的方法及相关装置
CN112884806A (zh) * 2021-01-12 2021-06-01 昆明理工大学 一种基于结合块匹配和密集逆向搜索的视频测流方法及装置
CN112917467A (zh) * 2019-12-06 2021-06-08 深圳市优必选科技股份有限公司 机器人的定位及地图构建方法、装置及终端设备
CN112967311A (zh) * 2019-12-12 2021-06-15 浙江商汤科技开发有限公司 三维线图构建方法及装置、电子设备和存储介质
CN113011231A (zh) * 2019-12-20 2021-06-22 舜宇光学(浙江)研究院有限公司 分类滑窗方法和slam定位方法及其系统和电子设备
CN113034538A (zh) * 2019-12-25 2021-06-25 杭州海康威视数字技术股份有限公司 一种视觉惯导设备的位姿跟踪方法、装置及视觉惯导设备
CN113177971A (zh) * 2021-05-07 2021-07-27 中德(珠海)人工智能研究院有限公司 一种视觉跟踪方法、装置、计算机设备及存储介质
CN113514058A (zh) * 2021-04-23 2021-10-19 北京华捷艾米科技有限公司 融合msckf和图优化的视觉slam定位方法及装置
CN113674340A (zh) * 2021-07-05 2021-11-19 北京物资学院 一种基于路标点的双目视觉导航方法与装置
CN113701766A (zh) * 2020-05-20 2021-11-26 浙江欣奕华智能科技有限公司 一种机器人地图的构建方法、机器人的定位方法及装置
CN113761091A (zh) * 2020-11-27 2021-12-07 北京京东乾石科技有限公司 闭环检测方法、装置、电子设备、系统和存储介质
WO2022040921A1 (zh) * 2020-08-25 2022-03-03 南京翱翔信息物理融合创新研究院有限公司 一种分布式增强现实的定位终端、定位装置及定位系统
CN114418927A (zh) * 2021-11-09 2022-04-29 四川大学 一种基于空间关系特征匹配的闭环检测方法及系统
CN115079202A (zh) * 2022-06-16 2022-09-20 智道网联科技(北京)有限公司 激光雷达建图方法、装置及电子设备、存储介质
CN115272494A (zh) * 2022-09-29 2022-11-01 腾讯科技(深圳)有限公司 相机与惯性测量单元的标定方法、装置和计算机设备
CN115371695A (zh) * 2022-07-13 2022-11-22 深圳大学 一种行为语义辅助回环检测的同步定位建图方法
CN116088020A (zh) * 2022-12-23 2023-05-09 中国铁路设计集团有限公司 一种基于低成本传感器集成的融合轨道三维重建方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106446815A (zh) * 2016-09-14 2017-02-22 浙江大学 一种同时定位与地图构建方法
CN107885209A (zh) * 2017-11-13 2018-04-06 浙江工业大学 一种基于动态窗口与虚拟目标点的避障方法
CN108492316A (zh) * 2018-02-13 2018-09-04 视辰信息科技(上海)有限公司 一种终端的定位方法和装置
CN108665540A (zh) * 2018-03-16 2018-10-16 浙江工业大学 基于双目视觉特征和imu信息的机器人定位与地图构建系统
CN109166149A (zh) * 2018-08-13 2019-01-08 武汉大学 一种融合双目相机与imu的定位与三维线框结构重建方法与系统
CN109307508A (zh) * 2018-08-29 2019-02-05 中国科学院合肥物质科学研究院 一种基于多关键帧的全景惯导slam方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106446815A (zh) * 2016-09-14 2017-02-22 浙江大学 一种同时定位与地图构建方法
CN107885209A (zh) * 2017-11-13 2018-04-06 浙江工业大学 一种基于动态窗口与虚拟目标点的避障方法
CN108492316A (zh) * 2018-02-13 2018-09-04 视辰信息科技(上海)有限公司 一种终端的定位方法和装置
CN108665540A (zh) * 2018-03-16 2018-10-16 浙江工业大学 基于双目视觉特征和imu信息的机器人定位与地图构建系统
CN109166149A (zh) * 2018-08-13 2019-01-08 武汉大学 一种融合双目相机与imu的定位与三维线框结构重建方法与系统
CN109307508A (zh) * 2018-08-29 2019-02-05 中国科学院合肥物质科学研究院 一种基于多关键帧的全景惯导slam方法

Cited By (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110648353A (zh) * 2019-08-30 2020-01-03 北京影谱科技股份有限公司 一种基于单目传感器的机器人室内定位方法和装置
CN110986968A (zh) * 2019-10-12 2020-04-10 清华大学 三维重建中实时全局优化和错误回环判断的方法及装置
CN110986968B (zh) * 2019-10-12 2022-05-24 清华大学 三维重建中实时全局优化和错误回环判断的方法及装置
CN110930519A (zh) * 2019-11-14 2020-03-27 华南智能机器人创新研究院 基于环境理解的语义orb-slam感知方法及装置
CN110930519B (zh) * 2019-11-14 2023-06-20 华南智能机器人创新研究院 基于环境理解的语义orb-slam感知方法及装置
CN112917467A (zh) * 2019-12-06 2021-06-08 深圳市优必选科技股份有限公司 机器人的定位及地图构建方法、装置及终端设备
CN112967311B (zh) * 2019-12-12 2024-06-07 浙江商汤科技开发有限公司 三维线图构建方法及装置、电子设备和存储介质
CN112967311A (zh) * 2019-12-12 2021-06-15 浙江商汤科技开发有限公司 三维线图构建方法及装置、电子设备和存储介质
CN113011231A (zh) * 2019-12-20 2021-06-22 舜宇光学(浙江)研究院有限公司 分类滑窗方法和slam定位方法及其系统和电子设备
CN113034538B (zh) * 2019-12-25 2023-09-05 杭州海康威视数字技术股份有限公司 一种视觉惯导设备的位姿跟踪方法、装置及视觉惯导设备
CN113034538A (zh) * 2019-12-25 2021-06-25 杭州海康威视数字技术股份有限公司 一种视觉惯导设备的位姿跟踪方法、装置及视觉惯导设备
CN111311684B (zh) * 2020-04-01 2021-02-05 亮风台(上海)信息科技有限公司 一种进行slam初始化的方法与设备
CN111311684A (zh) * 2020-04-01 2020-06-19 亮风台(上海)信息科技有限公司 一种进行slam初始化的方法与设备
CN111539982A (zh) * 2020-04-17 2020-08-14 北京维盛泰科科技有限公司 一种移动平台中基于非线性优化的视觉惯导初始化方法
CN111539982B (zh) * 2020-04-17 2023-09-15 北京维盛泰科科技有限公司 一种移动平台中基于非线性优化的视觉惯导初始化方法
CN113701766A (zh) * 2020-05-20 2021-11-26 浙江欣奕华智能科技有限公司 一种机器人地图的构建方法、机器人的定位方法及装置
CN111797688A (zh) * 2020-06-02 2020-10-20 武汉大学 一种基于光流和语义分割的视觉slam方法
CN111882607B (zh) * 2020-07-14 2021-05-04 中国人民解放军军事科学院国防科技创新研究院 一种适用于增强现实应用的视觉惯导融合位姿估计方法
CN111882607A (zh) * 2020-07-14 2020-11-03 中国人民解放军军事科学院国防科技创新研究院 一种适用于增强现实应用的视觉惯导融合位姿估计方法
CN111929699B (zh) * 2020-07-21 2023-05-09 北京建筑大学 一种顾及动态障碍物的激光雷达惯导里程计与建图方法及系统
CN111929699A (zh) * 2020-07-21 2020-11-13 北京建筑大学 一种顾及动态障碍物的激光雷达惯导里程计与建图方法及系统
WO2022040921A1 (zh) * 2020-08-25 2022-03-03 南京翱翔信息物理融合创新研究院有限公司 一种分布式增强现实的定位终端、定位装置及定位系统
CN112233177A (zh) * 2020-10-10 2021-01-15 中国安全生产科学研究院 一种无人机位姿估计方法及系统
CN112258546A (zh) * 2020-10-18 2021-01-22 东南大学 一种slam系统的关键帧选取方法
CN113761091A (zh) * 2020-11-27 2021-12-07 北京京东乾石科技有限公司 闭环检测方法、装置、电子设备、系统和存储介质
CN113761091B (zh) * 2020-11-27 2024-04-05 北京京东乾石科技有限公司 闭环检测方法、装置、电子设备、系统和存储介质
CN112344923A (zh) * 2021-01-11 2021-02-09 浙江欣奕华智能科技有限公司 一种机器人的定位方法及其定位装置
CN112344923B (zh) * 2021-01-11 2021-04-16 浙江欣奕华智能科技有限公司 一种机器人的定位方法及其定位装置
CN112884806B (zh) * 2021-01-12 2022-09-02 昆明理工大学 一种基于结合块匹配和密集逆向搜索的视频测流方法及装置
CN112884806A (zh) * 2021-01-12 2021-06-01 昆明理工大学 一种基于结合块匹配和密集逆向搜索的视频测流方法及装置
CN112801077A (zh) * 2021-04-15 2021-05-14 智道网联科技(北京)有限公司 用于自动驾驶车辆的slam初始化的方法及相关装置
CN113514058A (zh) * 2021-04-23 2021-10-19 北京华捷艾米科技有限公司 融合msckf和图优化的视觉slam定位方法及装置
CN113177971A (zh) * 2021-05-07 2021-07-27 中德(珠海)人工智能研究院有限公司 一种视觉跟踪方法、装置、计算机设备及存储介质
CN113674340A (zh) * 2021-07-05 2021-11-19 北京物资学院 一种基于路标点的双目视觉导航方法与装置
CN114418927A (zh) * 2021-11-09 2022-04-29 四川大学 一种基于空间关系特征匹配的闭环检测方法及系统
CN115079202A (zh) * 2022-06-16 2022-09-20 智道网联科技(北京)有限公司 激光雷达建图方法、装置及电子设备、存储介质
CN115371695A (zh) * 2022-07-13 2022-11-22 深圳大学 一种行为语义辅助回环检测的同步定位建图方法
CN115272494A (zh) * 2022-09-29 2022-11-01 腾讯科技(深圳)有限公司 相机与惯性测量单元的标定方法、装置和计算机设备
CN116088020A (zh) * 2022-12-23 2023-05-09 中国铁路设计集团有限公司 一种基于低成本传感器集成的融合轨道三维重建方法

Also Published As

Publication number Publication date
CN110125928B (zh) 2021-04-06

Similar Documents

Publication Publication Date Title
CN110125928B (zh) 一种基于前后帧进行特征匹配的双目惯导slam系统
CN109993113B (zh) 一种基于rgb-d和imu信息融合的位姿估计方法
CN109166149B (zh) 一种融合双目相机与imu的定位与三维线框结构重建方法与系统
CN112634451B (zh) 一种融合多传感器的室外大场景三维建图方法
Paul et al. A comparative analysis of tightly-coupled monocular, binocular, and stereo VINS
KR101725060B1 (ko) 그래디언트 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
Alcantarilla et al. On combining visual SLAM and dense scene flow to increase the robustness of localization and mapping in dynamic environments
CN108615246B (zh) 提高视觉里程计系统鲁棒性和降低算法计算消耗的方法
CN109579825B (zh) 基于双目视觉和卷积神经网络的机器人定位系统及方法
US20110169923A1 (en) Flow Separation for Stereo Visual Odometry
KR20150144727A (ko) 에지 기반 재조정을 이용하여 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
CN112802096A (zh) 实时定位和建图的实现装置和方法
Rodríguez et al. Obstacle avoidance system for assisting visually impaired people
CN114485640A (zh) 基于点线特征的单目视觉惯性同步定位与建图方法及系统
Tarrio et al. Realtime edge based visual inertial odometry for MAV teleoperation in indoor environments
Huai et al. Stereo-inertial odometry using nonlinear optimization
CN115218906A (zh) 面向室内slam的视觉惯性融合定位方法及系统
CN112580683A (zh) 一种基于互相关的多传感器数据时间对齐系统及其方法
CN116380079A (zh) 一种融合前视声呐与orb-slam3的水下slam方法
CN116242374A (zh) 一种基于直接法的多传感器融合的slam定位方法
Xian et al. Fusing stereo camera and low-cost inertial measurement unit for autonomous navigation in a tightly-coupled approach
CN111829522A (zh) 即时定位与地图构建方法、计算机设备以及装置
Beauvisage et al. Multimodal tracking framework for visual odometry in challenging illumination conditions
CN113916221A (zh) 一种融合视觉里程计和bp网络的自适应行人航迹推算方法
Ling et al. RGB-D inertial odometry for indoor robot via keyframe-based nonlinear optimization

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant