点击上方“3D视觉工坊”,选择“星标”

干货第一时间送达

摘要

来自商用惯性、视觉和激光雷达传感器的多模态测量的多传感器融合提供了鲁棒和精确的6自由度姿态估计,在机器人学和其他领域具有巨大的潜力.在本文中,基于我们以前的工作(即LIC-Fusion),我们开发了一个基于滑动窗口滤波器的激光雷达惯性相机里程计,具有在线时空校准(即LIC-Fusion2.0),它引入了一个新的滑动窗口平面特征跟踪,以有效地处理三维激光雷达点云.特别地,在通过利用惯性测量单元数据对激光雷达点进行运动补偿之后,低曲率平面点被提取并在滑动窗口中被跟踪.在高质量数据关联的平面特征跟踪中,提出了一种新的孤立点剔除准则.只有被跟踪的属于同一平面的平面点才会被用于平面初始化,这使得平面提取高效且鲁棒.此外,我们对激光雷达-惯性测量单元子系统进行了可观测性分析,并报告了利用平面特征进行时空校准的退化情况.在蒙特卡洛模拟中验证了估计一致性和识别的退化运动的同时,还进行了不同的真实世界实验,以表明所提出的LIC-Fusion2.0优于其前身和其他最先进的方法.

在我们之前的LIC-Fusion1.0工作的基础上,我们提出了一种新的平面特征跟踪算法来有效地处理激光雷达测量,然后将其最佳地集成到基于滑动窗口滤波器的多传感器融合框架中(参见图1中的系统概述).特别地,在去除激光雷达点的运动失真之后,在当前滑动窗口期间,我们仅提取和跟踪与特定平面相关联的平面点.只有跟踪的平面点将用于平面特征初始化,这使得平面提取更加高效和鲁棒.虽然存在大量关于具有点特征的视觉惯性系统的可观测性分析的工作[10][11],但是我们对所提出的激光雷达-惯性-视觉系统进行可观测性分析,并且识别退化情况用于具有平面特征的在线校准.

这项工作的主要贡献可归纳如下

  • 我们开发了一种新的滑动窗口平面特征跟踪算法,允许在滑动窗口内跨多个激光雷达扫描跟踪3D环境平面特征.这种跟踪算法被最佳地集成到我们先前的紧密耦合融合框架:LIC-Fusion.对于所提出的平面跟踪,提出了一种新的离群点剔除准则,该准则通过考虑激光雷达帧之间的变换不确定性来实现鲁棒匹配.该系统能够合理地对激光雷达测量的不确定性进行建模,消除了激光雷达扫描匹配的不一致性.

  • 我们对具有平面特征的激光雷达-惯性-相机系统进行了深入的可观测性分析,并确定了导致系统具有额外不可观测方向的退化情况.

  • 我们在一系列蒙特卡罗模拟和真实数据集上对所提出的LICFusion 2.0进行了广泛的实验,验证了所提出的系统的一致性和准确性.

真实世界的实验结果

我们进一步验证了所提出的LIC-Fusion2.0.使用我们的多传感器平台,平台由Velodyne VLP16、Xsens IMU和全局快门单目相机组成(见图4).所有传感器异步发布,所有时间偏移以零为初始猜测值在线估计.图像处理模块是基于我们以前的工作OpenVINS,而激光雷达处理模块是在这项工作中提出的.请注意,IMU作为基础传感器是必要的,激光雷达和相机可以在不影响性能的情况下打开/关闭.

(图一)

图1:LIC融合2.0概述.红色的是激光雷达稳定跟踪的SLAM平面路标和摄像机的SLAM点.通过一系列激光雷达扫描积累的蓝色高曲率激光雷达点仅用于显示周围环境.洋红色点是从最新的激光雷达扫描中提取的平面点.估计轨迹用绿色标出.

(图三)

图3:左侧:带有结构平面(蓝色)、16束激光雷达点(黄色)、SLAM点地标(红点)、SLAM平面地标(红点)、估计(绿色)和地面真实(青色)轨迹的模拟房间.中间和右侧:校准误差和6个典型运行的3 sigma bounds

(图四)

图4:左:传感器套件并且带有Velodyne VPL-16、Xsens IMU和单目摄像机.中间:教学楼.右图:Vicon序列

(图五)

图5:左二:在示教构建序列1和2时,LIC-Fusion2.0的估计轨迹.右二:Vicon房间序列2上LIC-Fusion2.0的估计轨迹

(图六)

图6:系统的运行时间分析

1   Teaching Building Sequences

首先对浙江大学教学楼内收集的数据(图4和表四)进行评估.由于我们在收集数据时开始和结束的位置是相同的,因此系统性能评估使用的是始端至末端漂移(假设为零)(见图5).

表五显示了在7个序列上测试的5次运行的平均开始和结束误差.在实验中,我们将LIC-Fusion2.0与其子系统和其他最新算法进行了比较,在表五中,当最终漂移的范数大于30米时,我们省略了以“-”标记的严重故障.在Seq 1中,当我们在光线不好的情况下上楼时,由于相机曝光变化巨大,基于相机的OpenVINS无法跟踪视觉特征.我们的子系统在Seq 3和Seq 6上有较大的漂移,其中传感器套件穿过只有平行平面观察到的长走廊.即使有一张全局地图,LIO地图在有长走廊的Seq 3上也失败了.

总体而言,与其他算法相比,LIC-Fusion 2.0更鲁棒.并且可以在大多数序列上实现更高的精度.

2   Vicon Room Sequences

VICON中收集的数据序列也用于系统评估.环境中的杂波(如图4所示)对激光雷达点的数据关联提出了挑战.结果如表6所示和图5,过渡误差大于20米的情况标以“-”.在滑动窗口上具有可靠数据关联的所提出的LIC-Fusion2.0优于其他算法.我们感谢LIO-MAP 作者对参数调整的帮助,以实现更高的精度.然而,在杂波环境下,由于易出错的数据关联和激光雷达与惯性测量单元之间缺乏时间同步,LIO在某些序列上仍然失败.

实验结果表明,LIC-Fusion2.0采用新的时间平面跟踪和在线时空标定方法,能够获得比现有的激光雷达-相机融合算法更高的精度.我们进一步检查主要阶段的计算成本(如图6所示)在搭载英特尔i78086k CPU@4.0GHz的台式计算机上运行Seq 6,其IMU-CAM子系统的平均处理时间为0.0168秒,LiDARIMU子系统的平均处理时间为0.0402秒.因此,LIC-Fusion2.0适用于这种室内场景的实时应用.

结论

我们开发了一个强大和有效的滑动窗口平面特征跟踪算法来处理三维激光雷达点云测量.我们将这种跟踪算法集成到我们以前的LIC融合估计器中,从而使LIC2.0具有更好的性能.特别是,在平面特征跟踪过程中,我们提出了一种新的离群点剔除标准,通过考虑激光雷达帧变换的不确定性来提高特征匹配质量.此外,我们还深入研究了线性化LIC系统模型的可观测性特性.并识别了具有平面特征的激光雷达-惯性测量单元时空校准的退化情况.该方法已经在模拟数据集和真实数据集上得到了验证,并显示出比最先进的算法更高的精度.未来将研究激光雷达扫描中的滑动窗口边缘特征跟踪.

- END -

本文仅做学术分享,如有侵权,请联系删文。

下载1

在「3D视觉工坊」公众号后台回复:3D视觉即可下载 3D视觉相关资料干货,涉及相机标定、三维重建、立体视觉、SLAM、深度学习、点云后处理、多视图几何等方向。

下载2

在「3D视觉工坊」公众号后台回复:3D视觉github资源汇总即可下载包括结构光、标定源码、缺陷检测源码、深度估计与深度补全源码、点云处理相关源码、立体匹配源码、单目、双目3D检测、基于点云的3D检测、6D姿态估计源码汇总等。

下载3

在「3D视觉工坊」公众号后台回复:相机标定即可下载独家相机标定学习课件与视频网址;后台回复:立体匹配即可下载独家立体匹配学习课件与视频网址。

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

▲长按加微信群或投稿

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的知识点汇总、入门进阶学习路线、最新paper分享、疑问解答四个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近2000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

圈里有高质量教程资料、可答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~  

LIC-Fusion 2.0:基于滑动窗口法平面特征跟踪的激光雷达惯性相机里程计相关推荐

  1. LIC Fusion 2.0:滑动窗口法平面特征跟踪的激光雷达惯性相机里程计

    点云PCL免费知识星球,点云论文速读. 标题:LIC-Fusion 2.0: LiDAR-Inertial-Camera Odometry with Sliding-Window Plane-Feat ...

  2. 从零开始学习VIO笔记 --- 第四讲:滑动窗口(基于滑动窗口算法的 VIO 系统:可观性和一致性)

    从零开始学习VIO笔记 --- 第四讲:滑动窗口(基于滑动窗口算法的 VIO 系统:可观性和一致性) 一. 从高斯分布到信息矩阵 1.1 高斯分布 1.2 高斯分布和协方差矩阵 1.3 信息矩阵 二. ...

  3. reduceByKeyAndWindow基于滑动窗口的热点搜索词实时统计(Scala版本)

    package SparkStreaming import org.apache.spark.SparkConf import org.apache.spark.streaming.{Seconds, ...

  4. VINS-MONO学习笔记 [基于滑动窗口的非线性优化]

    目录 1. 代码 2. ceres解析求导 3. ceres李代数加法代码实现 4. 预积分约束残差计算 5. 预积分雅克比计算 6. 视觉重投影约束 7. 滑动窗口边缘化 1. 代码 代码位置: v ...

  5. 基于平面几何精确且鲁棒的尺度恢复单目视觉里程计

    标题:Accurate and Robust Scale Recovery for Monocular Visual Odometry Based on Plane Geometry 作者:Rui T ...

  6. F-LOAM:基于激光雷达的快速里程计和建图

    文章:F-LOAM : Fast LiDAR Odometry and Mapping 作者:Han Wang, Chen Wang, Chun-Lin Chen, and Lihua Xie git ...

  7. 基于滑动窗口的时间序列数据相关性分析计算

    在以往的项目中,我们想要计算时间序列的相关性的话,大都是把整体的数据中不同维度的数据当做是一个整体序列来进行两两序列之间的相关性分析计算,也比较简洁实用一些,这里今天遇上一个新的需求就是,我们需要把滑 ...

  8. 滑动窗口提取特征-torch.unfold的应用

    假设我们希望提取一个矩阵每一个点上3*3窗口的均值或其他特征,直接使用循环的方法速度太慢,在pytorch中可以利用torch.unfold函数大大简化这个流程,GPU矩阵运算是真的快呀~.      ...

  9. 基于LSTM、RNN及滑动窗口CNN模型的股票价格预测

    基于LSTM.RNN及滑动窗口CNN模型的股票价格预测 Abstract 股票市场或股票市场对当今经济产生深远影响.股价的上涨或者下跌对投资者的收益具有重要的决定作用.现有的预测方法使用线性(AR,M ...

最新文章

  1. 【转】 Android快速开发系列 10个常用工具类 -- 不错
  2. 《Linux设备驱动开发详解 A》一一2.3 接口与总线
  3. 学习org-mode
  4. java代码同时下载_java代码实现打包多个文件下载功能
  5. java applet退出功能_java-如何使用内置在applet中的Button在浏览器中停止applet?
  6. Packet Tracer 思科模拟器之交换机配置快速生成树协议(RSTP)
  7. ubuntu14.04禁用自动待机保持屏幕亮度
  8. 使用window.createPopup创建无限级跨帧下拉菜单
  9. c#winform控件过多卡顿问题解决方案
  10. zooland 新开源的RPC项目,希望大家在开发的微服务的时候多一种选择,让微服务开发简单,并且容易上手。...
  11. Deepin nginx lumen配置
  12. ext2文件系统了解
  13. ie属性中程序中的internet程序中的html编辑器为空,修改Internet Explorer(IE)查看源文件中的编辑器的方法...
  14. Ubuntu18.04 PulseAudio实战
  15. VUE3使用keep-alive页面切换时报错:parentComponent.ctx.deactivate is not a function
  16. Numpy 使用总结(三)
  17. MFC使用SQLite 学习系列 一: SQLITE_MISUSE错误
  18. 如何给纸壳箱上装,#ps修图p图抠图视频教程小白入门基础课程
  19. 软件设计师中级: 2019年上半年软件设计师考试上午真题 专业解析+参考答案
  20. 云之讯手机号短信验证

热门文章

  1. 我爱淘二次冲刺阶段1
  2. 接手一个网站后应做什么
  3. 深入浅出 ZooKeeper
  4. 精讲 MySQL 事务日志:redo log 和 undo log
  5. 恕我直言,微服务挺好,但不适合你
  6. 【Java8新特性】浅谈方法引用和构造器引用
  7. CTO让我研究中台(一):阿里的“数据+业务”双中台架构
  8. 高德亿级流量接入层服务的演化之路
  9. 每天都用ArrayList,你读过它的源码么?
  10. 你知道Java文件拷贝有几种方式么?