基于线段的激光雷达和单目联合曲面重建​

点云PCL免费知识星球,点云论文速读。

标题:Pixel-level Extrinsic Self Calibration of High Resolution LiDAR and Camera in Targetless Environments

作者:Victor Amblard, Timothy P. Osedach, Arnaud Croux, Andrew Speck and John J. Leonard4

代码开源:https://github.com/hku-mars/livox_camera_calib.git

欢迎各位加入免费知识星球,获取PDF论文,欢迎转发朋友圈。文章仅做学术分享,如有侵权联系删文。未经博主同意请勿擅自转载。

摘要

在缺乏鲁棒的视觉特征的环境中,运动结构(SfM)通常无法估计准确的姿势,在这种情况下,最终3D网格的质量会降低,克服这个问题的,一种方法是将单目相机的数据与激光雷达的数据结合起来。这种联合传感器的方法可以捕捉环境中精细的细节和纹理,同时仍能准确地表示无特征的对象,然而,由于这两种传感器的特性根本不同,因此融合这两种传感器模式是非常具有挑战性。

与直接融合图像特征和激光雷达点不同,我们提出的方案是利用激光雷达扫描的点云和图像数据中检测到的常见几何特征,允许在更高级别的空间中处理来自两个传感器的数据,特别是,在执行捆集调整以优化姿势之前,找到从激光雷达点云中提取的三维线段与图像中检测到的二维线之间的对应关系。我们利用检测到的和优化的线段来提高最终重建网格的质量,在最近发布的数据集上测试我们的方法,并将3D重建网格的精度和完整性与测量级3D扫描仪获得的真值进行比较。结果表明,该方法提供的结果与最先进的激光雷达扫描仪相当,同时不需要高度精确的姿态估计。

072e9faab3216544900f59a9a209fef5.png

图1:提出的方法是基于点线特征,将激光雷达点云和单目图像紧密耦合,以重建3D场景

主要贡献

建筑物或室外环境等大型场景的密集重建对于各种应用越来越具有吸引力,勘测级3D激光雷达系统能够对环境进行非常精确的重建,但价格昂贵,而且需要花费大量时间才能全面覆盖大面积区域。另一方面,仅从单目图像重建3D场景带来了一系列不同的挑战。首先,为了准确地恢复姿势,必须收集大量具有明显重叠的图像,此外,场景必须具有良好的照明和足够丰富的视觉特征,最后,重建的场景可能没有绝对尺度和比例。

最近,研究者们开始探索将相机图像和激光雷达扫描进行三维重建的融合,在这种方法中,相机图像捕获纹理、颜色和精细细节,使用LIDAR捕获完全独立于视觉复杂性的精确距离信息(尽管分辨率较低),这使得它能够填补视觉特征检测失败的空白,事实上,这些传感器的不同性质使它们具有互补性,但也使它们的联合使用变得复杂。

语义或几何方法的目标是在更高级别的空间中处理来自这两种不同传感器模式的数据,利用环境的结构降低不同源数据集的差异带来的复杂性。该工作重点放在线段上,因为它们是非常简单的几何特征,计算成本低廉,并且在结构化环境中很容易检测,然而,由于单目图像中的深度模糊性,在不同图像中查找二维直线之间的对应关系是一项困难的任务,实际上,两个端点位于同一对极线上的线段将在图像中的有着相同的重投影位置,即使它们的3D坐标显著不同,因此,这里选择了一种3D线段表示法,它结合了距离传感器(即激光雷达)的数据以及单目图像的数据,然后利用这些对应关系推导出捆集调整的代价函数,即估计值,优化的线段来配准激光雷达点云,随后被合并到激光雷达和相机多视图几何(MVS)流程中。

图2概述了我们的工作流程。本文的主要贡献如下:

  • 提出了一种基于运动算法的端到端结构,该算法利用激光雷达/摄像机联合观测,导出用于定位和重建的三维线段。

  • 通过在公共数据集上进行测试来验证我们的方法,然后进行优化以提高初始位姿的精度。

c4546ce5cf56a88760ea046926bb9b3e.png

  图2:激光雷达和相机联合重建流程概述

主要内容

如图2所示,我们的方案中包括两个主要模块。第一个是激光雷达增强的运动恢复结构模块,该模块处理来自激光雷达和相机检测到的3D线段,并提取和合并不同视图中的三维线段,然后使用对应线的搜索功能,可以创建线簇,并剔除一些错误的匹配线,对新代价函数的优化产生新的姿态估计。第二模块是利用新的位姿估计3D线段,基于图像和激光雷达扫描点云的组合信息重建曲面网格。

A 线段检测

线段检测模块旨在提取摄像机和激光雷达观察到的3D线段,这里首先确定图像中潜在的二维线段,这将构成导出后续三维线段的基础,这里使用线段检测器(LSD),一种广泛使用的基于区域精确检测线段的方法。然后,我们用激光雷达的点云信息增强2D信息,从而能够在3D点云中精确定位线段,将正确的激光雷达点与检测到的二维线段相关联,这对于我们算法的性能至关重要。

线段检测模块旨在提取摄像机和激光雷达观察到的3D线段,这里首先确定图像中潜在的二维线段,这将构成导出后续三维线段的基础,这里使用线段检测器(LSD),一种广泛使用的基于区域精确检测线段的方法。然后,我们用激光雷达的点云信息增强2D信息,从而能够在3D点云中精确定位线段,将正确的激光雷达点与检测到的二维线段相关联,这对于我们算法的性能至关重要。

由于激光雷达扫描点云信息无法提供任何纹理信息,我们丢弃与平面对应的线(即仅与纹理变化对应),而是将激光雷达和相机关联聚焦在边缘线部分(即与局部曲面法向量变化对应的线)。因此,除了二维线段外,我们还根据平滑度分数从激光雷达点云中中检索边缘点,然后根据其像素距离将生成的边缘点与2D线段进行匹配。通过环境的结构信息每个2D线段现在关联了一组激光雷达边缘点,我们知道选定的激光雷达点云对应于一条3D线段。然而,这些点对应的具体线可能仍然不明确,为了解决这些对应线的问题并确保这些边缘点对应于与检测到的2D段匹配的同一条线,我们在边缘点集上运行RANSAC,只保留内联线,然后将重投影的3D线与LSD输出的2D段进行比较,最后,为了避免图像中同一实际线段的多个实例,我们还融合了方向相似且位于同一线上的3D线段。该程序如图3所示

6487e18136a5134f246a1c20272b1879.png

图3:摄像机和激光雷达3D线段检测和对应关系融合流程概述

B.3D线段的对应关系

一旦在图像集中检测到3D线段,我们将通过3D线段的对应关系寻找表示同一实际线段不同视图的线段,假设在第i个图像中检测到的3D片段L,首先使用当前线段的3D信息在所有图像上重投影当前线段,并且只保留线段可见的视图。然后迭代在这些视图中检测到的线段集,并计算相似性分数,如下所述。

算法1提供了匹配代码的详细过程,相似度得分s标准:

• 重投影的3D线段之间的角度;

• 投影线段端点之间的像素距离;

• 定义为向量范数的“正交距离”应垂直于3D线段方向投影;

• 除了上述三个标准外,我们还使用线段描述子(LBD),它提供了关于线条局部外观的附加信息。这四个分量中的每一个都由四个超参数加权,算法1描述了计算单个线段的匹配集的过程。

9a43858a91a29430dbca930996128d55.png

我们对所有线段重复该过程,最终在线段之间产生一组成对关联。但是,在不同视图中,其中一些关联可能不一致,其中来自同一视图的两条直线段在视觉上表示不同的实际线段,可以在数据关联图中连接。为了确保在上一步中计算的成对关联的一致性,并减少潜在的虚假数据关联,我们使用CLEAR算法。如以下所述,进一步优化线段。该过程如图4所示:

9ff306e0de7a7f92eca3d488972c3606.png

图4:按照前面描述的匹配过程进行成对关联(边),红色表示由CLEAR过滤掉的不一致关联数据。

C.线的捆集调整

在有限的线段上进行优化通常是非常重要的,以下详细说明了成本函数中涉及的不同代价函数,我们试图将其最小化。

1) 相机观测值:我们将3D特征点重投影误差定义为其观测值的总和,即其重投影到图像平面上与该图像的相关观测值之间的像素距离:

65c46ffd55c5a37f3653372f5581346e.png

2)线段重投影:线段重投影误差定义为其所有观测值的总和,即第i幅图像上线段的观测值与重投影值之间的距离。

3937f64d011223c72ad0bdc9824f8d4c.png

优化的三维特征位置和优化的直线方程,使用库Ceres库使用Levenberg-Marquart算法计算,在优化过程中,采用直线的正交表示法。

65e753b1e4d11f03418d8fabea475e49.png

图6:每个圆表示从激光雷达点云中检测到的边缘点,使用线段检测器检测线,颜色表示二维线段和边点之间的关联,灰色表示未关联的边和线。

D.激光雷达增强的多视角图

最后进一步利用检测到的线段以及激光雷达点云和相机图像,通常,MVS流程包括三个步骤:深度图计算、深度图融合和网格重建。利用上一步线特征优化计算的姿态,将所有激光雷达点云配准到一个单点云上,并使用体素网格对其进行下采样,然后跟踪聚集在同一体素中的激光雷达点云的数量,该度量表示后续步骤中每个体素的可见性和相对重要性的度量,深度图计算主要依靠激光雷达点云来初始化深度图,然而,我们稍微修改了他们的方法,以减少潜在的遮挡问题。同时我们检查像素深度与邻域中平均深度的一致性,只有当深度与局部平均值一致时,我们才保留激光雷达测量值,在计算深度贴图后,我们将其融合,最后一步是根据融合的深度图和配准的激光雷达点云生成曲面网格。

实验

我们在从数据集中提取的两个数据集上测试了该方法,每个序列包含大约60幅图像,提供相机的内参以及相机和激光雷达之间的外参,图5显示了摄像机在序列中的位置以及数据集的三维视图,通过添加随机平移噪声和旋转噪声来生成有噪声的初始姿态估计。

520b1554a3a294074969cd07bfcded11.png

图5:真值轨迹,第一个序列显示为绿色,第二个序列显示为橙色。

表I中的结果表明,对于所测试的两个序列,使用线和可视点联合产生的结果略好于SfM方法,此改进归因于线段相对于点特征提供的更大稳定性。

507821ceaa690055af8afa66055f0399.png

图7显示了通过不同方法获得的最终重建网格的图示

001bb87cf4fa3ae3f0f96bf601227170.png

图7:序列2上不同方法获得的表面重建的网格。颜色表示网格到真实点云的距离,从蓝色(接近0)到红色(超过0:5m)

总结

本文提出了一种新的基于三维线段的激光雷达和基于相机的表面重建方案:具有几何语义结构信息,计算成本低,轻量化,并嵌入来自两个传感器的信息,从复杂的环境中进行的姿势估计和线段估计,利用最先进的数据关联算法,能够优化的线段和姿势来实现改进的多视图重建方案。从相机和精度较低的激光雷达点云合成精确的视觉特征,线段提供的刚性结构信息能够实现比纯相机方法更高质量的表面重建,并与依赖于高精度姿态估计的纯激光雷达三维重建具有相当的性能。

这项工作的一个关键假设是环境是结构化的,这一要求适用于城市环境,未来的工作可能会探索其他原始结构信息,这些几何信息可以与线段一起使用,以提高性能并降低对高度结构化环境的依赖性。

资源

三维点云论文及相关应用分享

【点云论文速读】基于激光雷达的里程计及3D点云地图中的定位方法

3D目标检测:MV3D-Net

三维点云分割综述(上)

3D-MiniNet: 从点云中学习2D表示以实现快速有效的3D LIDAR语义分割(2020)

win下使用QT添加VTK插件实现点云可视化GUI

JSNet:3D点云的联合实例和语义分割

大场景三维点云的语义分割综述

PCL中outofcore模块---基于核外八叉树的大规模点云的显示

基于局部凹凸性进行目标分割

基于三维卷积神经网络的点云标记

点云的超体素(SuperVoxel)

基于超点图的大规模点云分割

更多文章可查看:点云学习历史文章大汇总

SLAM及AR相关分享

【开源方案共享】ORB-SLAM3开源啦!

【论文速读】AVP-SLAM:自动泊车系统中的语义SLAM

【点云论文速读】StructSLAM:结构化线特征SLAM

SLAM和AR综述

常用的3D深度相机

AR设备单目视觉惯导SLAM算法综述与评价

SLAM综述(4)激光与视觉融合SLAM

Kimera实时重建的语义SLAM系统

SLAM综述(3)-视觉与惯导,视觉与深度学习SLAM

易扩展的SLAM框架-OpenVSLAM

高翔:非结构化道路激光SLAM中的挑战

SLAM综述之Lidar SLAM

基于鱼眼相机的SLAM方法介绍

扫描下方微信视频号二维码可查看最新研究成果及相关开源方案的演示:

如果你对本文感兴趣,请后台发送“知识星球”获取二维码,务必按照“姓名+学校/公司+研究方向”备注加入免费知识星球,免费下载pdf文档,和更多热爱分享的小伙伴一起交流吧!

以上内容如有错误请留言评论,欢迎指正交流。如有侵权,请联系删除

扫描二维码

                   关注我们

让我们一起分享一起学习吧!期待有想法,乐于分享的小伙伴加入免费星球注入爱分享的新鲜活力。分享的主题包含但不限于三维视觉,点云,高精地图,自动驾驶,以及机器人等相关的领域。

分享及合作方式:微信“920177957”(需要按要求备注) 联系邮箱:dianyunpcl@163.com,欢迎企业来联系公众号展开合作。

点一下“在看”你会更好看耶

3a8c9d38099ea53e1963e8701efe713b.gif

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

点云PCL公众号博客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值