Point-line feature fusion based field real-time RGB-D SLAM

农作物的三维重建对研究其生物特性、冠层光分布和机器人采摘非常重要。然而,复杂的田间环境使得实时三维重建变得困难。由于田间纹理较弱,现有的单特征SLAM方法很难获得有效特征来构建准确实时的场地三维地图。在本文中,我们提出了一种基于点线特征融合的RGB-D SLAM新方法,用于实时场地三维场景重建。通过优化点线特征联合姿态,我们首先基于点线特征结构构建了场地的三维场景地图。然后,设计了一种基于关键帧优化的点线特征联合点云滤波方法。最后,我们在全局方面获得了始终具有高质量密集地图。在公共基准测试中,从姿态估计和重建方面评估了总体性能,并展示了与最先进方法相比的改进结果。对田间场景进行的定性实验表明,我们的方法具有高鲁棒性,可以实现农作物的实时三维重建。

Introduction

作为智能农业的新兴领域,农业机器人用于节省劳动力,提高生产效率和质量。因此,如何在复杂野外环境下实现精确的姿态估计和快速的路径规划成为近年来研究的热点。Abanay等[1]提出了一种用于草莓温室应用的农业机器人上嵌入二维激光雷达视觉传感器的校准方法,该方法基于平面图到平面图单应性方法,并采用了一组点对应。Zhang等[2]在智能农业机器人农业物联网系统中提出了一种自适应视觉导航算法,采用立体视觉提高农业机器人在复杂野外环境中运动的灵活性和适应性。

同步定位与测绘(SLAM)算法是近年来在自主机器人定位和地图构建方面发展起来的一种算法。目前主要有激光SLAM和视觉SLAM两种SLAM方法。与激光雷达和声纳设备相比,摄像头更便宜,更轻,更容易安装在其他硬件设备上,具有更多的RGB信息。因此,研究人员更加关注只使用摄像头作为外部传感器的Visual SLAM。随着传感器技术的发展,SLAM已经在移动机器人、3D重建和增强现实等广泛应用领域发挥了重要作用。Polvi等[3]提出了SlidAR,一种基于SLAM的HAR系统的3D定位。SlidAR利用3D光线投射和外极几何进行虚拟对象定位,扩展了SLAM的增强现实应用。LOAM SLAM[4]是一种低漂移实时激光雷达地图构建算法,可用于智能车辆和无人机。

对于结构化和低纹理场景,单特征SLAM方法难以提取足够的特征信息。一些具体的基于点线特征融合的单目和立体SLAM方法为增强系统鲁棒性和降低跟踪丢失概率提供了有效的解决方案,如S-SLAM[5]、single - plslam[6]、stereo - plslam[7]和PL-VINS[8],它们使用LSD[9]算法从RGB图像中提取线特征。然而,由于单目SLAM存在大尺度漂移,立体SLAM计算量大,RGBD-SLAM成为现代研究的一个新热点。

对于结构化和低纹理环境下的密集地图构建,由于地图是由连续的输入帧构建的,随着时间的推移,微小的漂移误差会累积,影响密集地图的全局一致性。有两种主要策略可以克服这些错误。闭环[10]用于确定和检测图像帧中的相似场景,为后端模块的位姿图优化提供了更多的参考数据,减少了位置漂移和地图估计。然而,闭环需要额外的计算资源,并且只有当摄像机经过相同的地方时才有效。

另一种策略是构建曼哈顿世界(Manhattan World, MW)[11],该环境由三个正交方向之一的几何结构(线或面)组成,结构的规律性可以提供有效的几何约束,有助于减少旋转估计的累积漂移误差,提高SLAM的精度。

我们在ORB-SLAM2[12]上构建PL-F SLAM (Point and Line based Field SLAM),结合点线特征,实现实时、高精度、低成本的现场三维场景重建。系统的工作流程如图1所示。综上所述,我们的贡献是:

1、提出了一种基于点-线特征融合的鲁棒姿态估计方法。通过优化基于KNN-RANSAC的特征匹配,得到了点特征和线特征的精确匹配。通过引入基于mw (Manhattan World)的解耦姿态估计,提高了系统的轨迹精度,为农业采摘机器人提供可靠的定位信息,实现有效的避障。

2、我们提出了关键帧优化策略和密集映射优化方案。在联合特征优化方法中,采用近、远点线特征来减少海量关键帧的数量。基于联合多滤波器优化,我们可以实现全局一致的密集地图,为农业机器人实现水果采摘和导航提供了关键技术。

3、给出了一种基于点线特征融合的实时RGB-D SLAM的通用框架,其中这些组件用于低纹理场景下的高精度本地化和映射。

在本文的其余部分,我们在第2节讨论了相关工作,在第3节描述了我们的系统概述,在第4节描述了方法,然后在第5节给出了评估结果,在第6节给出了结论。

 

Related work

在本节中,我们将讨论三维数字化在农业场景中的应用以及SLAM的主流,包括单目、立体和RGB-D SLAM。

1、3D digitization in agriculture

Kim等[13]提出了一种基于立体视觉的农业机器人作物高度估计方法。该算法将获取的立体图像转换为视差图,并计算每个像素的视差,以确定相机与作物之间的距离深度。Gai等[14]使用深度相机进行作物检测和重建,实现了机器人在玉米等高大植物冠层下的导航,定位是基于GPS的。Isachsen等人[15]提出了一种精确、实时、高分辨率的基于icp的RBG-D相机Eye-in-Hand三维配准算法,该算法通过高效的GPU实现。郑等[16]提出了水稻植株早季检测方法,利用RGB、NIR-G-B和无人机多光谱图像,实现了基于决策树和alas的水稻识别。

2、Visual SLAM

MonoSLAM[17]是第一个用于实时三维重建的恢复摄像机运动的纯视觉算法。基于稀疏特征点和扩展卡尔曼滤波(EKF)[18],分别实现了前端和后端优化。虽然应用于较小的场景,但它作为第一个SLAM系统具有里程碑意义。PTAM[19]是一个专为小型AR工作空间中的手持相机设计的系统,它首次将特征点跟踪和映射分离为两个独立的任务。LSD-SLAM是Engel等人提出的一种直接(无特征)单目SLAM算法,用于构建大尺度环境地图。然而,它对相机的特性很敏感,当相机快速移动时容易丢失。ORB-SLAM[21]是基于ORB特征[22]匹配的单目实时SLAM,具有跟踪、映射、重定位、闭环等功能,可应用于多种场景,鲁棒性强。Lee和Park等人提出了PLF-VINS,该算法采用角线特征融合和平行三维线融合两种新颖的方法来提高定位精度。UV-SLAM[24]是基于VINSMono[25]的无约束直线SLAM,利用消失点进行结构映射,解决了三维直线映射过程中出现的退化等问题。Zuo等人[26]首次采用正交表示作为最小参数化方法对视觉SLAM中的线特征和点特征进行建模,显著改进了SLAM的解决方案。Zhou等人[27]提出了一种点和线段结合的单目视觉SLAM系统,改进了基于局部自适应阈值的ORB算法,并引入加权思想对成本函数(cost function)进行优化。

Stereo SLAM。Paz等人提出了一种条件独立的分而治之EKF-SLAM,能够在更大的环境中运行。为了增强关键点跟踪的鲁棒性和关键帧选择策略的有效性,Bellavia等人提出了选择性SLAM (SSLAM)。Lee等人[30]提出了用于机器人定位和导航的RBPF-SLAM算法,Fu等人[31]对该算法进行了改进,用于自动驾驶汽车的导航任务,通过设计局部二维网格地图来传递三类信息。最重要的是,它构建了一个大尺度、精确的导航地图,为车辆在线定位提供了更好的性能。Tang等人提出了一种同时平衡精度和速度的立体视觉SLAM框架,该框架利用了基于关键特征的多视图几何(MVG)的优势。

RGB-D SLAM。早期的实时跟踪和绘图系统是纽科姆等人的工作。该方法将来自Kinect的深度数据融合到一个体积密集模型中,该模型用于使用ICP跟踪相机姿势。然而,这个系统仅限于小的工作空间,并且需要GPU的支持。RTAB-MAP[34]是用于大场景在线闭环检测的典型RGB-D SLAM系统,但也需要GPU加速才能实时运行。在ORB-SLAM的基础上,ORB-SLAM2[12]增加了一个支持立体声和RGBD相机的接口,可以在CPU上实时工作。然而,稀疏地图并不能直接应用于场景重建和机器人导航中。继ORB-SLAM2之后,ORBSLAM3[35]包括一个视觉惯性制导模块和一个多地图子系统,在精度和速度上提供了很大的改进。Scona等人提出了一种用于动态环境的密集RGBD-SLAM方法,该方法通过估计摄像机运动以及对当前RGB-D图像对进行概率静态/动态分割,减少了场景中动态元素的整体漂移,增强了场景中动态元素的鲁棒性。

综上所述,基于GPS的系统在GPS信号较弱的野外环境中无法获得可靠的位姿信息,无法构建有效的周围环境地图。实时三维重建系统主要依靠GPU加速,耗费大量的计算资源。在低纹理环境中,一些基于点和线段的定位精度较高的结构SLAM方法主要是单目的,没有构建密集的地图,这可能会耗费更多的资源来估计深度,并且稀疏的地图缺乏足够的环境信息。此外,SLAM技术多应用于光线适中、地面平整、定位重建特征明显的室内场景,在光照强、纹理低的复杂现场场景中缺乏应用。如何通过SLAM提高野外场景中高质量密集地图的精确定位和构建,对于农业机器人实现自主路径规划和导航具有重要意义。

System overview

提出了一种基于点线特征融合的实时RGB-D场SLAM重建方法PL-F SLAM (Point and Line based Field SLAM)。通过引入线特征信息,改进ORB-SLAM2[12]框架,通过优化特征匹配、关键帧选择策略和点云滤波,实现低成本、高精度的实时重建系统。该系统首次应用于低纹理现场场景的实时三维重建,总体架构如图2所示。

在系统的前端,运动估计是由点和线相结合的特征。对于低纹理领域的琐碎特征,我们从Intel RealSense D435i获得的RGB图像中提取点与线的联合特征,可以显著降低特征跟踪的损失率,进一步提高系统的鲁棒性。通过k近邻[37]、随机样本一致性[38](KNN-RANSAC)和拒绝错误匹配条件对Brute Force Matcher (BFMathcer)算法进行改进,实现了点线特征的高效准确匹配,实现了实时、准确的定位。

在该系统的后端和重建中,基于点线特征的结合,设计了后端优化、闭环检测和密集映射。为了避免大量关键帧导致的点云冗余,我们基于点线特征对新关键帧决策进行优化,利用近点线和远点线特征,计算近点线特征在地图中的比例作为新关键帧的条件。然后,我们通过这些帧的点和线来改进相机姿态,并在精确姿态估计的基础上构建局部点云图。最后,分别采用穿透滤波(pass-through filter)和体素网格滤波(voxel grid filter)对点云进行优化,得到全局一致的高质量密集图。

PL-F SLAM

针对特征琐碎、运动估计不准确、地图稀疏无法满足机器人避障、低纹理环境下现场地图实时构建等问题,提出了一种基于点-线特征融合的实时RGB-D SLAM重建方法。该方法主要包括基于点线特征融合和实时重构的姿态估计优化。

1、Point-line features based pose optimization

单特征SLAM在低纹理环境下的鲁棒性较弱。在这项工作中,我们提出了一种结合点线特征的跟踪方法。

首先,在ORB (Oriented FAST and rotating BRIEF)特征[22]快速提取与匹配方法的基础上,引入线特征,利用KNN-RANSAC对BFMatcher进行优化,实现点与线的精确匹配;其次,基于MW假设,计算曼哈顿世界(MW)与摄像机Ck之间的旋转估计RCkM,避免了最后一帧关键帧对姿态的影响,有效地减小了漂移;首先分别构造点和线的误差函数,然后利用点线特征的联合代价函数,利用束调整(Bundle Adjustment, BA)[39]对每一帧的相机姿态参数进行优化。最后,我们对计算远近点线特征的关键帧决策进行了优化,以改善由于关键帧过多而导致的冗余点云和不良重建。

Point-line features detection and matching

我们在ORB-SLAM2[12]中使用四叉树方法从关键帧Fi中提取更多的分布点。更重要的是,我们使用LSD (Line Segment Detection)[9]算法提取线条,并用LBD (Line Binary Descriptor)[40]描述线条来扩展特征集,以提高低纹理场景的特征检测效率。

Point-line features extraction:我们的系统在由深度相机获取的RGB图像上提取ORB和线条特征。对于2D点pi =(uL,vL)和线li =(pi,start,pi,end),它们对应的3D点Pi和线Li是通过相机内参和深度图像的反投影获得的。对于每个2D点pi,我们将其深度值d转换为虚拟右坐标:

 其中fx为水平焦距,bc为相机的立体基线距离,对于Intel RealSense D435i等于5 cm。

对于每条3D线Li,其plumker[41]描述如图3所示。在该坐标系中,Pstart和Pend是直线l的两个端点,用向量P-start=(0, Pstart)和P-end=(0, Pend)来描述直线,则l可以表示为式(2)。

 其中l是包含n和v的6 × 1向量,n是直线的矩向量,v是直线的方向向量,n垂直于由原点和直线确定的平面。

 

Point-line features matching:特征匹配通过在时间序列上准确匹配连续相邻的两幅图像之间的描述符来解决SLAM中的数据关联问题,为后续的位姿估计和优化等操作减少了大量的计算负担。SLAM使用特征描述符进行匹配,两个特征描述符之间的距离可以反映它们的相似度。对于点特征和线特征,本文分别使用BRIEF和LBD进行描述。为了保持实时性能和匹配精度,我们改进了BFMatcher算法,首先使用KNN[37]分别对点特征和线特征进行粗匹配。在匹配过程中,选取当前帧中与前一帧最相似的K个点/线(本文方法中K=2),根据汉明距离由小到大进行排序,然后计算最近邻距离与次近邻距离的比值。如果该值小于阈值τ(我们设置τ = 1/1.5),则认为最近邻匹配是正确匹配。特别地,对于可能的点和线异常值,我们将描述符汉明距离大于双倍最小值作为假匹配。最后,使用下面的RANSAC[38]方法进一步过滤匹配的ORB和线特征对,实现精细匹配。

•步骤1:设置初始内部点/线集Inlierbest=10,最大迭代次数maxIterations=300,当前迭代次数k=0。

•步骤2:从粗匹配对中随机选取n组点/线作为候选对,计算变换矩阵H,记为姿态变换模型M。

•步骤3:计算每个匹配的点/线对mpointi/ mlinei与粗匹配数据集中的模型M之间的投影误差ξ(如Eq.(3)所示)。如果误差小于阈值τ,则将该对分类为Inlier,否则为Outlier。

•步骤4:如果当前Inlier中的元素大于Inlierbest,则更新k和Inlierbest = Inlier。

•步骤5:如果k大于maxIterations,则退出;否则,请重复步骤2-4。

Point-line features based pose estimation

利用当前帧与上一帧之间精确的二维特征匹配关系,我们可以从上一帧中获得三维的地图点/线及其在当前帧中的投影。匹配位置和投影位置之间会有一些误差。因此,采用基于多组匹配的3D-2D点线的PnP和BA对姿态进行优化。与传统的姿态估计方法不同,我们将6D相机的姿态解耦为旋转和平移。基于MW假设,可以计算出MW与摄像机Ck之间的旋转RCkM。然后利用点和线以及初始旋转矩阵进行平移估计。

Manhattan Rotation estimation:MW假设场景模型包含三个相互垂直的正交方向,我们将像葡萄园这样的田野场景建模为MW。为了减少漂移并提高在田野等场景中的姿态估计的精度,我们使用MW建模来估计每个帧和曼哈顿坐标系统之间的旋转RCkM,而不是直接从帧到帧地跟踪摄像头。如图4所示,通过RCk+1,M将曼哈顿坐标系与相机的初始帧对齐,通过公式(4)获得世界坐标系下的姿态信息:

 其中,RM,W是从世界坐标系到MW坐标系的旋转矩阵,而RCk+1,M是从MW到第(k+1)帧的旋转矩阵。这两个矩阵是通过球面均值漂移方法[42]计算出来的,其中法向量和归一化消失方向被投影到当前旋转估计的切平面上,对切平面进行均值漂移以生成新的中心点,然后将其作为新估计再次投影回球面。

 

Translation estimation:旋转估计完成后,利用点线特征建立平移估计。对于点特征,我们将上一帧的3D点重新投影到当前帧中,并重新定义式(5)中的误差函数:

 这里Π(∗)是投影函数。最后一步计算旋转矩阵Rk,i,其tk,i为平移矩阵,通过标定得到摄像机的内参系数K。

对于线特征,我们定义线Li的3D端点Pi,start,Pi,end∈R3以及它们在平面上的投影pi,start,pi,end∈R2,其对应的齐次坐标为phi,start,phi,end∈R3。根据后者,我们可以计算归一化的线系数,如公式(6)所示:

 根据ji和从pi,start、pi,end到真实匹配线的距离来定义一条线的误差函数,其原理如图5所示。那么对于每个3D端点Px,误差函数可以定义为

 

基于式(5)(7),我们可以得到将点和线特征信息结合起来的非线性最小二乘代价函数:

 其中ρ是Huber鲁棒代价函数。ϕ ' k,Pi,start和ϕ ' k,Pi,end分别是与检测到的临界点和线端点的尺度相关的协方差矩阵。

Bundle adjustment:BA用于优化每一帧的相机姿态参数θk={Rk, tk}。基于Eq.(8)所构建的点线联合代价函数,将相机姿态和三维点线共同最小化以更新姿态,从而获得最优姿态估计。

Optimization of new keyframe decision

更多的关键帧有助于提高SLAM中地图的质量,但点线特征姿态优化产生的过多关键帧将导致点云冗余和系统实时性下降。本文提出了一种基于点-线特征的关键帧优化策略。通过将点和线根据其深度值划分为近、远点线特征,以此作为插入关键帧的判断条件,保证关键帧的数量合理。

首先,我们设置最小阈值εp、εl作为已跟踪的近距离点线特征,并计算地图比率ratioMap作为插入新关键帧的标准之一:

其中nTrackedClosePoint是闭合点的个数,nTrackedCloseLine是闭合线的个数,nTotal是有效跟踪特征的总数。

接下来,将以下策略分别设置为可插入的新关键帧条件。

•当前关键帧的序号大于最后一个关键帧序号和允许插入的最大关键帧序号之和。

•满足插入关键帧的最小间隔并且Local Mapper处于空闲状态。

•跟踪的点线特征的数量小于参考关键帧的0.25倍,或者近距离点和线的数量分别小于最小阈值ε p, ε l。

•在内部点和线足够的情况下,被跟踪的点和线比参考关键帧少,或者ratioMap小于设定的阈值。

Mapping

我们的三维映射方法包括稀疏映射和密集映射。利用基于ORB-SLAM2的点-线特征构建稀疏地图,以获得更好的可视化效果。然而,稀疏映射难以满足机器人避障等要求。我们给出了一个额外的基于点特征的密集地图模块,并使用多个滤波器对密集地图进行优化,以获得全局的、一致的、高质量的3D地图。

Sparse mapping

如图10(c)所示,稀疏映射由从关键帧中提取的点线特征组成。将第一个图像设置为第一个关键帧,并通过检测到的地标初始化全局地图。

当在关键帧中检测到新的地图点和线时,它们首先被插入到局部地图中,然后更新关键帧之间的链接。接下来,根据以下两个条件遍历所有插入的地图点和线,并将它们添加到全局地图中。

•当前的点或线可以在超过25%的关键帧中观察到。

•一个点或一条线必须能够被至少3个关键帧观察到。

Dense mapping

本文采用基于点的RGB-D方法进行密集场重建。基于Tracking中计算出的相机姿态信息,将RGB-D数据转换成点云patch,配准到全局点云中,得到由离散点组成的初始点云地图。我们设计了以下多个过滤器策略来优化生成的点云图,以获得更好的图。

• 拒绝深度值d<0.01和d>10的点。

• 通过使用穿透滤波器( pass-through filter.)来拒绝异常点。在我们的方法中,将z轴过滤器范围κ设置为[-0.1,3.5]。

• 通过使用体素对点云进行下采样以节省内存空间。

通过仅保留一个固定大小的体素格子中的点(我们经验性地发现,在所有实验中分辨率为0.01的效果最好),我们可以在保持点云几何特征的同时减少点的数量。

Evaluation

通过与当前最先进的Visual SLAM框架(PL-SLAM[6]、plan -SLAM[43]、RGBDSLAM[44]和ORB-SLAM2[12]的RGB-D方法)进行比较,在知名的公共TUM RGB-D基准上定量评估轨迹和地图构建,并评估系统在真实现场场景中的鲁棒性和实时性重建。

Experimental environment and design

Acquisition device:我们调查了市场上的各种深度传感器,如Kinect, Mynt和RealSense系列等。通过对应用环境、深度值、误差范围等参数的综合比较和分析,我们选择了深度传感器Intel RealSense D435i(如图6所示)作为前端数据采集设备。通过D435i的配置、连接和标定,获取ROS Topic信息,实现图像的实时采集和传输。

Acquisition device:作为评估Kinect获取的相机姿态的公共数据集,不同的序列具有不同的帧大小、结构和纹理。为了证明该方法的普遍性,我们在TUM RGB-D基准测试上通过不同大小和纹理的多个序列测试系统,包括一些低纹理环境。

所有实验都运行了三次以上,我们报告所有执行的平均数。

Field scenes:

我们对比了PL-F SLAM和ORB-SLAM2,验证了我们的方法在田间场景实时重建的可行性,例如特征信息丰富的葡萄园、草莓栽培园和果实分布和树枝分布较为分散的无花果场地(如图12(a) -12 (c)所示)。

PL-F SLAM基于Ubuntu 18.04和ROS Melodic实现,所有实验均在Intel i7-10875H(8核@2.3 GHz), 16gb RAM, Nvidia Geforce RTX 2060上进行

Localization accuracy

为了评估定位精度和系统实时性,以绝对轨迹误差(ATE)和相对姿态误差(RPE)作为定量指标,将我们的方法与其他最先进的视觉SLAM方法进行比较。

ATE comparison:

表1显示了TUM RGB-D数据集上的ATE结果。请注意,我们的PL-F SLAM平均比ORB-SLAM2减少19%的轨迹误差,并且在所有序列中表现优于其他框架。结果表明,在f1_xyz等纹理丰富的场景中,PL-F SLAM的ATE比orb -SLAM最大降低了74%。此外,我们在低纹理序列(如f3_nst_far)和大场景序列(如f3_office)中得到了很大的改进,其ATE都控制在毫米范围内。此外,我们的方法和ORB-SLAM2的ATE结果几乎在所有序列中都比ICP实现位姿估计的RGBDSLAM更好。

为了使性能更清晰,我们给出了零件序列的可视化。各方法在TUM RGBD f3_office上的可视化分析如图7所示。结果表明,我们的系统轨迹与地面真实情况基本吻合,PL-SLAM和Planar-SLAM总体漂移较大,ORB-SLAM2在箭头所示方向漂移更明显。图8显示了f3_st_near上的ATE,注意,在小场景中,PL-F SLAM的最小ATE也被控制在毫米级。

 

RPE comparison:表2显示了RPErot和RPEtrans RMSE在几个序列上评估所有方法的漂移。结果表明,PL-F SLAM的RPE普遍小于ORBSLAM2,表明我们的方法具有较高的定位精度和较低的总体漂移。低纹理大序列f3_nst_near的误差减小更为明显,而f3_nst_far的误差减小幅度较小。通过分析这些序列之间的差异,我们的方法在近距离序列上的RPE比在远距离序列上的RPE下降更明显,因为在近距离环境中有更多的关键帧。此外,与ATE结果相似,RPE结果表明,基于ICP的RGBD-SLAM在大多数序列中存在更大的轨迹误差。

 

Computation time

每个系统的平均跟踪时间统计如表3所示。结果表明,ORB-SLAM2算法由于只利用了点特征,在实时性上取得了更好的性能,这与基于pl的方法没有可比性。同时,在没有GPU加速的情况下,RGBD-SLAM与ORB-SLAM2相比性能较差。PlanarSLAM使用点、线、面特征来构建网格图,这大大降低了系统的实时性。PL-F SLAM和PL-SLAM在引入线特征时都增加了时间消耗,但与PL-SLAM相比,我们的方法以毫米级的时间消耗提高了轨迹精度(见表1和2)。

Keyframe number

为了评估所提出的关键帧选择优化策略的有效性,我们在TUM RGB-D数据集上比较了优化前后的关键帧数量,并使用ORB-SLAM2作为对比,验证了我们方法的有效性和合理性。

如图9所示,与ORB-SLAM2相比,我们的方法在所有序列中都提高了关键帧数。特别是在低纹理场景中,ORB-SLAM2只能提取少量关键帧,而我们的方法可以获得足够的关键帧,从而提高重建精度。为了避免关键帧过多导致的点云冗余,我们采用改进的新关键帧决策对关键帧数进行优化。图9中的数据表明,我们的方法几乎适用于所有序列。

 

Reconstruction accuracy

为了评估重建的精度,我们使用灰度均值、平均梯度、标准差等图像质量判断指标对重建的二维图像进行测试,并将其与ORB-SLAM2的实验结果进行比较,实验中选择图像尺寸为960*570。

•图像灰度平均值是图像灰度的平均值,表示图像的亮度。数值越大意味着图像与真实场景更匹配。

•图像平均梯度是灰度的平均变化率,可以用来反映图像中微小细节的变化。数值越大,表示图像的图层越多,意味着图像越清晰。

•图像的标准偏差反映了图像像素值与平均值的离散度。数值越大,重建质量越好。

表4给出了我们的方法与ORB-SLAM2在重建上的定量比较。实验过程中,在f1_desk上,ORBSLAM2失败了三次,而PL-F SLAM成功了一次。从表4的统计数据可以看出,PL-F SLAM在大多数序列上表现出更好的效果,这证明基于我们方法的重建效果更符合真实场景。但是在少数序列中,与ORBSLAM2相比,图像的平均梯度降低了,我们推测我们的方法会导致过多的关键帧,导致点云重叠,图像清晰度略有下降。

我们评估了系统的重建精度,稀疏和密集地图如图10所示,而我们的方法在低纹理序列上也能很好地工作。同时,我们将我们的方法与TUM RGBD f1_desk2上最先进的映射方法进行了比较,如图11所示。RGB-D SLAM是一个早期的工作,因此结果不如最近的工作,但我们的系统在密集映射方面表现出色,重构场景更加完整。

 

我们在现场场景中进行了实时重建实验,密集重建效果如图12(d) - 12(f)所示,可以看出基于我们的方法重建的场景较为完整,细节更加丰富。当实验场景为fig实验场地时,如图12(c)所示,ORB-SLAM2难以提取足够的特征,容易出现跟踪损失,如图13(a)所示,而pl- f SLAM能够有效提取特征信息,实现特征实时跟踪,鲁棒性较强,如图13(b)所示。

 

 

Conclusion

在ORB-SLAM2框架的基础上,结合深度相机,提出了一种利用点线特征进行现场场景重建的实时PL-F-SLAM方法。提出的联合点-线特征位姿优化方法解决了当前SLAM系统在低纹理野外场景中的难点。通过提取结合点线特征,优化基于KNN-RANSAC的BFMatcher算法,利用曼哈顿假设进行旋转估计实验,结果表明,该方法在正确匹配的基础上显著降低了漂移,提高了姿态精度。提出了一种新的关键帧优化策略,将点线特征划分为近距离特征和远距离特征,优化关键帧插入条件,解决了关键帧过多导致的点云冗余和重构不良的问题。基于多滤波器的密集地图构建优化策略在低纹理的现场场景和TUM RGB-D数据集上都实现了较好的实时重建,表明系统具有较强的鲁棒性和较好的现场应用价值。

所提出的关键帧优化策略在远程序列中效果不佳,使用联合特征优化方法后计算时间增加,导致系统实时性下降。在未来的工作中,我们将进一步优化线特征的提取,通过调整我们的关键帧选择方法来提高实时性和远景序列的准确性。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值