Advertisement

动态SLAM论文(7) — DOT: Dynamic Object Tracking for Visual SLAM

阅读量:

目录

1 Introduction

2 Related work

3 DOT

A 系统概述

B. 实例分割

C. 相机和物体跟踪

D. 跟踪质量、异常值和遮挡

E. 目标是否在运动?

F. 掩码传播

4 Experimental results

5 Conclusions


摘要

1 Introduction

SLAM是机器人平台自主导航的基本能力之一[4]。其目标是通过嵌入式传感器的信息,联合估计机器人的运动和周围环境的地图。视觉SLAM是其中最具挑战性且最相关的配置之一,传感器主要或仅限于摄像头。
尽管在过去的20年里SLAM取得了显著进展,但大多数最新技术系统仍然假设环境是静态的,即场景中的点之间的相对位置不会发生变化,唯一的运动是由相机完成的。在这种假设下,SLAM模型将视觉变化完全归因于相机的相对运动,将动态区域建模为异常值,在位姿跟踪和地图估计过程中忽略它们。然而,在这些动态区域被排除为异常值之前,它们的数据会在SLAM优化中被使用,从而引入误差和不一致性,影响地图和相机姿态的估计。此外,对于基于特征的SLAM方法,其跟踪少量显著图像点,动态区域中产生的错误是相关且可能导致系统失败的,因为这些错误匹配数据会引入系统中。实际应用中,机器人或增强现实系统必须在远非静态的环境中运行。例如,汽车或无人机的自主导航、拥挤场景中的增强现实或者行星探测任务,在这些任务中低纹理使得SLAM系统在存在阴影或其他机器人的情况下不可靠。因此,开发能够在高动态环境中运行的鲁棒SLAM系统对于许多应用是至关重要的。

如图1所示,本研究致力于开发一种图像处理策略,以增强视觉SLAM系统的鲁棒性,特别针对动态环境进行了深入优化。我们创新性地提出了一种名为'Dynamic Object Tracking'(DOT)的方法,该技术通过将实例分割技术与多视角几何模型相结合,实现了对相机姿态变化及动态物体运动轨迹的有效估计[6]。经过预处理得到的结果是,一个精确识别并标记出各时间段内图像中动态区域的具体掩膜信息,从而使得视觉SLAM系统能够在这些区域避免建立不必要的对应关系,进而提升系统的整体性能表现

该算法基于KITTI数据集[1]实现图像追踪功能;采用基于DOT分割掩码的方法对运动物体与静止物体进行区分;采用基于Detectron2[3] 的分割掩码对动态场景中的目标进行编码;值得注意的是,在这种分割方法中能够识别并分离出真实运动的对象(如行驶中的汽车),同时也能保留那些处于静止状态的对象(如停着不动的汽车)。

我们通过三个独立的公共数据集进行了实证表明,在动态场景下评估了该组合的表现情况。研究结果表明该组合在动态场景中的性能超越了现有技术。此外我们发现DOT作为一种独立的功能模块实现了相应的算法逻辑因此能够轻松集成到现有的SLAM系统中这一特点使得其具有较高的实用性。基于DOT具备短期掩膜追踪功能这一特性使得其能够在处理运动场景时减少不必要的计算开销从而减少了对整个序列的所有帧进行分割计算的需求最后尽管我们在汽车导航特定领域的应用中进行了优化与测试但这种设计思路仍然适用于其他应用场景

动态环境下实施的SLAM技术属于一个前沿研究领域,并拥有丰富的研究资源。对各类方法进行分类时,我们将其划分为三个主要类别。

该方法通过将场景建模为一组非刚性部分,并涵盖可变形物体及动态物体,在文献中标注引用[7][8][9]。尽管这一研究路线具有广泛的适用性但也面临着显著的技术挑战。在分析后两种动态视觉SLAM类别时,默认物体内部结构为刚体。

第二类方法旨在基于对场景静态部分进行重建来提升视觉SLAM系统的准确性和鲁棒性。与之相对应的是动态物体被分割后被忽略以便于相机位姿估计及地图构建。在该研究领域内,DynaSLAM[10]作为基础研究工作主要聚焦于估计场景静态部分的地图并在此基础上实现对该地图的重复利用以减少计算开销。然而,DynaSLAM所依赖的方法存在一定的局限性即其无法有效区分那些看似移动实则未动的物体例如固定停泊在场景中的车辆等静物类别对象因此导致其在某些特定场景下的性能表现低于传统算法如ORB-SLAM2[1]为此我们提出了一种新的解决方案即仅当物体确实处于运动状态时才将其归类为动态物体这一特性避免了不必要的误判从而提升了系统的准确率与稳定性.在此背景下另一个值得提及的相关研究是StaticFusion[12]这种方法则通过利用场景背景中的三维重建信息来进行语义分割并通过密集RGB-D传感器持续采集环境信息从而实现了对场景静态区域特征的有效捕捉.相比于DynaSLAM这种基于二维感知器的传统方案StaticFusion不仅能够显著减少计算资源消耗还能够提升系统的实时处理能力.

在动态视觉SLAM领域中第三种工作方式超越了对动态物体的分割与抑制技术,并涵盖了当前较为先进的几种方法如MID-Fusion [13]、MaskFusion [14]、DynSLAM [15]以及ClusterVO[16]等。这些方法旨在同时实现相机运动估计以及多目标运动跟踪功能。其中,在MID-Fusion [13] 和 MaskFusion [14] 中构建针对每个可能移动的目标的子地图,并通过同时估计目标的位置与相机的姿态来完成子地图的构建过程。值得注意的是,这些现有系统[13][14][15][16][10]大多采用了深度学习技术作为核心算法工具,在实际应用中由于分割网络处理速度限制导致无法实现真正的实时性运行。而本研究提出的方法无需为每一帧单独进行分割处理,并能完全脱离分割网络频率的影响,在理论上实现了真正的实时性效果

3 DOT

A 系统概述

图2呈现了我们所提出的方案概要。
DOT接收的数据形式包括基于特定视频帧率采集并带有深度信息的信息。
生成对场景静态与动态元素进行编码的关键标识符。
其输出结果可直接应用于同时定位与地图构建(SLAM)以及里程计技术中。

图2. DOT概述图。路径A(红色)展示了基于网络获取分割掩码帧并进行处理的过程;路径B(绿色)则体现了通过DOT几何传播机制获取分割掩码帧并完成处理的过程。

基于实例分割的第一阶段模块设计了一种用于对所有潜在动态物体实现逐像素分割的独特神经网络架构。我们在实验部分利用自动驾驶数据集构建了模型,并专注于识别并分离出车辆这一类别以期将其视为潜在运动物体。如后续章节所述,在DOT系统中通过从一帧到下一帧逐步更新掩膜的方式无需在每一帧单独执行此操作。

图像处理块用于分离并提取静态区域与动态物体中的特征点。相机的姿态主要依据场景中的静态部分进行追踪。通过此处理块,并结合相机的姿态信息分析各分割对象的运动情况(目标追踪)。

该特定块(物体是否存在运动状态?)将基于几何准则判定被网络标记为候选动态对象的实际运动情况。所得信息将用于更新编码每个帧对应的静态与动态区域之掩码图,并将其传递给相关的里程计与视觉SLAM系统。

最后,在物体运动估计的基础上生成新的遮罩(mask propagation),这使得我们无需在每帧上执行网络推断(见图3)。考虑到实例分割所需的计算开销显著,在此情况下可能具有较大的优势。

图3. 样本结果。上部呈现关键点与物体轨迹。请注意注意的是,在网络中使用黄色方框标记的部分并非每个帧都是必需的。下部展示通过DOT传播机制生成的遮罩层;该遮罩层用于区分运动状态:动态区域以彩色表示、静态区域以黑色表示,并未被检测到区域则采用灰色填充

B. 实例分割

基于COCO实例分割基准模型(Mask R-CNN R50-FPN 3x)结合了通过Detectron2 [3]进行训练的方法,在单幅图像中识别并分离出所有可移动对象,并生成相应的分割掩码信息。这种设计优化后的新网络能够有效处理动态场景中的目标分割问题,并将非运动区域标记为‘背景’部分以供后续模块参考。该分类机制专注于刚性且可能存在运动的对象类别,并排除人类等非刚性物体的可能性。如需扩展至其他类别,则可以通过现有的权重参数作为初始值进行微调优化或引入专门的数据集进行进一步训练

通过在多个帧之间的持续跟踪对象来实现目标追踪的目的,在DOT计算得到的掩码与网络提供的掩码之间建立配对关系。若新检测结果未能与现有任何物体建立对应关系,则会被用来创建新的实例。

C. 相机和物体跟踪

基于前一阶段实例分割的结果,我们的目标是估计相机自身的运动以及动态物体在图像中的运动。由于相机自身的运动与被拍摄物体之间的相互影响,在实际应用中难以直接处理这一复杂关系。因此导出了一种分步推导方法。随后,在计算过程中我们首先确定了摄像头的姿态作为相对于世界坐标系的位置参数

,然后减去它来估计物体的运动

我们的优化与近期提出的几种直接视觉测距和SLAM技术[6]相关,这些技术专注于实现最小化光度重投影误差的运动。

**优化 :**我们对相机姿态和后续物体运动估计进行高斯-牛顿优化,

其中

包含残差函数的导数(方程(3)和(5)),

是包含光度残差

的协方差的对角矩阵。李代数姿态增量

,其中

是从向量到切空间矩阵表示的映射运算符[19],表示为向量

。我们使用左矩阵乘法和指数映射运算符

更新过程。均采用恒定速度模型和多尺度金字塔图像进行初始化设置,并能有效提高收敛性。

相机跟踪 :使用静态场景区域

利用图像上高对比度像素的低密度样本以及多视角限制[20]来推导相机运动,在此条件下假设相机标定与各固定不变特征点深度信息均为可得。

从参考帧

中的像素坐标

投影到帧

中的对应坐标

,如下所示:

其中,

分别对应透视投影和反投影模型,

是参考帧

中点的深度。 通过最小化光度重投影误差来优化相机姿态,

该计算方法通过将所有点在其参考帧及其正在跟踪的帧中的投影强度差异进行求和来实现;其中,我们采用了 Huber 损失函数 γ。

目标追踪:当估计得到Tc后(Once the estimation of Tc is obtained),每个潜在动态物体的姿态可通过基于该物体部分区域的图像高梯度像素来确定(each potential dynamic object's pose can be determined based on the high gradient pixel region belonging to the object).

进行类似估计。将潜在动态物体建模为具有姿态 To 的实体,则每个点

从帧

投影到帧

中的坐标为:

与公式 3 类似,通过最小化以下光度重投影误差来估计 To。

D. 跟踪质量、异常值和遮挡

遮挡、光照条件的变更以及分割错误会对目标与相机位姿的准确性造成显著影响;正如算法1所述,在执行完目标跟踪之后阶段地应用一系列策略可有效减少上述问题的影响程度。

跟踪效果评估指标:动态目标的外观会发生显著变化,导致跟踪误差增大。为了量化这种变化程度,在分析中我们采用皮尔逊相关系数作为评估指标。

用于衡量外观相似度的度量反映了参考强度与相应估计之间的线性相关程度。因此对增益与偏移变化具有不变性。值得注意的是,该方法同样适用于相机追踪φc,尽管背景外观的变化通常不那么显著。

离群点剔除

图4 左侧展示了一个物体的光度误差分布情况,在阴影区域移除了异常数据点。右侧则呈现了各强度之间的线性关系。特别注意的是,在光度变化的影响下,绝对阈值(以黄色标注)与相对阈值(以红色标注)所对应的异常数据点存在显著差异。

遮挡:动态物体之间可能存在互相覆盖的情况。在本研究中发现,在实验过程中仅仅通过去除被遮挡区域来处理异常情况是不够完善的。为此我们提出了一种新的处理方法:从物体离观察者最近处开始到最远处依次追踪各物体的目标特征,并按照此顺序逐一更新其对应的遮盖模型参数;通过这种方法可以在每一轮计算过程中实现对被近期物体阻挡而影响远处物体检测效果的数据校正处理

E. 目标是否在运动?

该模块采用相机变换矩阵Tc和目标变换矩阵To作为输入,并判断目标是否处于运动状态。其输出将被SLAM或里程计系统应用到图像中被动态物体占据的部分及其运动状态。基于前一步结果,在当前帧上将每个目标点映射到新的图像区域以生成覆盖图。

在其中的目标运动因图像噪声的影响而难以观察。这项研究中我们采用二维图像测量方法以评估目标运动情况,并将我们的度量标准定义为动态视差即为固定参考点。

和实际投影点

之间的像素距离。对于每个目标,我们计算其点集

的动态视差的中位数

同一个空间点在三维空间中的运动会导致其在二维图像中的运动呈现不同形态;这种变化主要受以下因素影响:其一为空间点的位置坐标;其二为该空间点所处的深度信息;以及其三为空间物体相对于相机运动方向之间的夹角关系。

基于非线型位姿优化算法(见公式(1)),我们可以得出结论:目标运动行为的不确定度量,并通过数学表达式进行描述。

。假设一个k维高斯分布,它的微分熵为

差分熵等同于减少亮度差异所带来的姿态不确定性。换言之,高熵运动观测会引发图像像素的重大变化(见图5)。相比之下,低熵观测则会引起微小的变化。

图5展示了视差与熵之间的对比关系。研究发现不同运动物体所引起的动态视差具有显著差异性。当观测结果中出现较高熵值(通常表现为明亮区域)时,图像像素会发生显著偏移。

在此基础上, 该算法的作用是将物体运动进行分类. 当动态差异超过该阈值时(

)的所有物体标记为“运动中”。在熵阈值

对于每一个数值,在无法观测到物体运动的情况下,在将物体标记为静止时需要满足运动必须是可观察到的。

),并且动态差异的中位数小于变量阈值(

)。

尽管寻找最优化函数的形式尚需深入探讨, 但本表达式不仅满足要求, 在本文中也展现出令人满意的性能(如第四节所述)。图3展示了基于DOT传播机制的掩码示例: 将标记为'运动中'的对象以彩色呈现, 而将标记为'静止'的对象则以黑色消失; 采用灰色表示的车辆则是那些无法明确归类于静止或动态状态的对象。

F. 掩码传播

该系统通过多视图方程计算相机和物体的姿态,并结合前一帧图像信息生成相应的掩码;然后将这些由神经网络生成的目标检测掩码与前一帧图像中的目标检测结果进行融合处理。

状态传播:通过建立新的语义实例与现有对象之间的联系来推断其运动轨迹(尤其是针对高速移动的对象而言)。此外,在对象难以直接观测其所在位置时的状态下(参见第III-C节),系统的运动状态得以持续维持。

独立分割 :我们的提议通过从初始种子开始在时间和空间上传播语义分割掩码的方式,在不需单独为每帧执行分割任务的情况下实现了目标。通过在低端设备上实现低频运行策略来实现实时物体跟踪。作为一种额外优势,在连续图像序列中Dot弥补了当前系统因短暂丢失实例信息而产生的缺陷。

4 Experimental results

基准评估框架:我们通过多组不同的参数设置推导相机运动轨迹,并采用ORB-SLAM2算法实现这一过程[1]:

  • 无需遮蔽:采用作者提供的ORB-SLAM2实现,在原始图像上运行该算法。系统会自动初始化全部图像区域(包括可能包含移动物体会员的部分)。
  • DOT遮蔽:此外,系统还能够处理当前可能运动的对象。我们对ORB-SLAM2进行了优化以避免对该区域内提取特征点。
  • 所有遮蔽:通过分割网络得到的所有遮蔽图将其应用至ORB-SLAM2中。从而完全排除了所有可能存在的运动对象而无需判断它们的实际运动状态。

序列子集 :我们对KITTI视觉基准套件 [2] 中选取的三个特定子集进行了配置评估。该研究采用了来自Virtual KIT TI [21, 22]的数据。该合成数据集由KITTY平台基于其原始[2]中的五个虚拟克隆序列构建而成。此外还选择了KITTY里程碑系列是专为开发和评估视觉里程计系统而精心设计的一组预定义子序列集合以及KITTY原始部分中包含大量移动物体的一组子序列。在Virtual KIT TI实验中采用的是RGB-D配准算法结合ORB-SLAM2的方法,在其他实验条件下,则采用了双目ORB-SLAM 2版本。相应的真实场景的地物分布信息则完全依赖于GPS定位系统的实时测量数据。

评估标准

在表 I 的右侧列中展示了三种配置下的ATE相对于各自序列的最佳值的归一化情况。由此可知,在各个序列中最佳ATE的归一化值为1,则表明该配置达到了与该序列最优表现相当的程度;而当某序列中的归一化值大于1时,则反映出该配置的表现略低于该特定序列的最佳水平。通过颜色标度可以看出,在每个序列中最佳和最差结果之间存在归一化差异。

Tracking accuracy is examined in this study. Based on the ATE values in Table I, DOT demonstrates significant improvements compared to both unoccluded and fully occluded configurations within the V-KITTI sequences, with enhancements of 135.4% and 21.6%, respectively. Furthermore, across five evaluated sequences, DOT achieved the highest scores in three of them.

在KITTI Odometry系统中的11个轨迹上(...),DOT算法相较于未加任何掩模和全部使用掩模的情况提升了约12.7%和30.3%。对比于V-KITTI方法,在此测试序列中动态物体的数量相对较少。因此,在这种情况下应用掩模可能会带来负面影响。基于该数据集的设计规范,在此基准下通过GPS获得的真实相机姿态位置精度能够达到每米之内(...)。其准确性可归因于较低水平动态物体数量以及图像中的丰富纹理特征(...)。结果表明这些特征使得该方法能够在较为动态但依然具备丰富纹理场景中表现优异。这对于精确估计 camera motion 的稳定性与可靠性具有重要意义。

在表I的最后一节中, 序列与方法间的差异表现得更为明显. KITTI Raw以其显著的高速移动物体著称. 总体而言, 在未使用掩模的情况下DOT的ATE提升了142.3\%, 并相较于所有使用的掩模其性能进一步优化了15.9\%. 注意到的是, 在处理序列编号为1\text{--} 8时, 移除动态物体能够有效降低跟踪误差.\text{Sequence } 9 \text{--} 8中的部分子目标被复制并附加到原始数据集中, 从而生成了V-KITTI合成数据集(编号分别为1, 8, 和2). 如预期所料, 由于场景内容的一致性, 其定性分析结果也应当完全相同

通过表I中的色标测试可以看出,在虽然DOT并非最精确(以绿色为基准)的情况下, 其仍能达到最佳方案的标准. 因此, 在仅依靠掩模进行处理时可能会觉得便捷实用; 如果能去除实际处于运动状态中的物体, 则准确性将会有明显提升. 这些实验结果充分证明了, 在静止与动态场景中 alike, DOT均展现出卓越的表现.

场景内容的自适应: 图6展示了影响SLAM准确性的两种情况。下排展示了一个低行动度的场景(V-KITTI 20),其中所有车辆均在运动中违反了ORB-SLAM2对刚性运动的假设而导致系统失败。同样,在VKITI 18中移动物体的存在导致ORB-SLAM2在10次试验中有6次无法完成跟踪(仅能估计轨迹的大约56%)。上排则展示了一行停放着车辆的城市场景(V-KITTI 01)。与前一案例不同地使用分割掩模的方法效果较差因为这导致大量可靠信息被去除用于跟踪。此序列的ATE分析表明从较大区域中提取更多点可获得更精确的轨迹估计。

图6. 内容适应性对比分析如下:
左侧采用了无遮罩方案。
中间采用了DOT类型的遮罩。
右侧采用了全部类型的遮罩。
在顶部展示了一个静止场景,在此场景中所有类型(无论是哪种类型)都被排除了静止物体的所有点。
在底部展示的是无任何遮蔽措施的情况下,在移动物体上追踪特征的情形;这种情况下可能会导致追踪失败。
该系统通过测试发现,在停放的汽车被识别为静态物体的情况下,在移动的汽车则被正确分类为动态物体。

本研究发现:尽管动态物体掩模方法具有有效性(此处可能需要更详细的表述),但若未验证物体的实际运动状态,则会带来信息丢失问题,在诸多车辆场景中尤为明显。DOT通过评估物体的运动状态,在这两种对立情况间实现了权衡,并显著提升了系统的鲁棒性和准确性。

环路优化 :该算法通过减少动态物体移动或车辆停站带来的漂移和定位不准确问题,在整体性能上表现更为稳定。具体而言,在KITTI Odometry测试序列中选择第9个序列作为研究对象,在进行了10次运行后发现:当采用DOT掩模时有6次实现了完整的闭环跟踪;然而,在所有实验设置下均未能完成闭环任务。这一现象不仅解释了实验结果的一致性变化部分,并突显了所采用掩模策略的独特优势。

分割错误:相较于其他方法而言,在面对图像分割任务时,DOT系统显著降低了分割错误的发生率。其中值得注意的是,在神经网络处理静止物体时偶尔会犯错(例如将交通标志或建筑物误判为动态物体),但DOT系统通过一种称为"重新分类"的技术来纠正这种误判(见图7)。此外,在序列帧中出现短暂空缺时,则可以通过传播对象遮罩的方式进行填补以确保图像完整性

图7. 分割问题。对各种遮罩与DOT遮罩间的对比分析。 值得指出的是,在Detectron2中出现的分割异常(即红色方框中标记物被误判为汽车标签)已被DOT准确地归类为静态物体类别。

Mask Propagation:如前所述,在中间帧上传播已有的遮罩能够有效降低网络分割的发生率。图8详细展示了V-KITTI每帧上正确标记像素与错误标记像素的数量差异(黑色代表真实值)。其中,在DOT采用100% Detectron2分割(红色)、50%(蓝色)、33%(黄色)及25%(绿色)时可观察到不同结果的变化趋势。值得注意的是,在整个传播过程中除了会导致跟踪失败或分割间引入移动物体的情况外,在其运行过程始终能维持精确性(如表II所示)。其效果体现在能够显著降低处理高频图像流所需的计算时间

图8展示了掩膜传播的效果。 在V-KITTI基准数据集上,基于分割网络的方法(简称DOT)通过计算所有帧中正确标记像素数量与错误标记像素数量之差,并将其相对于参考标准(黑色)进行比较。具体而言,在不同颜色标注下分别对应:100%使用全部帧(红色)、50%使用部分帧(蓝色)、约33%使用部分帧(黄色)以及约25%使用部分茎部区域或根部区域的部分框架标注情况下的绿色区域。

5 Conclusions

该系统 frontend algorithm for SLAM 称为 DOT 是一种创新的方法。该算法通过融合实例分割技术和多视角几何模型能够稳定且精确地检测与追踪移动物体。本研究在三个公开数据集上采用了 ORB-SLAM2 作为基准 [2] [21] [22] 实验结果表明 DOT 生成的对象运动信息有助于实现动态场景中的目标分离 并显著提升了系统的鲁棒性和准确性。值得注意的是 DOT 的独特性在于其与 SLAM 系统的独立性 这使得它具备广泛的应用潜力 在各类最新的 visual odometry 和 SLAM 系统中均可灵活应用 只需进行最小化的技术整合即可完成功能拓展 相比之下 DOT 所采用的遮罩跟踪技术不仅降低了目标分割频率 同时也有效降低了系统的计算开销 相较于现有技术水平这一方法展现出明显的优势。

全部评论 (0)

还没有任何评论哟~