作者丨左家星@知乎

来源丨https://zhuanlan.zhihu.com/p/382746788

编辑丨3D视觉工坊

大家好!在这篇文章里我将为大家简要介绍我们在ICRA2021上发表的论文"CodeVIO: Visual-Inertial Odometry with Learned Optimizable Dense Depth" ,很荣幸这个工作获得了同行评审专家的认可,获得了机器视觉最佳论文提名。

Demo 链接:https://www.bilibili.com/video/BV1Mf4y1e7c6

论文:https://arxiv.org/abs/2012.10133

Motivation

首先,实时的单目重建在很多种场景中都是需要的,如 AR/VR,自主导航机器人等。但是,仅依赖于单目的系统无法重建出具有真实尺度的场景。CodeVIO希望通过使用单目相机和IMU进行实时的稠密重建。

图1. ARCore Depth Lab 中展示的稠密深度的应用场景

CodeVIO的主要贡献在于提出了将可优化的网络学出来的稠密深度与轻量的EKF-VIO共同估计的方式,并为提高系统的效率和精度提出了很多算法模块。CodeVIO中紧耦合了深度神经网络和VIO状态估计器,可进行有尺度的稠密重建。

需要明确的是稠密深度图的维度是很高的,逐点地调整稠密深度图是非常耗时的,如224*224的图像就有约5万个深度值需要调整。为了在轻量的EKF滤波器中,调整稠密的深度图,我们借鉴了CodeSLAM[1]的思想--将稠密的深度编码成低维度的潜变量Depth Code,并通过调整Depth Code来调整稠密深度图。

图2. CodeSLAM中将稠密深度表示为低维度的Depth code c

System Overview of CodeVIO

图3. CodeVIO 预测初始的稠密深度

CodeVIO主要包括CVAE和MSCKF VIO[2]两部分。CVAE的输入为单目图像和从VIO获得的Sparse Depth (由于IMU的使用,Sparse Depth是有尺度的,因此CVAE可预测出有尺度的稠密深度)。通过使用图像和Sparse depth中的信息,并使用Zero Depth Code可以预测出初始的稠密深度。

在 VIO 状态估计器中将对初始的稠密深度进行调整,这是通过调整Deth Code实现的。状态估计器中同时调整导航状态和Depth Code,并输出下一时刻的Sparse Depth, Updated Depth Code,以及准确的IMU Poses。将 Updated Depth Code 放到VAE中,可解码出更加准确的稠密深度。CVAE接收来自VIO的Sparse Depth 和 Updated Code, VIO 中使用CVAE预测出的稠密深度和深度不确定性,因此系统是一个紧耦合的闭环。

图4.CodeVIO在VIO状态估计器中调整Depth Code,并从调整后的Updated Depth Code中解码出调整后的稠密深度

Lightweight Estimator

在状态估计器中,除了一般的导航状态(包括IMU State, Sliding window中的Poses, 相机内外参等)外,我们还会估计一些关键帧的Depth Code ,并仅仅使用稀疏的测量来有效地更新Depth Code,以调整稠密的深度。我们使用的稀疏测量进行状态更新,包括三种类型:特征点重投影误差更新,特征点的稀疏几何更新(网络预测出的稠密深度图中有特征点的深度值观测),深度图的一致性更新(不同帧中同一点的深度值应该一致)。使用稀疏的测量更新深度码之后,稠密深度的质量可以有大幅度提升(详情见论文的实验部分)。

图5. 使用稀疏测量更新Depth Code之后,解码出的稠密深度误差更小

Fast Network Jacobian

上面提到的稀疏测量中的后两种,即特征点的稀疏几何更新与深度图的一致性更新,都需要调整Depth Code,因此需要稠密深度图对Depth Code的雅可比(即神经网络Decoder的雅可比)。现有的深度学习库中如Tensorflow, Pytorch并没有为计算雅可比矩阵而优化设计,而是依赖于Back propagation进行梯度反传来计算梯度训练网络(这里“梯度”表示单个像素对其他量的雅可比,用雅可比矩阵表示整幅图像对其他量的雅可比)。Back propagation经过链式法则计算,十分的慢,并不适合快速计算出神经网络的雅可比。因此,我们提出使用有限差分的方法计算出神经网络的雅可比,不需要Back propagation,仅需要Decoder网络的一次forward pass即可。下式中

Summary

CodeVIO 提出了一种新的范式,可以紧耦合地估计压缩后的稠密深度和EKF-VIO。来自于VIO的稀疏深度为CVAE神经网络提供了尺度,并大幅度提高深度预测质量。系统仅使用稀疏的测量即可更新稠密的深度图。此外,论文中还介绍了非常快速的基于有限差分的神经网络压雅可比矩阵计算方法。系统实时运行,可具有很强的泛化性(由于VIO的稀疏特征输入到网络,且在VIO状态估计器中调整优化网络预测的稠密深度图;我们仅在NYUV2数据集上进行网络的训练,而惊奇地发现系统可以在Euroc Mav 数据集上很好地工作)。当然CodeVIO 也有一些需要进一步完善的地方,比如我们只进行局部的dense mapping, 而 globally consistent dense mapping也值得探索。

图6. CodeVIO在神经网络完全未知的Euroc数据集上工作

参考

1.M. Bloesch, J. Czarnowski, R. Clark, S. Leutenegger, and A. J. Davison. “CodeSLAM—learning a compact, optimisable representation for dense visual SLAM”. In: Proceedings of the IEEE conference on computer vision and pattern recognition. 2018, pp. 2560–2568.

2.A. I. Mourikis and S. I. Roumeliotis. “A multi-state constraint Kalman filter for vision-aided inertial navigation”. In: Proceedings 2007 IEEE International Conference on Robotics and Automation. IEEE. 2007, pp. 3565–3572.

3.^G. Huang, A. I. Mourikis, and S. I. Roumeliotis. “A First-Estimates Jacobian EKF for Improving SLAM

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

下载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视觉领域的视频课程(三维重建系列、三维点云系列、结构光系列、手眼标定、相机标定、orb-slam3等视频课程)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近2000星球成员为创造更好的AI世界共同进步,知识星球入口:

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

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

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

CodeVIO:紧耦合神经网络与视觉惯导里程计的稠密深度重建(ICRA2021 Best Paper Finalist)...相关推荐

  1. 【点云论文速读】基于优化的视觉惯导里程计与GPS的紧耦合的融合方案

    转载自:https://mp.weixin.qq.com/s/Y-h7eto1Zc_Mkzlh653vpg [点云论文速读]基于优化的视觉惯导里程计与GPS的紧耦合的融合方案 原创 dianyunPC ...

  2. 视觉惯导里程计VIO综述

    最近阅读了VIO中的一些论文,在这里做个汇总方便以后查阅,如有问题欢迎指正. 一.背景 VIO(Visual Inertial Odometry)视觉惯导里程计,VINS(Visual Inertia ...

  3. LIO-SAM: 紧耦合的激光与惯导里程计方案

    点云PCL免费知识星球,点云论文速读. 标题:LIO-SAM: Tightly-coupled Lidar Inertial Odometry via Smoothing and Mapping 作者 ...

  4. 一:Tixiao Shan最新力作LVI-SAM(Lio-SAM+Vins-Mono),基于视觉-激光-惯导里程计的SLAM框架,环境搭建和跑通过程

    一:前言介绍 LVI-SAM是Tixiao Shan的最新力作,Tixiao Shan是Lego-loam(基于激光雷达里程计的SLAM框架)和Lio-sam(基于惯性-雷达紧耦合的SLAM框架)的作 ...

  5. LVI-SAM:紧耦合的激光视觉惯导SLAM系统(Tixiao Shan新作,已开源)

    论文地址:在公众号「3D视觉工坊」,后台回复「LVI-SAM」,即可直接下载. 我相信很多人对激光视觉惯导融合的系统都是这样设计的,但是最难的是把自己的想法保质保量的实现出来.我们做不到但是大佬可以! ...

  6. LIO-PPF:通过增量平面预拟合和跟踪的快速激光雷达惯导里程计

    点云PCL免费知识星球,点云论文速读. 文章:LIO-PPF: Fast LiDAR-Inertial Odometry via Incremental Plane Pre-Fitting and S ...

  7. FAST-LIO2:快速直接的激光雷达与惯导里程计

    点云PCL免费知识星球,点云论文速读. 文章:FAST-LIO2: Fast Direct LiDAR-inertial Odometry 作者: Wei Xu∗1 , Yixi Cai∗1 , Do ...

  8. LVI-SAM:使用SAM的激光-视觉-惯导紧耦合里程计

    转载自:https://mp.weixin.qq.com/s/MlN-0BD9rAdJwsVco7TRlg LVI-SAM:使用SAM的激光-视觉-惯导紧耦合里程计 原创 泡泡机器人 泡泡机器人SLA ...

  9. 自动驾驶中高精地图的大规模生产:视觉惯导技术在高德的应用

    导读:导航.驾驶辅助.自动驾驶等技术的不断发展对地图的精细程度提出了更高的要求.常规的道路级地图对于智能交通系统存在很多不足,针对自动驾驶应用的需求,我们提出了利用视觉惯导技术制作高精地图的方法. 本 ...

最新文章

  1. Eclipse创建struts.xml
  2. JZOJ 5410. 【NOIP2017提高A组集训10.22】小型耀斑
  3. 算法设计与分析(第三周)递归/迭代求Fibonacci前n项 【以及递归算法速度慢的原因】
  4. (12) ejb学习: JPA的传播属性
  5. oracle 10g客户端连接11g,生产环境oracle10g升级至11g准备工作
  6. 用纯css来实现一个优惠券
  7. Aptana3 SVN Client安装
  8. 不知道怎么用GitHub怎么当程序员?拿出十分钟,包你会
  9. 【转】详解GAN代码之逐行解析GAN代码
  10. 如何将网易云ncm格式转换为mp3格式
  11. java ffmpeg amr转wav_FFmpeg转音频格式为wav
  12. correlation 蒙特卡洛_蒙特卡洛模拟法
  13. 如何发现并分析APP个人信息收集是否违规?
  14. lisp自动生成界址点表_LISP语言在宗地界址点成果表的应用
  15. 手机版浏览器f12_没有广告的浏览器??
  16. 各大互联网企业Java面试题汇总,看我如何成功拿到百度的offer
  17. java zip文件加密_java自动压缩文件并加密
  18. 手机配音用哪个软件?推荐下面这几款软件
  19. dos下用move命令移动文件夹
  20. 骨传导耳机到底怎么样,五款好用的骨传导耳机推荐

热门文章

  1. 赠 看穿一切的var_dump
  2. angularjs-ngModel 控制页面的宽度
  3. formValidator BUG
  4. 基于mysql-proxy读写分离
  5. Java访问权限控制
  6. Vue涉及国家安全漏洞?尤雨溪亲自回应
  7. 字节跳动副总裁杨震原:A/B测试不是万能的,但不会一定不行
  8. 总是听别人说响应式布局,原来这么简单
  9. 用了三年 ThreadLocal 今天才弄明白其中的道理
  10. 你的对象在哪里?长什么样?我带你去看一看