CN117011660A - 一种低纹理场景下融合深度信息的点线特征slam方法 - Google Patents
一种低纹理场景下融合深度信息的点线特征slam方法 Download PDFInfo
- Publication number
- CN117011660A CN117011660A CN202311065465.0A CN202311065465A CN117011660A CN 117011660 A CN117011660 A CN 117011660A CN 202311065465 A CN202311065465 A CN 202311065465A CN 117011660 A CN117011660 A CN 117011660A
- Authority
- CN
- China
- Prior art keywords
- line
- depth
- features
- feature
- point
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000005457 optimization Methods 0.000 claims abstract description 27
- 238000012216 screening Methods 0.000 claims abstract description 12
- 238000013507 mapping Methods 0.000 claims abstract description 11
- 238000001514 detection method Methods 0.000 claims abstract description 9
- FPIGOBKNDYAZTP-UHFFFAOYSA-N 1,2-epoxy-3-(4-nitrophenoxy)propane Chemical compound C1=CC([N+](=O)[O-])=CC=C1OCC1OC1 FPIGOBKNDYAZTP-UHFFFAOYSA-N 0.000 claims abstract description 7
- 239000013598 vector Substances 0.000 claims description 13
- 238000004364 calculation method Methods 0.000 claims description 8
- 239000011159 matrix material Substances 0.000 claims description 7
- 238000009827 uniform distribution Methods 0.000 claims description 4
- 238000010276 construction Methods 0.000 claims description 3
- 238000012937 correction Methods 0.000 claims description 3
- 230000009466 transformation Effects 0.000 claims description 3
- 239000000203 mixture Substances 0.000 claims 1
- 230000001105 regulatory effect Effects 0.000 claims 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 claims 1
- 230000000007 visual effect Effects 0.000 abstract description 7
- 230000007423 decrease Effects 0.000 abstract 1
- 238000005516 engineering process Methods 0.000 description 7
- 230000007613 environmental effect Effects 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000004807 localization Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 231100001261 hazardous Toxicity 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/806—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
本发明公开的一种低纹理场景下融合深度信息的点线特征SLAM方法,首先输入彩色图像,在彩色图像中提取点特征和线特征;输入同一帧的深度图并与彩色图进行对齐,将提取的线特征映射到深度图,计算线特征的伪深度梯度;根据四叉树算法、线特征的伪深度梯度和长度对点特征和线特征进行筛选和均匀化,然后对保留的特征进行特征匹配;而后使用点的EPNP算法并将其扩展到线特征,计算出相机位姿的初始值,再根据线特征的伪深度梯度和长度构建改进的重投影误差模型,对相机位姿进行优化;之后进行局部建图和回环检测,并将改进的重投影误差模型也应用于局部优化和全局优化。本发明充分利用深度图和彩色图的信息,克服了低纹理场景下基于点线特征的视觉SLAM精度下降甚至系统失效的问题,提升了系统精度和实时性。
Description
技术领域:
本发明属于机器人同时定位与地图构建技术领域,具体设计一种低纹理场景下融合深度信息的点线特征SLAM方法。
背景技术:
自动化、计算机和人工智能技术的持续进步,使机器人行业得以快速发展,逐渐成为人工智能领域的研究热点。智能机器人已经在国内外的许多领域得到了广泛的应用,用于提高生产效率或代替人类在矿井环境探测、事故灾难等有害环境中完成任务。对于自主移动机器人而言,在各种复杂多变的环境中完成任务的前提条件是能够通过各种技术实现对周围环境的感知和对自身的定位,SLAM技术的出现解决了这个问题。同时定位与建图(Simultaneous Localization and Mapping,SLAM)是指搭载特定传感器的主体,在没有环境先验信息的情况下,于运动过程中建立环境模型,同时估计自身运动的技术。
按传感器类型可将SLAM技术分为以相机为主的视觉SLAM系统和以激光雷达为主的视觉SLAM系统。激光SLAM技术起步较早,理论技术相对成熟,建立的地图精度较高、位姿估计鲁棒性好。但由于激光雷达造价昂贵,人们更倾向使用成本更低、更易安装的视觉传感器,例如单目相机、双目相机、RGB-D相机等。
尽管视觉SLAM能够感知丰富的环境信息,但在纹理特征缺乏的场景中仍面临着一些挑战。在低纹理环境下,纹理的缺失使得特征点法难以捕捉到特征点从而无法位姿估计,导致相机跟踪失败;另外,弱纹理场景下的有效信息相比纹理丰富场景来说严重缺失,但噪声来源和规模却一致,导致信噪比大大降低而严重影响位姿估计的准确性。由于SLAM技术应用大多都是在人造环境中,这些场景通常有着丰富的线特征,因此低纹理场景下的视觉SLAM失效的解决方法通常是引入线特征。然而线特征的引入势必增加系统的复杂性,增加SLAM系统各个模块的耗时,且当系统继续运行至纹理丰富的环境时,SLAM系统的实时性更加难以保证,因此提升基于点线特征的视觉SLAM系统的实时性显得尤为重要。结合深度信息,本发明提出一种低纹理场景下融合深度信息的点线特征SLAM方法,提升在纹理缺乏的环境中基于点线特征的视觉SLAM系统的实时性,同时提高系统的精度。
发明内容:
针对现有技术存在的问题,本发明提供一种低纹理场景下融合深度信息的点线特征SLAM方法,解决在纹理缺乏的场景中基于点线特征的视觉SLAM系统实时性差的问题,同时提高系统的精度。
为了实现上述目的,本发明的技术方案是:
一种低纹理场景下融合深度信息的点线特征SLAM方法,包括以下步骤:
S1、输入彩色图像,根据彩色图像提取点特征和线特征;
S2、输入深度图像,将同一帧的深度图与彩色图的像素对齐,然后将彩色图上提取的线特征以线段的形式映射到深度图,接着计算深度图上该线段两侧的梯度变化,本发明称其为该线特征的伪深度梯度;
S3、如果点特征高于ns、线特征数量高于ms(ns、ms根据经验确定,应由使用者根据具体精度要求和硬件运算性能确定和调整),特征数量过多,系统计算负担过重,则对点特征和线特征进行均匀化分布和筛选,使系统处于纹理缺乏和纹理丰富的环境中时均有合适的特征数量;计算筛选后的点特征和线特征的描述子并进行匹配;
S4、由已匹配的点特征和线特征估计运动位姿初值,然后建立统一的包含点特征和线特征的重投影误差模型对其进行优化;
S5、判断当前帧是否为关键帧,若为关键帧则将其插入局部地图,更新局部S5地图;然后根据S4中建立的重投影误差模型,对当前关键帧和相邻关键帧进行联合优化,即局部优化;
S6、对关键帧进行回环检测,当点特征和线特征均检测到回环时则认为真正发生了回环;若发生回环则进行闭环矫正和全局优化。
进一步地,所述步骤S1具体为:首先输入彩色图像,采用ORB特征提取算法在彩色图中提取点特征;采用LSD算法提取彩色图中的线特征(提取的线特征包含自身端点、中点、斜率等信息)。
进一步地,所述步骤S2具体为:
S21、输入深度图像,首先将同一帧的深度图和彩色图进行对齐,使得彩色图上坐标为(x,y)的像素点的深度值即为对应深度图中坐标为(x,y)处的深度值;
S22、计算线特征两侧的深度变化,即该线特征的伪深度梯度,具体为:AB表示彩色图中提取的线特征,A(xa,ya)、B(xb,yb)分别为它的两个端点,将线特征映射到深度图中后,线特征的两个端点在深度图中的坐标值仍为a(xa,ya)、b(xb,yb);将深度图中的线段ab沿着与ab垂直的方向向两侧膨胀长度d′,形成一个大矩形区域,该区域以线段ab为中心轴并被线段ab分隔为两个大小相同的小矩形区域;分别计算两个小矩形区域内所有像素值之和,然后将两者相减并取绝对值,将该绝对值除以大矩形区域内的像素个数,得到伪深度梯度g;由于深度图中像素值代表该处像素的深度,因此当伪深度梯度g较大时,可认为该处深度出现明显变化,这样的线特征包含了环境的纹理信息和深度变化的信息,可认为是从两个维度观测到的特征,因此这样的线特征更可靠。
进一步地,所述步骤S3具体为:
S31、如果点特征数量大于ns,则使用四叉树算法对图像中的特征点实现筛选和均匀化;
S32、如果线特征数量大于ms,则对其进行筛选和均匀化,具体步骤为:用线特征的中点代表线特征的位置,使用四叉树算法对线特征实现均匀化分布,当在线特征密集的地方需要剔除部分线特征时,优先保留伪深度梯度更大的线特征,如果伪深度梯度相同则优先保留长度更长的线特征;
S33、计算筛选和均匀化处理后的描述子并进行特征匹配:计算点特征的BRIEF描述子并进行特征匹配;使用LBD算法计算线特征的描述子并进行匹配。
进一步地,所述步骤S4具体为:
S41、计算当前帧的位姿初始值:设有n个点特征,m个线特征;对点特征使用EPNP方法得到线性方程:Mx=0,其中x为EPNP为方法中的控制点组成的向量,M为2n×12的矩阵(每个特征点对应有两个约束方程);线特征由两个端点组成,可得到两个与点特征相同的线性方程;令τ=Mx为残差向量,其中M为(2n+4m)×12的矩阵(包括点特征和线特征的两个端点),通过最小化以下目标函数进行迭代优化可计算处控制点坐标:s.t.||x||2=1;然后根据ICP算法进行位姿求解,最终可得到相机坐标系相对于世界坐标系的位姿关系矩阵R和t;
S42、计算出相机位姿变换的初值之后,构建新的重投影误差模型对其进行优化;改进的重投影误差模型同时包括点特征和线特征的重投影误差,并根据线特征的长度和伪深度梯度对每个线特征赋予不同的权重,其中线重投影误差定义为投影线段的两个端点到像素平面上线特征的垂直距离的平均值。
进一步地,所述步骤S42具体为:
S421、点特征的重投影误差计算方法:对于世界坐标系下的空间点Pw,将其投影到像素平面为其中S为尺度因子,K为相机内参矩阵,/>为该帧相机位姿;用uc表示空间点Pw在像素平面的观测值,则该点的重投影误差为:/>
S422、线特征的重投影误差计算方法:对于空间中的某条线段lw,其两个端点坐标为l表示线段lw在像素平面上的观测值(即空间线lw对应像素平面上的线特征),使用一般方式将l表示为Ax+By+C=0,端点分别为p1、p2;类似步骤S421将/>投影到像素平面为/>到线段l的距离为/>其中xl1和yl1表示/>的坐标值,同理可求/>到线段l的距离d2;因此线特征的重投影误差表示为:其中el1=d1、el2=d2;
S423、根据线特征的伪深度梯度和长度调整每个线特征的权重,本发明认为伪深度梯度更大、长度更长的线特征可信度更高;将所有线特征的伪深度梯度按大小顺序排列,排除最大的15%和最小的15%之后,计算剩下的伪深度梯度的平均值将所有的线特征的长度按大小顺序排列,排除最大的15%和最小的15%之后,计算剩下的长度的平均值h;每个线特征的初始权重为1,使用/>和/>进行调整:对于某个线特征,其权重调整为其中g表示该线特征的伪深度梯度,h表示该线特征的长度;因此线特征重投影误差的最终表示为:/>假设已有n′个地图点和m′个空间线,则统一的包含线特征和点特征的重投影误差模型为:
进一步地,所述步骤S5具体为:
S51、根据当前帧的质量、距离上一次创建关键帧经过的时间以及当前系统的工作状态判断是否将当前帧创建为关键帧,如果判定为关键帧则将其加入局部地图,否则返回步骤S1;
S52、对于新插入的关键帧,更新共视图和生成树,向地图中添加当前关键帧;从被创建开始连续3个关键帧中被观测到的次数小于2的点特征和线特征,以及召回率小于0.25的点特征和线特征被视为坏特征,对其进行剔除,其中召回率定义为:将当前关键帧分别与其共视程度最高的10个共视关键帧进行特征匹配,创建新的地图点和空间线,并与已建立的地图进行融合;
S53、更新完地图后,对当前关键帧、当前关键帧的一级共视关键帧和当前帧的二级共视关键帧进行联合优化,并在优化中剔除外点以最大程度优化相机位姿;优化对象为相关关键帧的相机位姿R、t以及地图点和空间线;优化过程中采用步骤S423相同的重投影误差
进一步地,步骤S51中判断关键帧的具体条件为:
(1)当前帧匹配到的点特征和线特征总和不能小于25;
(2)距离上一次创建关键帧已经超过12帧,且当前局部建图线程处于空闲状态,则判断为关键帧;
(3)距离上一次创建关键帧已将超过25帧,则判断为关键帧;
(4)当前帧跟踪的特征与最近关键帧的重合度低于90%,则判断为关键帧。
进一步地,所述步骤S6具体为:基于词袋模型,分别计算当前关键帧的点特征单词向量和线特征单词向量;计算当前关键帧的单词向量与其他关键帧单词向量之间的相似度,获得帧与帧之间的相似度;当点特征和线特征均检测到回环回环时才认为真正发生了回环;构建所有关键帧的位姿图,进行全局位姿图优化,减少累积误差,优化过程与步骤S3相同,优化对象为所有历史关键帧的相机位姿R、t以及地图点和空间线。
与现有技术相比,本发明具有以下有益效果:
(1)本发明利用深度图计算线特征的伪深度梯度,根据线特征的伪深度梯度和长度进行均匀化分布和特征筛选,保留更可信的线特征,减少了线特征匹配以及后续有关线特征计算的耗时,提高了基于点线特征的SLAM的实时性;
(2)根据线特征的长度和伪深度梯度计算每个特征的权重,并根据此权重重新构建统一的包含点线特征的重投影误差模型,提高基于点线特征的SLAM的精度。
总之,本发明使用RGB-D相机,将深度信息融合到基于点线特征的视觉SLAM系统中,通过对特征的筛选和权重计算,提高了整个系统的实时性和精度。
附图说明:
图1为所述一种低纹理场景下融合深度信息的点线特征SLAM方法的流程图;
图2为所述线特征的伪深度梯度计算过程示意图。
具体实施方式:
下面结合具体的实施例对本发明技术方案做进一步详细、完整地说明。
如图1所示,本发明提供的一种低纹理场景下融合深度信息的点线特征SLAM方法,包括如下步骤:
步骤S1、使用深度相机采集图像,对于每一帧图像都包含一张彩色(RGB)图像和一张深度图像;输入彩色图像,采用ORB特征提取算法在彩色图中提取点特征;采用LSD算法提取彩色图中的线特征(提取的线特征包含自身端点、中点、斜率等信息);
步骤S2、输入深度图像,首先将同一帧的深度图和彩色图进行对齐,使得彩色图上坐标为(x,y)的像素点的深度值即为对应深度图中坐标为(x,y)处的深度值;然后将彩色图上提取的线特征以线段的形式映射到深度图,接着计算深度图上该线段两侧的深度变化作为该线特征的伪深度梯度,计算步骤具体为:AB表示彩色图中提取的线特征,A(xa,ya)、B(xb,yb)分别为它的两个端点,将线特征映射到深度图中后得到线段ab(如图2),深度图中线段ab的两个端点的坐标值仍为a(xa,ya)、b(xb,yb);将线段ab沿着与ab垂直的方向向两侧膨胀长度d′,形成一个矩形区域a1b1b2a2,该区域以线段ab为中心轴并被线段ab分隔为两个大小相同的小矩形区域;计算两个小矩形区域a1b1ba与abb2a2内所有像素的像素值之和分别为M1、M2,矩形区域a1b1b2a2内的像素个数为k,则伪深度梯度计算为:由于深度图中像素值代表该处像素的深度,因此当伪深度梯度g较大时,可认为该处深度出现明显变化,这样的线特征包含了环境的纹理信息和深度变化的信息,可认为是从两个维度观测到的特征,因此这样的线特征更可靠。;
步骤S3、如果点特征高于ns、线特征数量高于ms时,特征数量过多,系统计算负担过重,则对点特征和线特征进行均匀化分布和筛选,使系统处于纹理缺乏和纹理丰富的环境中时均有合适的特征数量;计算筛选和均匀化处理后的点特征和线特征的描述子并进行匹配;
步骤S31、如果点特征数量高于ns,则使用四叉树法对图像中的特征点实现筛选和均匀化;
步骤S32、如果线特征数量高于ms,则对其进行筛选和均匀化,具体步骤为:用线特征的中点代表线特征的位置,使用四叉树法对线特征实现均匀化分布,在线特征密集的地方需要剔除部分线特征时,优先保留伪深度梯度更大的线特征,如果伪深度梯度相同则优先保留长度更长的线特征;
步骤S33、计算经过步骤S31处理后保留的点特征的BRIEF描述子并进行特征匹配;使用LBD算法计算经过步骤S32处理后保留的线特征的描述子并进行特征匹配;
步骤S4、由已匹配的点特征和线特征估计运动位姿初值,然后建立统一的包含点特征和线特征的重投影误差模型对其进行优化;改进的重投影误差模型同时包括点特征和线特征的重投影误差,并根据线特征的长度和伪深度梯度对每个线特征赋予不同的权重,其中线重投影误差定义为投影线段的两个端点到像素平面上线特征的垂直距离的平均值;
步骤S41、计算当前帧的位姿初始值:设有n个点特征,m个线特征;对点特征使用EPNP方法得到线性方程:Mx=0,其中x为EPNP为方法中的控制点组成的向量,M为2n×12的矩阵(每个特征点对应有两个约束方程);线特征由两个端点组成,可得到两个与点特征相同的线性方程;令τ=Mx为残差向量,其中M为(2n+4m)×12的矩阵(包括点特征和线特征的两个端点),通过最小化以下目标函数进行迭代优化可计算处控制点坐标:s.t.||x||2=1,然后根据ICP算法进行位姿求解,最终可得到相机坐标系相对于世界坐标系的位姿关系矩阵R和t;
步骤S42、计算出相机位姿变换的初值之后,构建改进的重投影误差模型对其进行优化;
步骤S421、点特征的重投影误差计算方法:对于世界坐标系下的空间点Pw,将其投影到像素平面为其中S为尺度因子,K为相机内参矩阵,/>为该帧相机位姿;用uc表示空间点Pw在像素平面的观测值,则该点的重投影误差为:/>
步骤S422、线特征的重投影误差计算方法:对于空间中的某条线段lw,其两个端点坐标为l表示线段lw在像素平面上的观测值(即空间线lw对应像素平面上的线特征),使用一般方式将l表示为Ax+By+C=0,端点分别为p1、p2;类似步骤S421将/>投影到像素平面为/> 到线段l的距离为/>其中xl1和yl1表示/>的坐标值,同理可求/>到线段l的距离d2;因此线特征的重投影误差表示为:其中el1=d1、el2=d2;
步骤S423、根据线特征的伪深度梯度和长度调整每个线特征的权重,本发明认为伪深度梯度更大、长度更长的线特征可信度更高;将所有线特征的伪深度梯度按大小顺序排列,排除最大的15%和最小的15%之后,计算剩下的伪深度梯度的平均值将所有的线特征的长度按大小顺序排列,排除最大的15%和最小的15%之后,计算剩下的长度的平均值/>每个线特征的初始权重为1,使用/>和/>进行调整:对于某个线特征,其权重调整为其中g表示该线特征的伪深度梯度,h表示该线特征的长度;因此线特征重投影误差的最终表示为:/>假设已有n′个地图点和m′个空间线,则统一的包含线特征和点特征的重投影误差模型为:
步骤S5、判断当前帧是否为关键帧,若为关键帧则将其插入局部地图,更新局部地图;然后根据S4中建立的重投影误差模型,对当前关键帧和相邻关键帧进行联合优化,即局部优化;
S51、根据当前帧的质量、距离上一次创建关键帧经过的时间以及当前系统的工作状态判断是否将当前帧创建为关键帧,如果判定为关键帧则将其加入局部地图,否则返回步骤S1;判断关键帧的具体条件为:(1)当前帧匹配到的点特征和线特征总和不能小于25;(2)距离上一次创建关键帧已经超过12帧,且当前局部建图线程处于空闲状态,则判断为关键帧;(3)距离上一次创建关键帧已将超过25帧,则判断为关键帧;(4)当前帧跟踪的特征与最近关键帧的重合度低于90%,则判断为关键帧;
S52、对于新插入的关键帧,更新共视图和生成树,向地图中添加当前关键帧;从被创建开始连续3个关键帧中被观测到的次数小于2的点特征和线特征,以及召回率小于0.25的点特征和线特征被视为坏特征,对其进行剔除,其中召回率定义为:将当前关键帧分别与其共视程度最高的10个共视关键帧进行特征匹配,创建新的地图点和空间线,并与已建立的地图进行融合;
S53、更新完地图后,对当前关键帧、当前关键帧的一级共视关键帧和当前帧的二级共视关键帧进行联合优化,并在优化中剔除外点以最大程度优化相机位姿;优化对象为相关关键帧的相机位姿R、t以及地图点和空间线;优化过程中采用步骤S423相同的重投影误差
步骤S6、对关键帧进行回环检测,当点特征和线特征均检测到回环时则认为真正发生了回环;若发生回环则进行闭环矫正和全局优化;具体为:基于词袋模型,分别计算当前关键帧的点特征单词向量和线特征单词向量;计算当前关键帧的单词向量与其他关键帧单词向量之间的相似度,获得帧与帧之间的相似度;当点特征和线特征均检测到回环时才认为真正发生了回环;构建所有关键帧的位姿图,进行全局位姿图优化,减少累积误差,优化过程与步骤S3相同,优化对象为所有历史关键帧的相机位姿R、t以及地图点和空间线。
综上所述:本发明公开了一种低纹理场景下融合深度信息的点线特征SLAM方法,属于机器人同时定位与地图构建技术领域。利用深度相机获取彩色图像及深度图像,首先使用ORB点特征提取算法和LSD线段检测算法提取彩色图像中的点特征和线特征;而后使用四叉树算法、线特征的伪深度梯度和长度保留数量合适且更可信的特征,以在保证精度的前提下减轻后续计算负担;然后将线特征的伪深度梯度和长度信息融合进包含点、线特征的重投影误差模型,并将此改进的模型应用于前端位姿优化、局部优化和全局优化,提升系统实时性。
Claims (4)
1.一种低纹理场景下融合深度信息的点线特征SLAM方法,其特征在于,包括以下步骤:
S1、输入彩色图像,根据彩色图像提取点特征和线特征;
S2、输入深度图像,将同一帧的深度图与彩色图的像素对齐,然后将彩色图上提取的线特征以线段的形式映射到深度图,接着计算深度图上该线段两侧的深度变化,即该线特征的伪深度梯度;
S3、如果点特征高于ns、线特征数量高于ms(ns、ms根据经验确定,应由使用者根据具体精度要求和硬件运算性能确定和调整),特征数量过多,系统计算负担过重,则对点特征和线特征进行均匀化分布和筛选,使系统处于纹理缺乏和纹理丰富的环境中时均有合适的特征数量;计算筛选后的点特征和线特征的描述子并进行匹配;
S4、由已匹配的点特征和线特征估计运动位姿初值,然后建立统一的包含点特征和线特征的重投影误差模型对其进行优化;
S5、判断当前帧是否为关键帧,若为关键帧则将其插入局部地图,更新局部地图;然后根据S4中建立的重投影误差模型,对当前关键帧和相邻关键帧进行联合优化,即局部优化;
S6、对关键帧进行回环检测,当点特征和线特征均检测到回环时才认为真正发生了回环;若发生回环则进行闭环矫正和全局优化。
2.根据权利要求1所述的一种低纹理场景下融合深度信息的点线特征SLAM方法,其特征在于:所述步骤S2具体为:输入深度图像,首先将同一帧的深度图和彩色图进行对齐,使得彩色图上坐标为(x,y)的像素点的深度值即为对应深度图中坐标为(x,y)处的深度值;计算线特征两侧的深度变化,即伪深度梯度,计算步骤具体为:AB表示彩色图中提取的线特征,A(xa,ya)、B(xb,yb)分别为它的两个端点,将线特征映射到深度图中后,线特征的两个端点在深度图中的坐标值仍为a(xa,ya)、b(xb,yb);将深度图中的线段ab沿着与ab垂直的方向向两侧膨胀长度d′,形成一个矩形区域,该区域以线段ab为中心轴并被线段ab分隔为两个大小相同的小矩形区域;分别计算两个小矩形区域内所有像素值之和,然后将两者相减并取绝对值,将该绝对值除以矩形区域内的像素个数,得到伪深度梯度g;由于深度图中像素值代表该处像素的深度,因此当伪深度梯度g较大时,可认为该处深度出现明显变化,这样的线特征包含了环境的纹理信息和深度变化的信息,可认为是从两个维度观测到的特征,因此这样的线特征更可靠。
3.根据权利要求1所述的一种低纹理场景下融合深度信息的点线特征SLAM方法,其特征在于:所述步骤S3的具体步骤为:如果点特征数量大于ns,则使用四叉树法对图像中的特征点实现筛选和均匀化;如果线特征数量大于ms,则对其进行筛选和均匀化,具体为:用线特征的中点代表线特征的位置,使用四叉树法对线特征实现均匀化分布,在线特征密集的地方需要剔除部分线特征时,优先保留伪深度梯度更大的线特征,如果伪深度梯度相同则优先保留长度更长的线特征;计算筛选和均匀化后的特征描述子并进行特征匹配:计算点特征的BRIEF描述子并进行特征匹配;使用LBD算法计算线特征的描述子并进行匹配。
4.根据权利要求1所述的一种低纹理场景下融合深度信息的点线特征SLAM方法,其特征在于:所述步骤S4的具体步骤为:首先将EPNP方法应用于点特征和线特征,构建统一的残差向量,计算出相机位姿变换的初值,然后构建改进的重投影误差模型对其进行优化;改进的重投影误差模型同时包括点特征和线特征的重投影误差,并根据线特征的长度和伪深度梯度对每个线特征赋予不同的权重,其中线重投影误差定义为投影线段的两个端点到像素平面上线特征的垂直距离的平均值。具体构建方法如下:
(1)、点特征的重投影误差计算方法:对于世界坐标系下的空间点Pw,将其投影到像素平面为其中S为尺度因子,K为相机内参矩阵,/>为该帧相机位姿;用uc表示空间点Pw在像素平面的观测值,则该点的重投影误差为:/>
(2)、线特征的重投影误差计算方法:对于空间中的某条线段lw,其两个端点坐标为l表示线段lw在像素平面上的观测值(即空间线lw对应像素平面上的线特征),使用一般方式将l表示为Ax+By+C=0,端点分别为p1、p2;类似步骤S421将/>投影到像素平面为/> 到线段l的距离为/>其中xl1和yl1表示/>的坐标值,同理可求/>到线段l的距离d2;因此线特征的重投影误差表示为:其中el1=d1、el2=d2;
(3)、根据线特征的伪深度梯度和长度调整每个线特征的权重,本发明认为伪深度梯度更大、长度更长的线特征可信度更高;将所有线特征的伪深度梯度按大小顺序排列,排除最大的15%和最小的15%之后,计算剩下的伪深度梯度的平均值将所有的线特征的长度按大小顺序排列,排除最大的15%和最小的15%之后,计算剩下的长度的平均值/>每个线特征的初始权重为1,使用/>和/>对其进行调整:对于某个线特征,其权重调整为其中g表示该线特征的伪深度梯度,h表示该线特征的长度;因此线特征重投影误差的最终表示为:/>
假设已有n′个地图点和m′个空间线,则统一的包含线特征和点特征的重投影误差模型为:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311065465.0A CN117011660A (zh) | 2023-08-23 | 2023-08-23 | 一种低纹理场景下融合深度信息的点线特征slam方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311065465.0A CN117011660A (zh) | 2023-08-23 | 2023-08-23 | 一种低纹理场景下融合深度信息的点线特征slam方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117011660A true CN117011660A (zh) | 2023-11-07 |
Family
ID=88572694
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311065465.0A Pending CN117011660A (zh) | 2023-08-23 | 2023-08-23 | 一种低纹理场景下融合深度信息的点线特征slam方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117011660A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117649536A (zh) * | 2024-01-29 | 2024-03-05 | 华东交通大学 | 一种点线和线结构特征融合的视觉同步定位与建图方法 |
-
2023
- 2023-08-23 CN CN202311065465.0A patent/CN117011660A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117649536A (zh) * | 2024-01-29 | 2024-03-05 | 华东交通大学 | 一种点线和线结构特征融合的视觉同步定位与建图方法 |
CN117649536B (zh) * | 2024-01-29 | 2024-04-16 | 华东交通大学 | 一种点线和线结构特征融合的视觉同步定位与建图方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114862949B (zh) | 一种基于点线面特征的结构化场景视觉slam方法 | |
CN107025668B (zh) | 一种基于深度相机的视觉里程计的设计方法 | |
CN110631554B (zh) | 机器人位姿的确定方法、装置、机器人和可读存储介质 | |
CN106780576B (zh) | 一种面向rgbd数据流的相机位姿估计方法 | |
CN108537848B (zh) | 一种面向室内场景重建的两级位姿优化估计方法 | |
CN111462207A (zh) | 一种融合直接法与特征法的rgb-d同时定位与地图创建方法 | |
CN114399554B (zh) | 一种多相机系统的标定方法及系统 | |
CN109671119A (zh) | 一种基于slam的室内定位方法及装置 | |
CN112396595B (zh) | 一种动态环境下基于点线特征的语义slam方法 | |
CN106875437B (zh) | 一种面向rgbd三维重建的关键帧提取方法 | |
CN110276768B (zh) | 图像分割方法、图像分割装置、图像分割设备及介质 | |
CN110853100A (zh) | 一种基于改进点线特征的结构化场景视觉slam方法 | |
CN111998862B (zh) | 一种基于bnn的稠密双目slam方法 | |
CN111105460B (zh) | 一种室内场景三维重建的rgb-d相机位姿估计方法 | |
CN112967340A (zh) | 同时定位和地图构建方法、装置、电子设备及存储介质 | |
CN110570474B (zh) | 一种深度相机的位姿估计方法及系统 | |
CN110375765B (zh) | 基于直接法的视觉里程计方法、系统及存储介质 | |
CN112652020B (zh) | 一种基于AdaLAM算法的视觉SLAM方法 | |
CN117011660A (zh) | 一种低纹理场景下融合深度信息的点线特征slam方法 | |
CN112541423A (zh) | 一种同步定位与地图构建方法和系统 | |
CN112085849A (zh) | 基于航拍视频流的实时迭代三维建模方法、系统及可读介质 | |
CN114707611B (zh) | 基于图神经网络特征提取与匹配的移动机器人地图构建方法、存储介质及设备 | |
CN116879870A (zh) | 一种适用于低线束3d激光雷达的动态障碍物去除方法 | |
CN114494150A (zh) | 一种基于半直接法的单目视觉里程计的设计方法 | |
CN112767481B (zh) | 一种基于视觉边缘特征的高精度定位及建图方法 |
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 |