论文阅读 2018 —— CodeSLAM - Learning a Compact, Optimisable Representation for Dense Visual SLAM

阅读一篇论文,学习一个稠密的可优化的用于稠密视觉SLAM的表达。

在3D感知系统中,几何表达仍然是一个关键研究课题。稠密的map能够捕获完整的曲面形状,而且能够用语义标签增强,但是它们的高纬度特性使得存储和计算变得非常庞大,而且不适合严格的概率推理。基于稀疏特征的表达能够避免这些问题,但是只能采集部分场景信息,而且仅仅主要用来定位。

作者提出了一个稠密(compact but dense)的场景几何表达,输入一个强度图。方法适用于一个基于关键帧单目稠密SLAM系统。尽管每个带有code的关键帧能够产生一个密度图,code能够有效的联合位姿变量和重叠的关键帧产生的code联合优化。

1 介绍

之前的论文CodeMapping就是这个文章的改进,所以网络结构都特别像,这里就看看思路,不具体分析了。

作者的目标是通过在深度图像上训练自动编码器来实现密集场景几何体的更通用的紧凑表示。虽然一个简单的自动编码器可能会过度简化自然场景的重建,但关键创新点是在强度图像上调整训练条件。作者方法计划来适用于通用且高度可伸缩的基于关键帧的SLAM范式,其中场景地图由一组选定和估计的历史摄影机pose以及相应的图像和补充局部信息(如深度估计)组成。

创新点有两点:

  • 通过在强度图像上调节depth auto-encoder,得到一个紧凑和可优化的稠密几何的推到。
  • 第一个实时目标单目系统的实现,实现了运动和密集几何体的紧密联合优化。

2 通过强度调节的深度自动编码

网络结构与UNet很像,网络先用图像预测出每个像素的不确定性 b b b,之后在下层网络预测出一个均值 μ \mu μ,然后推出一个根据输入depth的对应cost。

在这里插入图片描述

其实这个loss的来源可以理解为正态分布,预测的不确定性就是方差,越不确定方差就越大,均值就是最终输出的depth,这个值越大,说明预测出的depth越贴近输入的depth。
在这里插入图片描述
这个cost的负对数就是loss,下面这个loss已经去除了常数项。

在这里插入图片描述

论文给出的是学习一个深度编码器,所以在训练期间,网络前面用的是稠密的,用来编码。作者也论文了,当输入的code(其实就是下层网络最小的那块)为0的时候,也就是单图预测depth,同样有效

3 网络推断——N帧SFM

提出的深度网络同样可以用于构建一个来自于S发M的稠密的N帧结构。最开始code和pose都被初始化为0。对于两个具有重叠视角的图像,可以算出深度图,并得到光度和几何误差,就是将图像warp后,图像误差和深度误差。然后优化这个误差,更新code和pose。

在这里插入图片描述

4 实验

当code为0时候,从一个输入图像也能算出loss,经过优化后,精度能高一些。
在这里插入图片描述
重建的一些效果。
在这里插入图片描述

5 总结

其实这个论文已经不算是最新的了,之前的CodeMapping就是他的改进,主要就是想办法训练出一个深度编码器,输入是一个图像和一个几何编码,这个编码也可以由深度学习得到。然后再预测出深度信息。

实际上,我并不确定换一个深度学习对输入的depth进行编码能否对这个有影响。如果最后还是要整体再训练的话,那也不能完全把编码器这部分单独拎出来,毕竟输入的code都只是一种潜在的描述。

http://www.iri.upc.edu/people/jsola/JoanSola/eng/toolbox.html EKF-SLAM TOOLBOX FOR MATLAB NEWS Upgrade 2012/04/22: Added support for Omni-directional cameras for ahmPnt and eucPnt points. From 2011/09/03 to 2011/09/08: a bug in the package released between these 5 days caused the toolbox to completely fail. Download the current version below. 2010/09/04: BUG FIX: Corrected bug in code for IDP. If you just want the bug fix, click here. Toolbox versions after 2011/09/08 are already fixed. INTRODUCTION This toolbox performs 6DOF SLAM using the classical EKF implementation. It is conceived as an "active-search" SLAM. It is provided for free under the GPL license (please read the file COPYING and make sure you agree in the terms and conditions before using it). Users employing the toolbox for scientific research should cite in their scientific communications one of the papers of the authors (especially SOLA-ETAL-IJCV-11, SOLA-ETAL-TRO-08) appearing in the References section of the documentation, and also acknowledging the use of this toolbox. • Download the 6DOF SLAM toolbox for Matlab. • Please email me with feedback, I will appreciate. • Read the pdf doc to have an idea. • Features: o Full 6DOF. o Points and lines, with many different parametrizations. Consult the IJCV'11 paper on landmark parametrization. o 3D graphics. o Works with any number of robots and sensors. o Monocular and stereo systems are treated alike. o Supports extrinsic self-calibration of multi-camera rigs as in our TRO'08 paper. • The toolbox supports undelayed initialization of the following landmark types: o ahmPnt : Anchored homogeneous points. See video. This parametrization performs equivalently to Inverse-depth points in filter consistency. o idpPnt : Inverse-Depth points, with conversion to Euclidean points (eucPnt) after confirming linearity. This follows Civera's TRO-08 paper on Inverse-depth parametrization. Seevideo. Also called Anchored Modified-polar points (AMPP) in SOLA-IJCV'11. o hmgPnt : Homogeneous points. See video. o fhmPnt : Framed Homogeneous points. We follow a work by Simone Ceriani et. al., 2011. o plkLin : Plucker lines as explained in our IROS-09 paper. See video. o aplLin : Anchored Plucker lines. See video. o idpLin : Inverse-depth points lines. See video. Also called Anchored Modified-polar points lines (AMPPL) in SOLA-IJCV'11. o hmgLin : Homogeneous-points lines. See video. o ahmLin : Anchored homogeneous-points lines. See video. o See this video that compares idpPnt against ahmPnt and hmgPnt points, showing the superior consistency of idpPnt and ahmPnt because of over-estimation of the covariance in hmgPnt.(note: in the video, hmgPnt is labeled HP, ahmPnt is AHP, and idpPnt is AMPP.) o See this video with all line parametrizations running in parallel. BUG FIXES BUG (fixed in toolbox releases after 2011/09/08): The Jacobians of the idpPnt initialization function were incorrect. This derived in a poor performance of idpPnt points. Now, idpPnt andahmPnt show equivalent performance. FIX: follow these simple steps: 1. Download this file. Unzip it. 2. Copy files idp2ahp.m and ahp2idp.m to toolbox folder %SLAMTB/Points/ 3. Copy file retroProjIdpPntFromPinHoleOnRob.m to toolbox folder %SLAMTB/Observations/ 4. Delete the obsolete bugged file %SLAMTB/Points/idpS2idpW.m from the toolbox.
深度高分辨率表示学习是一种用于视觉识别的技术,旨在从图像中学习到更高质量和更具表达力的特征表示。在传统的视觉识别任务中,如图像分类、目标检测和语义分割,传统的特征表示方法通常提取低级或中级特征,这些特征可能无法有效地捕捉到图像的复杂信息。而深度高分辨率表示学习通过多层神经网络的结构和大规模训练数据来学习更深层次、更富有语义的图像特征。 深度高分辨率表示学习方法通常包含以下几个关键步骤:首先,通过使用深度卷积神经网络(DCNN)架构来学习特征表示。DCNN是一种层次结构复杂、能够从原始像素数据中自动学习特征的神经网络。其次,利用大规模的标注数据进行训练,通过反向传播算法来更新网络的权重和偏置参数,从而最小化预测误差。最后,在训练过程中采用一些优化策略,如数据增强、正则化和优化器选择等,以提高网络的泛化能力和识别性能。 深度高分辨率表示学习在计算机视觉领域有着广泛的应用。一方面,它可以用于图像分类,通过学习到的高质量特征表示,可以在分类任务中获得更高的准确性和鲁棒性。另一方面,它也可以用于目标检测和语义分割任务,通过学习到的特征表示,可以更准确地定位和分割图像中的对象。此外,深度高分辨率表示学习还可以用于识别特定的物体、场景或人脸,从而应用于人脸识别、目标跟踪和智能安防等领域。 总之,深度高分辨率表示学习是一种能够有效提高视觉识别任务准确性和鲁棒性的技术。它通过学习到更深层次、更富有语义的图像特征表示,提供了更强大的图像分析和理解能力,为计算机视觉领域的各种应用提供了重要的支持。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值