ES-ATRK:一种基于事件的立体视觉惯性SLAM系统的全球捆绑调整初始化方法,该方法采用自适应阈值鲁棒核函数
赵俊阳(Junyang Zhao)、
余涵(Han Yu)、
张志立(Zhili Zhang)、
李亚茹(Yaru Li)、
朱慧欣(Huixin Zhu)、
严星旭(Xingxu Yan)
王佳怡(Jiayi Wang)
《Analytica》:ES-ATRK: A Global Bundle Adjustment Initialisation Method for Event-Based Stereo Visual Inertial SLAM System Using Adaptive Threshold Robust Kernel Functions
Junyang Zhao,
Han Yu,
Zhili Zhang,
Yaru Li,
Huixin Zhu,
Xingxu Yan and
Jiayi Wang
【字体:
大
中
小
】
时间:2026年05月12日
来源:Analytica 3.6
编辑推荐:
摘要:为了解决基于事件的立体视觉惯性SLAM系统初始化阶段目前存在的鲁棒性不足、深度恢复误差大以及场景适应性差的问题,我们提出了一种基于自适应阈值鲁棒核函数的全局BA初始化方法ES-ATRK。该算法首先实现了事件和视觉特征的空间时间融合。事件特征通过三角测量获得深度值,作为3D地
摘要:为了解决基于事件的立体视觉惯性SLAM系统初始化阶段目前存在的鲁棒性不足、深度恢复误差大以及场景适应性差的问题,我们提出了一种基于自适应阈值鲁棒核函数的全局BA初始化方法ES-ATRK。该算法首先实现了事件和视觉特征的空间时间融合。事件特征通过三角测量获得深度值,作为3D地图,而视觉特征提供2D观测数据;这两种模态共同输入到结构从运动(SfM)流程中,为全局束调整(BA)优化奠定了基础。核心贡献在于将鲁棒核函数融入全局BA中以抑制异常值干扰,并设计了一种自适应阈值算法,动态确定核阈值。此外,该算法在BA优化之前根据残差的分位数分布计算初始阈值,并结合有效性检查和多轮迭代平滑调整策略,从而实现场景自适应的阈值调整。在VECtor数据集的85%以上测试场景中,其定位精度相比现有的主流基于事件的SLAM方法(如ESVIO和USLAM)至少提高了10%。在高动态场景中,其ATE性能大约是主流模型(如ESIO)的两倍,并且在HKU和MVSEC数据集的泛化测试中保持了出色的定位精度和三轴误差稳定性。此外,在DSEC数据集的大规模室外测试场景中,ES-ATRK还展示了优越的特征跟踪和轨迹估计性能。该方法有效增强了基于事件的立体视觉惯性SLAM系统的初始化和深度恢复性能,减少了整体定位误差,并在低纹理、高动态和HDR等具有挑战性的场景中提供了更好的适应性。
1. 引言
在具有挑战性的运动场景中,由于数据层面的互补优势,SLAM系统采用了立体事件相机、视觉相机和惯性测量单元(IMU)的组合。尽管IMU存在长期漂移问题,但它们可以在短时间内提供高频、低延迟的相对运动估计;视觉传感器在低纹理或动态光照条件下容易失效,但可以提供全局一致的观测数据,而事件相机通过对数强度变化作出响应,生成具有高动态范围和低时间延迟的异步事件流。事件、视觉和惯性测量是互补的,非常适合传感器融合。然而,它们在联合初始化过程中存在显著的深度恢复误差和场景适应性差的问题。在基于事件的立体视觉惯性SLAM系统的应用中,未能妥善解决这些初始化问题将直接影响系统的定位精度。
在基于事件的立体视觉惯性SLAM系统中,事件、视觉和惯性测量单元(IMU)之间的联合初始化的成功在很大程度上取决于事件-视觉数据融合的有效性。事件-视觉相机融合的本质是利用来自两个来源的观测数据通过相关算法重建场景,从而将这些场景重建信息与IMU数据一起用于联合初始化。传统的SLAM系统通常采用单目或立体视觉-惯性融合进行联合初始化。经典系统如ORB-SLAM3 [1] 和 VINS-Mono [2] 使用视觉SfM [3] 获得初始姿态和特征点,然后将这些数据与IMU预积分数据融合以优化尺度、重力向量和IMU偏差。然而,这些方法在低纹理、高运动或遮挡场景中缺乏鲁棒性,并且在初始化阶段容易受到传感器噪声的影响。另一方面,纯视觉或IMU基方法存在累积漂移问题,需要通过循环闭合检测或全局优化进行校正。
在上述视觉惯性SLAM系统的基础上,下面介绍的基于事件的SLAM系统开始出现。EVO [4] 假设场景是平面的且与传感器平行;然后运行姿态跟踪器获得初始轨迹,并利用该轨迹、事件数据和EMVS [5] 方法计算初始半密集3D地图,从而完成系统初始化。另一方面,EVIO [6] 使用收集的事件数据作为初始时间窗口,然后使用FAST角点检测和Shi-Tomasi方法选择角点作为特征,并采用两阶段EM算法估计光流并进行仿射变换。最后,它结合扩展卡尔曼滤波和IMU预积分完成系统初始化。然而,这两种方法由于传感器噪声的存在而缺乏足够的鲁棒性,无法立即过滤掉某些异常值,导致初始状态估计不准确。Ultimate SLAM [7] 收集IMU数据以估计初始姿态和陀螺仪及加速度计的偏移,并通过将标准帧与事件时空窗口同步生成运动补偿事件帧。随后,基于FAST特征提取和KLT跟踪,系统有效地融合事件和图像特征与IMU预积分数据以完成初始化。PL-EVIO [8] 首先使用视觉SFM获得相机姿态、事件角点和线特征位置,然后通过与IMU的松散耦合实现未知初始状态的自我初始化。ESVIO [9] 首先提取视觉和事件角点特征并进行时空关联匹配,然后使用RANSAC算法 [10] 去除异常值并通过三角测量恢复逆深度。最后,它融合IMU预积分数据在滑动窗口优化框架内构建空间和时间残差约束。
上述SLAM系统在初始化过程中有一个共同特点:它们都使用SFM过程进行3D结构恢复,该过程也称为结构从运动(SFM)算法。该算法包括一系列步骤,每个步骤都涉及相应的子算法。首先,系统必须使用视觉或基于事件的特征进行特征匹配;这些特征不仅限于角点,还包括点特征和线特征等。接下来,使用三角测量重建3D点云,然后利用该点云估计相机的运动和姿态。接下来,通过束调整 [11] 最小化误差,最后与预积分的IMU数据进行线性对齐以确定尺度和初始传感器偏移。上述系统的共同优点是它们不需要场景先验知识,可以自主重建3D结构和相机姿态;然而,它们的缺点是依赖于纹理和运动线索,在低纹理或高速场景中容易失败。此外,仅依赖视觉信息可能导致尺度模糊和漂移等问题。表1总结了目前用于视觉惯性和基于事件的视觉惯性SLAM系统的更成熟模型的局限性及其相应的初始化算法。如表1所示,关于在视觉或基于事件的SLAM系统初始化过程中优化SFM过程的研究有限。大多数现有方法依赖于已建立的算法框架,如VINS-Mono;然而,这些已建立的SLAM框架通常仅适用于非挑战性场景,无法解决系统初始化算法中鲁棒性不足和深度恢复不准确等问题。此外,这些问题经常影响系统的整体定位精度;因此,能够在初始化阶段提供高精度初始姿态估计和最小深度误差的方法对于SLAM系统至关重要。在整个SLAM过程中,如果系统能够在初始化后以较小的深度误差传递到后端进行全局优化,这将不可避免地提高系统的整体定位精度。
尽管事件、视觉和惯性传感器具有互补性,但现有的基于事件的立体视觉惯性SLAM系统通常将初始化流程分为两个独立阶段:使用固定几何约束的空间时间融合事件和视觉特征,以及使用手动调整的固定阈值鲁棒核的标准束调整。这种分离的设计存在一个关键限制:它忽略了事件特征与视觉特征之间的异质性和场景依赖性残差分布。事件特征表现出更高的噪声水平和异步时间不对齐,而视觉特征需要精细的几何精度。固定的Huber阈值无法同时适应这些相互冲突的特性。因此,在具有挑战性的场景(例如,低纹理、高动态范围或剧烈运动)中,固定的低阈值会过早丢弃有效的事件观测值,而固定的高阈值则会保留视觉异常值,导致姿态逐渐漂移和深度恢复误差放大。此外,由于SfM初始化是一个渐进过程,残差幅度在优化迭代过程中变化显著;固定阈值本质上无法适应这种时间演变。为了弥合这一差距,我们提出了ES-ATRK,这是一个紧密耦合的全局BA初始化框架,它将事件-视觉空间时间融合与自适应阈值鲁棒核统一起来。核心思想是根据每次BA迭代之前的重投影残差的分位数分布动态调整Huber阈值,从而实现场景适应性和迭代适应性鲁棒优化。
研究框架如图1b所示。尽管在现有的视觉和基于事件的SLAM系统中已经应用了鲁棒核函数和束调整,但它们在基于事件的立体惯性初始化中的应用仍然局限于具有固定阈值和手动调整的配置,这将特征融合与初始化分离。例如,ESVIO和PL-EVIO使用具有固定Huber或Cauchy核的标准束调整算法,而Ultimate SLAM依赖于预积分的IMU约束,无法根据事件和视觉特征的异质性残差分布动态调整鲁棒损失函数。尽管如此,它们在基于事件的立体惯性初始化中的应用仍然是分离和静态的。现有系统将特征融合和初始化视为独立阶段,其中事件和视觉特征根据固定工作流程进行融合,而没有任何系统反馈;此外,在初始化阶段,鲁棒核的引入通常采用固定阈值的形式,无法适应事件和视觉模态的异质噪声特性。因此,ES-ATRK的核心设计理念是如何在初始化过程中有效利用事件和视觉特征同时产生的冲突残差分布。ES-ATRK的新颖之处不在于结合现有的SLAM相关技术,而在于在初始化阶段建立一个紧密耦合的、自我调整的优化框架。具体来说,我们引入了以下三项创新:
图1. (a) 事件流程图。(b) ES-ATRK流程图。
我们设计了一种特征时空融合机制。与将特征融合视为独立预处理步骤的传统方法不同,我们的方法生成了两种互补的表示——事件深度表示和视觉2D观测——并将两者都输入到SfM流程中。这确保了事件和视觉数据在后续的BA优化中得到充分利用,从而避免了单一模态的优化工作流程。
我们将SfM初始化建模为一个具有自适应阈值鲁棒核的全局BA问题。其新颖之处不仅在于引入了Huber核,更重要的是,用动态的、场景依赖的阈值策略替换了传统的固定阈值鲁棒损失。这种策略根据每次优化之前的残差分布自动确定损失转换阈值,使BA优化能够适应当前场景并过滤掉异常值。
我们提出了一种收敛的自适应阈值算法:在系统进行三角测量后,我们根据残差分布从有效重投影点构建一组残差,并过滤平面内和平面外的点。然后使用过滤后的阈值作为边界有效性的初始迭代值。结合多轮迭代平滑机制,这确保算法演变为稳态,消除了手动参数调整的影响。最后,这个阈值被输入到全局BA的Huber核中进行优化。
据我们所知,这是首次将自适应和鲁棒的BA机制应用于基于事件的立体视觉惯性SLAM的初始化阶段。
2. 事件和视觉特征的空间时间融合
2.1. 事件特征的空间时间融合
事件相机输出的是异步事件流,而不是固定速率的图像帧。因此,传统的基于图像的即时匹配方法不能直接应用。此外,仅基于时间约束的匹配容易受到时间漂移、传感器噪声和灵敏度变化的影响,这些因素可能导致不匹配。因此,提取合适的事件角特征并建立时空约束对于实现事件角特征之间的数据相关性至关重要。
在我们的框架中,立体事件流生成两个活跃的事件表面:一个非极坐标表面()和一个极坐标时间表面()[14]。这些表面存储了事件像素坐标和时间戳。通过这种方法,我们将异步事件转换为同步的伪图像。这解决了原始事件无法被标准视觉算法直接处理的核心问题。我们使用Arc算法和基于事件的角点检测[15]来提取事件角点。只有时间戳接近当前时间的事件才会被保留。这有助于在密集的事件流中保持角点特征。为了减少噪声,我们进一步使用偏振时间表面作为掩模来过滤有效的角点。
(1) 表示在像素坐标处记录的最新事件时间戳。它的核心功能是将最近触发的事件时间绑定到每个像素上,从而实现从异步事件到空间像素的时间映射。构成了在像素坐标处触发的所有事件的时间戳集合。四元组描述了单个事件的核心属性。表示事件发生的像素坐标,表示事件极性(0/1,分别表示亮度增加/减少),表示单个事件的时间戳。最后,表示输入的原始立体事件流集。
将时间戳映射到0到255之间的灰度值,其中较低的值表示较新的事件;同时,TS将事件极性作为过滤掩模来消除无效或噪声事件:
(2) 表示当前时间戳下像素的灰度值;表示当前处理时刻的基准时间戳,作为当前时间片段的参考时间;是一个以秒为单位的预定义超参数,用于控制灰度范围。超出此时间范围的事件被映射到255并视为无效。
上述过程解决了事件数据和帧数据之间的根本不兼容性问题。事件相机在事件发生时报告像素级别的亮度变化,但不输出完整图像。标准相机在固定间隔捕获完整图像,但不提供帧与帧之间亮度变化的信息。记录了每个像素处的最新时间戳,将事件流的时间信息转换为空间映射。然后根据事件在该位置发生的频率为每个像素分配一个灰度值。结果表面具有与传统灰度图像相同的空间结构,这使得标准角点检测和光流算法可以直接处理事件数据。较亮的区域对应于较旧的事件,较暗的区域对应于较新的事件。极性掩模去除了会引入噪声的事件,确保只有有意义的亮度变化才会被用于后续的特征提取。
为了建立一个统一的时间参考,我们将事件流与视频帧的时间戳对齐。我们用表示第k个视觉帧的时间戳。对于每个视觉帧,我们构建一个事件支持窗口:
在这里,ms是半窗口持续时间;这个值被选为与视觉曝光间隔的时间分辨率相匹配,同时确保有足够的事件密度用于特征提取。事件时间表面仅由Wk内的事件生成,有效地将异步事件流投影到视觉帧的离散时间线上。因为事件和视觉像素不是同时捕获的,所以每个关联的事件-特征对都存在时间错位:
在假设相机运动局部平滑的情况下,这种时间偏移会导致与光流速度成比例的空间位移:
为了确保时间错位不会破坏三角测量和BA所需的几何一致性,我们强制执行同步约束:
其中=0.5像素是允许的最大投影偏移。代入典型的光流幅度为像素/秒,以及边界为ms,可以确保≈0.25像素<,满足这一约束。违反此边界的事件特征被丢弃,确保只有时间上一致的观测值参与后续的SfM和BA过程。
基于上述异步事件-视觉同步和时间误差模型,我们使用LK光流方法进行时空特征融合。首先,对于新到达的事件流,我们利用LK光流方法[16]对现有事件角点特征进行时间跟踪,然后进行左右事件流之间的空间匹配。随后,我们使用前向光流预测特征位置,并结合后向光流进行验证;这种双重验证降低了匹配错误率。最后,关于时间相关性,对于左事件流中时间戳为的角点特征,我们使用前向和反向LK光流跟踪其在相邻时间戳下的对应特征。无法成功跟踪的特征立即被丢弃,以防止错误累积。关于空间相关性,对于当前时间戳下的左右眼角点特征和,我们在时间表面上使用前向和反向LK光流在极线约束下进行空间匹配,确保匹配的特征位于极线上。图2b说明了基于事件的时空相关的几何原理。
为了确保左右事件流之间的匹配特征位于极线上,我们在匹配时间表面的同时进行空间相关性处理。立体事件角特征和在当前时间点使用前向和反向LK光流在左右时间表面之间进行即时匹配;同时,对于时间相关性,我们还使用前向和反向光流跟踪左右事件流的角点特征和在两个连续的时间戳下。以下公式表示我们的核心假设,即事件转换后的TS伪图像满足灰度不变性,即同一特征在相邻的时空位置上的TS灰度值保持不变:
表示TS伪图像在位置和时间(对应于TS灰度)的灰度值;表示方向上的空间梯度,即TS图像的水平梯度;表示方向上的空间梯度,即TS图像的垂直梯度;是时间梯度,即相邻时间切片之间TS图像灰度值的变化率;是特征在像素空间中的位移,是时间位移;是光流速度,即方向上的像素运动速度。
在上述时空关联过程之后,我们使用RANSAC算法结合基本矩阵极线约束来消除时空关联中的错误匹配对。然后我们对匹配的特征点进行两步处理:去畸变和像素归一化,最后完成坐标归一化和三角测量以计算逆深度[17]。基于事件的矩阵中的极线约束公式为:
其中表示匹配特征点的齐次像素坐标,和表示相应匹配特征点的齐次坐标,是描述事件相机两个视图之间极线几何约束的3×3矩阵[18]。
畸变校正和像素归一化的公式为:
表示事件角的原始像素坐标;表示畸变校正后的像素坐标(去除相机镜头畸变);表示相机的内参,特别是焦距;表示相机主点的坐标;表示归一化后的平面坐标。
基于三角测量的深度恢复的几何原理也可以在图2a中看到。在时间戳下,事件相机成像平面上3D点的匹配角点分别是和。的逆深度可以通过极线几何和与之间的三角测量来表示,和也可以用来反演深度。最后,我们使用已知的双帧立体投影矩阵来匹配归一化后的坐标,从而构建设计矩阵:
我们对设计矩阵进行SVD分解,取V矩阵的最后一列作为齐次解,经过归一化后得到3D点,其中是投影矩阵,是旋转矩阵,是平移向量;这些一起描述了3D点与2D像素之间的投影关系。是投影矩阵的第三、第一和第二行。即3D点坐标,用于计算逆深度。是V矩阵最后一列的四个元素,经过SVD分解后得到。
通过上述过程从事件数据中恢复逆深度后,将其与下一小节中描述的2D视觉观测一起输入到SFM流程中。完整的事件处理流程依次执行三个几何操作。首先,时间跟踪确定当前时间表面中的哪个角点对应于上一个时间表面中的哪个角点,从而确定每个特征在时刻之间的运动。其次,立体匹配确定同一角点在左右相机视图中的位置,从而得到特征的视差。第三,三角测量使用已知的基线和立体仪的校准将此视差转换为深度值。极线约束确保匹配点必须位于相反图像中的特定线上,将搜索范围从二维区域缩小到一维线,从而降低计算成本和匹配错误率。RANSAC进一步移除了违反极线几何的任何匹配,确保只有空间上一致的特征用于计算深度。最终结果是一组具有恢复深度的三维点,每个点都关联到特定的时间戳和相机姿态。
2.2. 基于Shi-Tomasi角点提取的视觉特征时空融合
视觉特征跟踪遵循与事件特征跟踪相同的几何流程,但开始于标准灰度图像而不是事件时间表面。步骤包括LK光流跟踪和基本矩阵极线约束,如图3所示。在第一个图中,绿色箭头表示从当前时间步t到下一个时间步t+1的跟踪;在第二个图中,紫色箭头表示左右相机之间的配准。视觉特征处理的核心是从同步的立体灰度图像中提取稳定的角点。这些角点被跟踪和匹配,然后转换为归一化的2D观测值用于SfM。在视觉特征提取中,我们使用Shi-Tomasi角点提取方法。根据Shi-Tomasi的定义,如果评估矩阵的最小特征值超过阈值,则该点被视为角点。评估矩阵定义为:
确定顶点的标准是。这里,是以像素为中心的局部窗口;和是在图像位置方向上的梯度;是评估矩阵M的两个特征值;是角点阈值;低于此阈值的像素被分类为非角点,确保特征稳定性。
在提取时空梯度特征后,使用方程(8)进行帧与帧之间的视觉特征匹配和立体匹配,基于灰度不变性和局部运动平滑的假设。在帧间跟踪中,我们同样使用LK金字塔光流方法对左右眼的连续帧进行特征跟踪,并结合反向光流进行验证,从而消除跟踪失败的特征。最后,通过检查特征是否位于有效图像区域内,我们移除超出范围的点。在立体匹配中,我们重新使用LK金字塔光流方法对左右眼的特征进行特征跟踪。通过追踪从左眼到右眼的特征,并使用反向光流进行验证,我们消除了不匹配的立体视觉特征:(12) 其中 表示位置 和时间 处的视觉图像的灰度值; 表示 方向上的空间梯度; 表示 方向上的空间梯度; 表示时间梯度; 表示特征在像素空间中的位移; 表示时间位移; 和 分别表示光流速度。在立体特征匹配之后,我们使用RANSAC算法结合基本矩阵极线约束来进一步消除异常值并移除无效的视觉特征,从而确保左右眼特征之间的一一对应,从而实现视觉图像特征的空间时间融合。视觉基本矩阵极线约束的公式为 (13) 其中 是视觉图像的基本矩阵,一个3×3矩阵,描述了两个视觉视图之间的极线几何约束。在完成立体视觉中的特征追踪和匹配后,必须对有效的视觉特征执行诸如畸变校正和像素归一化等操作,如特征匹配工作流中的方程(5)所示,随后得到统一格式的坐标,即2D观测值。畸变校正和像素归一化的公式为 (14) 表示视觉角的原始像素坐标; 表示畸变校正后的像素坐标; 表示相机内参,即相机焦距; 表示视觉相机的主点坐标; 表示归一化的视觉平面坐标。在这个过程中,与事件数据不同,使用视觉数据经过特征追踪、匹配和归一化后获得的2D观测坐标不会进行三角测量;它们仅用于2D观测。视觉特征分支遵循与事件分支相同的几何流程,但开始于标准灰度图像。视觉帧提供空间密集且光度稳定的观测值,因为所有像素都是在相同的曝光条件下同时捕获的。然而,这种模式在运动模糊或极端光照变化下会失效。事件分支通过提供基于亮度变化的特征而不是绝对强度值来补偿这些失败。当两个分支结合时,视觉特征提供准确的2D重投影约束,而事件特征通过立体三角测量提供深度估计。通过将事件累积窗口锚定到每个视觉帧的时间戳,两个数据流在时间上对齐。这确保了深度图和2D观测描述的是相同的场景状态。
3. ES-ATRK算法工作流程
在继续ES-ATRK算法中的SFM工作流程之前,必须完成以下两个步骤:通过三角测量求解3D点和使用PNP求解相机姿态。只有在这两个基础步骤完成后,获得的3D点和相机姿态才会进行全局BA优化,其核心在于最小化重投影误差。在这个算法中,我们使用EPNP算法快速求解相机姿态[19]。
3.1. 算法的鲁棒性设计
整个ES-ATRK算法的核心过程是SFM中的BA优化,而BA优化的核心是最小化重投影误差。给定相机在帧中的四元数旋转向量 和 ,3D空间坐标点 ,以及2D观测值 ,如果单位四元数是 ,要旋转的向量是 ,那么旋转后的向量 是 (15) 其中 表示四元数乘法, 是向量的四元数表示, 是单位四元数的逆。相机系统的3D坐标点通过四元数旋转和方程(9)获得:(16) 加上平移向量 可以得到相机系统中的新3D坐标点。 可以在3D坐标系中表示为 ,因此归一化的重投影点可以表示为 (17) 通过计算2D残差 并整合上述步骤,可以获得残差的精确表示:(18) 这里, 表示四元数旋转后向量的 分量, 表示平移向量的 分量。在我们的工作流程中,我们使用Ceres求解器自动计算残差相对于每个参数块的雅可比矩阵,从而为BA优化提供梯度信息。BA优化是SFM的核心;它通过优化所有相机姿态和3D特征点坐标来最小化全局重投影误差。我们结合了Huber鲁棒核[20]来处理异常值干扰,从而在初始化阶段提高系统的整体鲁棒性。残差衡量单个3D点与单个相机观测之间的几何不一致性。如果估计的点位置或相机姿态偏离真实值,投影位置就会偏离测量的像素位置。目标函数将所有点和所有相机的这些偏差相加。最小化这个总和意味着找到同时最好解释所有测量的姿态和点配置。如果没有鲁棒核,每个残差都会以其平方幅度进入总和。平方放大了大残差的影响。因此,单个异常值会对整个解决方案产生不成比例的强烈影响。标准BA将所有相机姿态和3D点视为优化变量,目标是最小化全局重投影误差的平方和,如图4所示:(19) 其中 是观测有效性指标。为了避免尺度歧义,在这个优化问题中,帧 的旋转、帧 的旋转和最终帧的平移通常被设置为常量,并用作优化参考帧。标准BA的一个缺点是平方和损失对异常值非常敏感,即大残差;单个异常值可能会扭曲整个优化结果。我们结合鲁棒核函数的目的是纠正残差损失,即在内部点保留平方和损失,同时减少异常值损失的增长速率,从而减轻异常值对优化的影响。在结合鲁棒核函数后,BA优化的目标函数变为应用核函数后的损失总和:(20) 其中 是鲁棒核函数。在本文中,使用了Huber核, 是残差的L2范数。Huber核是一个分段函数,它在内部点表现为二次函数,在异常点表现为线性函数。我们设定Huber核的阈值为;其形式为 (21) 图4. Huber鲁棒核与标准L2损失。Huber核的损失函数为 (22) 在 的范围内,即内部区域,这对应于二次损失阶段;在 的范围内,即外部区域,这对应于线性损失阶段。此外,我们必须证明核函数本身的连续性和可微性,即核函数在阈值处是连续且全局可微的:(23) 由于在阈值处 的左侧极限等于右侧极限等于函数值且其导数全局存在,因此核函数在阈值处是连续且全局可微的。此外,由于我们在全局BA优化中使用了Ceres求解器自动计算每个参数块的残差雅可比矩阵,因此可以在结合核函数后分析其在Ceres求解器中的权重因子,以观察其对内部和外部点优化方向的影响,如图5所示。Ceres求解器的权重因子定义如下:(24) 图5. Ceres求解器对内点和异常点处理的权重因子。从上述方程可以看出,随着残差的增加,异常点的权重因子单调减小;因此,异常值对优化梯度的贡献显著减少,防止它们扭曲优化结果。相比之下,内点的权重因子保持不变,确保优化精度。Huber核对小残差和大残差有不同的处理方式。对于低于阈值的残差,核保留平方损失。平方损失的导数与残差本身成正比,因此准确的测量值对其优化方向保持完整的影响。对于高于阈值的残差,核切换到线性损失。线性损失的导数是常数,因此异常值的梯度贡献不会随其幅度增加而增加。Ceres求解器中的权重因子通过在残差进入正常方程之前对其进行缩放来实现这一点。内点保持其完整的权重一。异常点接收的权重减少到等于阈值除以其残差幅度。这种缩放确保异常值仅在不会扭曲最终解决方案的程度上参与优化。
3.2. 算法的自适应设计
在BA优化中,如果使用了鲁棒核函数,其阈值的设置与重投影误差有关。基于重投影误差遵循正态分布的假设,阈值通常设置在重投影误差标准差的1.5到3倍范围内。在具有挑战性的场景中,固定阈值会导致三个问题。首先,场景适应性差:固定阈值无法应对动态场景变化。在低速静态场景中,它会保留太多异常值,导致BA偏好错误的观测值。其次,与异构特征不兼容:事件特征和视觉特征表现出显著不同的误差特性,单一固定阈值无法同时适应两者。如果基于事件特征设置高阈值,视觉特征中的小错误将被过度容忍,降低定位精度;如果基于视觉特征设置低阈值,事件特征中的合理错误将被过滤掉,导致3D点数量不足。最后,固定阈值会导致错误累积和放大。由于SFM初始化是一个渐进过程,固定阈值无法与优化迭代同步调整。在初始迭代期间,错误相对较大,固定低阈值会过早丢弃有效特征;在后期迭代中,随着迭代错误的收敛,固定高阈值无法消除残差异常值,最终导致全局姿态漂移和定位精度下降。ES-ATRK的核心思想是根据场景灵活调整Huber阈值。在我们的算法中,这个阈值在每次BA迭代之前由残差分布确定。如图6a中的阈值线所示,大量残差集中在图像的底部;对于这个集中区域,选择一个分位数线delta1,delta1表示的值作为核函数的阈值。图6a、b分别显示了使用我们的ES-ATRK算法和基于鲁棒核函数的传统BA优化算法获得的残差分布。从图中可以看出,ES-ATRK算法优化后的重投影残差(图6a)比基于鲁棒核函数的传统BA优化算法的小,且整体残差分布更集中,证明了我们算法的优越性能。图6. (a) 使用ES-ATRK算法优化的残差分布图。(b) 使用标准BA优化后的残差图。在我们提出的ES-ATRK算法中,鲁棒核函数的阈值不是一个固定值,而是从BA优化之前的残差分布中自适应计算得出的。此外,我们的算法进行多轮BA迭代以动态调整阈值,从而避免手动参数调整,并最终进行有效性检查以确保阈值的合理性。首先,预先计算全局有效残差的L2范数;也就是说,在BA优化之前,计算所有有效观测的重投影残差的L2范数(= 1),得到残差集:(25) 其中 是全局有效残点的数量, 是第 个残差的L2范数(以像素单位计)。接下来,对残差进行排序并计算分位数。残差集按升序排序,以获得一个有序的残差序列:(26) 对于任何分位数比率,分位数的精确公式为(27) 这里,执行向下取整操作;如果是一个整数,则直接取相应位置的残差;如果是一个小数,则取前一个整数位置的残差。我们将初始阈值设置为0.9,即,并使用这个值作为初始迭代值,因为这个分位数确保了90%的内部点落在Huber核函数的二次区域内,而只有10%的外部或异常点落在线性区域内,从而降低了它们的优化权重,并在优化精度和鲁棒性之间取得了平衡。我们强调,第90百分位数仅作为阈值调度器的初始迭代值,而不是一个固定的操作点。其统计依据是基于鲁棒几何估计中的标准内点率假设。我们用表示内点残差的累积分布函数(CDF),用表示所有残差的CDF。在典型的RANSAC内点率假设下,经验残差分布的第90百分位数满足(29) 由于,这意味着这个分位数位于噪声分布的高概率区域内,因此少于的真实内点被错误分类到线性区域内。因此,第90百分位数被确立为数据驱动的阈值,大约90%的正常观测值位于二次区域内,剩余的10%的异常值位于线性区域内。选择第90百分位数而不是第85或第95百分位数,反映了在偏差和方差之间进行的全面考虑。较低的初始阈值会将更多的异常值包含在二次区域内,增加高动态范围场景中解决方案偏差的风险;另一方面,较高的初始阈值过于保守,因为它通过丢弃在低纹理环境中至关重要的噪声有效观测值来增加方差。然而,由于阈值是通过平滑迭代更新的,初始百分位数的选择只影响瞬态行为。在表2中,我们的消融实验证实了85%、90%和95%的阈值都收敛到相似的性能区域,表明自适应机制对初始百分位数的选择具有鲁棒性。表2. 消融实验的结果。接下来,进行阈值有效性检查。为了防止由于异常残差分布(例如大多数残差是异常值)而导致阈值失效,我们在算法中加入了阈值有效性检查。核心验证公式为(30) 是最小阈值集合,例如0.1像素,可以根据不同场景进行调整。这个值对应于重投影误差的物理极限,通常设置为残差有效数字的5-10%;低于这个值的残差主要由探测器噪声主导。其目的是防止内部点被错误分类为外部点,而不是任意固定阈值边界;是最大阈值,例如5像素,代表由相机校准、镜头畸变和异步时间误差等因素引起的最大重投影误差。超过这个阈值的残差被视为严重错误,这个阈值同样基于重投影残差的分布来设置,通常在第99百分位数或更高。后两者用于确定残差分布是否正常。选择第90百分位数而不是第85或第95百分位数,反映了在偏差和方差之间进行的全面考虑。较低的初始阈值会将更多的异常值包含在二次区域内,增加高动态范围场景中解决方案偏差的风险;较高的初始阈值则过于保守,因为它通过丢弃在低纹理环境中至关重要的噪声有效观测值来增加方差。然而,由于阈值是通过平滑迭代更新的,初始百分位数的选择只影响瞬态行为。在表2中,我们的消融实验证实了85%、90%和95%的阈值都收敛到相似的性能区域,表明自适应机制对初始百分位数的选择具有鲁棒性。表2. 消融实验的结果。接下来,进行阈值有效性检查。为了防止由于异常残差分布(例如大多数残差是异常值)而导致阈值失效,我们在算法中加入了阈值有效性检查。核心验证公式为(30) 是最小阈值集合,例如0.1像素,可以根据不同场景进行调整。这个值对应于重投影误差的物理极限,通常设置为残差有效数字的5-10%;低于这个值的残差主要由探测器噪声主导。其目的是防止内部点被错误分类为外部点,而不是任意固定阈值边界;是最大阈值,例如5像素,代表由相机校准、镜头畸变和异步时间误差等因素引起的最大重投影误差。超过这个阈值的残差被视为严重错误,这个阈值同样基于重投影残差的分布来设置,通常在第99百分位数或更高。后两者用于确定残差分布是否正常。如果方差太大,这表明异常值的比例很高,需要通过替换为或其他百分位数来调整核函数阈值。如果仍然不满足条件,则应继续顺序搜索满足条件的百分位数阈值。在确定初始阈值后,通过多轮BA迭代动态调整阈值;也就是说,在每轮自适应BA优化后重新计算残差分布,并动态更新阈值。调整公式为(31) 是第k轮BA的阈值;是在第k+1轮优化之前计算的第90百分位数(如果使用不同的百分位数,则替换为相应的值);是平滑系数,通常设置为以防止由于阈值突然变化引起的优化振荡;如果和之间的差异小于阈值,则取这个差异的5%,并停止调整,使用当前阈值。设置平滑系数意味着阈值在每次迭代中保留80%的先前值,只纳入20%的新百分位数测量值。这种设置主要是为了抑制残差分布中的瞬态波动,防止阈值在连续迭代之间振荡,并避免将内部点错误分类为外部点。这些波动主要是由BA优化过程中中位数值的舍入误差或缺乏临时特征引起的。经验表明,当时,可以在大约三轮BA迭代内实现无振荡的单调收敛,收敛到稳态值的5%以内,这与求解器残差的快速减少阶段一致。当时,会导致阈值剧烈波动,从而破坏BA优化的稳定性;当时,会减慢收敛速度,在阈值达到特定场景的稳态之前导致不必要的计算成本。平滑更新确保阈值逐渐演变,而不是直接跳到最新的百分位数。如果允许阈值无限制地变化,残差分布的突然变化可能会将大量内点重新分类为异常值,反之亦然。这样的重新分类会突然改变对优化有贡献的观测值集合,导致成本景观波动并阻止稳定收敛。通过将之前的阈值与新计算的百分位数混合,系统保持了连续迭代中观测值分类的连续性。当阈值进入其稳态值的狭窄邻域时,停止标准终止调整。这表明残差分布已经稳定,进一步改变阈值对目标函数的改进将微不足道,如图7和图8所示。图7. 自适应阈值在BA迭代中的演变。图8. 在异质场景下固定与自适应Huber阈值。最后,我们使用以下公式初步评估ES-ATRK算法的性能:(32) 这里,代表全局重投影残差的总和,对应于图6a,b左上角的“总残差”值。为了直观地说明残差减少的程度,我们使用残差减少率来表征这种效果:(33) 4. 实验为了验证所提算法的有效性,我们在公共数据集上进行了实验,并使用EVO工具[21]评估了结果。用于评估的数据集主要包括以下四个:Vector [22]、HKU [9]、MVSEC [23]和DSEC [24],其中前三个包含真实数据,而后者不包含。对于前三个数据集,我们通过定量分析评估了算法的性能。EVO工具使用6-DOF变换将估计的轨迹与真实轨迹对齐,并通过绝对轨迹误差(ATE,%)来衡量定位精度。此外,我们还使用初始化后恢复的均方根误差(RMSE,m)、残差减少率(,%)和初始化持续时间(t,ms)来评估算法的性能。残差减少率和深度RMSE是两个互补的指标,用于表征初始化流程的不同阶段。残差减少率衡量BA之后全局重投影残差总和的相对减少量。残差减少率作为BA优化健康状况的诊断指标。一个集中良好的残差分布——其中大多数重投影误差被驱动到低幅度范围内,只有少数持续存在的异常值——比具有高减少率但大残差长尾的场景产生更稳定的初始状态。它反映了鲁棒核的收敛质量以及异常值被抑制的程度。深度RMSE衡量三角化3D点与真实深度之间的欧几里得误差。它反映了恢复场景结构的几何保真度。较小的深度RMSE直接决定了初始3D地图和相机姿态的准确性。这为后续帧提供了更可靠的重投影约束,并防止轨迹误差累积。初始化持续时间(t,ms)反映了计算效率,并直接决定了实时性能。因此,最佳结果不仅仅是最大化残差减少率,而是最小化均方根深度误差,同时进一步减少残差并确保分布集中,并将初始化时间保持在合理范围内。这些因素的综合效应确保了后端获得高质量的初始化,从而实现更高的定位精度和实时性能。为了确保实验的公平性和严谨性,所有评估方法都在相同的硬件和软件条件下运行。实验硬件包括配备Intel i7-13650HX CPU和32 GB RAM的笔记本电脑。关于软件,测试环境包括Ubuntu 20.04和ROS的Noetic版本。对于每种比较方法,我们使用了原始作者发布的官方开源实现,并采用了他们在公共代码库中提供的默认配置参数。在测试过程中,我们没有对任何方法进行额外的参数调整或场景特定适应,所有算法处理相同的数据集文件以消除配置偏差。4.1. 消融实验为了验证本文中选择的阈值参数和核类型的适当性,本节主要基于HKU数据集进行了消融实验。这些实验不仅比较了在1.0阈值下Huber、Cauchy和Tukey核函数的性能,还评估了本文提出的自适应Huber核函数在三个阈值(95%、90%和85%)下的性能。最后,提供了没有核函数的版本的对照组数据。HKU数据集由香港大学创建,用于评估基于事件的视觉惯性SLAM系统。该数据集使用各种同步硬件传感器收集,包括两个DAVIS346事件相机,每个相机包含一个事件传感器、一个图像传感器和一个IMU。数据集包括真实注释,并涵盖了各种快速移动和高度动态的场景。根据实验结果,我们编制了表2中的数据。基于表中的数据进行了比较。关于ATE性能,无论选择哪种核函数,使用固定阈值都会导致轨迹发散,并且在hku_agg_rotation测试场景中方法失败,该场景以剧烈的旋转运动为主。相比之下,我们的ES-ATRK方法无论选择哪个初始阈值都不会失败,并且在其他两个测试场景中仍然实现了最佳的ATE性能。就初始化时间而言,无论系统选择哪个阈值或核函数,其性能都与没有核函数的版本相当,两者都在毫秒范围内运行,从而满足了SLAM系统的实时要求。关于深度误差和残差减少性能,由于这些因素相互作用并反映在系统的ATE性能中,我们的ES-ATRK方法总体上仍然更优。应该注意的是,单独分析深度误差或残差减少性能没有实际意义,因为只检查其中一个指标仅反映了数值问题,并不能表明算法的固有效果。此外,应该注意的是,在三个测试场景中,固定阈值为1.0的Huber核函数的残差减少并没有出现其他两个核函数所见的数据波动问题。然而,这个问题影响了系统的鲁棒性,并最终影响了ATE性能,这就是为什么我们的ES-ATRK算法选择Huber核函数进行自适应阈值融合的原因。上述消融实验仅依赖于单一数据集,无法有效证明我们算法的有效性。为了充分展示我们算法的有效性,我们首先进行了特征融合实验,随后进行了全场景实验、泛化实验,以及使用其他数据集的大规模室外实验。此外,我们还为hku_agg_rotation场景提供了轨迹热图,这些热图是使用具有固定阈值的核函数和ES-ATRK方法生成的。结果如图9所示,清楚地表明依赖具有固定阈值的核函数的系统无法适应具有挑战性的场景。图9显示了在hku_agg_rotation测试场景中不同核函数和ES-ATRK的轨迹热图。从图中可以看出,当由于选择了固定阈值而导致Cauchy或Tukey函数发散时,它们的轨迹形成的曲线与真实轨迹无关。相比之下,当Huber函数使用固定阈值时,其轨迹会努力收敛到真实轨迹,而不是发散成曲线。这是因为Huber核函数的残差过滤机制与其他两种函数根本不同,从而防止了轨迹发散成曲线。这也是我们选择Huber核函数用于我们的ES-ATRK算法的原因。
4.2 特征融合实验
为了评估我们算法提出的特征融合性能,我们使用特征点的总数、2D观测的数量和深度观测的数量作为评估指标进行了实验。需要注意的是,只有当特征点的总数和深度观测的数量足够高时,才能证明算法的有效性,因为只有足够的数量才能使算法成功进入SFM优化阶段。这个实验是在HKU数据集上进行的。测试结果如表3所示。根据表中的数据,在进入SFM过程之前,PL-EVIO和ESIO基于事件的视觉-惯性SLAM系统在特征观测的总数方面都优于我们的算法。然而,特征点的总数并不一定越高越好;只要数量满足初始化要求,多余的特征点只提供额外的约束信息。在深度观测的数量方面,我们的算法有效地利用了事件数据中的深度信息,以获得可靠的深度观测数量和更可靠的深度约束信息。我们比较的两种系统在初始SFM过程之前并没有有效地利用事件数据中的深度信息;相反,它们直接将深度信息与视觉数据结合,并将其输入SFM以执行PNP和三角测量等深度恢复操作。相比之下,我们的算法直接分解了这两种数据类型,并将从事件数据中恢复的深度信息与来自视觉数据的2D观测信息作为一个整体进行后续优化。这种方法充分利用了两种模态的信息,提高了特征融合的性能,最终提高了ATE性能。为了直观展示算法的性能,我们提供了在hku_agg_rotation测试数据集上的特征跟踪结果图像。由于PL-EVIO结合了三种模态——事件、视觉和惯性——在与其比较时,会同时显示视觉图像。相比之下,由于ESIO仅包括事件和惯性模态,因此只显示了基于事件的结果进行比较。从图10中的特征跟踪结果可以看出,PL-EVIO使用视觉点特征和事件点线特征作为其跟踪模型,但其事件特征点的密度远低于后两者。相比之下,ESIO的事件特征密度与ES-ATRK相当,但它没有结合视觉特征信息。最后,本文中介绍的ES-ATRK算法即使在由于剧烈旋转运动导致视觉模糊的情况下,也能通过有效的特征跟踪为SFM流程提供关键的数据支持。
4.3 全场景向量实验
为了全面验证所提出算法的鲁棒性,我们选择了VEktor数据集进行全场景测试。VEktor数据集包含了来自各种硬件同步传感器的数据,包括立体事件相机、立体参考相机、RGB-D传感器、LiDAR和IMU。该数据集包含了具有复杂环境、不同光照条件和不同尺度的各种运动场景。如表4所示,与列出的基于事件的算法相比,我们提出的ES-ATRK取得了最佳结果。尽管在某些序列中(例如corridors_dolly、school-dolly),ESIO的ATE标准略优于我们的算法,但在大多数涉及HDR或剧烈运动的具有挑战性的场景中,我们的ES-ATRK提供了更可靠和准确的结果。此外,我们提出的ES-ATRK比基线模型ESVIO更准确,这可能归因于我们算法中的全局BA优化自适应策略,而传统的基于事件的方法(EVO、ESVO)在VEktor数据集的大多数序列中都失败了。EVO和ESVO在VEktor数据集中的大多数序列中失败,并不是因为参数调整不足或实验条件不公平,而是反映了单模态基于事件的SLAM系统的固有局限性。EVO是一种纯基于事件的单目测距方法,它假设场景具有平面几何形状,并完全依赖于事件驱动的边缘跟踪,而不融合IMU或视觉数据。ESVO是一种纯立体基于事件的视觉测距系统,它处理异步事件流,但不融合标准相机帧或惯性测量数据。这两种系统都缺乏处理VEktor数据集中遇到的具有挑战性场景所需的互补传感器模态数据的能力,从而导致系统失败。这些失败是单模态基于事件的SLAM系统固有的,仅通过调整参数无法缓解。
4.4 泛化实验
为了验证所提出算法的适用性,我们使用HKU和MVSEC数据集进行了实验,以评估其泛化能力。如表6所示,与VEktor数据集的结果类似,我们提出的ES-ATRK算法仍然比大多数基于事件的算法取得了更好的结果。此外,由于选定的场景都涉及高动态范围、快速运动或室内飞行等具有挑战性的条件,传统的基于事件的方法在大多数测试场景中表现不佳。相比之下,我们提出的ES-ATRK算法没有失败,这可能归因于算法中采用的全局BA优化的鲁棒和自适应策略,以及事件和视觉数据的充分利用。值得注意的是,在HKU数据集上,ES-ATRK的ATE值几乎与ESVIO相同。这种收敛是由于事件特征在姿态估计过程中的主导作用,自然导致残差分布紧凑,使得自适应阈值方法能够达到与ESVIO和ESIO等高性能系统相当的性能。因此,这些结果并不削弱我们的论点,反而验证了ES-ATRK自适应机制的设计理念。具体来说,当场景产生的残差较低时,初始阈值会自动收敛到一个固定的阈值范围内,从而防止由于不必要的异常值而排除有效观测。同时,ES-ATRK在Indoor_Flying1和Indoor_Flying4等具有挑战性的场景中表现出强大的性能。在图14中,我们选择了HKU数据集中的高动态范围测试场景hku_hdr_circle来展示ES-ATRK的性能。从图11和表6可以看出,与由虚线表示的真实轨迹相比,在ESVIO、ESIO和ES-ATRK算法中,只有ES-ATRK算法与真实轨迹的吻合度最高,同时具有最小的绝对轨迹误差。在mountain_normal测试场景中,ES-ATRK算法的ATE为1.29%,而ESVIO和ESIO分别为4.17%和2.79%;在robot_normal测试场景中,ES-ATRK的ATE为0.60%,而ESVIO和ESIO分别为1.11%和1.27%。在接下来的两个测试场景中,我们可以使用三轴误差分布图来分析ESVIO、ESIO和ES-ATRK算法的绝对轨迹误差。如图13所示,与ESVIO和ESIO相比,我们的ES-ATRK算法表现出更好的稳定性和准确性。尽管我们只为一部分场景提供了误差分析图,但表4中的结果表明,与大多数基于事件的SLAM算法相比,我们提出的ES-ATRK算法在VEktor数据集的大多数测试场景中实现了最佳的平均绝对误差(ATE),并且算法的稳定性也在误差分布图中得到了体现。表5显示了三种算法在VEktor数据集上初始化后的组合均方误差和残差减少率。我们的ES-ATRK算法在大多数测试场景中也优于其他两种算法。
4.4 泛化实验
为了验证所提出算法的适用性,我们使用HKU和MVSEC数据集进行了实验,以评估其泛化能力。如表6所示,与VEktor数据集的结果类似,我们提出的ES-ATRK算法仍然比大多数基于事件的算法取得了更好的结果。此外,由于选定的场景都涉及高动态范围、快速运动或室内飞行等具有挑战性的条件,传统的基于事件的方法在大多数测试场景中仍然表现不佳。相比之下,我们提出的ES-ATRK算法没有失败,这可能归因于算法中采用的全局BA优化的鲁棒和自适应策略,以及事件和视觉数据的充分利用。值得注意的是,在HKU数据集上,ES-ATRK的ATE值与ESVIO几乎相同。这种收敛是由于事件特征在姿态估计过程中的主导作用,自然导致残差分布紧凑,使得自适应阈值方法能够达到与ESVIO和ESIO等高性能系统相当的性能。因此,这些结果并不削弱我们的论点,反而验证了ES-ATRK自适应机制的设计理念。具体来说,当场景产生的残差较低时,初始阈值会自动收敛到一个固定的阈值范围内,从而防止由于不必要的异常值而排除有效观测。同时,ES-ATRK在Indoor_Flying1和Indoor_Flying4等具有挑战性的场景中表现出强大的性能。在图14中,我们选择了HKU数据集中的高动态范围测试场景hku_hdr_circle来展示ES-ATRK的性能。从图14和表6可以看出,在四种基于事件的多模态算法中,我们的ES-ATRK表现最佳,其ATE仅为0.07%,比基线模型ESVIO低0.02个百分点。此外,在其他测试场景中,我们的ES-ATRK算法的ATE性能也优于表4中提到的其他方法。此外,在图14c中,由于特定场景的影响,PL-EVIO出现了过大的轨迹误差,而ES-ATRK仍然保持了与前两种方法相同数量级的平均绝对误差(ATE),并且略优于它们。上述算法的绝对轨迹误差时间分布曲线显示在图15中。从图中可以看出,与ESVIO、ESIO和PL-EVIO相比,我们的ES-ATRK算法表现出更加集中和稳定的误差分布,误差值更小,这表明我们的算法的自适应和鲁棒策略能够提高定位精度和系统稳定性。图14显示了在hku_hdr_circle条件下ESVIO(a)、ESIO(b)、PL-EVIO(c)和ES-ATRK(d)的ATE热图。图15显示了在hku_hdr_circle条件下ESVIO(a)、ESIO(b)、PL-EVIO(c)和ES-ATRK(d)的ATE图。表7展示了这三种算法在HKU和MVSEC数据集上初始化后的均方根误差(RMSE)和残差减少率。当综合考虑两个测试数据集时,由于我们采用了鲁棒和自适应的全局BA初始化策略,我们的ES-ATRK算法在大多数测试场景中的表现优于其他两种算法。表7显示了泛化测试中的初始深度误差和残差减少率结果。
4.5. 户外仿真实验
最后,我们在使用高分辨率立体事件相机收集的DSEC数据集上进行了户外仿真实验。在这个动态场景中,由于前向运动,视野中心触发的事件很少,这对依赖事件传感器的SLAM算法来说是一个挑战。由于DSEC数据集没有提供真实标签,我们只能进行定性评估,展示估计的轨迹和图像特征跟踪性能作为结果。我们还提供了ESVIO、ESIO和ES-ATRK的真实轨迹图。由于DSEC数据集没有提供真实标签数据,我们只能提供相对估计的轨迹;然而,如图16所示,我们的ES-ATRK仍然取得了令人满意的估计结果。图16显示了在Zurich_a户外场景中,ESVIO(a,b)、ESIO(c,d)和ES-ATRK(e,f)估计的地面相对轨迹。从图中可以看出,我们的ES-ATRK在估计地面轨迹方面的表现与ESVIO相当,而ESIO则落后于两者。这可能是因为ESIO只融合了事件和IMU数据,而没有像ES-ATRK和ESVIO那样整合事件、IMU和视觉数据;因此,ESIO与其他两种方法存在一定程度的偏差。
5. 结论与未来工作
为了解决基于事件的立体视觉-惯性SLAM系统初始化中的挑战,我们提出了ES-ATRK,这是一种鲁棒的实时全局BA初始化方法。该算法实现了立体事件流和视觉帧之间的时空融合,通过利用视觉2D观测和事件深度估计来提升融合性能。随后,融合结果被输入到初始SFM过程中。在全局BA的鲁棒和自适应策略下,该算法进一步抑制了重投影和深度恢复误差,同时优化了重投影误差的分布,从而提高了系统的整体定位精度和鲁棒性。此外,该算法在大多数测试场景中实现了最佳的ATE性能,与列出的系统相比至少提高了10%的性能;在低光照且动态范围广的场景中,其ATE性能大约是ESIO等模型的两倍;在向量全场景和泛化测试场景中,我们的ES-ATRK在绝对轨迹和三轴误差分布方面继续表现出色;在没有真实标签数据的大规模测试中,我们的算法仍然展示了出色的轨迹估计性能。最后,尽管提出的ES-ATRK算法取得了满意的结果,但它仍然存在局限性。具体来说,如图17所示,在大规模户外场景中,特征提取和匹配过程可能会遇到特征点数量有限和匹配对不足的问题。此外,如表4和表6中某些次优测试场景所示,自适应阈值是在没有明确针对每种模态进行加权的融合残差集上操作的。因此,一个分支(无论是事件分支还是视觉分支)的暂时退化无法被另一个分支完全补偿。这导致优化结果可能不如标准BA优化所获得的结果。未来的研究可以以此为起点进行进一步探索。图17显示了在DSEC数据集上的特征跟踪性能。绿色点代表特征点,红色和蓝色分别表示事件的正面和负面极性。
生物通微信公众号
生物通新浪微博
今日动态 |
人才市场 |
新技术专栏 |
中国科学人 |
云展台 |
BioHot |
云讲堂直播 |
会展中心 |
特价专栏 |
技术快讯 |
免费试用
版权所有 生物通
Copyright© eBiotrade.com, All Rights Reserved
联系信箱:
粤ICP备09063491号