首页 > 编程知识 正文

精读五课文翻译,英语词汇学教程张维友第三版翻译

时间:2023-05-05 07:35:11 阅读:118949 作者:1976

VINet :把视觉惯性测距仪作为从序列到序列的学习问题英国牛津大学计算机科学系

摘要:本文提出了一种用于视觉和惯性传感器运动估计的基于流形的序列到序列学习方法。 据我们所知,对视觉惯性测距仪来说,这是第一种端到端的可训练方法,在中间特征表示层面进行数据融合。 与传统方法相比,我们的方法有很多优点。 特别是消除摄像机和IMU之间麻烦的手动同步和校准。 此外,我们的模型集成了自然而优雅的领域特定信息,大大减少了漂移问题。 在有准确校准数据可用的情况下,我们的方法与SOTA方法相比也有非常好的亮点,在存在校准和同步误差的情况下,可以更好地训练它们。

简介:移动机器人自主的基本要求之一是没有GPS信号也能准确导航。 实现这一目标最有希望的方法之一是单眼摄像机和惯性测量单元的图像融合。 该装置的优点便宜且普遍,由于传感器的互补特性,有可能提供更昂贵的立体和与激光雷达装置同等精度方面的姿势估计。 单目标视觉惯性测量(VIO )方法在机器人领域相当受关注,目前最先进的VIO方法已经可以达到相当高的精度。 但是,这些方法仍然存在严格的校准和同步要求。

受最近深度学习模型成功处理了原始高维数据的启发,本文提出了一种新的VIO方法:将其视为一个序列到序列的回归问题。 最终得到的VINet方法是用于执行视觉惯性测量的完全可训练的端到端模型。 我们的贡献如下:

1 )提出了首个完全端到端可训练的VIO辅助导航。

2 )介绍新的递归网络结构和训练流程,以进行模型参数的最佳训练。

3 )它包含新的可微分姿态连接层,使网络预测适合se(3)流形结构。

4 )我们详细评价了该方法,并通过实际数据表明了其相对于传统方法的优越性。

图1:标准视觉惯性测量框架与基于学习的方法的比较。 必须在设置过程中指定蓝色元素。 VINet参数对用户是隐藏的,将从数据中完全学习。

相关工作:本节概述了将注意力集中在单眼相机和惯性测量单元的数据上,而无需立体设备和激光测距仪等其他传感器。

视觉里程计:VO算法估计摄像机的增量自运动。 传统VO算法通过提取图像中的特征来匹配当前图像和后续图像的特征,如图1所示,并计算光流。 然后可以利用光流计算运动。 半直接单目视距测量(SVO )算法是表达SOTA的VO算法的样本。 该算法不依赖于缓慢的特征提取,而是通过直接操作图像的小块,达到高速、bldyl的目的。 相反,对图像本身的小块使用概率深度滤波器。 然后,通过整个图像的对齐来更新深度过滤器。 该算法在嵌入式平台上实时运行,效率高。 但是,该概率表达式很难调整,也需要引导过程来启动该过程。 正如预想的那样,其性能很大程度上取决于硬件。 为了防止跟踪故障,全局快门摄像头通常需要以50 fps或更高的速度工作,以确保行驶距离的估计是准确的。

无论视觉惯性里程计:算法如何,传统的单眼VO解都无法观察到场景的尺度,容易产生尺度漂移和尺度模糊。 集成FAB-MAP等专用循环闭合方法,减少规模漂移。 但是,规模的模糊性不能通过使用闭环来解决,需要外部信息的整合。 这通常采用检测场景中的变焦对象,或者融合来自惯性测量单元(IMU )的信息,以制作视觉惯性距离计的形式。 惯性与视觉信息融合不仅解决了尺度的模糊,而且提高了VO本身的精度。 从理论上讲,IMU惯性测量和视觉数据之间的互补在任何情况下都能实现高精度的自运动估计:视觉定位技术,应该完全取决于观察环境中的独特特征,在室内情况下,这些技术受到间歇性屏蔽的困扰。 另一方面,IMU设备的姿态可以通过加速度数据的双积分或更复杂的方案来跟踪,例如与Forster等人提出的基于流形的预积分策略以及诸如SVO的视觉测距方法相结合,形成VIO系统,其中IMU漂移仍然受到控制在先进的系统中,融合是通过基于过滤器或基于优化的过程实现的。 基于滤波器的方法,如多态约束卡尔曼滤波器(MSCKF ),可以是滑动窗口滤波(SWF )或开放关键帧VISual-inertial测量wsDWDM ) ok--,尽管它更为蓝光Forster等人的研究表明,使用预集成战略的系统在精度方面略优于OK-VIS。 但发现Forster等人的系统依赖iSAM2作为后端优化,SVO作为前端跟踪系统比OK-VIS更容易失败。 因此,本文比较了OK-VIS和MSCKF的bldyl性。

深度学习:一些深度学习方法已经被提出用于视觉测量,但据我们所知,神经网络方法从未用于任何端到端形式的单眼视觉惯性测量。 Konda和Memisevic提出了通过检测立体帧之间的同步性来提取运动的Stereo-vo方法。 Costante等人有可能利用CNN从光流帧中提取增量式自我运动。 DeTone、Malisiewicz和Rabinovich指示了使用CNN提取帧对之间的同构关系的可能性。 最近,Rambach等人使用RNN融合标准的基于标记的视觉姿态系统和IMU的输出,消除了统计滤波的需要。

后台:递归和卷积网络递归神经网络(RNNs )为一个

种一般类型的神经网络,它的层不仅对输入数据进行操作,而且对隐藏层的延迟版本和输出也进行操作。通过这种方式,网络具有一个内部状态,可以将其用作内存,以跟踪过去的输入及其相应的决策。然而,RNN有一个缺点,即如果使用标准的训练技术,它们便无法学会存储和操作输入的长期趋势,因此,与标准的前馈网络相比,不能提供太多的好处。因此,引入了长短时记忆(LSTM)体系结构,以便RNN能够了解更长期的趋势。这是通过包含门控细胞来实现的,门控细胞允许网络选择性地存储和忘记记忆。

LSTM架构有许多变体。然而,在现实世界的数据中,这些数据也显示出类似的表现。存储单元的内容存储在Ct中。输入门it控制输入在当前步进入记忆单元的内容的方式。遗忘门(ft)根据产生的0到1范围的控制信号来决定何时清空内存单元。最后,输出门Ot决定在当前时间步是否应该使用内存单元的内容。

网络的操作都是在训练中学到的。为了处理高维输入数据(如图像),可以在RNN结构中集成卷积层。在每个卷积层上,应用多个卷积操作从上一层的输出映射中提取大量的特征。滤波核及卷积所得图都在训练中得到。具体来说,卷积层的输出计算为

yl;f x;y 是f的特征图在第l层x; y的位置上的输出值, bl;f 是一个在训练过程中学得的常数偏差, wl;f;m p;q 是p,q位置上的核心值; and Pi; Qj 是核的关键高度和宽度。

我们的方法

我们的视觉惯性里程计的序列-序列的学习方法–VINet,如图2所示,该模型由一个为视觉惯性测程任务所定制的CNN-RNN网络构成。整个网络是可微的,因此可以通过端到端的训练来估计自我增量运动。网络的输入是单目的RGB图像和IMU数据,IMU是一个用陀螺仪测量x,y,z轴的加速度和角速度的6维向量。该网络的输出是一个7维向量:一个3维平移和4维的方向四元数,以此表示机器人从序列开始时的姿态变化。本质上,我们的网络学习以下映射,将输入序列的图像和IMU数据转换成位姿。

图2:提出了一种用于视惯性测程的VINet体系结构。该网络由一个以摄像速率处理位姿输出的核心LSTM和一个以IMU速率处理数据的IMU LSTM组成。

SE(3) 转换级联
摄像机相对于初始起点的姿态通常表示为特殊的欧几里德群SE(3) 变换的一个元素。SE(3)是一个可微的流形,其元素由特殊正交群SO(3)的旋转和一个平移向量组成,

生成属于SE(3)的转换估计并不简单,因为SO(3)组件需要是一个正交矩阵。而se(3)的李代数se(3)表示瞬时变换:

可以用不受正交性约束的分量来描述。se(3)和SE(3)之间的转换很容易使用指数映射来完成。
在我们的网络中,CNN-RNN对图像的单目序列进行处理,从而对摄像机帧与帧之间的运动进行估计。因此,CNN-RNN执行从输入数据到李代数se(3)的映射。利用指数映射将其转化为特殊的欧几里德群SE(3),其中单个运动可以组成SE(3),形成轨迹。通过这种方式,当摄像机所经历的帧与帧之间的运动由平台在轨迹过程中的动态(尽管很复杂)定义时,网络所需要近似的函数在一段时间内保持有界。我们使用RNN的目标是学习平台的复杂运动动力学,并解释很难手工建模的顺序依赖关系。

图3:SE(3)合成层的说明:一个无参数的层,它将SE(3)上的帧之间的转换连接起来。

此外,在传统的LSTM模型中,隐藏状态被转移到下一个时间步,但是输出本身并不反馈给输入。在里程数估计的情况下,前一状态的可用性是特别重要的,因为输出本质上是每一步增量位移的积累。因此,对于我们的模型,我们直接将SE(3)级联层产生的输出位姿作为下一个时间步中核心LSTM的输入。

多速率LSTM
在视觉惯性里程计问题中,我们面临的挑战是数据流是多速率的,即IMU数据通常比视觉数据快一个数量级(通常是10倍)(100hz)。为了在我们的网络中适应这一点,我们使用一个小的LSTM以IMU速率处理IMU数据。IMU-LSTM的最后隐藏层激活随后被转移到Core-LSTM。

光流量初始化
与IMU LSTM类似,CNN将两个连续的图像作为输入,并生成一个单独的特征向量,该特征向量描述设备在两个帧的传递过程中所经历的运动,这两个帧被用作Core LSTM的输入。我们最初尝试将两帧图像直接输入到在imagenet数据集上预先训练的CNN中,然而,这表现出了难以置信的缓慢训练收敛性和令人失望的测试性能。因此,我们使用一个训练后的网络作为我们的基础来预测来自RGB图像的光流。我们的CNN模仿Flownet结构直到Conv6层,我们删除了产生高分辨率光学流输出的层,用1024 X 6 X 20的向量作为输入,在将IMU-LSTM产生的特征向量输入之前,我们连接生成的特征向量IMU-LSTM。Core-LSTM融合了视觉和惯性数据的中间特征级表示来生成姿态估计

计算消耗
里程计预测所需的计算量和模型所需的存储空间直接受到用于定义模型的参数数量的影响。对于我们的网络,在图2中,参数是IMU LSTM和Core LSTM的权值矩阵,以及处理图像的CNN网络的权值矩阵。对于我们的网络,我们使用2层的LSTMs,每层包含1000个单元。我们的CNN总共有55兆可训练的参数量。在一辆特斯拉k80上,通过CNN网络部分的图像转发平均需要160ms (约为10Hz)。LSTM更新的计算成本要低得多,在特斯拉k80上可以以高于200Hz的频率运行。

训练
整个网络使用时间反向传播(BPTT)进行训练。我们使用标准的BPTT,它的工作原理是对选定的时间步长T展开网络,然后应用标准的反向传播学习方法,该方法涉及两个传递—前向传递和后向传递。对于BPTT的前向部分,从式(1)到式(6),依次计算t = 1到t的每一个时间步的网络激活度。使用产生的激活,向后传递从时间t = t到t = 1,计算每个输出单元对层输入(xl)和层权值(wl)的导数。最后的导数是通过对时间步长的求和来确定的。利用具有RMSProp自适应学习速率的随机梯度下降法(SGD)更新由BPTT确定的网络权值。SGD是一种简单而流行的方法,在使用大型数据集训练各种机器学习模型方面表现得非常好。使用SGD,网络的权值更新如下:

Wl代表索引为l, 学习率为λ的网络的一个参数(权重或偏差),学习率λ决定了在SGD的每次迭代中,导数对权重更新的影响程度。我们所有的训练中都采用最佳学习率。

使用高维图像作为输入来训练长且连续的序列需要大量的内存。为了减少所需内存,但在训练过程中仍然保持连续性,我们使用了基于滑动窗口的训练方式。如图4所示,LSTM的隐藏状态在窗口之间执行。最后,我们发现通过SE(3)累积直接训练网络是特别困难的,因为训练过程受到许多局部极小值的影响。为了克服这个困难,我们考虑两个损失:一种是基于se(3)帧对帧(F-2-F)的预测,另一个是相对于序列开始的SE(3)完整连接位姿。前者的计算方式为:

对于SE(3)中的完整级联姿态,我们使用四元数表示方向,损失为:

我们考虑三种类型的训练:只有Lse(3)损失; LSE(3);联合损失。联合训练的权值更新如算法1所示。

其中niter为每次训练迭代,w 1:j为各层的可训练权值,SE(3)级联层,wi:n为n层网络中所有层的权值。训练中我们开始一个比较高的学习率与λ2 se(3)损失/λ1 100,然后减少到一个非常低的数值λ2 /λ1=0.1,在后面的训练中调整级联姿态估计。

结果
在本节中,我们给出了在校准和同步误差的准确性和bldyl性方面对所提出的方法进行评估的结果,并与传统方法进行了比较。在我们的实验中,我们使用Theano库实现了我们的模型,并在特斯拉k80上进行了所有的训练。我们为每个数据集训练了200个epoch的模型,平均每个数据集耗时6小时。除了设置适当的学习率外,培训过程不需要任何用户干预。

无人机:挑战室内轨迹
我们首先在室内公开的EuRoC微型空中交通工具(MAV)数据集上评估我们的方法。该数据集的数据是使用AscTec Firefly MAV捕获的,该MAV带有一个前置的视觉惯性传感器单元,相机和IMU的时间戳之间具有紧密的同步。这些图像是由全局快门相机以20hz的频率拍摄的,IMU在200hz时测量加速度和角速率。这个6-D的真值姿势是使用Vicon运动捕捉系统在100赫兹下拍摄的。为了对文献中最接近的相关方法进行客观比较,本文采用基于优化的OK-VIS方法进行比较。由于我们对评估这些方法的里程表性能很感兴趣,所以没有执行环闭包。我们测试了我们的方法对相机传感器校准误差的bldyl性。我们介绍校准错误通过添加随机选取大小和角度的旋转RSC ~ vMF(·|,κ) 到相机IMU旋转矩阵RSC。对于我们的VINet,我们提供了两组结果:一组是通过人为错误校准的训练数据来扩充训练集,另一组是仅使用校准的数据来训练网络。

图5:与OK-VIS相比,使用该神经网络重建的6D MAV轨迹。

图5所示为不同误校水平下经OK-VIS和VINet估计的MAV轨迹的比较。很明显,即使在不使用任何增强训练的情况下,神经网络在面对错误校准的传感器数据时也会组件下降。bldyl测试的数值结果如表1所示:

VINet未用增强的情况下的训练效果与OK-VIS相比也不差,并没有在校准误差上失败。在VINet使用校准增强训练后,结果表明随着测量误差的增大,精度方面存在明显的受阻下降。这表明,只要利用误校准数据对网络进行训练,就可以使网络对误校准误差具有bldyl性。这个特性是基于网络的方法所特有的,并且令人相当惊讶,因为以这种方式增加传统方法的bldyl性是非常困难的,并且不可能。时间同步是另一个重要的校准方面,严重影响了传统方法的性能。我们在这方面测试了VINet,发现它处理时间同步误差甚至比外部校准误差更好。当流完全不同步时,IMU数据将被忽略,网络将变成纯视觉的运动估计。图6中的训练性能显示了单独使用F-2-F位移训练、单独使用完整SE(3)位姿训练和使用我们的联合训练方法的区别。结果表明,联合训练使网络比训练和验证序列更快地收敛于低误差估计,而F-2-F训练收敛非常慢,全姿态训练收敛于高误差估计。

图6: 训练时网络的训练性能(1)仅训练帧对帧的转换,(2)联合训练SE(3)层和帧对帧的转换,(3)仅训练拼接位姿。KITTI Seq-00的训练进度显示了最佳的联合训练。

自动驾驶:结构化的户外轨迹
我们进一步使用KITTI里程计基准测试VINet的性能。KITTI的数据集由11个序列组成,这些序列是在一辆乘用车的车顶上收集的,这辆车在居民区周围行驶,从Velodyne激光扫描仪和GPS设备获得准确的地面实况。我们使用序列1-10进行训练,11进行测试。单目图像和地面真值在10hz采样,IMU数据在100hz记录。在室外的结构化道路上记录,这个数据集显示了可忽略的运动模糊和轨迹遵循非常规则的路径。然而,与室内EuRoC数据集相比,它具有不同的特点,这仍然使它非常具有挑战性。例如,车辆路径包含许多急转弯和杂乱的叶子区域,这使得传统的视觉测程方法难以实现帧间的数据关联。由于KITTI数据集没有提供相机和IMU之间的紧密同步,我们无法在该数据集上成功运行OK-VIS。为了进行比较,我们使用EKF将LIBVISO2的位姿估计值与惯性数据融合,从而模拟Weiss等人的系统。我们按照标准的KITTI评估指标计算100米、200米…500 米序列的误差。

图7:KITTI数据集上的平移和方向错误。方法A: VNet(仅图像数据),方法B: VINet(视觉惯性数据),方法C: Viso2

图7显示了在KITTI数据集上获得的平移和方向误差。与预期的一样,视觉-惯性网络(VINet)性能优于在单独使用视觉数据训练的网络。VINet在平移误差方面也超过了VISO2方法,但是它在估计方向方面有些困难,而IMU-Viso2方法在这方面表现更好。相对于VINet的方向估计,VINet具有较高的平移精度,这可能是由于VINet具有从图像数据和IMU数据中学习预测尺度的能力,而这在传统方法中是不可能的。

结论及未来工作
本文提出了一种用于单目视觉惯性辅助导航的端到端的可训练系统VINet。我们已经证明VINet的性能与传统方法相当,而传统方法需要在设置过程中进行大量的手工调优。与传统方法相比,VINet的关键优势是能够通过校准误差的学习使得自身更加bldyl。我们相信VINet方法是迈向真正稳健的视觉-惯性传感器融合的第一步。在未来的工作中,我们打算研究如何将VINet集成到一个更大的系统中,通过环路关闭和地图构建,并对单目VO及其处理惯性数据场中的尺度问题的能力进行更深入的分析。

ROS作业记录

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。