论文:Camera Motion Estimation from RGB-D-Inertial Scene Flow
作者:Samuel Cerezo, Javier Civera
收录:CVPR2024
论文地址:https://arxiv.org/pdf/2404.17251
编辑:东岸因为@一点人工一点智能
摘要
在本文中,我们介绍了一种新的相机运动估计公式,该公式通过场景流将RGB-D图像和惯性数据集成在一起。
我们的目标是准确估计刚性3D环境中的相机运动,以及惯性测量单元(IMU)的状态。我们提出的方法具有灵活性,可以作为多帧优化运行,或者边缘化旧数据,从而有效地利用过去的测量结果。
为了评估我们方法的效果,我们使用来自ICL-NUIM数据集的合成数据以及来自OpenLORIS-Scene数据集的真实数据序列进行了评估。我们的结果显示,这两种传感器的融合相比于仅使用视觉数据,提高了相机运动估计的准确性。
介绍
自主导航在使机器人及各种其他应用成为可能方面发挥着关键作用,这些应用包括混合现实和自动驾驶。为此,来自车载传感器的精确运动估计至关重要。
在这种背景下,场景流(Scene Flow)是使用RGB-D或测距传感器进行运动估计的基本技术之一[7, 9, 24, 30, 33]。更具体地说,场景流指的是从两个传感器读数中获得的场景点的3D运动场的估计[31]。尽管多年来光学和场景流已经被用于许多任务中,例如运动补偿[34],对象跟踪[21]和对象学习[22],但本文我们重点关注前面提到的场景流在里程计中的应用,即相机动量的估计。
我们还受到多传感器里程计和同时定位与地图构建(SLAM)的启发,这些技术通过额外的精确性和鲁棒性来增强仅使用单目视觉的方法,这对于安全核心的机器人设置非常相关。多传感器配置在基于特征的里程计和SLAM中得到了广泛探索,例如立体相机[20],视觉-惯性[3]或激光雷达-惯性[26],但在使用原始传感器测量值而不进行特征提取的直接方法中探索得较少。
一方面,RGB-D相机为视觉里程计的多个挑战和限制提供了一种实用的硬件替代方案。它们在低成本下的可用性在过去十年中促进了许多机器人和增强现实(AR)应用的发展。如今,RGB-D相机已成为机器人和AR室内应用中首选的传感器之一;无论是单独使用还是与其他传感器结合使用,它们的未来前景都是乐观的。另一方面,大多数商业移动设备都配备了惯性测量单元(IMU),这些设备可以在动态轨迹中提供大量信息,但如果不同其他信息融合,由于噪声的影响会表现出较大的漂移。这使得视觉-惯性融合变得相关,因为这三种模式提供了互补的特性。
本文中的贡献是我们为刚性场景中相机运动估计提出了一种RGB-D惯性公式。据我们所知,这是第一次将惯性数据与RGB-D测量融合在一起,用以基于光流估计相机运动。
具体来说,我们提出了一种紧耦合的优化方法,通过最小化预积分的惯性残差和范围约束。由于帧之间的惯性状态是共同的,我们将问题表述为多帧优化问题,其中过去帧的状态可以被估计或者边缘化为先验残差用于惯性状态。
我们在合成ICL-NUIM数据集和真实的OpenLORIS-Scene数据集上评估了我们的提案。通过与RGB-D估计相比,RGB-D惯性估计误差的降低,展示了我们融合方法的有效性。
符号说明
在这篇文章中,粗体小写字母
表示向量,粗体大写字母
表示矩阵。标量将由细体小写字母
表示,标量函数和图像由细体大写字母
表示。相机姿态表示为
,并变换点从坐标系
到世界坐标系
。
IMU模型与运动整合
4.1 惯性预积分
惯性测量单元(IMU)通常由一个加速度计和一个三轴陀螺仪组成,它测量传感器在机体参考系
中的角速度
和线性加速度
。我们将时间k时的IMU测量表示为
和
。IMU的测量受到加性白噪声
以及两个缓慢变化的陀螺仪和加速度计偏差
的影响。最后,加速度测量还受到重力
的影响。这个模型由方程式(1)和(2)制定。
我们使用预积分惯性残差,如Forster等人所提出的。
我们计算背景的初始猜测值为两个相邻帧之间角速度估计
之差,以及包含偏差的陀螺仪
的直接测量,即
,其中角速度估计值
可以通过点云之间的相对运动估计计算,并除以它们之间的时间增量。
我们将
的初始种子设置为零。按照[4]的方法,我们可以使用相对运动增量
以获得第一个重力向量估计:
4.2 噪声传播
原始IMU测量噪声的协方差矩阵为:
其中
是一个3x3矩阵,其所有元素均为零。
在对预集成噪声协方差进行计算后,我们考虑矩阵
,并定义IMU测量噪声
,噪声被传播。
具有初始条件
其中
表示3x3的单位矩阵。
用于计算上述矩阵的表达式,使用了[4]中的预积分表达式。
由9个维度为3x3的子矩阵组成
4.3 重力向量表示
由于重力模量是已知的,一个合理的表示是它的方向向量。单位范数的方向向量属于
流形,它只有两个自由度。由于
不是一个李群,我们遵循[6]中提出的参数化。具体表达式在[19]中有详细说明。
4.4 光流和速度约束
我们采用标准的假设,即在两个视频帧之间的短时间内,局部强度图像模式是近似恒定的,至少在两个视频帧之间的短时间内[2]。这限制了图像中的运动,如下所示:
其中
是图像单位内的光流(像素/秒)。在刚性场景的常见假设下,我们将点速度表达为相机运动。设
是一个由3D测距相机提供的深度图像,其中Ω是图像域。遵循Spies等人[29]的工作,测距流约束如下:
这个方程反映了可以从光流和Z的部分偏导数计算出总深度导数。遵循[7]并使用针孔模型,我们得到测距流约束如等式(9)所示。在这里
是焦距值,以像素表示,而
是相机坐标系中的值。
上述关于相机速度的约束将在下一部分中用于我们的视觉残差。
基于RGB-D-I场景流的相机运动
本节介绍了一种将惯性测量与RGB-D场景流集成以估计相机运动的方法。我们首先定义了状态,它根据不同的操作模式而变化,主要取决于考虑的帧数。然后,我们制定了一个需要优化的成本函数。最后,本节通过边缘化过程来保留被移除的状态的信息。
5.1 状态定义
我们的目标是从装备有IMU和RGB-D摄像头的传感设备中跟踪状态
。这个状态主要包括设备在不同时间点的速度、IMU偏差和重力向量。我们假设IMU与摄像头同步。在一般情况下,系统对N帧进行优化,这被称为N-滑动窗口(N-sliding window)。随着传感设备在轨迹上移动,我们将边缘化旧的状态以使优化保持紧凑。在步骤
的状态定义为
5.2 成本函数
我们制定了一个优化问题,其中相机速度一致性以及与IMU测量的预积分相关联的项都被施加。联合优化问题将包括最小化与惯性测量相关的成本项
以及与摄像机测量相关的成本项
。我们的状态估计
将是最小化成本函数
的值
5.3 操作模式
我们已经提到,成本函数
将随着滑动窗口中帧数
的增加而形成,如图2所示。
根据
的值,系统将具有不同的操作模式,这些模式将在本节中详细说明。
我们从图3(a)中的因子图开始,其中只有帧i和j可用。在这里,N=2,并且还没有边缘化任何变量。由于我们只有两个帧,因此成本函数将是
。第一个术语与惯性测量有关,第二个术语与摄像机测量有关。
当我们向窗口中添加一个新帧(k-帧),N=3,并且相关图如图3(b)所示。在这种情况下,状态与之前相同,但成本变为
,即仅向成本函数中添加视觉信息。
最后一种情况是在添加新的惯性项(在j和k帧之间),因此
。这种情况如图3(c)所示。在这里,状态发生变化,并且添加了速度
和
。
在一般情况下,状态
被定义为。
成本函数
可以紧凑地表示为以下形式
5.4 边缘化
我们提到,随着滑动窗口的移动,旧的状态信息将被边缘化。让我们考虑图4的情况,其中我们想要执行3帧滑动窗口优化。
在这一点上的状态估计
可以分解为两部分:我们想要边缘化的变量6以及下一步的起点。
考虑(20)式,其中我们有了边缘化之前的成本
,以及一个新术语
,它代表边缘化先验,并记录了与边缘化变量相关的信息。使用二次泰勒展开,成本
可以表示如下:
最终,通过最小化表达式(20)的成本函数
来获得结果。
实验
我们选择了ICL-NUIM数据集中的客厅序列来评估我们的提议。我们运行了我们的RGB-D-I流方法,与基于RGB-D流的所谓DIFODO进行了比较。我们还评估了我们的RGB-D-惯性流在OpenLORIS-Scene数据集上的效果,其中数据是在真实世界的室内场景中多次收集的,以包括日常场景中的自然场景变化。
我们的结果定量地表明,与仅使用视觉数据相比,这两种传感器的融合可以提高摄像机运动估计的准确性。