CN107767450B - 一种基于sparse-slam的实时建图方法 - Google Patents

一种基于sparse-slam的实时建图方法 Download PDF

Info

Publication number
CN107767450B
CN107767450B CN201711045213.6A CN201711045213A CN107767450B CN 107767450 B CN107767450 B CN 107767450B CN 201711045213 A CN201711045213 A CN 201711045213A CN 107767450 B CN107767450 B CN 107767450B
Authority
CN
China
Prior art keywords
frame
initial frame
image
feature point
camera
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.)
Active
Application number
CN201711045213.6A
Other languages
English (en)
Other versions
CN107767450A (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.)
Nanjing Weijing Shikong Information Technology Co ltd
Original Assignee
Nanjing Weijing Shikong Information Technology Co ltd
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 Nanjing Weijing Shikong Information Technology Co ltd filed Critical Nanjing Weijing Shikong Information Technology Co ltd
Priority to CN201711045213.6A priority Critical patent/CN107767450B/zh
Publication of CN107767450A publication Critical patent/CN107767450A/zh
Application granted granted Critical
Publication of CN107767450B publication Critical patent/CN107767450B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明提供了一种基于sparse‑slam的实时建图方法,包括如下两个并列运行的线程:线程1,跟踪并提取关键帧;线程2,创建并插入点云MAP。本发明的实时建图方法采用两个并列线程,能保证两个线程的实时性,既节省了时间,又尽可能的保留了图像的特征,在保证了算法高效实时的前提下,保留更多的场景信息。

Description

一种基于sparse-slam的实时建图方法
技术领域
本发明涉及一种实时建图方法,尤其是一种基于sparse-slam的实时建图方法。
背景技术
SLAM技术随着最近几年机器人、VR、AR的火爆而为人所知,在传感器、算法、软件、硬件等方向都有不同的进展。SLAM(simultaneous localization and mapping)分为两大功能,定位与建图。其主要解决了当设备(如机器人、VR设备等)来到一个完全陌生的环境时,它需要精准地建立时间和空间的对应关系,并能完美地回答以下一系列问题:我刚才在哪里,现在在哪里?我看到了什么,现在看到的和之前看到的有哪些异同?我过去的行走轨迹是什么?我现在看到的世界是什么样子,和过去相比有怎样的变化?我的轨迹抖吗,我的位置飘吗?我还能跟踪到自己的轨迹吗,如果我丢了应该怎么办?我过去建立的对世界的认识还有用吗?我能在已有世界的抽象里快速对我现在的位置进行定位吗?
建图主要作用是对周边环境的理解,建立周边环境与空间的对应关系,分为dense与sparse两种形式。Dense地图主要用于3D重构、导航、避障等方面,但需要处理的数据量很大,往往需要大量的计算,往往需要GPU的加速,对应用平台依赖性比较大。Sparse地图虽然没法重构出当前场景,但也能得到当前场景中的部分信息,理论上可用于定位与跟踪。因此有必要设计出一种基于sparse-slam的实时建图方法,实现能够在移动端、低配电脑等计算能力比较低的平台实时运行。
发明内容
本发明的目的在于:提供一种基于sparse-slam的实时建图方法,实现能够在移动端、低配电脑等计算能力比较低的平台实时运行。
为了解决上述技术问题,本发明提供了一种基于sparse-slam的实时建图方法,包括如下两个并列运行的线程:
线程1,跟踪并提取关键帧,具体步骤为:
步骤1.1,对输入的初始帧构建N层的图像金字塔,并提取初始帧图像金字塔中的各个特征点,设置包含初始帧图像金字塔以及各个特征点的初始帧KF1;
步骤1.2,对新输入的当前帧构建N层的图像金字塔,并提取当前帧图像金字塔中的各个特征点,再利用SSD算法在当前帧中跟踪初始帧KF1中的各个特征点,SSD算法公式为:
D=∑((Iki-uk)-(Ici-uc))2式中,Iki表示初始帧KF1中第i个特征点的像素值,Ici表示当前帧中第i个特征点的像素值,uk和uc分别表示初始帧KF1中第i个特征点周围图像块的像素均值以及当前帧中第i个特征点周围图像块的像素均值;
步骤1.3,若步骤1.2中SSD算法跟踪成功跟踪到的特征点数量小于M,则返回步骤1.1重新设置初始帧KF1,若成功跟踪到的特征点数量大于M,则将当前帧标记为关键帧KF2;
步骤1.4,根据各个成功跟踪到的特征点,利用相机对极几何模型估算出相机的姿态R和T,R表示关键帧KF2与初始帧KF1之间的旋转矩阵,T表示关键帧KF2与初始帧KF1之间的平移矩阵,将初始帧KF1和关键帧KF2加入到关键帧队列KFS中;
步骤1.5,在点云MAP初始化成功后,将点云MAP映射到当前帧中,并在当前帧中利用SSD算法找出与其对应的二维点,从而利用相机对极几何模型估算出当前相机的姿态R和T,并将当前帧标记为KFi,加入到KFS中;
线程2,创建并插入点云MAP,具体步骤为:
步骤2.1,判断是否创建坐标系,若已创建,转到步骤2.2,否则创建坐标系,即根据关键帧队列KFS中的初始帧KF1建立世界坐标系W,X轴和Y轴方向为初始帧KF1的长和宽方向,Z轴方向为相机指向初始帧KF1的方向;
步骤2.2,遍历关键帧队列KFS中每一个未三角化的KFi,i=2,3,4…,利用对极几何原理将KFi中的二维特征点三角化为三维特征点,再将三维特征点加入到点云MAP中。
作为本发明的进一步限定方案,利用相机对极几何模型估算出相机的姿态R和T的估算公式为:
Pl=R(Pr-T)
(RTPr)T·T×Pl=0
式中,P1和Pr为二幅图像中匹配上的特征点,RT为R的转置,×为叉乘。
作为本发明的进一步限定方案,对输入的初始帧构建N层的图像金字塔的具体步骤为:对每一层图像进行下采样得到上一层的图像,通过N次下采样便可得到N层的图像金字塔。
作为本发明的进一步限定方案,提取初始帧图像金字塔中的各个特征点的具体步骤为:对每一层图像用FAST算法提取图像的角点,将角点作为特征点。
本发明的有益效果在于:利用sparse-slam方法对环境建图,并优化建图过程,使其能在移动端、低配电脑等计算能力比较低的平台实时运行;在提取特征点部分,利用FAST分层提取特征点,只利用图像中有梯度的部分信息,减少计算量;在跟踪部分用SSD算法,且只跟踪最下面两次图像的特征点,而三角化时则三角化分层图像的特征点,这样既节省了时间,又尽可能的保留了图像的特征,在保证了算法高效实时的前提下,保留更多的场景信息。
附图说明
图1为本发明的方法流程图。
具体实施方式
如图1所示,本发明公开的基于sparse-slam的实时建图方法,包括如下两个并列运行的线程:
线程1,跟踪并提取关键帧,具体步骤为:
步骤1.1,对输入的初始帧构建N层的图像金字塔,并提取初始帧图像金字塔中的各个特征点,设置包含初始帧图像金字塔以及各个特征点的初始帧KF1,考虑时间与效果,本实施例中N=4;
步骤1.2,对新输入的当前帧构建N层的图像金字塔,并提取当前帧图像金字塔中的各个特征点,再利用SSD算法在当前帧中跟踪初始帧KF1中的各个特征点,SSD算法公式为:
D=∑((Iki-uk)-(Ici-uc))2
式中,Iki表示初始帧KF1中第i个特征点的像素值,Ici表示当前帧中第i个特征点的像素值,uk和uc分别表示初始帧KF1中第i个特征点周围图像块的像素均值以及当前帧中第i个特征点周围图像块的像素均值,本发明取8*8的图像块;
步骤1.3,若步骤1.2中SSD算法跟踪成功跟踪到的特征点数量小于M,则返回步骤1.1重新设置初始帧KF1,若成功跟踪到的特征点数量大于M,则将当前帧标记为关键帧KF2,本发明中M=50;
步骤1.4,根据各个成功跟踪到的特征点,利用相机对极几何模型估算出相机的姿态R和T,R表示关键帧KF2与初始帧KF1之间的旋转矩阵,T表示关键帧KF2与初始帧KF1之间的平移矩阵,将初始帧KF1和关键帧KF2加入到关键帧队列KFS中;
步骤1.5,在点云MAP初始化成功后,将点云MAP映射到当前帧中,并在当前帧中利用SSD算法找出与其对应的二维点,从而利用相机对极几何模型估算出当前相机的姿态R和T,并将当前帧标记为KFi,加入到KFS中;
线程2,创建并插入点云MAP,具体步骤为:
步骤2.1,判断是否创建坐标系,若已创建,转到步骤2.2,否则创建坐标系,即根据关键帧队列KFS中的初始帧KF1建立世界坐标系W,X轴和Y轴方向为初始帧KF1的长和宽方向,Z轴方向为相机指向初始帧KF1的方向;
步骤2.2,遍历关键帧队列KFS中每一个未三角化的KFi,i=2,3,4…,利用对极几何原理将KFi中的二维特征点三角化为三维特征点,再将三维特征点加入到点云MAP中。
进一步地,利用相机对极几何模型估算出相机的姿态R和T的估算公式为:
Pl=R(Pr-T)
(RTPr)T·T×Pl=0
式中,Pl和Pr为二幅图像中匹配上的特征点,RT为R的转置,×为叉乘。
对输入的初始帧构建N层的图像金字塔的具体步骤为:对每一层图像进行下采样得到上一层的图像,通过N次下采样便可得到N层的图像金字塔。
提取初始帧图像金字塔中的各个特征点的具体步骤为:对每一层图像用FAST算法提取图像的角点,将角点作为特征点。
本发明的方法将建图过程分为两个并发线程,线程一只跟踪图像,检测关键帧,再根据检测的关键帧,提取三维点,构建MAP,且由于构建的是稀疏地图,线程一只是对图像提取特征点,跟踪特征点;线程二根据KFS队列,只三角化特征点。这样能保证两个线程的实时性。

Claims (4)

1.一种基于sparse-slam的实时建图方法,其特征在于,包括如下两个并列运行的线程:
线程1,跟踪并提取关键帧,具体步骤为:
步骤1.1,对输入的初始帧构建N层的图像金字塔,并提取初始帧图像金字塔中的各个特征点,设置包含初始帧图像金字塔以及各个特征点的初始帧KF1;
步骤1.2,对新输入的当前帧构建N层的图像金字塔,并提取当前帧图像金字塔中的各个特征点,再利用SSD算法在当前帧中跟踪初始帧KF1中的各个特征点,SSD算法公式为:
D=∑((Iki-uk)-(Ici-uc))2
式中,Iki表示初始帧KF1中第i个特征点的像素值,Ici表示当前帧中第i个特征点的像素值,uk和uc分别表示初始帧KF1中第i个特征点周围图像块的像素均值以及当前帧中第i个特征点周围图像块的像素均值;
步骤1.3,若步骤1.2中SSD算法跟踪成功跟踪到的特征点数量小于M,则返回步骤1.1重新设置初始帧KF1,若成功跟踪到的特征点数量大于M,则将当前帧标记为关键帧KF2;
步骤1.4,根据各个成功跟踪到的特征点,利用相机对极几何模型估算出相机的姿态R和T,R表示关键帧KF2与初始帧KF1之间的旋转矩阵,T表示关键帧KF2与初始帧KF1之间的平移矩阵,将初始帧KF1和关键帧KF2加入到关键帧队列KFS中;
步骤1.5,在点云MAP初始化成功后,将点云MAP映射到当前帧中,并在当前帧中利用SSD算法找出与其对应的二维点,从而利用相机对极几何模型估算出当前相机的姿态R和T,并将当前帧标记为KFi,加入到KFS中;
线程2,创建并插入点云MAP,具体步骤为:
步骤2.1,判断是否创建坐标系,若已创建,转到步骤2.2,否则创建坐标系,即根据关键帧队列KFS中的初始帧KF1建立世界坐标系W,X轴和Y轴方向为初始帧KF1的长和宽方向,Z轴方向为相机指向初始帧KF1的方向;
步骤2.2,遍历关键帧队列KFS中每一个未三角化的KFi,i=2,3,4...,利用对极几何原理将KFi中的二维特征点三角化为三维特征点,再将三维特征点加入到点云MAP中。
2.根据权利要求1所述的基于sparse-slam的实时建图方法,其特征在于,利用相机对极几何模型估算出相机的姿态R和T的估算公式为:
Pl=R(Pr-T)
(RTPr)T·T×Pl=0
式中,Pl和Pr为二幅图像中匹配上的特征点,RT为R的转置,×为叉乘。
3.根据权利要求1所述的基于sparse-slam的实时建图方法,其特征在于,对输入的初始帧构建N层的图像金字塔的具体步骤为:对每一层图像进行下采样得到上一层的图像,通过N次下采样便可得到N层的图像金字塔。
4.根据权利要求1所述的基于sparse-slam的实时建图方法,其特征在于,提取初始帧图像金字塔中的各个特征点的具体步骤为:对每一层图像用FAST算法提取图像的角点,将角点作为特征点。
CN201711045213.6A 2017-10-31 2017-10-31 一种基于sparse-slam的实时建图方法 Active CN107767450B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711045213.6A CN107767450B (zh) 2017-10-31 2017-10-31 一种基于sparse-slam的实时建图方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711045213.6A CN107767450B (zh) 2017-10-31 2017-10-31 一种基于sparse-slam的实时建图方法

Publications (2)

Publication Number Publication Date
CN107767450A CN107767450A (zh) 2018-03-06
CN107767450B true CN107767450B (zh) 2021-05-28

Family

ID=61270230

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711045213.6A Active CN107767450B (zh) 2017-10-31 2017-10-31 一种基于sparse-slam的实时建图方法

Country Status (1)

Country Link
CN (1) CN107767450B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3593198B1 (en) 2018-03-07 2023-03-08 Magic Leap, Inc. Visual tracking of peripheral devices
CN110060282B (zh) * 2019-03-27 2021-06-08 东软睿驰汽车技术(沈阳)有限公司 一种点云配准的方法及装置

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104732518A (zh) * 2015-01-19 2015-06-24 北京工业大学 一种基于智能机器人地面特征的ptam改进方法
CN105783913A (zh) * 2016-03-08 2016-07-20 中山大学 一种融合车载多传感器的slam装置及其控制方法
CN105865454A (zh) * 2016-05-31 2016-08-17 西北工业大学 一种基于实时在线地图生成的无人机导航方法
CN106052674A (zh) * 2016-05-20 2016-10-26 青岛克路德机器人有限公司 一种室内机器人的slam方法和系统
CN106092104A (zh) * 2016-08-26 2016-11-09 深圳微服机器人科技有限公司 一种室内机器人的重定位方法及装置
CN106595659A (zh) * 2016-11-03 2017-04-26 南京航空航天大学 城市复杂环境下多无人机视觉slam的地图融合方法
CN106873619A (zh) * 2017-01-23 2017-06-20 上海交通大学 一种无人机飞行路径的处理方法
CN106997614A (zh) * 2017-03-17 2017-08-01 杭州光珀智能科技有限公司 一种基于深度相机的大规模场景3d建模方法及其装置
CN107025668A (zh) * 2017-03-30 2017-08-08 华南理工大学 一种基于深度相机的视觉里程计的设计方法
CN107160395A (zh) * 2017-06-07 2017-09-15 中国人民解放军装甲兵工程学院 地图构建方法及机器人控制系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10360718B2 (en) * 2015-08-14 2019-07-23 Samsung Electronics Co., Ltd. Method and apparatus for constructing three dimensional model of object
US20170064287A1 (en) * 2015-08-24 2017-03-02 Itseez3D, Inc. Fast algorithm for online calibration of rgb-d camera
CN107223269B (zh) * 2016-12-29 2021-09-28 达闼机器人有限公司 三维场景定位方法和装置

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104732518A (zh) * 2015-01-19 2015-06-24 北京工业大学 一种基于智能机器人地面特征的ptam改进方法
CN105783913A (zh) * 2016-03-08 2016-07-20 中山大学 一种融合车载多传感器的slam装置及其控制方法
CN106052674A (zh) * 2016-05-20 2016-10-26 青岛克路德机器人有限公司 一种室内机器人的slam方法和系统
CN105865454A (zh) * 2016-05-31 2016-08-17 西北工业大学 一种基于实时在线地图生成的无人机导航方法
CN106092104A (zh) * 2016-08-26 2016-11-09 深圳微服机器人科技有限公司 一种室内机器人的重定位方法及装置
CN106595659A (zh) * 2016-11-03 2017-04-26 南京航空航天大学 城市复杂环境下多无人机视觉slam的地图融合方法
CN106873619A (zh) * 2017-01-23 2017-06-20 上海交通大学 一种无人机飞行路径的处理方法
CN106997614A (zh) * 2017-03-17 2017-08-01 杭州光珀智能科技有限公司 一种基于深度相机的大规模场景3d建模方法及其装置
CN107025668A (zh) * 2017-03-30 2017-08-08 华南理工大学 一种基于深度相机的视觉里程计的设计方法
CN107160395A (zh) * 2017-06-07 2017-09-15 中国人民解放军装甲兵工程学院 地图构建方法及机器人控制系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
3-D Mapping With an RGB-D Camera;Felix Endres 等;《IEEE Transactions on Robotics》;20140228;第30卷(第1期);第177-187页 *
基于ORB关键帧匹配算法的机器人SLAM实现;艾青林 等;《机电工程》;20160531;第33卷(第5期);第513-520页 *
面向大尺度场景的单目同时定位与地图构建;刘浩敏 等;《中国科学:信息科学》;20161231;第46卷(第12期);第1748-1761页 *

Also Published As

Publication number Publication date
CN107767450A (zh) 2018-03-06

Similar Documents

Publication Publication Date Title
CN110631554B (zh) 机器人位姿的确定方法、装置、机器人和可读存储介质
CN106940704B (zh) 一种基于栅格地图的定位方法及装置
CN110310333B (zh) 定位方法及电子设备、可读存储介质
KR102647351B1 (ko) 3차원의 포인트 클라우드를 이용한 모델링 방법 및 모델링 장치
CN109186606B (zh) 一种基于slam和图像信息的机器人构图及导航方法
CN110176032B (zh) 一种三维重建方法及装置
CN110458863B (zh) 一种基于rgbd与编码器融合的动态slam系统
CN114862949A (zh) 一种基于点线面特征的结构化场景视觉slam方法
KR20200075727A (ko) 깊이 맵 산출 방법 및 장치
JP2017528833A (ja) 第1の座標系と第2の座標系との間の運動を求める方法
Derome et al. Moving object detection in real-time using stereo from a mobile platform
CN112802096A (zh) 实时定位和建图的实现装置和方法
CN107767450B (zh) 一种基于sparse-slam的实时建图方法
CN113984068A (zh) 定位方法、定位装置和计算机可读存储介质
Ruchay et al. Accurate reconstruction of the 3D indoor environment map with a RGB-D camera based on multiple ICP
CN103901885A (zh) 信息处理方法和信息处理设备
Liu et al. Accurate real-time visual SLAM combining building models and GPS for mobile robot
Jaramillo et al. 6-DoF pose localization in 3D point-cloud dense maps using a monocular camera
US10977810B2 (en) Camera motion estimation
CN115953471A (zh) 室内场景多尺度矢量图像检索与定位方法、系统及介质
Kim et al. Image-based localization using prior map database and Monte Carlo Localization
CN111583331B (zh) 用于同时定位和地图构建的方法及装置
Ling et al. An iterated extended Kalman filter for 3D mapping via Kinect camera
CN115761558A (zh) 一种视觉定位中关键帧确定方法及装置
KR20210087875A (ko) 희소 포인트 처리 방법 및 장치

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