前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >​基于点线特征的激光雷达+单目视觉里程计

​基于点线特征的激光雷达+单目视觉里程计

作者头像
3D视觉工坊
发布2021-01-28 18:35:20
8370
发布2021-01-28 18:35:20
举报
文章被收录于专栏:3D视觉从入门到精通

编辑丨深蓝学院

标题:Lidar-Monocular Visual Odometry using Point and Line Features

作者:Shi-Sheng Huang1, Ze-Yu Ma1, Tai-Jiang Mu1, Hongbo Fu2, and Shi-Min Hu1

摘要

本文介绍了一种新颖的使用点和线的激光雷达+单目视觉的里程计方法。与以往的基于lidar+视觉里程计相比,通过在姿态估计中引入点和线特征来利用更多的环境结构信息。

提出了一种稳健的点线特征深度提取方法,并将提取的深度值作为点线捆集平差法的先验因子。

该方法大大降低了特征的三维模糊度,提高了姿态估计精度。此外,本文还提出了一种纯视觉运动跟踪方法和一种新的尺度校正方案,从而实现了一种高效、高精度的单目视觉里程计系统。

对公开的 KITTI数据集的评估表明,该方法比最新的方法实现了更精确的姿态估计,有时甚至比那些利用语义信息的方法更好。

相关内容与介绍

激光雷达视觉里程计因其在机器人、虚拟现实、自主驾驶等领域的广泛应用而成为一个活跃的研究课题,将视觉传感器和激光雷达传感器结合起来作为激光雷达视觉里程计,实现了两种传感器的优点,因此,在计算机视觉、计算机图形学、机器人学等领域的研究越来越受到重视。

相关方案有LOAM,LIMO,DVL-SLAM,ORB-SLAM,DSO等等。

本文提出了一种稳健而有效的激光雷达单目视觉里程计方法,它以纯几何的方式结合点和线的特征,从场景环境中提取比单个特征点系统更多的结构信息。

更具体地说,我们的系统融合了摄像机跟踪过程中的点和线特征作为地标,并将基于点和线的地标的重投影误差作为后端束调整的因素。

在传感器融合过程中,提出了一种鲁棒的方法从激光雷达数据中提取点和线的深度,并利用该深度辅助相机跟踪。

这样避免了仅仅基于可能模糊的三维三角化创建的三维地标,特别是对于三维直线。在点-线捆集调整中,将深度先验作为先验因子,进一步提高姿态估计精度。

内容精华

预处理

给定一个单目图像序列和一个激光雷达序列,假设两个传感器的内、外参数已经校准,并且两个传感器的数据已经进行了时间对齐。

将相机的局部坐标设置为body坐标,世界坐标设置为body坐标的起始点。

上图显示了我们系统的框架,其中包含三个运行线程:运动跟踪线程(前端)、捆集调整线程(后端)和回环闭合线程。

前端首先在每一帧中提取点和线特征,然后在每个关键帧中估计特征的深度,最后使用帧间里程计估计相机姿势。进行尺度校正优化帧间里程计的尺度漂移。

后端使用点线约束因子进行点线捆集调整。并基于具有点和线特征词袋的的回环闭合检测,以进一步细化关键帧的姿势。

A. 特征提取

可以使用各种点特征(SIFT、SURF、ORB等)作为跟踪特征。为了提高效率,这里采用了ORB特征作为点特征,如ORB-SLAM2中所述。

在检测过程中,要求ORB特征尽可能均匀地分布在图像中。线特征对于每幅图像,使用流行的线特征检测器,线段检测器(line segment detector,LSD)来检测线段,并计算提取线的描述子(lineband Descriptor,LBD)。

如图可以将将短线段连接为长线段(左),或将临近线段合并为新线段(右),以提高LSD提取线的质量

B. 点线深度提取

在本节将介绍一种从激光雷达数据中提取点和线深度的方法。

这里,2D点特征的深度是指其对应的3D点的深度,2D线特征的深度是指两个端点对应的3D地标的深度。

一个简单的点和线深度提取说明。将稀疏的lidar数据(灰点)对准像面后,分别在点邻域和线邻域中提取点深度和线深度

C. 帧与帧间的里程计

使用纯视觉帧间里程计来估计每个帧的相机姿态,这比其他基于ICP的里程计(如V-LOAM)更有效。

D. 基于优化的尺度校正

由于估计的尺度可能会偏离其实际物理尺度,这里提出尺度校正优化。

其核心思想是融合由ICP对齐步骤计算出的相对相机姿态,通过比例校正优化来调整新估计的关键帧相机姿态和相关的3D地标。

E. 点线捆集调整

在滑动相邻窗口的关键帧之间的后端形成一个点-线捆集调整,类似于ORB-SLAM2中的方法。

将三维直线地标L_w重新投影到图像平面上,产生与线段li(左)匹配的二维直线Li,其中p0和Q0是提取的深度先验值。重投影的直线Li和匹配线段li之间的误差由其两个端点到直线的距离定(右)

F. 回环检测

在运动估计过程中,回环闭合包括基于关键帧的循环检测和循环校正。

对于循环检测,首先使用DBoW算法分别训练点特征(ORB描述符)和线特征(LBD描述符)的词袋。

然后将每个关键帧转换为点向量和线向量。在评估关键帧之间的相似性时进行循环校正。

实验

该系统是基于ORB-SLAM2实现的,有三个线程,即帧间里程计、基于关键帧的捆集调整和回环检测。

在执行ICP校准时,我们使用PCL库中实现的正态分布变换(NDT)来计算两个相邻点云之间的相对相机姿态。

我们在公开的 KITTI训练数据集上测试了我们的方法,该训练数据集包含具有地面真实轨迹的00-10序列,并在64位Linux操作系统的Inte Core i7-2600@2.6GHz和8G内存的计算机上分析了方法的精度和时间效率。

从KITTI数据集序列00的第1380帧看,纯点特征系统(左)和我们的系统(右)之间的运动跟踪精度比较。

单个特征点系统的跟踪结果有明显的漂移,而我们的结果有无漂移的运动跟踪。

我们在KITTI数据集序列00(左)和05(右)上的运动跟踪轨迹,分别用我们的完整的系统(*)、没有深度优先模块的系统(-)和没有尺度校正模块的系统(#)与地面真值(GT)轨迹进行比较的结果

对深度先验和尺度校正的评估。将其精度与我们的完整系统进行了比较。如表所示,(-)表示没有深度先验,(#)没有尺度校正(*)具有完整系统。

对DEMO、DVL-SLAM、LIMO和我们的KITTI训练数据集进行了误差分析

使用我们的完整系统对NuScenes一部分数据集测试结果,包括点线检测结果(左)和使用估计相机姿态的最终点云重建结果(右)。

总结

在这篇论文中提出了一个准确而有效的利用点和线特征的激光雷达+视觉里程计方法。

通过利用更多的结构信息,证明了我们的方法比纯几何技术更精确,并且与使用额外语义信息(如LIMO)的系统达到了相当的精度。

希望这项工作能对后续的工作有所启发,比如探索其他类型的结构先验信息,如平面先验、平行、正交或共面规则等,以获得更精确的激光雷达+相机传感器融合系统。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-01-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 3D视觉工坊 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档