
# BEV-ODOM2: 利用 PV-BEV 融合和密集光流监督的增强型基于鸟瞰图的单目视觉里程计，适用于地面机器人

Yufei Wei¹, Chenxiao Hu¹, Wangtao Lu¹, Sha Lu¹, Yuxiang Cui², Fuzhang Han², Rong Xiong¹ 和 Yue Wang¹†

摘要：一致的尺度自运动估计对于自主地面机器人至关重要。鸟瞰图 (BEV) 表示通过提供一个具有度量尺的平面工作空间，自然地解决了单目视觉里程计 (MVO) 的尺度漂移问题，从而简化了 6 自由度的自运动估计为更稳健的 3 自由度模型。 然而，现有的基于 BEV 的方法存在两个主要局限性：仅从姿态训练获得的稀疏监督信号，以及透视投影过程中信息丢失。 我们提出了 BEV-ODOM2，这是一个增强的框架，该框架解决了这两个局限性，而无需额外的注释。 我们的方法引入了 (1) 直接从 3 自由度姿态地面真值构建的密集 BEV 光流监督，用于像素级的指导，以及 (2) 视角视图 (PV)-BEV 融合，该融合在投影之前计算相关体积以保留 6 自由度的运动线索。 一种增强的旋转采样策略进一步平衡了训练过程中的各种运动模式。 我们在四个具有不同空间尺度的数据集上进行了评估：KITTI、Oxford、NCLT 以及我们新收集的 ZJH-VO 基准数据集。 BEV-ODOM2 在所有先前的基于 BEV 的方法上的绝对轨迹误差 (RTE) 提高了 40%，并且在 NVIDIA Jetson AGX Orin 上实现了实时推理，这证实了其边缘部署可行性。 源代码和 ZJH-VO 数据集已公开，以促进未来的研究。

致实践者：本文展示了如何使用单个普通相机准确地跟踪地面机器人的自身位置。 与需要激光扫描仪、深度相机或手动标记的训练数据的方法不同，我们的方法仅使用机器人已经记录的位置日志进行训练，因此采用它只需少量的数据收集或标记工作。 它可以在一个小型嵌入式计算机上以超过 20 帧/秒的实时速度运行，因此可以添加到现有的室内服务、检查或室外平台，而无需新的硬件。 一个实际的短期用途是作为备份，当 GPS 在室内、隧道或车库中丢失时，保持机器人沿其路径移动约十秒。 主要限制是机器人应在主要平坦的表面上移动，因为陡坡或强烈颠簸会降低其精度。 我们发布代码和数据集以方便重用。

关键词：单目视觉里程计，鸟瞰图表示，一致的尺度自运动估计，密集监督，自主地面机器人，移动机器人感知

## I. 引言

可靠的自运动估计是各种自动化任务中自主地面机器人的基本能力，从室外移动平台和机器人技术到室内服务和检查机器人，这些都运行在结构化环境中。 单目视觉里程计 (MVO) [^1]、[^2] 提供了一种轻量级的解决方案，但传统的解决方案会受到累积的尺度漂移的影响，这会降低长时间轨迹的定位精度。 鸟瞰图 (BEV) 表示已成为一种强大的范式，可以缓解这种挑战 [^3]、[^4]。 对于地面机器人，运动主要是在平面上 [^5]，从而允许将姿态估计简化为 6 自由度 (6-DoF) 到更稳健的 3 自由度 (x、y、偏航) 模型。 这种简化自然地

![Image](images/f40fdba6998d123ca02856cba4cb75c41e43573098b57935b8046b1c9c057ae7.jpg)

<div style="text-align: center;">Fig. 1: Comparison of BEV-based monocular odometry methods. Unlike prior approaches needing extra annotations or limited by sparse supervision, our BEV-ODOM2 leverages PV-BEV fusion and dense BEV flow to provide rich supervision from pose data alone.</div>

aligns with the unified, metric-scaled grid of BEV representation [^6], 减少计算复杂度并减轻非主要运动轴上的误差累积。

BEV-ODOM [^7] 证明，基于BEV的框架可以使用仅3-DoF姿态监督来有效减少尺度漂移，从而无需辅助任务，如深度估计 [^8] 或语义分割 [^9]，这些任务会增加复杂性和数据采集成本。然而，这种和其他基于BEV的方法都面临两个关键限制。首先，来自单个3-DoF姿态向量的监督信号是稀疏的，无法为网络提供足够的指导，使其学习连续的BEV特征图之间的精细像素级对应关系。正如最近的研究，如DUSt3R [^10] 所示，需要密集的监督才能实现对运动的鲁棒几何理解。其次，从PV到BEV的标准变换，通常使用像Lift-Splat-Shoot (LSS) [^11]，[^12] 这样的架构实现，本质上会导致信息丢失。通过将3D信息投影到2D平面上，这些方法会丢弃与非主要自由度（俯仰、横滚和Z轴平移）相关的几何线索。这种丢失会导致测距估计中的歧义；例如，路面不平或车辆动态可能导致俯仰或横滚的变化，这些变化在BEV表示中是不可见的，这会导致网络学习不一致的运动模式，从而降低性能。

为了克服这些挑战，我们提出了一种双策略方法，可以在不引入新类型的外部监督的情况下增强基于BEV的测距。

---

为了解决稀疏监督问题，我们引入了密集的BEV光流监督。一个关键的见解是，由于BEV网格的统一度量尺度，两个帧之间的密集光流可以直接从地面真实3-DoF相对姿态变换构建。这提供了一种密集、像素级的训练信号，用于指导网络学习详细的特征对应关系，仅使用现有的姿态数据。

为了弥补信息损失，我们引入了一种PV-BEV双分支融合策略。我们添加了一个并行分支，该分支在LSS投影发生之前，从PV特征 [^13]，[^14] 计算基于相关性的成本体积。该PV成本体积有效地捕获了特征级别上的丰富6-DoF运动特征。然后，它使用相同的LSS管道投影到BEV空间，并与BEV原生相关性特征融合。这种架构允许我们的模型利用透视视图的几何丰富性，同时保留3-DoF BEV表示的尺度一致性和效率。

基于这些见解，我们提出了BEV-ODOM2，这是一种增强的单目视觉测距框架，它将这种双策略方法集成到一个统一的、端到端的架构中。我们的方法保留了基于BEV测距固有的鲁棒尺度一致性和累积漂移抑制，并通过整合密集监督和保留6-DoF运动信息，实现了更高的精度。重要的是，所有监督信号都是从姿态地面真实数据构建的。该多级监督方案包括用于对应关系学习的密集BEV光流、用于PV分支的5-DoF姿态以及用于最终输出的3-DoF姿态。5-DoF监督包括完整的旋转和一个无尺度方向的平移，这在单目框架中保持几何一致性。

此外，我们引入了 ZJH-VO 数据集，这是一个新的地面机器人里程计数据集，涵盖多个场景和尺度，解决了目前缺乏公开可用且具有多样性的基准测试。 我们使用它来评估 BEV-ODOM2 的泛化能力，并将其发布以支持未来的研究。

我们的贡献可以总结如下：

- 我们提出了 BEV-ODOM2，这是一种新型的 MVO 框架，它使用一种统一的双策略方法来解决现有基于 BEV 的方法的稀疏监督和信息损失的核心限制，在无需辅助监督的情况下，实现了最先进的、与尺度一致的性能。

- 我们引入了两种关键的技术创新：一个密集 BEV 光流监督模块，该模块利用从姿态变换构建的 BEV 的可构建性，以及一种 PV-BEV 双分支融合策略，通过投影特征级别的相关性体积来保留重要的 6 自由度运动信息。

- 我们开发了专门的数据增强技术，这些技术针对地面机器人数据集中常见的各种数据集偏差，包括增强大型旋转的采样以及扩展时间采样，以提高对多样化运动动态的鲁棒性。

• 我们构建了 ZJH-VO 数据集，这是一个用于地面机器人里程计的多场景多尺度基准测试，涵盖室内和室外场景，具有多样化的空间尺度和运动特征，并使用该数据集在四个数据集（KITTI [^15]、Oxford [^16]、NCLT [^17]、ZJH-VO）上验证了 BEV-ODOM2。 在资源受限的嵌入式平台上，在 NVIDIA Jetson AGX Orin 上进行边缘部署进一步证实了其实时可行性。 源代码和 ZJH-VO 数据集可在 <https://github.com/WeiYuFei0217/BEV-ODOM2/> 和 <https://github.com/WeiYuFei0217/ZJH-VO-Dataset/> 上获取。

### II. 相关工作

本节回顾了有关视觉里程计的现有文献，分为传统几何方法、透视视图下的基于学习的方法以及利用 BEV 表示的新兴基于学习的方法。

### A. 传统方法

传统的 MVO 方法基于几何原理，并且具有高度的可解释性。 这些方法通常分为基于特征、直接或半直接方法。 基于特征的方法，例如 ORB-SLAM3 $^{[18]}$，检测和匹配连续帧中的稀疏关键点以估计姿态。 直接方法，例如 DSO $^{[19]}$，最小化一组像素上的光度误差，在纹理环境中提供高精度。 半直接方法，例如 SVO $^{[20]}$，结合直接跟踪的效率和基于特征优化的鲁棒性。 近期的进展通过使用学习的描述符和自适应运动模型来代替手工特征，从而提高了鲁棒性 $^{[21]}$，但它们对初始深度估计的根本依赖性，用于建立尺度，仍然存在。

具体来说，传统的 MVO 系统通过使用前几帧的初始深度估计来建立尺度，并将它们用作全局参考。 然而，由于校准误差、特征失配和运动模糊，在迭代姿态更新过程中会导致误差累积，从而导致严重的尺度漂移，这限制了它们在长距离导航任务中的有效性。

### B. 透视视图下的基于学习的方法

基于学习的视觉里程计方法已经成为一种强大的替代方案，利用深度神经网络来克服传统方法的局限性，尤其是在尺度估计方面。早期的研究，如DeepVO [^22]，展示了使用端到端的循环卷积神经网络直接从图像序列回归姿态的可行性。然而，这些方法通常缺乏几何可解释性，这限制了它们的泛化能力。

后续研究的重点是整合几何约束与深度学习，以改进早期的端到端回归模型。一种显著的方法是采用辅助监督，通过辅助任务来实现。例如，诸如 TartanVO [^23] 和 DF-VO [^24] 的方法，利用深度和光流监督，为网络提供明确的几何线索，以实现尺度锚定和精度提升。该领域的一项进一步发展是将学习到的特征表示与几何优化紧密耦合在单个架构中。诸如 DROID-SLAM [^25] 及其继任者 DPVO [^26] 的系统，通过将密集相关体积与可微分捆绑体相结合来实现这一点。

---

![Image](images/b74a218628f5f6d704e317542b704f3e891813d28f99371fab07ec42ca13f4ea.jpg)

<div style="text-align: center;">Fig. 2: Overview of the BEV-ODOM2 framework. The PV-BEV Encoder shares a ResNet-50+FPN backbone and projects both PV features and PV correlation volumes into BEV space via LSS. The PV Decoder regresses a 5-DoF pose from PV correlations. The BEV Decoder fuses projected PV and BEV-native correlations through a FuseNet to jointly predict dense BEV flow and the final 3-DoF pose.</div>

调整层，可实现位姿和结构的联合优化。

尽管取得了显著进展，这类透视视图方法的一个普遍局限是：它们需要依赖深度、光流或立体数据这类辅助监督来保证尺度一致性，这种依赖提升了数据采集和标注的成本与复杂度。

### C. BEV表示下的基于学习的方法

借助地面机器人通用的地平面假设，BEV表示已成为MVO领域一种极具潜力的范式[^11]。BEV统一度量缩放网格的固有特性可以自然地将位姿估计从6-DoF降维至3-DoF，并通过网格结构一致的空间分辨率建立起隐式尺度锚定机制。

早期基于BEV的里程计方法主要聚焦于运动估计的语义级理解。BEV-SLAM [^3] 通过CNNs构建语义BEV表示，并通过与已有语义地图匹配完成定位。BEV-Locator [^4] 将透视图像转换为BEV编码，并采用跨模态transformer进行语义特征对齐。OCC-VO [^27] 将该范式扩展到体空间，从多视图输入生成三维语义占据表示，用于全局地图配准。

虽然这些方法展示了BEV的潜力，但它们的性能在很大程度上取决于中间地图生成的准确性，这需要昂贵且广泛的标注来进行监督。

认识到这些局限性后，近年来的研究进展探索了在BEV空间中不依赖语义的直接运动估计方法。BEV-ODOM [^7] 证明，基于BEV的框架采用基于相关性的回归，能够在无需任何辅助监督的情况下有效学习自运动估计，且具有出色的尺度一致性。随后，BEV-DWPVO [^6] 通过将回归后端替换为更具可解释性的流程改进了该方法：该流程在BEV空间提取并匹配关键点，再使用可微加权Procrustes求解器计算最终位姿 [^28]。

虽然这些仅使用姿态估计的方法在尺度一致性方面取得了显著进展，但它们直接使用稀疏的姿态监督进行优化，而没有利用 BEV 表示的结构化特性来进行更丰富的指导。此外，标准的透视-到-BEV 变换会丢弃非平面运动信息，这可能会在复杂的驾驶场景中降低精度。这些局限性促使我们提出了 BEV-ODOM2，该方法从姿态地面真实数据构建密集监督，并采用双分支架构，以保留透视视图的运动线索，同时保持 BEV 表示的尺度一致性优势。

### III. 方法

在自主自动化任务中，地面机器人的运动主要受限于平面运动，这使得姿态估计从 6 自由度简化为 3 自由度，同时重点关注用于自运动估计的必要运动组件 $^{[5]}$，$^{[7]}$。在此基础上，我们提出了 BEV-ODOM2，这是一个增强的基于鸟瞰图的单目视觉里程计框架，它解决了现有方法中的两个关键限制：不足的监督信号无法充分指导相关性学习 $^{[2]}$，以及透视到鸟瞰图转换过程中的信息损失。我们的解决方案采用一种双策略方法，结合密集的鸟瞰图光流监督和 PV-BEV 双分支融合，其中所有监督信号都直接从姿态地面真实值构建，无需额外的传感器模态。

### A. 整体框架

图2展示了BEV-ODOM2的整体架构。该系统通过并行处理分支处理连续单目图像 $I_{t}$ 和 $I_{t+1}$，提取互补的运动信息。PV分支在LSS变换前通过相关运算捕捉丰富的6-DoF运动模式 [^11]，而BEV分支则在统一度量尺度特征上执行相关运算，用于最终的3-DoF位姿估计。核心创新在于将

---

PV生成的相关代价体通过LSS流程投影到BEV空间，随后将其与BEV相关代价体拼接，融合两种表示的相对运动特征。

该框架采用三种监督策略，均源自姿态地面真值：(1) 密集俯视图光学流监督，利用俯视图表示的可构建性，实现像素级的运动学习；(2) 5-DoF 姿态监督，用于 PV 分支（排除比例尺，以保持与单目约束的一致性）；(3) 3-DoF 姿态监督，用于最终输出。这种多层次的监督方案，确保了全面的运动信息提取，同时避免了在姿态地面真值之外，需要额外的监督方式。

### B. 特征提取和 PV 分支

双分支架构利用透视视图和俯视图表示的互补优势，以解决传统仅使用俯视图方法固有的信息保留问题。两个分支共享一个通用的特征提取主干网络，以确保一致的特征表示，同时通过不同的几何范式处理运动信息。

共享特征提取：该系统采用集成在 ResNet-50 [^29] 主干网络中的特征金字塔网络 (FPN) [^30]，用于从连续的输入图像 $\mathbf{F}_{\mathrm{IF}} \in \mathbb{R}^{C_{\mathrm{IF}} \times H_{\mathrm{PV}} \times W_{\mathrm{PV}}}$ 和 $I_t$ 中提取多尺度分层特征 $I_{t+1}$。相机内参 $\mathbf{K} \in \mathbb{R}^{3 \times 3}$ 和外参 $\mathbf{E} \in \mathbb{R}^{3 \times 4}$ 通过多层感知器进行编码，并通过逐元素乘法与图像特征融合：

 $$ \mathbf{F}_{\mathrm{P V}}=\mathbf{F}_{\mathrm{I F}}\odot\mathrm{M L P}(\mathbf{K},\mathbf{E}), $$

其中，$\odot$ 表示逐元素乘法，$\mathbf{F}_{\mathrm{PV}} \in \mathbb{R}^{C_{\mathrm{PV}} \times H_{\mathrm{PV}} \times W_{\mathrm{PV}}}$ 表示处理后的透视特征。

透视视图分支处理：PV 分支在 LSS 变换之前提取基于相关性的运动模式，以保留在 BEV 投影期间会被压缩的重要 6-DoF 几何信息。遵循光学流估计中既定的惯例 [^13] 和 [^14]，计算连续透视特征之间的局部相关性，以捕获像素级别的运动模式：

 $$ \mathbf{C}_{\mathrm{P V}}\big[\Delta x,\Delta y,x,y\big]=\sum_{c=1}^{C_{\mathrm{P V}}}\mathbf{F}_{\mathrm{P V}}^{t}\big[c,x,y\big]\cdot\mathbf{F}_{\mathrm{P V}}^{t+1}\big[c,x+\Delta x,y+\Delta y\big], $$

其中，$\Delta x, \Delta y \in [-\Delta_{\mathrm{PV}}, \Delta_{\mathrm{PV}}]$ 定义局部搜索范围，$\Delta_{\mathrm{PV}} = 5$ 产生相关性体积 $\mathbf{C}_{\mathrm{PV}} \in \mathbb{R}^{(2\Delta_{\mathrm{PV}}+1)^2 \times H_{\mathrm{PV}} \times W_{\mathrm{PV}}}$。此相关性体积在特征级别而不是空间级别编码相对运动模式，从而可以在投影到 BEV 空间的同时，保留重要的运动特征。

5-DoF PV 姿态监督：为了全面学习运动，PV 相关性体积通过一系列卷积层，然后通过全连接层进行空间维度降低，以进行姿态回归：

 $$ \mathbf{T}_{5\mathrm{-D o F}}=\mathrm{M L P}_{\mathrm{P V}}(\mathrm{C N N}_{\mathrm{P V}}(\mathbf{C}_{\mathrm{P V}})), $$

其中，$\mathrm{CNN}_{\mathrm{PV}}$ 表示连续的卷积降采样，$\mathrm{MLP}_{\mathrm{PV}}$ 表示用于姿态估计的全连接层。输出 $\mathbf{T}_{5-\mathrm{DoF}} = [\mathbf{R}_{5}, \mathbf{t}_{5}]$ 表示 5-DoF 变换，包括旋转矩阵 $\mathbf{R}_{5} \in \mathbb{R}^{3 \times 3}$ 和平移向量 $\mathbf{t}_{5} \in \mathbb{R}^{3}$，其中比例信息被排除，以保持与单目视觉约束的一致性。

### C. BEV 投影流水线

BEV 投影过程将透视视图特征和相关性体积转换为统一的度量比例表示，同时保留来自不同几何范例的重要运动信息。该过程采用 LSS 架构 [^11]，并使用共享的网络参数，以确保不同输入模态之间的一致几何映射。

透视特征到 BEV 的转换：处理后的透视特征 $\mathbf{F}_{\mathrm{PV}} \in \mathbb{R}^{C_{\mathrm{PV}} \times H_{\mathrm{PV}} \times W_{\mathrm{PV}}}$ 通过双分支细化过程进行深度感知投影，以生成 BEV 表示。两个专门的网络进一步细化透视特征，以预测上下文特征和深度分布，输出 $\mathbf{F}_{\mathrm{PVC}} \in \mathbb{R}^{C_{\mathrm{PV}} \times H_{\mathrm{PV}} \times W_{\mathrm{PV}}}$ 和 $\mathbf{F}_{\mathrm{PVD}} \in \mathbb{R}^{D_{\mathrm{PV}} \times H_{\mathrm{PV}} \times W_{\mathrm{PV}}}$，其中 $D_{\mathrm{PV}}$ 表示离散的深度分辨率。上下文特征和深度特征进行维度扩展，以便在通道和深度维度上进行逐元素乘法：

 $$ \mathbf{F}_{\mathrm{P V m u l t i}}=\mathbf{F}_{\mathrm{P V C}}^{\prime}\odot\mathbf{F}_{\mathrm{P V D}}^{\prime}, $$

其中，$\mathbf{F}_{\mathrm{PVC}}$ 和 $\mathbf{F}_{\mathrm{PVD}}$ 分别扩展为 $C_{\mathrm{PV}} \times 1 \times H_{\mathrm{PV}} \times W_{\mathrm{PV}}$ 和 $1 \times D_{\mathrm{PV}} \times H_{\mathrm{PV}} \times W_{\mathrm{PV}}$，并分别称为 $\mathbf{F}_{\mathrm{PVC}}^{\prime}$ 和 $\mathbf{F}_{\mathrm{PVD}}$，其中 $\odot$ 表示逐元素的乘法。此操作产生 $\mathbf{F}_{\mathrm{PV}_{\mathrm{multi}}} \in \mathbb{R}^{C_{\mathrm{PV}} \times D_{\mathrm{PV}} \times H_{\mathrm{PV}} \times W_{\mathrm{PV}}}$，该操作将各个通道和深度上的上下文特征组合在一起，以供每个像素使用。随后，视锥体投影将不同深度的特征映射到 3D 体素空间，使用相机内参和外参将其转换为车辆坐标系，并将这些特征累积到 2D BEV 平面上。体素池化聚合这些投影特征，形成最终的 BEV 特征表示 $\mathbf{F}_{\mathrm{BEV}} \in \mathbb{R}^{C_{\mathrm{BEV}} \times H_{\mathrm{BEV}} \times W_{\mathrm{BEV}}}$，其中 $C_{\mathrm{BEV}} = C_{\mathrm{PV}}$ 是因为在投影过程中保留了特征通道。

PV 相关体积到 BEV 投影：一个关键创新在于使用相同的 LSS 管道和网络参数，将 PV 相关体积 $\mathbf{C}_{\mathrm{PV}} \in \mathbb{R}^{(2\Delta_{\mathrm{PV}}+1)^2 \times H_{\mathrm{PV}} \times W_{\mathrm{PV}}}$ 投影到 BEV 空间。这种方法在几何上是合理的，因为相关体积编码的是特征级别的相对运动模式，而不是绝对空间坐标。投影过程将每个相关通道视为一个特征通道，利用从参考帧 $\mathbf{F}_{\mathrm{PVD}}^t$ 预测的深度分布 $I_t$，将运动模式映射到统一的 BEV 坐标系。由于相关操作捕获了帧 $t+1$ 相对于参考帧的运动，因此 resulting volume 在帧 t 的像素网格上进行空间锚定，因此使用帧 t 的深度分布进行投影：

 $$ \mathbf{C}_{\mathrm{P V-B E V}}=\mathrm{P r o j e c t}_{\mathrm{L S S}}(\mathbf{C}_{\mathrm{P V}},\mathbf{F}_{\mathrm{P V D}}^{t},\mathbf{K},\mathbf{E}), $$

其中，K 和 E 分别表示相机内参和外参。结果投影的相关

---

体积 $\mathbf{C}_{\mathrm{PV-BEV}} \in \mathbb{R}^{(2\Delta_{\mathrm{PV}}+1)^2 \times H_{\mathrm{BEV}} \times W_{\mathrm{BEV}}}$ 保持 6-DoF 运动特征，同时符合具有比例尺的 BEV 坐标系。这种共享参数投影策略确保了不同输入模态之间的几何解释的一致性，同时通过参数重用实现了计算效率。

### D. 运动信息提取和融合

运动信息提取和融合过程将来自 BEV 和投影 PV 表示的基于相关性的运动模式结合起来，以实现全面的运动理解，同时保持 3-DoF 姿态估计的计算优势。

BEV 相关性计算：在连续的 BEV 特征之间进行局部相关性计算，捕获直接在统一的具有比例尺的坐标系中的平面运动模式：

 $$ \mathbf{C}_{\mathrm{BEV}}[\Delta x,\Delta y,x,y]=\sum_{c=1}^{C_{\mathrm{BEV}}}\mathbf{F}_{\mathrm{BEV}}^{t}[c,x,y]\cdot\mathbf{F}_{\mathrm{BEV}}^{t+1}[c,x+\Delta x,y+\Delta y], $$

其中，$\Delta x, \Delta y \in [-\Delta_{\mathrm{BEV}}, \Delta_{\mathrm{BEV}}]$ 定义局部相关性搜索范围，其中 $\Delta_{\mathrm{BEV}} = 5$ 与 $\Delta_{\mathrm{PV}}$ 相同，产生 $\mathbf{C}_{\mathrm{BEV}} \in \mathbb{R}^{(2\Delta_{\mathrm{BEV}}+1)^2 \times H_{\mathrm{BEV}} \times W_{\mathrm{BEV}}}$。与 PV 分支一样，帧 t 充当参考帧，并且帧 $t+1$ 在相关性过程中发生偏移。此相关体积直接编码了对地面机器人导航至关重要的平面运动分量。

多模态相关性融合：投影的 PV 相关体积 $C_{PV-BEV}$ 和原始的 BEV 相关体积 $C_{BEV}$ 沿着通道维度连接起来，以创建全面的运动表示：

 $$ \mathbf{C}_{\mathrm{c o n c a t}}=\mathrm{C o n c a t}(\mathbf{C}_{\mathrm{B E V}},\mathbf{C}_{\mathrm{P V-B E V}})\in\mathbb{R}^{C_{\mathrm{t o t a l}}\times H_{\mathrm{B E V}}\times W_{\mathrm{B E V}}}, $$

其中，$C_{\text{total}} = (2\Delta_{\text{BEV}} + 1)^2 + (2\Delta_{\text{PV}} + 1)^2$。此连接的表示同时保留了来自 BEV 相关的比例尺一致的平面运动模式以及来自投影 PV 相关的丰富 6-DoF 运动特征。

稠密流预测与3-DoF位姿估计：UNet风格的编解码架构 [^31] 处理拼接后的相关特征，在预测稠密流场和最终位姿估计结果的同时，同步提取并融合多模态运动信息。编码器逐步捕捉来自BEV和投影后PV相关特征的全局运动模式：

 $$ \mathbf{F}_{\mathrm{E n c}}=\mathrm{U}_{\mathrm{E n c}}(\mathbf{C}_{\mathrm{c o n c a t}}). $$

解码器通过跳跃连接重建密集 BEV 光流，以保留细粒度的对应信息：

 $$ \mathbf{F}_{\mathrm{f l o w}}=\mathrm{U}_{\mathrm{D e c}}(\mathbf{F}_{\mathrm{E n c}})\in\mathbb{R}^{2\times H_{\mathrm{B E V}}\times W_{\mathrm{B E V}}}, $$

其中 $F_{flow}$ 表示预测的密集 BEV 光流场。 重要的是，3-DoF 姿态估计分支连接到流解码器的倒数第二层，以利用丰富的运动特征：

 $$ \mathbf{T}_{3\mathrm{-D o F}}=\mathbf{M L P}_{\mathrm{B E V}}(\mathbf{C N N}_{\mathrm{B E V}}(\mathbf{F}_{\mathrm{D e c}}^{L-1}))=[\theta,t_{x},t_{y}], $$

其中，$\mathbf{F}_{\mathrm{Dec}}^{L-1}$ 表示倒数第二个解码器层特征，$\theta$ 表示偏航旋转，$t_{x}, t_{y}$ 表示平面平移。

![Image](images/eccb22b85fe23b43fc5e33e39521102d50c9e17a43fb7f41c55c524799726502.jpg)

<div style="text-align: center;">Fig. 3: Construction of dense BEV optical flow ground truth. A 3-DoF relative pose (yaw and planar translation) defines a rigid transformation on the BEV grid (Eqs. 11–12), yielding a per-pixel displacement field (right) as dense supervision.</div>

这种架构设计确保了密集的光流监督能够最大限度地指导 3-DoF 姿态回归的特征学习过程，因为姿态估计直接利用了已针对光流预测进行优化的像素级运动对应特征。 UNet 中的双分支融合能够全面利用 BEV 的与比例一致的平面运动模式和 PV 的丰富的 6-DoF 运动特征，而密集监督策略增强了网络捕获准确姿态估计所必需的细粒度相对运动模式的能力。

### E. 密集 BEV 光流监督

传统的姿态监督提供稀疏信号，这对于学习鲁棒视觉里程计所必需的细粒度运动模式可能不足 [^2]。 我们引入了密集 BEV 光流监督，该方法利用 BEV 表示的几何一致性和可构建性，以提供全面的像素级运动指导，使网络能够学习详细的帧间对应关系，从而显著增强基于相关性的运动估计。

与需要对不同深度和视角的复杂几何推理的透视视图光流不同，由于 BEV 表示的统一度量比例和平面结构，可以直接从姿态地面真值构建 BEV 光流，如图 3 所示。 这种可构建性源于所有 BEV 特征都以一致的度量比例表示在以车辆为中心的坐标系中，从而可以直接应用 2D 刚体变换。

给定连续帧之间的相对姿态变换 $\mathbf{T}_{\text{rel}} \in \mathbb{R}^{4 \times 4}$，它以齐次坐标表示编码 3-DoF 运动分量（偏转旋转和平面平移），对于每个 BEV 像素在坐标 $(u, v)$ 处，我们首先建立相应的齐次车辆坐标：

 $$ \mathbf{p}_{\mathrm{v e h}}=\begin{bmatrix}\left(o_{y}-v\right)\cdot r\\ \left(u-o_{x}\right)\cdot r\\ 0\\ 1\end{bmatrix}, $$

其中 r 表示 BEV 分辨率（每像素米），

---

$(o_{x}, o_{y})$ 表示车辆坐标系的像素坐标原点。 转换后的坐标通过矩阵乘法获得，并且计算出的光流为：

 $$ \mathbf{F}_{\mathrm{f l o w-g t}}[u,v]=\mathcal{P}(\mathbf{T}_{\mathrm{r e l}}\mathbf{p}_{\mathrm{v e h}})-[u,v], $$

其中 $\mathcal{P}(\cdot)$ 表示投影运算，该运算使用逆映射 (11) 将转换后的齐次车辆坐标转换为像素坐标。

此构建方法确保了精确的像素级对应关系，无需外部光学流传感器、额外的标注或复杂的与深度相关的几何计算。生成的密集光流场 $\mathbf{F}_{\text{flow-gt}} \in \mathbb{R}^{2 \times H_{\text{BEV}} \times W_{\text{BEV}}}$ 提供了全面的监督信号，引导网络学习细粒度的运动模式，直接解决了姿态训练方法固有的稀疏监督限制。由于此光流是在静态场景假设下构建的，因此我们在补充材料中进一步分析了其对动态物体的鲁棒性。

### F. 增强旋转采样策略

为了解决数据集对直线驾驶场景的偏见，并提高在真实世界部署中的鲁棒性，我们实施了一种有针对性的采样策略，以确保线性操作和转弯操作的平衡表示，同时利用驾驶序列中的时间一致性。

旋转感知数据增强：我们通过预处理训练序列来识别具有不同旋转特征的帧，从而构建全面的运动模式数据库。对于训练数据集中的每个帧，我们建立一个时间搜索窗口，该窗口在当前时间戳之前和之后的一分钟内，然后提取此窗口内所有帧对的相对姿态变换。帧对根据两个标准进行分类：（1）$15^{\circ}$ 和 $45^{\circ}$ 之间的相对偏航角差异存储在高级旋转列表中 $\mathcal{L}_{\text{high}}$，而偏角差异低于 $15^{\circ}$ 的对保存在标准旋转列表中 $\mathcal{L}_{\text{standard}}$，（2）空间位移约束，仅保留位移距离不超过 4 米的对，以确保有意义的对应学习。

在训练过程中，当选择一个特定帧时，系统以 70%-30% 的概率从这些预构建的列表中进行采样，其中 70% 的样本来自 $\mathcal{L}_{high}$，30% 来自 $\mathcal{L}_{standard}$。这种平衡的采样策略通过确保充分暴露于具有挑战性的旋转运动，同时防止过度表示任何单一运动模式，从而解决了数据集对直线驾驶固有的偏见。由于最佳比例取决于目标数据集的运动分布，因此我们在补充材料中进行设计验证研究，以验证所采用的 70:30 分配是经过充分验证的。

时间一致性优势：一分钟的时间窗口和 4 米的空间约束确保环境条件、照明特性和场景内容保持足够一致，以维持有意义的对应学习，同时足够大，可以捕获真实路线中常见的互惠驾驶模式。对于双向交通或环形路线的路段，这种方法会生成训练对，模拟具有移动物体、环境变化和显着旋转变化的场景，从而有效地增加了数据集的多样性，而无需额外的数据收集工作。

### G. 损失函数设计

训练目标结合了多个监督信号，以确保在几何范例和运动尺度上实现全面的运动学习：

 $$ \mathcal{L}_{\mathrm{t o t a l}}=\mathcal{L}_{\mathrm{3-D o F}}+\lambda_{1}\mathcal{L}_{\mathrm{5-D o F}}+\lambda_{2}\mathcal{L}_{\mathrm{f l o w}}. $$

3-DoF BEV-姿态损失通过 L1 回归强制执行精确的平面运动估计，适用于地面机器人应用：

 $$ \begin{array}{r}{\mathcal{L}_{3\mathrm{-D o F}}=|t_{\mathrm{p r e d},x}-t_{\mathrm{g t},x}|+|t_{\mathrm{p r e d},y}-t_{\mathrm{g t},y}|+\alpha|\theta_{\mathrm{p r e d}}-\theta_{\mathrm{g t}}|,}\end{array} $$

其中 $\alpha = 10$ 平衡了平移和旋转误差的幅度，以解释地面机器人运动中不同的单位和典型的误差尺度。

5-DoF PV-pose-loss 为 PV 分支在 LSS 转换之前提供额外的监督信号，采用与单目约束相同的 L1 公式，并进行缩放归一化。 为了与单目约束保持一致，单目约束中没有绝对缩放信息，我们仅监督平移方向，同时保留完整的旋转信息：

 $$ \begin{array}{r}{\mathcal{L}_{5\mathrm{-D o F}}=\|\widehat{\mathbf{t}}_{\mathrm{p r e d}}-\widehat{\mathbf{t}}_{\mathrm{g t}}\|_{1}+\beta\|\mathbf{R}_{\mathrm{p r e d}}-\mathbf{R}_{\mathrm{g t}}\|_{F},}\end{array} $$

其中 $\hat{\mathbf{t}} = \mathbf{t}/\|\mathbf{t}\|_2$ 表示单位归一化的平移向量，$\|\cdot\|_F$ 表示 Frobenius 范数，$\beta = 10$。 这种归一化策略确保缩放信息仅由深度分布估计和 BEV 投影过程处理，从而使 PV 导出的相关性成本体和 BEV 相关性成本体保持兼容的特征表示，以便进行有效的通道级连接和融合。

密集的光流监督损失通过直接对构造的地面真实光流场进行 L1 回归，实现像素级别的对应学习：

 $$ \mathcal{L}_{\mathrm{f l o w}}=\|\mathbf{F}_{\mathrm{f l o w}}-\mathbf{F}_{\mathrm{f l o w-g t}}\|_{1}, $$

其中 $F_{flow}$ 和 $F_{flow-gt}$ 分别表示预测的和地面真实的光流场。 直接的 L1 损失公式利用了 BEV 表示的度量一致性，从而可以在不使用额外的正则化项的情况下实现精确的像素级监督，这些正则化项可能会干扰对准确的基于相关性的姿态估计所必需的精细运动模式的学习。 我们将损失权重设置为 $\lambda_{1}=0.2$ 和 $\lambda_{2}=0.1$，保持辅助项在主要 3-DoF 目标之下；这些权重的选择在补充材料中进行了验证。

### IV. 实验

为了全面地在具有不同运动模式和跨越不同环境的地面机器人上验证我们的方法，我们选择了三个公共数据集 (KITTI [^15]、Oxford

---

[^16]: 和 NCLT [^17])，这些数据集涵盖了郊区和城市驾驶到校园级导航。 此外，我们收集了 ZJH-VO 数据集，以扩展评估范围，包括没有合适公共基准的室内结构化环境。 这四个数据集涵盖了多样化的室内和室外环境，具有不同的空间尺度和运动特征。

### A. 数据集

## 1 ) 公共数据集

KITTI 数据集：KITTI 测距数据集 [^15] 代表典型的郊区道路驾驶，是视觉测距的标准基准。 遵循既定协议，我们在 00–08 序列上进行训练，并在 09–10 序列上进行测试。 这些测试序列包含显著的 elevation 变化，这会对我们的平面运动假设构成挑战。

Oxford 数据集：Oxford Radar RobotCar 数据集 [^16] 提供了复杂的城市驾驶，具有不同的交通密度和动态参与者。 我们使用三个训练序列和四个测试序列，涵盖了不同的运动尺度（停止、低/高速）和空间尺度（小巷、街道）。 序列 17-12 具有强烈的照明条件，这为我们的方法的一般性测试提供了一个挑战。

NCLT 数据集：NCLT [^17] 数据集代表校园级导航，具有低速运动和显著的环境变化。 它具有车辆抖动、戏剧性的光照变化和季节性变化。 遵循与 Oxford 相同的拆分，我们在三个序列上进行训练，并在四个序列上进行测试。 值得注意的是，序列 08-20 具有明显的季节性条件，包括植被，这测试了我们的方法的一般性。

## 2 ) ZJH-VO 多尺度数据集

基于鸟瞰图 (BEV) 的方法依赖于具有固定分辨率的 BEV 网格，这可能会以不同的方式影响不同空间尺度的场景的准确性。 为了测试这种固定设置在不同尺度下的适用性，我们在一个没有悬架的四轮移动平台上收集了 ZJH-VO 数据集，涵盖四个具有代表性的环境：地下停车场、户外广场、建筑物走廊和密集办公区域。 该数据集包含 12 条轨迹（每个环境 3 条），共 12,666 帧和 3,054 米的运动数据；完整规范见补充材料。

我们使用 8 条轨迹（每个环境两条）进行训练，其余 4 条用于测试。 由于测试轨迹在时间和路径覆盖方面与训练集不同，因此它们能够全面评估同一模型的泛化能力，以及 BEV 驱动的视觉表示在空间尺度变化和运动复杂性下的适应性。

### B. 实验设置

## 1 ) 基准方法

我们将 BEV-ODOM2 与一系列主流的传统和基于学习的 MVO 方法进行比较，包括：

传统方法：ORB-SLAM3 [^18]，一种经典的基于特征的 SLAM 系统。

基于 PV 的学习方法：包括 DeepVO [^22]，它只需要相对姿态监督，以及 TartanVO [^23]、DF-VO [^24]、DROID-SLAM [^25] 和 DPVO [^26]，这些方法需要额外的监督（例如深度或光流）。 这些方法都采用透视视图，代表了学习型 MVO 的最新技术。

基于 BEV 的学习方法：BEV-DWPVO [^6] 和 BEV-ODOM [^7]。 类似于我们的工作，这些方法仅使用姿态监督。 它们结合了特征点提取和匹配，以及可微分的加权泊松求解器，以及基于相关性的信息提取和用于姿态估计的学习型回归后端。

为了进行公平比较，我们禁用了 ORB-SLAM3 中的环路闭合以及 DROID-SLAM 中的全局 bundle adjustment。 对于缺乏在 NCLT 和 Oxford 数据集上预训练模型的 DF-VO，我们使用 ZoeDepth [^32] 和 Unimatch-Flow [^33] 基础模型来提供深度和光流输入。 其他基准的特定应用细节将在每个数据集的结果部分中提供。

## 2 ) 实现细节和评估指标

我们对所有公开数据集都采用一致的超参数，BEV 表示网格大小为 $128 \times 128$，分辨率为 0.8 米，为 BEV 表示中的特征映射提供了足够的空间覆盖范围。 局部相关搜索范围设置为 $\Delta_{\mathrm{PV}} = \Delta_{\mathrm{BEV}} = 5$，在 PV 和 BEV 分支中，产生一个 $11 \times 11$ 像素的相关窗口。 网络使用 PyTorch 框架构建，并使用 Adam 优化器，初始学习率为 $1 \times 10^{-4}$，训练 100 个 epoch，学习率每 epoch 衰减 0.95。

对于数据增强，我们采用了 Section III-F 中描述的增强旋转采样策略，使用 70/30 的采样比例，优先选择高旋转对，以确保充分暴露于转弯动作，同时防止对直线段的过度拟合。

评估指标包括相对平移误差（RTE）、相对旋转误差（RRE）和绝对轨迹误差（ATE）。 遵循标准的里程计协议，RTE和RRE计算为固定长度子轨迹的相对姿态的均方根误差（RMSE），子轨迹长度为$L \in \{100, 200, ..., 800\}$米。 ATE定义为在对整个序列进行单次全局对齐后，估计轨迹和地面真实轨迹之间的均方根误差。 为了评估尺度一致性，我们在评估ATE时同时使用SE(3)和Sim(3)对齐方案，从而了解方法是否能够在不进行非因果尺度校正的情况下保持准确的尺度。 值得注意的是，对于缺乏绝对尺度的MVO方法，我们在进行任何评估之前，使用地面真实轨迹的前10米对其输出进行缩放，这与实际部署场景一致。

### C. 质量分析和案例研究

## 1) 轨迹和流可视化

如图 4 所示，我们可视化了 BEV-ODOM2 中来自四个数据集的典型序列。 预测的轨迹（红色虚线）与真实轨迹（黑色实线）高度吻合，这表明我们的方法具有很高的准确性。 我们进一步从每个数据集的轨迹中选择具有代表性的右转 (R)、直线行驶 (S) 和左转 (L) 轨迹片段。

---

![Image](images/a3c547d6a49809ada23597607632575af2fec6c2aeb1c4ad6caac499276fd7f1.jpg)

![Image](images/f8f8c164fe3bcee72d0a6a85f262e037750d7f2ccf64c2397b58d1c78d703a04.jpg)

![Image](images/09747c0dc9a36eae4fc95f77aa011580918b1463cb9fb213f1a4e4163069f5a5.jpg)

![Image](images/1f4707ae520190d27cc412e3e2a10e801ac8d9c3810daa607ef72b7e521a962d.jpg)

![Image](images/f05cf1853cf00ab56bc5e4af6b622ee85413d5b8620dd8c511f4e1019449cf56.jpg)

![Image](images/f51fe2eb5ca95b516efd008f8c088dcfc5082df8de0924b705e99dbceeca18e3.jpg)

![Image](images/376e2ef1c58a93fb15c6e6468c12f1b8b472fc280afc0e7fe94180c46a098792.jpg)

![Image](images/88c80cc431e38af5ea4dc5394d0cea27ac6f1bf949e47ea924f83e82e6821ce2.jpg)

<div style="text-align: center;">Fig. 4: Case Study of BEV-ODOM2 Performance on Four Datasets. The figure illustrates predicted trajectories for representative straight (S), left-turn (L), and right-turn (R) maneuvers. For each case, we visualize the predicted dense BEV optical flow and its corresponding error map, with most pixel errors below 0.4. Below, violin plots show the distribution of translational and rotational errors for 51-frame sequences centered on these maneuvers.</div>

展示了模型的预测密集 BEV 光流场及其误差图。

BEV 光流场显示，KITTI 具有相对平缓的旋转，牛津具有中等程度的旋转，而来自没有悬架的平台的数据集 NCLT 和 ZJH-VO 具有更剧烈的旋转，这与预期一致。 这些可视化结果清楚地显示了运动模式（例如在转弯过程中出现的弧形光流场），并且像素误差非常低（大多低于 0.4 像素），这验证了仅通过姿态构建密集监督信号的有效性。 此外，低误差水平证实了这种监督能够产生具有判别性的、代表运动的特征，从而支持更精确、更稳定的姿态估计。 下面的小提琴图进一步说明了 51 帧序列中帧间平移和旋转误差，这些序列以这些具有代表性的片段为中心。 凭借增强的旋转采样和密集监督，误差在不同数据集的不同运动模式下始终保持在很小范围内。

## 2) 比例一致性分析

比例一致性对于评估 MVO 系统的长期稳定性至关重要，而比例漂移是单目方法的主要失效模式。 我们使用真实轨迹对所有基于 PV 的方法的比例进行对齐，以进行前 10 米的对齐。 如 Fig. 5 所示，我们绘制了不同方法在具有挑战性的 NCLT 和牛津数据集上的对数比例因子变化曲线，计算方法如下：

 $$ s_{i}=\log_{2}\left(\frac{d_{i}}{d_{i}^{\mathrm{G T}}}\right), $$

![Image](images/5d995d85a03064a562feb6a9203655353c92e733f4dba13e9d4e1eac3e41e0c1.jpg)

<div style="text-align: center;">Fig. 5: Logarithmic scale factor variation on the NCLT (top) and Oxford (bottom) datasets, demonstrating the consistent low-scale-drift performance of BEV-based methods.</div>

其中 $d_i$ 和 $d_i^{GT}$ 分别表示片段 i 的估计和真实位移。 对数空间表示自然地适应了 MVO 系统中比例漂移的乘法特性。 结果曲线说明了比例一致性如何在不同轨迹片段中的演变，从而深入了解每种方法的长期漂移行为。

与大多数方法相比，所有基于 BEV 的方法，包括 BEV-DWPVO、BEV-ODOM 和 BEV-ODOM2，都显示出更接近于零的比例因子曲线，并且具有显着减少的波动。 这种性能验证了通过 BEV 网格表示实现的隐式比例因子锚定策略的有效性，该策略已在我们的系列工作中始终采用。 值得注意的是，这些方法仅使用姿态估计就实现了出色的比例因子一致性。

---

<div style="text-align: center;">TABLE I: PERFORMANCE COMPARISON ON NCLT AND OXFORD DATASETS</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">Methods</td><td rowspan="2">Ex. Supv.</td><td rowspan="2">Seq Metric</td><td colspan="5">NCLT</td><td colspan="5">Oxford</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>02-02</td><td style='text-align: center; word-wrap: break-word;'>02-19</td><td style='text-align: center; word-wrap: break-word;'>03-17</td><td style='text-align: center; word-wrap: break-word;'>08-20</td><td style='text-align: center; word-wrap: break-word;'>Average</td><td style='text-align: center; word-wrap: break-word;'>11-12</td><td style='text-align: center; word-wrap: break-word;'>15-13</td><td style='text-align: center; word-wrap: break-word;'>16-14</td><td style='text-align: center; word-wrap: break-word;'>17-12</td><td style='text-align: center; word-wrap: break-word;'>Average</td></tr><tr><td rowspan="2">ORB-SLAM3 [^18]</td><td rowspan="2">✗</td><td style='text-align: center; word-wrap: break-word;'>RTE $^{{**}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>/</td><td style='text-align: center; word-wrap: break-word;'>/</td><td style='text-align: center; word-wrap: break-word;'>/</td><td style='text-align: center; word-wrap: break-word;'>/</td><td style='text-align: center; word-wrap: break-word;'>/</td><td style='text-align: center; word-wrap: break-word;'>65.22</td><td style='text-align: center; word-wrap: break-word;'>952.41</td><td style='text-align: center; word-wrap: break-word;'>191.75</td><td style='text-align: center; word-wrap: break-word;'>77.44</td><td style='text-align: center; word-wrap: break-word;'>321.70</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RRE $^{{**}}$ (°/100m)</td><td style='text-align: center; word-wrap: break-word;'>/</td><td style='text-align: center; word-wrap: break-word;'>/</td><td style='text-align: center; word-wrap: break-word;'>/</td><td style='text-align: center; word-wrap: break-word;'>/</td><td style='text-align: center; word-wrap: break-word;'>/</td><td style='text-align: center; word-wrap: break-word;'>19.83</td><td style='text-align: center; word-wrap: break-word;'>10.81</td><td style='text-align: center; word-wrap: break-word;'>16.17</td><td style='text-align: center; word-wrap: break-word;'>19.31</td><td style='text-align: center; word-wrap: break-word;'>16.53</td></tr><tr><td rowspan="2">DeepVO [^22]</td><td rowspan="2">✗</td><td style='text-align: center; word-wrap: break-word;'>RTE $^{{*}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>31.67</td><td style='text-align: center; word-wrap: break-word;'>18.55</td><td style='text-align: center; word-wrap: break-word;'>21.23</td><td style='text-align: center; word-wrap: break-word;'>25.07</td><td style='text-align: center; word-wrap: break-word;'>24.13</td><td style='text-align: center; word-wrap: break-word;'>25.14</td><td style='text-align: center; word-wrap: break-word;'>27.45</td><td style='text-align: center; word-wrap: break-word;'>31.75</td><td style='text-align: center; word-wrap: break-word;'>37.76</td><td style='text-align: center; word-wrap: break-word;'>30.52</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RRE $^{{*}}$ (°/100m)</td><td style='text-align: center; word-wrap: break-word;'>14.54</td><td style='text-align: center; word-wrap: break-word;'>8.11</td><td style='text-align: center; word-wrap: break-word;'>9.66</td><td style='text-align: center; word-wrap: break-word;'>13.02</td><td style='text-align: center; word-wrap: break-word;'>11.33</td><td style='text-align: center; word-wrap: break-word;'>7.87</td><td style='text-align: center; word-wrap: break-word;'>8.14</td><td style='text-align: center; word-wrap: break-word;'>11.71</td><td style='text-align: center; word-wrap: break-word;'>12.37</td><td style='text-align: center; word-wrap: break-word;'>10.02</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>TartanVO [^23]</td><td rowspan="2">✓</td><td style='text-align: center; word-wrap: break-word;'>RTE $^{{**}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>47.48</td><td style='text-align: center; word-wrap: break-word;'>50.97</td><td style='text-align: center; word-wrap: break-word;'>48.10</td><td style='text-align: center; word-wrap: break-word;'>52.23</td><td style='text-align: center; word-wrap: break-word;'>49.69</td><td style='text-align: center; word-wrap: break-word;'>74.43</td><td style='text-align: center; word-wrap: break-word;'>83.35</td><td style='text-align: center; word-wrap: break-word;'>75.51</td><td style='text-align: center; word-wrap: break-word;'>72.53</td><td style='text-align: center; word-wrap: break-word;'>76.45</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>(Pretrained Model)</td><td style='text-align: center; word-wrap: break-word;'>RRE $^{{**}}$ (°/100m)</td><td style='text-align: center; word-wrap: break-word;'>39.51</td><td style='text-align: center; word-wrap: break-word;'>38.48</td><td style='text-align: center; word-wrap: break-word;'>39.21</td><td style='text-align: center; word-wrap: break-word;'>37.68</td><td style='text-align: center; word-wrap: break-word;'>38.72</td><td style='text-align: center; word-wrap: break-word;'>32.56</td><td style='text-align: center; word-wrap: break-word;'>25.68</td><td style='text-align: center; word-wrap: break-word;'>31.63</td><td style='text-align: center; word-wrap: break-word;'>33.23</td><td style='text-align: center; word-wrap: break-word;'>30.77</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DF-VO [^24]</td><td rowspan="2">✓</td><td style='text-align: center; word-wrap: break-word;'>RTE $^{{**}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>/</td><td style='text-align: center; word-wrap: break-word;'>/</td><td style='text-align: center; word-wrap: break-word;'>41.03</td><td style='text-align: center; word-wrap: break-word;'>89.44</td><td style='text-align: center; word-wrap: break-word;'>65.23</td><td style='text-align: center; word-wrap: break-word;'>26.24</td><td style='text-align: center; word-wrap: break-word;'>28.26</td><td style='text-align: center; word-wrap: break-word;'>35.87</td><td style='text-align: center; word-wrap: break-word;'>42.48</td><td style='text-align: center; word-wrap: break-word;'>33.21</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>(Pre &amp; F. Model)</td><td style='text-align: center; word-wrap: break-word;'>RRE $^{{**}}$ (°/100m)</td><td style='text-align: center; word-wrap: break-word;'>/</td><td style='text-align: center; word-wrap: break-word;'>/</td><td style='text-align: center; word-wrap: break-word;'>25.52</td><td style='text-align: center; word-wrap: break-word;'>27.81</td><td style='text-align: center; word-wrap: break-word;'>26.66</td><td style='text-align: center; word-wrap: break-word;'>2.03</td><td style='text-align: center; word-wrap: break-word;'>2.34</td><td style='text-align: center; word-wrap: break-word;'>1.85</td><td style='text-align: center; word-wrap: break-word;'>2.81</td><td style='text-align: center; word-wrap: break-word;'>2.25</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DROID-SLAM [^25]</td><td rowspan="2">✓</td><td style='text-align: center; word-wrap: break-word;'>RTE $^{{**}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>34.07</td><td style='text-align: center; word-wrap: break-word;'>110.18</td><td style='text-align: center; word-wrap: break-word;'>44.17</td><td style='text-align: center; word-wrap: break-word;'>41.80</td><td style='text-align: center; word-wrap: break-word;'>57.55</td><td style='text-align: center; word-wrap: break-word;'>35.18</td><td style='text-align: center; word-wrap: break-word;'>136.58</td><td style='text-align: center; word-wrap: break-word;'>133.31</td><td style='text-align: center; word-wrap: break-word;'>25.82</td><td style='text-align: center; word-wrap: break-word;'>82.72</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>(Pretrained Model)</td><td style='text-align: center; word-wrap: break-word;'>RRE $^{{**}}$ (°/100m)</td><td style='text-align: center; word-wrap: break-word;'>14.23</td><td style='text-align: center; word-wrap: break-word;'>10.50</td><td style='text-align: center; word-wrap: break-word;'>10.67</td><td style='text-align: center; word-wrap: break-word;'>12.04</td><td style='text-align: center; word-wrap: break-word;'>11.86</td><td style='text-align: center; word-wrap: break-word;'>1.89</td><td style='text-align: center; word-wrap: break-word;'>1.43</td><td style='text-align: center; word-wrap: break-word;'>1.99</td><td style='text-align: center; word-wrap: break-word;'>3.47</td><td style='text-align: center; word-wrap: break-word;'>2.19</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DPVO [^26]</td><td rowspan="2">✓</td><td style='text-align: center; word-wrap: break-word;'>RTE $^{{**}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>/</td><td style='text-align: center; word-wrap: break-word;'>41.45</td><td style='text-align: center; word-wrap: break-word;'>37.72</td><td style='text-align: center; word-wrap: break-word;'>78.87</td><td style='text-align: center; word-wrap: break-word;'>52.68</td><td style='text-align: center; word-wrap: break-word;'>96.53</td><td style='text-align: center; word-wrap: break-word;'>98.41</td><td style='text-align: center; word-wrap: break-word;'>102.10</td><td style='text-align: center; word-wrap: break-word;'>155.51</td><td style='text-align: center; word-wrap: break-word;'>113.14</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>(Pretrained Model)</td><td style='text-align: center; word-wrap: break-word;'>RRE $^{{**}}$ (°/100m)</td><td style='text-align: center; word-wrap: break-word;'>/</td><td style='text-align: center; word-wrap: break-word;'>9.74</td><td style='text-align: center; word-wrap: break-word;'>14.38</td><td style='text-align: center; word-wrap: break-word;'>16.70</td><td style='text-align: center; word-wrap: break-word;'>13.61</td><td style='text-align: center; word-wrap: break-word;'>29.26</td><td style='text-align: center; word-wrap: break-word;'>28.00</td><td style='text-align: center; word-wrap: break-word;'>28.37</td><td style='text-align: center; word-wrap: break-word;'>29.14</td><td style='text-align: center; word-wrap: break-word;'>28.69</td></tr><tr><td rowspan="2">BEV-DWPVO [^6]</td><td rowspan="2">✗</td><td style='text-align: center; word-wrap: break-word;'>RTE $^{{*}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>8.32</td><td style='text-align: center; word-wrap: break-word;'>7.52</td><td style='text-align: center; word-wrap: break-word;'>8.20</td><td style='text-align: center; word-wrap: break-word;'>10.63</td><td style='text-align: center; word-wrap: break-word;'>8.67</td><td style='text-align: center; word-wrap: break-word;'>4.87</td><td style='text-align: center; word-wrap: break-word;'>5.26</td><td style='text-align: center; word-wrap: break-word;'>7.89</td><td style='text-align: center; word-wrap: break-word;'>9.67</td><td style='text-align: center; word-wrap: break-word;'>6.92</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RRE $^{{*}}$ (°/100m)</td><td style='text-align: center; word-wrap: break-word;'>3.14</td><td style='text-align: center; word-wrap: break-word;'>3.08</td><td style='text-align: center; word-wrap: break-word;'>3.57</td><td style='text-align: center; word-wrap: break-word;'>4.35</td><td style='text-align: center; word-wrap: break-word;'>3.53</td><td style='text-align: center; word-wrap: break-word;'>1.02</td><td style='text-align: center; word-wrap: break-word;'>1.08</td><td style='text-align: center; word-wrap: break-word;'>1.07</td><td style='text-align: center; word-wrap: break-word;'>2.15</td><td style='text-align: center; word-wrap: break-word;'>1.33</td></tr><tr><td rowspan="2">BEV-ODOM [^7]</td><td rowspan="2">✗</td><td style='text-align: center; word-wrap: break-word;'>RTE $^{{*}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>10.89</td><td style='text-align: center; word-wrap: break-word;'>6.27</td><td style='text-align: center; word-wrap: break-word;'>8.77</td><td style='text-align: center; word-wrap: break-word;'>13.89</td><td style='text-align: center; word-wrap: break-word;'>9.95</td><td style='text-align: center; word-wrap: break-word;'>7.21</td><td style='text-align: center; word-wrap: break-word;'>7.90</td><td style='text-align: center; word-wrap: break-word;'>11.55</td><td style='text-align: center; word-wrap: break-word;'>8.02</td><td style='text-align: center; word-wrap: break-word;'>8.67</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RRE $^{{*}}$ (°/100m)</td><td style='text-align: center; word-wrap: break-word;'>4.74</td><td style='text-align: center; word-wrap: break-word;'>2.47</td><td style='text-align: center; word-wrap: break-word;'>3.73</td><td style='text-align: center; word-wrap: break-word;'>6.31</td><td style='text-align: center; word-wrap: break-word;'>4.31</td><td style='text-align: center; word-wrap: break-word;'>1.38</td><td style='text-align: center; word-wrap: break-word;'>1.89</td><td style='text-align: center; word-wrap: break-word;'>1.14</td><td style='text-align: center; word-wrap: break-word;'>2.55</td><td style='text-align: center; word-wrap: break-word;'>1.74</td></tr><tr><td rowspan="2">BEV-ODOM2 (Ours)</td><td rowspan="2">✗</td><td style='text-align: center; word-wrap: break-word;'>RTE $^{{*}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>4.78</td><td style='text-align: center; word-wrap: break-word;'>3.78</td><td style='text-align: center; word-wrap: break-word;'>5.14</td><td style='text-align: center; word-wrap: break-word;'>6.34</td><td style='text-align: center; word-wrap: break-word;'>5.01</td><td style='text-align: center; word-wrap: break-word;'>3.41</td><td style='text-align: center; word-wrap: break-word;'>3.31</td><td style='text-align: center; word-wrap: break-word;'>6.98</td><td style='text-align: center; word-wrap: break-word;'>4.68</td><td style='text-align: center; word-wrap: break-word;'>4.60</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RRE $^{{*}}$ (°/100m)</td><td style='text-align: center; word-wrap: break-word;'>2.19</td><td style='text-align: center; word-wrap: break-word;'>1.50</td><td style='text-align: center; word-wrap: break-word;'>2.20</td><td style='text-align: center; word-wrap: break-word;'>2.68</td><td style='text-align: center; word-wrap: break-word;'>2.14</td><td style='text-align: center; word-wrap: break-word;'>0.91</td><td style='text-align: center; word-wrap: break-word;'>0.88</td><td style='text-align: center; word-wrap: break-word;'>0.91</td><td style='text-align: center; word-wrap: break-word;'>1.39</td><td style='text-align: center; word-wrap: break-word;'>1.02</td></tr></table>

辅助：✓ 表示需要额外辅助（深度、光流、分割）的方法，X 表示仅使用姿态估计的方法。

预训练模型：使用预训练权重的模型；基础模型：用于光流和深度估计的基础模型。 $*$ 使用 S.E/2 对齐。

$^{*}$ 使用 SE(3) 对齐。

** 比例因子由前 10 米的地面实况值确定并使用 SE(3) 对齐。

姿态估计。

尽管采用了更复杂的 PV-BEV 融合架构，但 BEV-ODOM2 成功地保留了这种卓越的比例因子一致性特征。 这种保留归因于两个运动特征提取路径都采用的统一处理流程。 具体来说，通过投影后相关计算得到的 BEV 运动特征，以及通过相关计算后投影得到的 PV 运动特征，都使用相同的深度估计网络和 BEV 表示投影机制。 这种共享的流程确保所有运动特征都锚定在由 BEV 网格结构定义的统一的度量比例因子上，从而在整个框架中保持比例因子一致性。

### D. 数量分析

## 1 ) 在 NCLT 和牛津数据集上的性能

如表 I 所示，BEV-ODOM2 在具有挑战性的 NCLT 和牛津数据集上表现出卓越的性能，RTE 分别为 5.01% 和 4.60%，RRE 分别为 $2.14^{\circ}/100$m 和 $1.02^{\circ}/100$m。

传统的 ORB-SLAM3 方法在 NCLT 上完全失败，因为环境中的抖动过大导致特征跟踪失败，并且在牛津数据集上由于动态对象过多而存在严重的比例因子漂移，这突出了这些数据集固有的挑战。 在需要辅助监督信号的透视视图方法中（TartanVO、DF-VO、DROID-SLAM、DPVO），会增加数据收集和系统部署的复杂性，而像我们的方法一样，仅使用姿态估计的 DeepVO 的性能不如基于 BEV 的方法。

在基于 BEV 的方法中，我们的方法与 BEV-ODOM 相比，提供了更密集的监督，并且与 BEV-DWPVO 相比，提供了更灵活的约束，同时通过基于相关性的融合方式整合了 PV 分支信息。 这导致了在 NCLT 上 RTE 减少 42.21% 和在

<div style="text-align: center;">TABLE II: PERFORMANCE COMPARISON ON KITTI ODOMETRY DATASET</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">Methods</td><td style='text-align: center; word-wrap: break-word;'>Seq</td><td rowspan="2">KITTI-09</td><td rowspan="2">KITTI-10</td><td rowspan="2">Average</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Metric</td></tr><tr><td rowspan="4">ORB-SLAM3 [^18]</td><td style='text-align: center; word-wrap: break-word;'>$RTE^{{**}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>14.89</td><td style='text-align: center; word-wrap: break-word;'>8.47</td><td style='text-align: center; word-wrap: break-word;'>11.68</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$RRE^{{**}}$ (°/100m)</td><td style='text-align: center; word-wrap: break-word;'>1.38</td><td style='text-align: center; word-wrap: break-word;'>0.93</td><td style='text-align: center; word-wrap: break-word;'>1.15</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$ATE^{{**}}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>53.69</td><td style='text-align: center; word-wrap: break-word;'>16.15</td><td style='text-align: center; word-wrap: break-word;'>34.92</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$ATE^{\dagger}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>40.63</td><td style='text-align: center; word-wrap: break-word;'>7.33</td><td style='text-align: center; word-wrap: break-word;'>23.98</td></tr><tr><td rowspan="4">DeepVO [^22]</td><td style='text-align: center; word-wrap: break-word;'>$RTE^{{*}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>33.55</td><td style='text-align: center; word-wrap: break-word;'>30.46</td><td style='text-align: center; word-wrap: break-word;'>32.01</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$RRE^{{*}}$ (°/100m)</td><td style='text-align: center; word-wrap: break-word;'>14.31</td><td style='text-align: center; word-wrap: break-word;'>14.42</td><td style='text-align: center; word-wrap: break-word;'>14.37</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$ATE^{{*}}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>59.38</td><td style='text-align: center; word-wrap: break-word;'>180.10</td><td style='text-align: center; word-wrap: break-word;'>119.74</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$ATE^{\dagger}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>51.58</td><td style='text-align: center; word-wrap: break-word;'>168.44</td><td style='text-align: center; word-wrap: break-word;'>110.01</td></tr><tr><td rowspan="2">TartanVO [^23]</td><td style='text-align: center; word-wrap: break-word;'>$RTE^{{*}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>6.00</td><td style='text-align: center; word-wrap: break-word;'>6.89</td><td style='text-align: center; word-wrap: break-word;'>6.45</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$RRE^{{*}}$ (°/100m)</td><td style='text-align: center; word-wrap: break-word;'>3.11</td><td style='text-align: center; word-wrap: break-word;'>2.73</td><td style='text-align: center; word-wrap: break-word;'>2.92</td></tr><tr><td rowspan="2">(Original Paper)</td><td style='text-align: center; word-wrap: break-word;'>$ATE^{{*}}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>53.84</td><td style='text-align: center; word-wrap: break-word;'>28.50</td><td style='text-align: center; word-wrap: break-word;'>41.17</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$ATE^{\dagger}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>27.52</td><td style='text-align: center; word-wrap: break-word;'>23.65</td><td style='text-align: center; word-wrap: break-word;'>25.59</td></tr><tr><td rowspan="2">DF-VO [^24]</td><td style='text-align: center; word-wrap: break-word;'>$RTE^{{*}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>2.40</td><td style='text-align: center; word-wrap: break-word;'>1.82</td><td style='text-align: center; word-wrap: break-word;'>2.11</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$RRE^{{*}}$ (°/100m)</td><td style='text-align: center; word-wrap: break-word;'>0.24</td><td style='text-align: center; word-wrap: break-word;'>0.38</td><td style='text-align: center; word-wrap: break-word;'>0.31</td></tr><tr><td rowspan="2">(Original Paper)</td><td style='text-align: center; word-wrap: break-word;'>$ATE^{{*}}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>7.73</td><td style='text-align: center; word-wrap: break-word;'>3.00</td><td style='text-align: center; word-wrap: break-word;'>5.37</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$ATE^{\dagger}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>7.65</td><td style='text-align: center; word-wrap: break-word;'>2.73</td><td style='text-align: center; word-wrap: break-word;'>5.19</td></tr><tr><td rowspan="2">DROID-SLAM [^25]</td><td style='text-align: center; word-wrap: break-word;'>$RTE^{{**}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>21.01</td><td style='text-align: center; word-wrap: break-word;'>18.73</td><td style='text-align: center; word-wrap: break-word;'>19.87</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$RRE^{{**}}$ (°/100m)</td><td style='text-align: center; word-wrap: break-word;'>0.33</td><td style='text-align: center; word-wrap: break-word;'>0.23</td><td style='text-align: center; word-wrap: break-word;'>0.28</td></tr><tr><td rowspan="2">(Pretrained Model)</td><td style='text-align: center; word-wrap: break-word;'>$ATE^{{**}}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>73.71</td><td style='text-align: center; word-wrap: break-word;'>45.52</td><td style='text-align: center; word-wrap: break-word;'>59.61</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$ATE^{\dagger}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>74.31</td><td style='text-align: center; word-wrap: break-word;'>17.27</td><td style='text-align: center; word-wrap: break-word;'>45.79</td></tr><tr><td rowspan="2">DPVO [^26]</td><td style='text-align: center; word-wrap: break-word;'>$RTE^{{**}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>17.70</td><td style='text-align: center; word-wrap: break-word;'>4.47</td><td style='text-align: center; word-wrap: break-word;'>11.09</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$RRE^{{**}}$ (°/100m)</td><td style='text-align: center; word-wrap: break-word;'>0.24</td><td style='text-align: center; word-wrap: break-word;'>0.23</td><td style='text-align: center; word-wrap: break-word;'>0.23</td></tr><tr><td rowspan="2">(Pretrained Model)</td><td style='text-align: center; word-wrap: break-word;'>$ATE^{{**}}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>64.80</td><td style='text-align: center; word-wrap: break-word;'>10.98</td><td style='text-align: center; word-wrap: break-word;'>37.89</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$ATE^{\dagger}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>64.77</td><td style='text-align: center; word-wrap: break-word;'>10.99</td><td style='text-align: center; word-wrap: break-word;'>37.88</td></tr><tr><td rowspan="4">BEV-DWPVO [^6]</td><td style='text-align: center; word-wrap: break-word;'>$RTE^{{*}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>2.13</td><td style='text-align: center; word-wrap: break-word;'>3.24</td><td style='text-align: center; word-wrap: break-word;'>2.69</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$RRE^{{*}}$ (°/100m)</td><td style='text-align: center; word-wrap: break-word;'>0.65</td><td style='text-align: center; word-wrap: break-word;'>1.15</td><td style='text-align: center; word-wrap: break-word;'>0.90</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$ATE^{{*}}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>8.69</td><td style='text-align: center; word-wrap: break-word;'>9.04</td><td style='text-align: center; word-wrap: break-word;'>8.87</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$ATE^{\dagger}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>8.11</td><td style='text-align: center; word-wrap: break-word;'>7.80</td><td style='text-align: center; word-wrap: break-word;'>7.96</td></tr><tr><td rowspan="4">BEV-ODOM [^7]</td><td style='text-align: center; word-wrap: break-word;'>$RTE^{{*}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>1.72</td><td style='text-align: center; word-wrap: break-word;'>3.61</td><td style='text-align: center; word-wrap: break-word;'>2.67</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$RRE^{{*}}$ (°/100m)</td><td style='text-align: center; word-wrap: break-word;'>0.39</td><td style='text-align: center; word-wrap: break-word;'>0.53</td><td style='text-align: center; word-wrap: break-word;'>0.46</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$ATE^{{*}}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>6.35</td><td style='text-align: center; word-wrap: break-word;'>8.42</td><td style='text-align: center; word-wrap: break-word;'>7.39</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$ATE^{\dagger}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>4.62</td><td style='text-align: center; word-wrap: break-word;'>7.30</td><td style='text-align: center; word-wrap: break-word;'>5.96</td></tr><tr><td rowspan="4">BEV-ODOM2 (Ours)</td><td style='text-align: center; word-wrap: break-word;'>$RTE^{{*}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>1.37</td><td style='text-align: center; word-wrap: break-word;'>3.46</td><td style='text-align: center; word-wrap: break-word;'>2.42</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$RRE^{{*}}$ (°/100m)</td><td style='text-align: center; word-wrap: break-word;'>0.35</td><td style='text-align: center; word-wrap: break-word;'>0.52</td><td style='text-align: center; word-wrap: break-word;'>0.44</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$ATE^{{*}}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>2.89</td><td style='text-align: center; word-wrap: break-word;'>6.08</td><td style='text-align: center; word-wrap: break-word;'>4.49</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$ATE^{\dagger}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>2.72</td><td style='text-align: center; word-wrap: break-word;'>5.97</td><td style='text-align: center; word-wrap: break-word;'>4.35</td></tr></table>

原始论文：结果如原始出版物中所述；预训练模型：使用预训练权重获得的结果。

预训练模型：使用预训练权重获得的结果。

$^{*}$ 使用 SE(3) 对齐。

$^{**}$ 比例因子由前 10 米的地面实况值确定并使用 SE(3) 对齐。 $\dagger$ 使用 Sim(3) 对齐。

---

牛津数据集上，RRE 分别减少 39.38% 和 23.31%。

## 2 ) 在 KITTI 数据集上的性能

如表 II 所示，BEV-ODOM2 在环形序列 09 上实现了最佳的绝对轨迹误差 (RTE) 和平均轨迹误差 (ATE)，并且在 SE(3) 对齐下，平均 ATE 为 4.49m，优于大多数使用 Sim(3) 对齐并进行尺度校正的基线方法。在包含显着高程变化且违反平面运动假设的序列 10 中，我们的 RTE 略高于使用立体深度和光流监督训练的 DF-VO，但整体精度仍然具有竞争力。关于这种高程效应的详细敏感性分析，请参见补充材料。

<div style="text-align: center;">TABLE III: PERFORMANCE COMPARISON ON ZJH-VO MULTI-SCALE ODOMETRY DATASET</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Methods</td><td style='text-align: center; word-wrap: break-word;'>Seq</td><td style='text-align: center; word-wrap: break-word;'>F-09</td><td style='text-align: center; word-wrap: break-word;'>F-04</td><td style='text-align: center; word-wrap: break-word;'>F-01</td><td style='text-align: center; word-wrap: break-word;'>F-00</td><td style='text-align: center; word-wrap: break-word;'>Average</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>Metric</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>ORB-SLAM3 [^18]</td><td style='text-align: center; word-wrap: break-word;'>$RTE^{{**}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>9.63</td><td style='text-align: center; word-wrap: break-word;'>14.76</td><td style='text-align: center; word-wrap: break-word;'>4.57</td><td style='text-align: center; word-wrap: break-word;'>6.77</td><td style='text-align: center; word-wrap: break-word;'>8.94</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>(Partial)</td><td style='text-align: center; word-wrap: break-word;'>$RRE^{{**}}$ (/100m)</td><td style='text-align: center; word-wrap: break-word;'>13.67</td><td style='text-align: center; word-wrap: break-word;'>28.26</td><td style='text-align: center; word-wrap: break-word;'>6.95</td><td style='text-align: center; word-wrap: break-word;'>7.97</td><td style='text-align: center; word-wrap: break-word;'>14.21</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$ATE^{{**}}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>6.34</td><td style='text-align: center; word-wrap: break-word;'>5.73</td><td style='text-align: center; word-wrap: break-word;'>2.03</td><td style='text-align: center; word-wrap: break-word;'>3.00</td><td style='text-align: center; word-wrap: break-word;'>4.28</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$ATE^{\dagger}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>6.12</td><td style='text-align: center; word-wrap: break-word;'>5.54</td><td style='text-align: center; word-wrap: break-word;'>1.91</td><td style='text-align: center; word-wrap: break-word;'>1.66</td><td style='text-align: center; word-wrap: break-word;'>3.81</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DeepVO [^22]</td><td style='text-align: center; word-wrap: break-word;'>$RTE^{{*}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>51.05</td><td style='text-align: center; word-wrap: break-word;'>37.52</td><td style='text-align: center; word-wrap: break-word;'>56.08</td><td style='text-align: center; word-wrap: break-word;'>63.16</td><td style='text-align: center; word-wrap: break-word;'>51.95</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>(Retrained)</td><td style='text-align: center; word-wrap: break-word;'>$RRE^{{*}}$ (/100m)</td><td style='text-align: center; word-wrap: break-word;'>106.52</td><td style='text-align: center; word-wrap: break-word;'>116.07</td><td style='text-align: center; word-wrap: break-word;'>102.27</td><td style='text-align: center; word-wrap: break-word;'>111.58</td><td style='text-align: center; word-wrap: break-word;'>109.11</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$ATE^{{*}}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>25.65</td><td style='text-align: center; word-wrap: break-word;'>18.71</td><td style='text-align: center; word-wrap: break-word;'>14.72</td><td style='text-align: center; word-wrap: break-word;'>21.17</td><td style='text-align: center; word-wrap: break-word;'>20.06</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$ATE^{\dagger}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>10.79</td><td style='text-align: center; word-wrap: break-word;'>10.04</td><td style='text-align: center; word-wrap: break-word;'>14.36</td><td style='text-align: center; word-wrap: break-word;'>15.81</td><td style='text-align: center; word-wrap: break-word;'>12.75</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>TartanVO [^23]</td><td style='text-align: center; word-wrap: break-word;'>$RTE^{{*}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>5.98</td><td style='text-align: center; word-wrap: break-word;'>5.27</td><td style='text-align: center; word-wrap: break-word;'>23.27</td><td style='text-align: center; word-wrap: break-word;'>6.71</td><td style='text-align: center; word-wrap: break-word;'>10.31</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>(Retrained)</td><td style='text-align: center; word-wrap: break-word;'>$RRE^{{*}}$ (/100m)</td><td style='text-align: center; word-wrap: break-word;'>14.76</td><td style='text-align: center; word-wrap: break-word;'>18.46</td><td style='text-align: center; word-wrap: break-word;'>29.79</td><td style='text-align: center; word-wrap: break-word;'>6.58</td><td style='text-align: center; word-wrap: break-word;'>17.40</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$ATE^{{*}}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>3.52</td><td style='text-align: center; word-wrap: break-word;'>3.16</td><td style='text-align: center; word-wrap: break-word;'>14.00</td><td style='text-align: center; word-wrap: break-word;'>2.48</td><td style='text-align: center; word-wrap: break-word;'>5.79</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$ATE^{\dagger}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>3.48</td><td style='text-align: center; word-wrap: break-word;'>3.14</td><td style='text-align: center; word-wrap: break-word;'>11.70</td><td style='text-align: center; word-wrap: break-word;'>2.19</td><td style='text-align: center; word-wrap: break-word;'>5.13</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DF-VO [^24]</td><td style='text-align: center; word-wrap: break-word;'>$RTE^{{**}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>31.31</td><td style='text-align: center; word-wrap: break-word;'>105.42</td><td style='text-align: center; word-wrap: break-word;'>55.16</td><td style='text-align: center; word-wrap: break-word;'>48.11</td><td style='text-align: center; word-wrap: break-word;'>60.00</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>(Pre &amp; F. Model)</td><td style='text-align: center; word-wrap: break-word;'>$RRE^{{**}}$ (/100m)</td><td style='text-align: center; word-wrap: break-word;'>88.26</td><td style='text-align: center; word-wrap: break-word;'>141.32</td><td style='text-align: center; word-wrap: break-word;'>117.93</td><td style='text-align: center; word-wrap: break-word;'>75.13</td><td style='text-align: center; word-wrap: break-word;'>105.66</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$ATE^{{**}}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>116.79</td><td style='text-align: center; word-wrap: break-word;'>64.45</td><td style='text-align: center; word-wrap: break-word;'>45.99</td><td style='text-align: center; word-wrap: break-word;'>19.71</td><td style='text-align: center; word-wrap: break-word;'>36.73</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$ATE^{\dagger}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>10.56</td><td style='text-align: center; word-wrap: break-word;'>11.96</td><td style='text-align: center; word-wrap: break-word;'>24.02</td><td style='text-align: center; word-wrap: break-word;'>18.94</td><td style='text-align: center; word-wrap: break-word;'>16.37</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DROID-SLAM [^25]</td><td style='text-align: center; word-wrap: break-word;'>$RTE^{{**}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>16.85</td><td style='text-align: center; word-wrap: break-word;'>6.98</td><td style='text-align: center; word-wrap: break-word;'>14.15</td><td style='text-align: center; word-wrap: break-word;'>25.00</td><td style='text-align: center; word-wrap: break-word;'>15.75</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>(Pretrained Model)</td><td style='text-align: center; word-wrap: break-word;'>$RRE^{{**}}$ (/100m)</td><td style='text-align: center; word-wrap: break-word;'>25.50</td><td style='text-align: center; word-wrap: break-word;'>26.36</td><td style='text-align: center; word-wrap: break-word;'>6.15</td><td style='text-align: center; word-wrap: break-word;'>30.44</td><td style='text-align: center; word-wrap: break-word;'>22.11</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$ATE^{{**}}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>12.52</td><td style='text-align: center; word-wrap: break-word;'>8.91</td><td style='text-align: center; word-wrap: break-word;'>8.82</td><td style='text-align: center; word-wrap: break-word;'>17.00</td><td style='text-align: center; word-wrap: break-word;'>11.81</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$ATE^{\dagger}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>11.65</td><td style='text-align: center; word-wrap: break-word;'>8.33</td><td style='text-align: center; word-wrap: break-word;'>3.57</td><td style='text-align: center; word-wrap: break-word;'>10.78</td><td style='text-align: center; word-wrap: break-word;'>8.58</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DPVO [^26]</td><td style='text-align: center; word-wrap: break-word;'>$RTE^{{**}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>14.67</td><td style='text-align: center; word-wrap: break-word;'>6.55</td><td style='text-align: center; word-wrap: break-word;'>11.08</td><td style='text-align: center; word-wrap: break-word;'>26.65</td><td style='text-align: center; word-wrap: break-word;'>14.74</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>(Pretrained Model)</td><td style='text-align: center; word-wrap: break-word;'>$RRE^{{**}}$ (/100m)</td><td style='text-align: center; word-wrap: break-word;'>53.48</td><td style='text-align: center; word-wrap: break-word;'>3.33</td><td style='text-align: center; word-wrap: break-word;'>4.37</td><td style='text-align: center; word-wrap: break-word;'>17.42</td><td style='text-align: center; word-wrap: break-word;'>19.65</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$ATE^{{**}}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>11.11</td><td style='text-align: center; word-wrap: break-word;'>7.46</td><td style='text-align: center; word-wrap: break-word;'>6.94</td><td style='text-align: center; word-wrap: break-word;'>18.08</td><td style='text-align: center; word-wrap: break-word;'>10.90</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$ATE^{\dagger}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>11.10</td><td style='text-align: center; word-wrap: break-word;'>6.08</td><td style='text-align: center; word-wrap: break-word;'>3.20</td><td style='text-align: center; word-wrap: break-word;'>12.29</td><td style='text-align: center; word-wrap: break-word;'>8.16</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>BEV-DWPVO [^6]</td><td style='text-align: center; word-wrap: break-word;'>$RTE^{{*}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>2.75</td><td style='text-align: center; word-wrap: break-word;'>3.74</td><td style='text-align: center; word-wrap: break-word;'>16.62</td><td style='text-align: center; word-wrap: break-word;'>5.50</td><td style='text-align: center; word-wrap: break-word;'>7.15</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$RRE^{{*}}$ (/100m)</td><td style='text-align: center; word-wrap: break-word;'>7.18</td><td style='text-align: center; word-wrap: break-word;'>9.28</td><td style='text-align: center; word-wrap: break-word;'>12.72</td><td style='text-align: center; word-wrap: break-word;'>1.98</td><td style='text-align: center; word-wrap: break-word;'>7.79</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$ATE^{{*}}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>2.03</td><td style='text-align: center; word-wrap: break-word;'>2.75</td><td style='text-align: center; word-wrap: break-word;'>11.25</td><td style='text-align: center; word-wrap: break-word;'>3.71</td><td style='text-align: center; word-wrap: break-word;'>4.93</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$ATE^{\dagger}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>1.94</td><td style='text-align: center; word-wrap: break-word;'>2.72</td><td style='text-align: center; word-wrap: break-word;'>7.04</td><td style='text-align: center; word-wrap: break-word;'>2.79</td><td style='text-align: center; word-wrap: break-word;'>3.62</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>BEV-ODOM [^7]</td><td style='text-align: center; word-wrap: break-word;'>$RTE^{{*}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>1.91</td><td style='text-align: center; word-wrap: break-word;'>3.47</td><td style='text-align: center; word-wrap: break-word;'>20.29</td><td style='text-align: center; word-wrap: break-word;'>3.46</td><td style='text-align: center; word-wrap: break-word;'>7.28</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$RRE^{{*}}$ (/100m)</td><td style='text-align: center; word-wrap: break-word;'>6.39</td><td style='text-align: center; word-wrap: break-word;'>7.83</td><td style='text-align: center; word-wrap: break-word;'>13.28</td><td style='text-align: center; word-wrap: break-word;'>4.41</td><td style='text-align: center; word-wrap: break-word;'>7.98</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$ATE^{{*}}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>1.15</td><td style='text-align: center; word-wrap: break-word;'>2.00</td><td style='text-align: center; word-wrap: break-word;'>11.00</td><td style='text-align: center; word-wrap: break-word;'>1.63</td><td style='text-align: center; word-wrap: break-word;'>3.95</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$ATE^{\dagger}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>1.12</td><td style='text-align: center; word-wrap: break-word;'>1.91</td><td style='text-align: center; word-wrap: break-word;'>10.94</td><td style='text-align: center; word-wrap: break-word;'>0.77</td><td style='text-align: center; word-wrap: break-word;'>3.68</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>BEV-ODOM2 (Ours)</td><td style='text-align: center; word-wrap: break-word;'>$RTE^{{*}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>2.07</td><td style='text-align: center; word-wrap: break-word;'>2.73</td><td style='text-align: center; word-wrap: break-word;'>8.23</td><td style='text-align: center; word-wrap: break-word;'>1.24</td><td style='text-align: center; word-wrap: break-word;'>3.57</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$RRE^{{*}}$ (/100m)</td><td style='text-align: center; word-wrap: break-word;'>5.48</td><td style='text-align: center; word-wrap: break-word;'>7.94</td><td style='text-align: center; word-wrap: break-word;'>4.05</td><td style='text-align: center; word-wrap: break-word;'>1.28</td><td style='text-align: center; word-wrap: break-word;'>4.69</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$ATE^{{*}}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>1.35</td><td style='text-align: center; word-wrap: break-word;'>1.55</td><td style='text-align: center; word-wrap: break-word;'>4.89</td><td style='text-align: center; word-wrap: break-word;'>0.67</td><td style='text-align: center; word-wrap: break-word;'>2.11</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>$ATE^{\dagger}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>1.35</td><td style='text-align: center; word-wrap: break-word;'>1.55</td><td style='text-align: center; word-wrap: break-word;'>4.67</td><td style='text-align: center; word-wrap: break-word;'>0.57</td><td style='text-align: center; word-wrap: break-word;'>2.04</td></tr></table>

部分：方法未完成完整序列评估；

重新训练：方法在数据集上重新训练以获得新模型；预训练模型：使用预训练权重的模型；

F. 模型：用于光流和深度估计的基础模型。

 $^{*}$ 使用 SE(3) 对齐。

## 使用前 10 米的地面真实值进行缩放，并使用 SE(3) 对齐。

† 使用 Sim(3) 对齐。

## 3) 在 ZJH-VO 数据集上的性能

为了减少在 ZJH-VO 数据集上进行实验时，由于在新的场景中学习的基于模型的预训练模型带来的泛化影响，我们比较了多个光流基础模型，并选择性能最佳的 Unimatch-Flow 来生成光流地面真实值。我们在其预训练模型的基础上微调 TartanVO，取得了比仅使用姿态监督的深度 VO 显著的改进，但与我们提出的方法相比，仍然存在差距。ORB-SLAM3 在所有场景中都会出现特征跟踪丢失，因此

<div style="text-align: center;">TABLE IV: COMPUTATIONAL COST COMPARISON UNDER TWO INPUT RESOLUTIONS</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Method</td><td style='text-align: center; word-wrap: break-word;'>Resolution</td><td style='text-align: center; word-wrap: break-word;'>FPS</td><td style='text-align: center; word-wrap: break-word;'>GPU Mem (GB)</td><td style='text-align: center; word-wrap: break-word;'>GPU Util (%)</td></tr><tr><td rowspan="2">ORB-SLAM3 [^18]</td><td style='text-align: center; word-wrap: break-word;'>224 $\times$384</td><td style='text-align: center; word-wrap: break-word;'>63.11</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>320 $\times$640</td><td style='text-align: center; word-wrap: break-word;'>59.68</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td rowspan="2">DeepVO [^22]</td><td style='text-align: center; word-wrap: break-word;'>224 $\times$384</td><td style='text-align: center; word-wrap: break-word;'>416.70</td><td style='text-align: center; word-wrap: break-word;'>3.176</td><td style='text-align: center; word-wrap: break-word;'>41.3</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>320 $\times$640</td><td style='text-align: center; word-wrap: break-word;'>348.24</td><td style='text-align: center; word-wrap: break-word;'>4.366</td><td style='text-align: center; word-wrap: break-word;'>38.5</td></tr><tr><td rowspan="2">TartanVO [^23]</td><td style='text-align: center; word-wrap: break-word;'>224 $\times$384</td><td style='text-align: center; word-wrap: break-word;'>63.45</td><td style='text-align: center; word-wrap: break-word;'>2.026</td><td style='text-align: center; word-wrap: break-word;'>56.0</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>320 $\times$640</td><td style='text-align: center; word-wrap: break-word;'>59.27</td><td style='text-align: center; word-wrap: break-word;'>2.155</td><td style='text-align: center; word-wrap: break-word;'>60.9</td></tr><tr><td rowspan="2">DF-VO [^24]</td><td style='text-align: center; word-wrap: break-word;'>224 $\times$384</td><td style='text-align: center; word-wrap: break-word;'>9.37</td><td style='text-align: center; word-wrap: break-word;'>3.037</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>320 $\times$640</td><td style='text-align: center; word-wrap: break-word;'>6.26</td><td style='text-align: center; word-wrap: break-word;'>3.291</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td rowspan="2">DROID-SLAM [^25]</td><td style='text-align: center; word-wrap: break-word;'>224 $\times$384</td><td style='text-align: center; word-wrap: break-word;'>10.58</td><td style='text-align: center; word-wrap: break-word;'>21.138</td><td style='text-align: center; word-wrap: break-word;'>54.7</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>320 $\times$640</td><td style='text-align: center; word-wrap: break-word;'>7.30</td><td style='text-align: center; word-wrap: break-word;'>21.231</td><td style='text-align: center; word-wrap: break-word;'>54.0</td></tr><tr><td rowspan="2">DPVO [^26]</td><td style='text-align: center; word-wrap: break-word;'>224 $\times$384</td><td style='text-align: center; word-wrap: break-word;'>18.88</td><td style='text-align: center; word-wrap: break-word;'>4.226</td><td style='text-align: center; word-wrap: break-word;'>65.9</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>320 $\times$640</td><td style='text-align: center; word-wrap: break-word;'>18.03</td><td style='text-align: center; word-wrap: break-word;'>4.251</td><td style='text-align: center; word-wrap: break-word;'>68.7</td></tr><tr><td rowspan="2">BEV-DWPVO [^6]</td><td style='text-align: center; word-wrap: break-word;'>224 $\times$384</td><td style='text-align: center; word-wrap: break-word;'>21.61</td><td style='text-align: center; word-wrap: break-word;'>2.566</td><td style='text-align: center; word-wrap: break-word;'>40.0</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>320 $\times$640</td><td style='text-align: center; word-wrap: break-word;'>18.21</td><td style='text-align: center; word-wrap: break-word;'>3.138</td><td style='text-align: center; word-wrap: break-word;'>49.2</td></tr><tr><td rowspan="2">BEV-ODOM [^7]</td><td style='text-align: center; word-wrap: break-word;'>224 $\times$384</td><td style='text-align: center; word-wrap: break-word;'>92.84</td><td style='text-align: center; word-wrap: break-word;'>2.289</td><td style='text-align: center; word-wrap: break-word;'>59.7</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>320 $\times$640</td><td style='text-align: center; word-wrap: break-word;'>72.64</td><td style='text-align: center; word-wrap: break-word;'>2.503</td><td style='text-align: center; word-wrap: break-word;'>68.7</td></tr><tr><td rowspan="2">BEV-ODOM2 (Ours)</td><td style='text-align: center; word-wrap: break-word;'>224 $\times$384</td><td style='text-align: center; word-wrap: break-word;'>69.52</td><td style='text-align: center; word-wrap: break-word;'>2.304</td><td style='text-align: center; word-wrap: break-word;'>54.4</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>320 $\times$640</td><td style='text-align: center; word-wrap: break-word;'>56.62</td><td style='text-align: center; word-wrap: break-word;'>2.525</td><td style='text-align: center; word-wrap: break-word;'>64.3</td></tr><tr><td colspan="5">Edge Deployment on NVIDIA Jetson AGX Orin</td></tr><tr><td rowspan="2">BEV-ODOM2 (FP32)</td><td style='text-align: center; word-wrap: break-word;'>224 $\times$384</td><td style='text-align: center; word-wrap: break-word;'>16.91</td><td style='text-align: center; word-wrap: break-word;'>1.625</td><td style='text-align: center; word-wrap: break-word;'>63.7</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>320 $\times$640</td><td style='text-align: center; word-wrap: break-word;'>14.14</td><td style='text-align: center; word-wrap: break-word;'>1.650</td><td style='text-align: center; word-wrap: break-word;'>76.7</td></tr><tr><td rowspan="2">BEV-ODOM2 (TRT Backbone)</td><td style='text-align: center; word-wrap: break-word;'>224 $\times$384</td><td style='text-align: center; word-wrap: break-word;'>21.84</td><td style='text-align: center; word-wrap: break-word;'>1.576</td><td style='text-align: center; word-wrap: break-word;'>66.2</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>320 $\times$640</td><td style='text-align: center; word-wrap: break-word;'>16.73</td><td style='text-align: center; word-wrap: break-word;'>1.600</td><td style='text-align: center; word-wrap: break-word;'>78.0</td></tr></table>

所有深度学习方法都在 RTX 4090 上使用批次大小为 1 进行评估；ORB-SLAM3 运行在 CPU (Intel Core i7-12700KF) 上。边缘部署行的测量是在 NVIDIA Jetson AGX Orin 上进行的，其中 TRT Backbone 将 ResNet-50 转换为 TensorRT FP16。

我们仅显示在裁剪和对齐后成功部分测量的指标。

如表 III 所示，BEV-ODOM2 在 ZJH-VO 多尺度数据集上获得了进一步的验证，该数据集涵盖室内和室外环境，具有多种空间尺度。它在平均指标上实现了最佳性能，这些指标代表了在多个场景中的泛化能力。与仅使用稀疏姿态监督的 BEV-ODOM 相比，密集 BEV 光流监督提供了更丰富的监督信号，使网络能够在训练过程中学习清晰地映射不同距离的物体，从而在 BEV 表示中进行学习。这种增强的特征表示不仅提高了姿态估计精度，还保持了卓越的尺度一致性。尽管在具有挑战性的多尺度环境中测试 BEV 网格表示的限制，BEV-ODOM2 在 SE(3) 对齐下实现了优于大多数使用地面真实尺度校正的方法的 ATE，这证实了我们在各种运行条件下的方法的鲁棒性。

### 4) 计算成本分析

表 IV 报告了所有方法在两种输入分辨率（对应于 NCLT (224×384) 和 Oxford (320×640)）下的推理速度、GPU 内存消耗和 GPU 利用率。

BEV-ODOM2 在两种分辨率下分别实现了 69.52 FPS 和 56.62 FPS，均远高于 30 FPS 的实时阈值。与 BEV-ODOM 相比，添加 PV 分支仅导致 FPS 略有下降，GPU 内存消耗几乎相同，这是一个通过增加分支而带来的权衡。

---

<div style="text-align: center;">TABLE V: ABLATION STUDY ON THREE DATASETS</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">Enhanced Rotation Sampling</td><td rowspan="2">Dense Flow Supervision</td><td rowspan="2">PV-BEV Fusion</td><td colspan="3">NCLT</td><td colspan="3">Oxford</td><td colspan="3">ZJH-VO</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$RTE^{{*}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>$RRE^{{*}}$ (°/100m)</td><td style='text-align: center; word-wrap: break-word;'>$ATE^{{T}}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>$RTE^{{*}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>$RRE^{{*}}$ (°/100m)</td><td style='text-align: center; word-wrap: break-word;'>$ATE^{{T}}$ (m)</td><td style='text-align: center; word-wrap: break-word;'>$RTE^{{*}}$ (%)</td><td style='text-align: center; word-wrap: break-word;'>$RRE^{{*}}$ (°/100m)</td><td style='text-align: center; word-wrap: break-word;'>$ATE^{{T}}$ (m)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>9.95</td><td style='text-align: center; word-wrap: break-word;'>4.31</td><td style='text-align: center; word-wrap: break-word;'>126.63</td><td style='text-align: center; word-wrap: break-word;'>8.67</td><td style='text-align: center; word-wrap: break-word;'>1.74</td><td style='text-align: center; word-wrap: break-word;'>108.35</td><td style='text-align: center; word-wrap: break-word;'>7.28</td><td style='text-align: center; word-wrap: break-word;'>7.98</td><td style='text-align: center; word-wrap: break-word;'>3.68</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>6.68</td><td style='text-align: center; word-wrap: break-word;'>3.08</td><td style='text-align: center; word-wrap: break-word;'>105.00</td><td style='text-align: center; word-wrap: break-word;'>6.51</td><td style='text-align: center; word-wrap: break-word;'>1.17</td><td style='text-align: center; word-wrap: break-word;'>101.80</td><td style='text-align: center; word-wrap: break-word;'>5.85</td><td style='text-align: center; word-wrap: break-word;'>6.29</td><td style='text-align: center; word-wrap: break-word;'>2.86</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>5.09</td><td style='text-align: center; word-wrap: break-word;'>2.17</td><td style='text-align: center; word-wrap: break-word;'>72.95</td><td style='text-align: center; word-wrap: break-word;'>5.08</td><td style='text-align: center; word-wrap: break-word;'>1.09</td><td style='text-align: center; word-wrap: break-word;'>86.51</td><td style='text-align: center; word-wrap: break-word;'>4.13</td><td style='text-align: center; word-wrap: break-word;'>5.19</td><td style='text-align: center; word-wrap: break-word;'>2.29</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>✓</td><td style='text-align: center; word-wrap: break-word;'>5.01</td><td style='text-align: center; word-wrap: break-word;'>2.14</td><td style='text-align: center; word-wrap: break-word;'>63.95</td><td style='text-align: center; word-wrap: break-word;'>4.60</td><td style='text-align: center; word-wrap: break-word;'>1.02</td><td style='text-align: center; word-wrap: break-word;'>70.57</td><td style='text-align: center; word-wrap: break-word;'>3.57</td><td style='text-align: center; word-wrap: break-word;'>4.69</td><td style='text-align: center; word-wrap: break-word;'>2.04</td></tr></table>

增强旋转采样：一种面向旋转的采样策略，用于平衡多样化的运动模式，并解决数据集偏差问题。

密集光流监督：通过姿态地面真实值构建的像素级BEV光流监督，用于密集对应学习。

PV-BEV融合：一种双分支融合方法，在保留6-DoF运动信息的同时，保持BEV表示的优势。

$^{*}$ 使用SE(3)对齐；${}^{\dagger}$ 使用Sim(3)对齐。

通过表 I 中获得的显著精度提升，BEV-ODOM2 实现了计算效率和估计精度之间的良好平衡，其低内存占用使其非常适合资源受限的嵌入式平台。 我们进一步通过在 NVIDIA Jetson AGX Orin 上部署 BEV-ODOM2 来验证这一点，其中 FP32 模型以 16.91/14.14 FPS 的速度运行。 这些速率超过了所有评估数据集的传感器频率（Oxford 16Hz，NCLT 5Hz），并超过了地面机器人的反应时间/停止距离分析得出的 10FPS 最小实时约束 [^34]。 仅将 ResNet-50 主干网络转换为 TensorRT FP16 即可将吞吐量提高到 21.84/16.73 FPS（速度提升 29%/18%），同时减少了内存，这表明通过完全模型加速还有很大的优化空间。

### E. 消融研究

为了验证BEV-ODOM2中每个核心组件的有效性，我们在公开数据集NCLT、Oxford和我们收集的ZJH-VO数据集上进行了消融实验，结果如表V所示。 基线模型（第一行）是未包含任何新功能的实现。

增强旋转采样效果：引入增强旋转采样策略（第二行）可以提高所有数据集上的RTE、RRE和ATE指标。 这证实，平衡训练数据中的运动模式可以有效缓解数据集偏差，并增强模型估计不常见但关键动作（如转弯）的能力。

密集光流监督效果：添加密集BEV光流监督（第三行）可以使所有数据集上的RTE提高超过20%，在多尺度ZJH-VO数据集上甚至接近30%。 与仅约束单个帧的单个运动向量的稀疏姿态监督不同，密集光流对每个BEV单元施加学习目标，从而在训练过程中提供更丰富的梯度信号。 可构建的密集信号提供了像素级的对应关系，从而加强网络学习细粒度的运动模式的能力，尤其是在跨越广泛物体距离的场景中。 所有四个轨迹数据集上一致的ATE增益进一步表明，预测的轨迹更接近于地面真实值，从而证实了更稳定的姿态估计。

PV-BEV融合效果：最后，融合PV分支（第四行，完整的BEV-ODOM2）可以达到最佳性能。 通过在投影前提取相关性，PV分支可以补偿在非主要自由度（如俯仰和横滚）中丢失的信息，从而使模型对运动具有更完整的视图，以便进行准确的3-DoF估计。 尽管其增益不如采样和监督策略那么大，但所有指标的一致改进证实了保留在LSS投影过程中丢失的运动线索的价值。

## V. 结论与未来工作

本文介绍了BEV-ODOM2，这是一个单目视觉里程计框架，通过两种关键创新，在现有基于鸟瞰图的方法上取得了显著改进：直接从姿态地面真实数据构建的密集鸟瞰图光流监督，用于像素级别的指导；以及一种PV-BEV融合策略，该策略保留了6自由度（DoF）的运动线索，以减少在鸟瞰图投影过程中信息丢失。一种增强的旋转采样策略进一步确保在各种运动模式下具有鲁棒的性能。

我们在四个数据集上评估了BEV-ODOM2，这些数据集涵盖了各种户外和室内环境，具有不同的空间尺度。KITTI和Oxford涵盖郊区和城市道路驾驶，NCLT代表校园级导航，而我们新收集的ZJH-VO数据集将评估范围扩展到室内结构化环境，包括地下停车场、走廊和办公室内部。在这些环境中，BEV-ODOM2在相对平移误差方面比先前的鸟瞰图方法提高了40%，同时保持了鸟瞰图表示固有的鲁棒尺度一致性。补充材料中的定位分析进一步证实，在定位中断长达10秒的情况下，BEV-ODOM2将横向误差控制在路径级别的容差范围内，这表明它适用于在这些时间间隔内用作定位桥梁。

为了促进未来的研究，我们开源了BEV-ODOM2的代码和ZJH-VO数据集，以及来自具有代表性的MVO方法的校准数据和性能基准。

未来的工作将重点放在通过集成多摄像头系统来实现360度感知，从而提高长期鲁棒性；结合重定位和环路闭合功能，以校正累积漂移；以及开发自适应时间模型，以提高在不利条件下的稳定性。此外，虽然BEV-ODOM2已经在Jetson AGX Orin上以高于20 FPS的帧率运行，并且具有部分TensorRT加速，但我们将探索完整的模型量化和网络剪枝，以进一步降低延迟，从而实现资源受限的嵌入式平台的实时操作。这些方向旨在将BEV-ODOM2从研究原型转变为生产就绪的

---

导航模块，用于在各种环境中运行的自主地面机器人。

## 参考文献

[^1]: D. Scaramuzza and F. Fraundorfer, “Visual odometry [tutorial],” IEEE robotics & automation magazine, vol. 18, no. 4, pp. 80–92, 2011.

[^2]: C. Chen, B. Wang, C. X. Lu, N. Trigoni, and A. Markham, “A survey on deep learning for localization and mapping: Towards the age of spatial machine intelligence,” arXiv preprint arXiv:2006.12567, 2020.

[^3]: J. Ross, O. Mendez, A. Saha, M. Johnson, and R. Bowden, “Bevslam: Building a globally-consistent world map using monocular vision,” in 2022 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). IEEE, 2022, pp. 3830–3836.

[^4]: Z. Zhang, M. Xu, W. Zhou, T. Peng, L. Li, and S. Poslad, “Bev-locator: An end-to-end visual semantic localization network using multi-view images,” Science China Information Sciences, vol. 68, no. 2, p. 122106, 2025.

[^5]: D. Unger, N. Gosala, V. R. Kumar, S. Borse, A. Valada, and S. Yogamani, “Multi-camera bird’s eye view perception for autonomous driving,” Computer Vision: Challenges, Trends, and Opportunities, p. 279, 2024.

[^6]: Y. Wei, S. Lu, W. Lu, R. Xiong, and Y. Wang, "Bev-dwpvo: Bev-based differentiable weighted procrustes for low scale-drift monocular visual odometry on ground," IEEE Robotics and Automation Letters, 2025.

[^7]: Y. Wei, S. Lu, F. Han, R. Xiong, and Y. Wang, “Bev-odom: Reducing scale drift in monocular visual odometry with bev representation,” in 2024 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). IEEE, 2024, pp. 349–356.

[^8]: K. Tateno, F. Tombari, I. Laina, and N. Navab, “Cnn-slam: Real-time dense monocular slam with learned depth prediction,” in Proceedings of the IEEE conference on computer vision and pattern recognition, 2017, pp. 6243–6252.

[^9]: B. Bescos, J. M. Fácil, J. Civera, and J. Neira, “Dynaslam: Tracking, mapping, and inpainting in dynamic scenes,” IEEE Robotics and Automation Letters, vol. 3, no. 4, pp. 4076–4083, 2018.

[^10]: S. Wang, V. Leroy, Y. Cabon, B. Chidlovskii, and J. Revaud, "Dust3r: Geometric 3d vision made easy," in Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2024, pp. 20697–20709.

[^11]: J. Philion and S. Fidler, “Lift, splat, shoot: Encoding images from arbitrary camera rigs by implicitly unprojecting to 3d,” in Computer Vision–ECCV 2020: 16th European Conference, Glasgow, UK, August 23–28, 2020, Proceedings, Part XIV 16. Springer, 2020, pp. 194–210.

[^12]: Y. Li, Z. Ge, G. Yu, J. Yang, Z. Wang, Y. Shi, J. Sun, and Z. Li, "Bevdepth: Acquisition of reliable depth for multi-view 3d object detection," in Proceedings of the AAAI Conference on Artificial Intelligence, vol. 37, no. 2, 2023, pp. 1477–1485.

[^13]: D. Sun, X. Yang, M.-Y. Liu, and J. Kautz, "Pwc-net: Cnns for optical flow using pyramid, warping, and cost volume," in Proceedings of the IEEE conference on computer vision and pattern recognition, 2018, pp. 8934–8943.

[^14]: Z. Teed and J. Deng, “Raft: Recurrent all-pairs field transforms for optical flow,” in European conference on computer vision. Springer, 2020, pp. 402–419.

[^15]: A. Geiger, P. Lenz, C. Stiller, and R. Urtasun, “Vision meets robotics: The kitti dataset,” The International Journal of Robotics Research, vol. 32, no. 11, pp. 1231–1237, 2013.

[^16]: D. Barnes, M. Gadd, P. Murcutt, P. Newman, and I. Posner, “The oxford radar robotcar dataset: A radar extension to the oxford robotcar dataset,” in 2020 IEEE international conference on robotics and automation (ICRA). IEEE, 2020, pp. 6433–6438.

[^17]: N. Carlevaris-Bianco, A. K. Ushani, and R. M. Eustice, “University of Michigan north campus long-term vision and lidar dataset,” The International Journal of Robotics Research, vol. 35, no. 9, pp. 1023–1035, 2016.

[^18]: C. Campos, R. Elvira, J. J. G. Rodríguez, J. M. Montiel, and J. D. Tardós, “Orb-slam3: An accurate open-source library for visual, visual-inertial, and multimap slam,” IEEE Transactions on Robotics, vol. 37, no. 6, pp. 1874–1890, 2021.

[^19]: J. Engel, V. Koltun, and D. Cremers, “Direct sparse odometry,” IEEE transactions on pattern analysis and machine intelligence, vol. 40, no. 3, pp. 611–625, 2017.

[^20]: C. Forster, M. Pizzoli, and D. Scaramuzza, “Svo: Fast semi-direct monocular visual odometry,” in 2014 IEEE international conference on robotics and automation (ICRA). IEEE, 2014, pp. 15–22.

[^21]: J. Han, R. Dong, and J. Kan, “Basl-ad slam: A robust deep-learning feature-based visual slam system with adaptive motion model,” IEEE Transactions on Intelligent Transportation Systems, vol. 25, no. 9, pp. 11794–11804, 2024.

[^22]: S. Wang, R. Clark, H. Wen, and N. Trigoni, “Deepvo: Towards end-to-end visual odometry with deep recurrent convolutional neural networks,” in 2017 IEEE international conference on robotics and automation (ICRA). IEEE, 2017, pp. 2043–2050.

[^23]: W. Wang, Y. Hu, and S. Scherer, “Tartanvo: A generalizable learning-based vo,” in Conference on Robot Learning. PMLR, 2021, pp. 1761–1772.

[^24]: H. Zhan, C. S. Weerasekera, J.-W. Bian, R. Garg, and I. Reid, "Df-vo: What should be learnt for visual odometry?" arXiv preprint arXiv:2103.00933, 2021.

[^25]: Z. Teed and J. Deng, “Droid-slam: Deep visual slam for monocular, stereo, and rgb-d cameras,” Advances in neural information processing systems, vol. 34, pp. 16558–16569, 2021.

[^26]: Z. Teed, L. Lipson, and J. Deng, “Deep patch visual odometry,” Advances in Neural Information Processing Systems, vol. 36, 2024.

[^27]: H. Li, Y. Duan, X. Zhang, H. Liu, J. Ji, and Y. Zhang, “Occ-vo: Dense mapping via 3d occupancy-based visual odometry for autonomous driving,” arXiv preprint arXiv:2309.11011, 2023.

[^28]: J. C. Gower, “Generalized procrustes analysis,” Psychometrika, vol. 40, pp. 33–51, 1975.

[^29]: K. He, X. Zhang, S. Ren, and J. Sun, “Deep residual learning for image recognition,” in Proceedings of the IEEE conference on computer vision and pattern recognition, 2016, pp. 770–778.

[^30]: T.-Y. Lin, P. Dollár, R. Girshick, K. He, B. Hariharan, and S. Belongie, "Feature pyramid networks for object detection," in Proceedings of the IEEE conference on computer vision and pattern recognition, 2017, pp. 2117–2125.

[^31]: O. Ronneberger, P. Fischer, and T. Brox, "U-net: Convolutional networks for biomedical image segmentation," in Medical image computing and computer-assisted intervention–MICCAI 2015: 18th international conference, Munich, Germany, October 5-9, 2015, proceedings, part III 18. Springer, 2015, pp. 234–241.

[^32]: S. F. Bhat, R. Birkl, D. Wofk, P. Wonka, and M. Müller, “Zoedepth: Zero-shot transfer by combining relative and metric depth,” arXiv preprint arXiv:2302.12288, 2023.

[^33]: H. Xu, J. Zhang, J. Cai, H. Rezatofighi, F. Yu, D. Tao, and A. Geiger, "Unifying flow, stereo and depth estimation," IEEE Transactions on Pattern Analysis and Machine Intelligence, 2023.

[^34]: S.-C. Lin, Y. Zhang, C.-H. Hsu, M. Skach, M. E. Haque, L. Tang, and J. Mars, “The architectural implications of autonomous driving: Constraints and acceleration,” in Proceedings of the twenty-third international conference on architectural support for programming languages and operating systems, 2018, pp. 751–766.

[^35]: T. Li, H. Zhang, X. Niu, and Z. Gao, "Tightly-coupled integration of multi-gnss single-frequency rtk and mems-imu for enhanced positioning performance," Sensors, vol. 17, no. 11, p. 2462, 2017.

[^36]: T. G. Reid, S. E. Houts, R. Cammarata, G. Mills, S. Agarwal, A. Vora, and G. Pandey, “Localization requirements for autonomous vehicles,” SAE International Journal of Connected and Automated Vehicles, vol. 2, no. 12-02-03-0012, pp. 173–190, 2019.

[^37]: K. Rehrl and S. Gröchenig, “Evaluating localization accuracy of automated driving systems,” Sensors, vol. 21, no. 17, p. 5855, 2021.

[^38]: ISO, “Intelligent transport systems – low-speed automated driving (LSAD) systems for predefined routes – performance requirements, system requirements and performance test procedures,” International Organization for Standardization, Geneva, Switzerland, International Standard ISO 22737:2021, 2021.

[^39]: ISO, “Intelligent transport systems – automated valet parking systems (AVPS) – part 1: System framework, requirements for automated driving and for communications interface,” International Organization for Standardization, Geneva, Switzerland, International Standard ISO 23374-1:2023, 2023.

## [^40]: P. Wenzel, N. Yang, R. Wang, N. Zeller, and D. Cremers, “4seasons: Benchmarking visual slam and long-term localization for autonomous driving in challenging conditions,” International Journal of Computer Vision, vol. 133, no. 4, pp. 1564–1586, 2025

---

![Image](images/1ad1d64f91e8e08e5fa93c7ea1a66f33e663e2472c1888b6b51dd7da5e5d923e.jpg)

<div style="text-align: center;">Fig. 6: ZJH-VO Multi-Scale Dataset Overview. Left: Data collection platform and camera coordinate system setup with PVBEV transformation. Center: Representative trajectory paths across four floors (Floor 9, 4, 1, and 0). Right: Sample image pairs from each environment showing diverse scene characteristics.</div>

<div style="text-align: center;">TABLE VI: ZJH-VO DATASET ENVIRONMENT CHARACTERISTICS</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Environment</td><td style='text-align: center; word-wrap: break-word;'>Object Distance</td><td style='text-align: center; word-wrap: break-word;'>Complexity</td><td style='text-align: center; word-wrap: break-word;'>BEV Challenge</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Underground Garage</td><td style='text-align: center; word-wrap: break-word;'>Medium range</td><td style='text-align: center; word-wrap: break-word;'>Simple</td><td style='text-align: center; word-wrap: break-word;'>Dynamic vehicles, dim lighting</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Outdoor Open-Space</td><td style='text-align: center; word-wrap: break-word;'>Long range</td><td style='text-align: center; word-wrap: break-word;'>Medium</td><td style='text-align: center; word-wrap: break-word;'>Sparse features, ground-dominant</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Conference Corridor</td><td style='text-align: center; word-wrap: break-word;'>Short-Medium range</td><td style='text-align: center; word-wrap: break-word;'>Medium</td><td style='text-align: center; word-wrap: break-word;'>Variable lighting, narrow passages</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Dense Office</td><td style='text-align: center; word-wrap: break-word;'>Short range</td><td style='text-align: center; word-wrap: break-word;'>Complex</td><td style='text-align: center; word-wrap: break-word;'>Large rotations, texture-less walls</td></tr></table>

## 附录A ZJH-VO数据集详情

本附录提供了ZJH-VO数据集的详细描述，包括数据收集平台、环境特征和运动统计。正文（第IV-B节）总结了数据集设计原理和训练/测试拆分；本附录补充了完整规范，以实现可重复性。

该数据集是在办公室综合楼的多个楼层使用无悬架的四轮移动平台记录的，这会放大平台抖动，并增加视觉里程计的难度。该平台携带一个硬件同步的四摄像头系统和一个2D LiDAR，用于生成地面真实数据。摄像头系统由一个前置立体相机对以及两个额外的左前部和右前部摄像头组成，它们的视野重叠约30度。在我们的实验中，我们只使用前置立体相机的左摄像头。地面真实姿态是通过预构建的2D LiDAR地图和定位系统获得的。

该数据集涵盖了四个具有不同空间约束的代表性环境：地下停车场、室外开放式广场、会议走廊和密集办公区域。每个环境包含 3 条轨迹，具有独特的覆盖区域，总共 12 条轨迹，包含 12,666 帧和 3,054 米的运动数据，以每 8 帧的间隔进行采样。图 6 演示了数据采集平台、不同楼层的轨迹示例以及示例帧。

表 VI 呈现了 ZJH-VO 数据集的环境特征。地下车库环境存在动态车辆交互和昏暗的照明，对 BEV 特征的一致性提出了挑战。室外开放空间场景测试长距离特征检测，具有稀疏的远距离地标（$\geq10$米）和以地面为主的视觉线索。会议走

![Image](images/ff4d88ea73c30686dc976ee46891010539e218b403cd8b4ca48dcc032549a799.jpg)

![Image](images/8c5553e1402b4d5d15a06aade8faa61dca795ea774bcafa21acf79c60b676f7c.jpg)

<div style="text-align: center;">Fig. 7: ZJH-VO Multi-Scale dataset motion statistics across four environments. Left: Inter-frame motion distance and rotation angle distributions with statistical measures. Right: Mean motion velocity and total trajectory distance for each environment sequence.</div>

dOR 环境具有可变的光照条件，以及具有从地板到天花板的玻璃窗的狭窄通道。 密集办公场景具有家具密集的布局（0.5m-3m），并且经常出现大范围的就地旋转和无纹理的墙壁。 单个模型必须泛化到所有四个环境，这些环境涵盖了广泛的空间尺度和运动模式，这促使 ZJH-VO 采用了多场景设计。

图 7 通过双轴可视化展示了四个环境中的运动特征。 左侧面板显示了帧间运动距离（条形图）和旋转角度分布（小提琴图），而右侧面板显示了运动速度（条形图）和总轨迹距离（线图），包括帧间距离范围从 0.00 到 0.31m，帧间旋转角度从 $0.00^{\circ}$ 到 $17.70^{\circ}$，运动速度范围从 0.00 到 0.59m/s。

---

![Image](images/f8cb2b40b9c991de7afdfbc350500ec07bf1145dc673416e45d2d3113f010385.jpg)

![Image](images/4f28fc24dec297ba102ebfc11b89d22a53f80e63ad45c45a7e8a170950af75ca.jpg)

<div style="text-align: center;">Fig. 8: Impact of dynamic objects on estimation accuracy. Each panel shows the median BEV flow end-point error (solid) and median relative translation error (dashed) versus the per-frame dynamic object pixel ratio, with interquartile ranges shaded and sample counts shown as histograms.</div>

<div style="text-align: center;">TABLE VII: HYPERPARAMETER DESIGN VALIDATION ON OXFORD DATASET</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'></td><td colspan="3">(a) Loss Weight</td><td colspan="3">(b) Sampling Ratio</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>$\lambda_{{1}}$(PV)</td><td style='text-align: center; word-wrap: break-word;'>$\lambda_{{2}}$(Flow)</td><td style='text-align: center; word-wrap: break-word;'>RTE $^{{*}}$(%)</td><td style='text-align: center; word-wrap: break-word;'>RRE $^{{*}}$(%/100m)</td><td style='text-align: center; word-wrap: break-word;'>High:Std Ratio</td><td style='text-align: center; word-wrap: break-word;'>RTE $^{{*}}$(%)</td><td style='text-align: center; word-wrap: break-word;'>RRE $^{{*}}$(%/100m)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>1.0</td><td style='text-align: center; word-wrap: break-word;'>0.1</td><td style='text-align: center; word-wrap: break-word;'>5.18</td><td style='text-align: center; word-wrap: break-word;'>1.26</td><td style='text-align: center; word-wrap: break-word;'>50:50</td><td style='text-align: center; word-wrap: break-word;'>5.28</td><td style='text-align: center; word-wrap: break-word;'>1.18</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>0.2</td><td style='text-align: center; word-wrap: break-word;'>0.5</td><td style='text-align: center; word-wrap: break-word;'>5.34</td><td style='text-align: center; word-wrap: break-word;'>1.10</td><td style='text-align: center; word-wrap: break-word;'>70:30</td><td style='text-align: center; word-wrap: break-word;'>4.60</td><td style='text-align: center; word-wrap: break-word;'>1.02</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>0.2</td><td style='text-align: center; word-wrap: break-word;'>0.1</td><td style='text-align: center; word-wrap: break-word;'>4.60</td><td style='text-align: center; word-wrap: break-word;'>1.02</td><td style='text-align: center; word-wrap: break-word;'>90:10</td><td style='text-align: center; word-wrap: break-word;'>5.45</td><td style='text-align: center; word-wrap: break-word;'>1.12</td></tr></table>

<div style="text-align: center;">All variants use the full BEV-ODOM2 architecture. Results are averaged over four Oxford test sequences. Bold denotes the adopted configuration.  $*$ Aligned using SE(3).</div>

## 附录 B

## 动态场景鲁棒性分析

由于密集 BEV 光流是在静态场景假设下构建的（公式 11–12），移动物体会在相应的 BEV 区域引入不正确的监督。为了量化这种影响，我们使用在城市场景数据集上微调的语义分割模型计算每个帧的动态物体像素比，并在 NCLT 和牛津数据集上进行评估。如图 8 所示，无论是在哪个数据集上，随着动态比例的增加，光流 EPE 和 RTE 都没有表现出系统性的下降，即使在动态内容达到 35% 的牛津数据集上也是如此。

虽然动态物体是自监督光流方法的常见挑战 [^13]，[^14]，但 BEV 表示提供了两种结构上的优势，可以减轻其影响。首先，BEV 投影将动态物体的视面积压缩到只有几个网格单元，从而大大限制了错误监督像素的比例。其次，由于密集的光流监督覆盖整个 BEV 网格，而静态单元的数量远远超过动态单元，因此网络被驱动学习 BEV 特征，这些特征编码了空间上占主导地位的自运动模式。

![Image](images/96c696d2204d61afb79416a518d1d294128f6dba5bb9b0b1a6c9b04d0497d067.jpg)

<div style="text-align: center;">Fig. 9: Sensitivity analysis on KITTI Seq10. Top: per-frame RTE and inter-frame elevation change  $|\Delta z|$, with the P75 threshold marking high-elevation-change regions. Bottom: sliding-window Pearson correlation between  $|\Delta z|$ and RTE.</div>

## 附录 C

## 超参数设计验证

损失权重选择：表 VII(a) 考察了 $\lambda_1$ 和 $\lambda_2$ 的设计原理，其中，用于平衡损失的因素 $\alpha=10$ 和 $\beta=10$ 被固定，以补偿旋转（以弧度表示）和翻译（以米为单位）之间的数值大小差异。 这两个辅助损失都旨在提供补充指导，而不是主导训练：增加任何一个权重（$\lambda_1:0.2\to1.0$ 或 $\lambda_2:0.1\to0.5$）会降低性能，因为过强的辅助监督会使共享特征表示偏离主要的三自由度（3-DoF）俯视（BEV）姿态目标。

采样比率选择：表 VII(b) 比较了三种采样分布。 采用等比例采样（50:50）会导致模型对转向动作的适应性不足，而以旋转为主的比例（90:10）会剥夺直线行驶的训练，这会损害泛化能力，因为直线路段在现实世界的驾驶中占主导地位。 采用的 70:30 的比例实现了最佳的平衡。 该实验是在牛津进行的，牛津以其主要由直线路段组成，因此特别适合评估采样比率的影响。

## 附录 D

## KITTI 高度敏感性分析

在KITTI Seq10中，更高的相对平移误差来源于显著的帧间高程变化，这类变化违反了BEV表征所基于的平面运动假设。为量化这一效应，图9绘制了Seq10中基于6自由度真值得到的逐帧RTE以及帧间高程变化 $|\Delta z|$。滑窗皮尔逊相关系数在全局范围为 $r=0.287$，但在高程变化排名前25%的高 $r=0.556$ 帧中，该相关系数上升至 $|\Delta z|$，证实了高程变化是误差的主要来源。尽管如此，在两个KITTI序列中，BEV-ODOM2始终优于BEV-ODOM（表II），这表明PV-BEV融合通过在BEV投影前保留非平面运动线索，部分缓解了这一局限性。

---

<div style="text-align: center;">TABLE VIII: LATERAL (CROSS-TRACK) DEAD-RECKONING ERROR @ 10s (UNIT: m)</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="3">Method</td><td colspan="6">Tier 1: Suburban &amp; Urban Driving</td><td colspan="4">Tier 2: Campus-Level Navigation</td><td colspan="5">Tier 3: Indoor Environments</td></tr><tr><td colspan="3">KITTI</td><td colspan="3">Oxford</td><td colspan="4">NCLT</td><td colspan="5">ZJH-VO</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Seq09</td><td style='text-align: center; word-wrap: break-word;'>Seq10</td><td style='text-align: center; word-wrap: break-word;'>11-12</td><td style='text-align: center; word-wrap: break-word;'>15-13</td><td style='text-align: center; word-wrap: break-word;'>16-14</td><td style='text-align: center; word-wrap: break-word;'>17-12</td><td style='text-align: center; word-wrap: break-word;'>02-02</td><td style='text-align: center; word-wrap: break-word;'>02-19</td><td style='text-align: center; word-wrap: break-word;'>03-17</td><td style='text-align: center; word-wrap: break-word;'>08-20</td><td style='text-align: center; word-wrap: break-word;'>F-09</td><td style='text-align: center; word-wrap: break-word;'>F-04</td><td style='text-align: center; word-wrap: break-word;'>F-01</td><td style='text-align: center; word-wrap: break-word;'>F-00</td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>BEV-DWPVO [^6]</td><td style='text-align: center; word-wrap: break-word;'>2.03</td><td style='text-align: center; word-wrap: break-word;'>1.45</td><td style='text-align: center; word-wrap: break-word;'>0.39</td><td style='text-align: center; word-wrap: break-word;'>0.41</td><td style='text-align: center; word-wrap: break-word;'>0.36</td><td style='text-align: center; word-wrap: break-word;'>0.50</td><td style='text-align: center; word-wrap: break-word;'>0.22</td><td style='text-align: center; word-wrap: break-word;'>0.20</td><td style='text-align: center; word-wrap: break-word;'>0.20</td><td style='text-align: center; word-wrap: break-word;'>0.21</td><td style='text-align: center; word-wrap: break-word;'>0.08</td><td style='text-align: center; word-wrap: break-word;'>0.07</td><td style='text-align: center; word-wrap: break-word;'>0.09</td><td style='text-align: center; word-wrap: break-word;'>0.07</td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>BEV-ODOM [^7]</td><td style='text-align: center; word-wrap: break-word;'>0.83</td><td style='text-align: center; word-wrap: break-word;'>1.04</td><td style='text-align: center; word-wrap: break-word;'>0.58</td><td style='text-align: center; word-wrap: break-word;'>0.46</td><td style='text-align: center; word-wrap: break-word;'>0.61</td><td style='text-align: center; word-wrap: break-word;'>0.53</td><td style='text-align: center; word-wrap: break-word;'>0.20</td><td style='text-align: center; word-wrap: break-word;'>0.16</td><td style='text-align: center; word-wrap: break-word;'>0.17</td><td style='text-align: center; word-wrap: break-word;'>0.21</td><td style='text-align: center; word-wrap: break-word;'>0.05</td><td style='text-align: center; word-wrap: break-word;'>0.04</td><td style='text-align: center; word-wrap: break-word;'>0.04</td><td style='text-align: center; word-wrap: break-word;'>0.06</td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>BEV-ODOM2 (Ours)</td><td style='text-align: center; word-wrap: break-word;'>1.01</td><td style='text-align: center; word-wrap: break-word;'>0.89</td><td style='text-align: center; word-wrap: break-word;'>0.36</td><td style='text-align: center; word-wrap: break-word;'>0.33</td><td style='text-align: center; word-wrap: break-word;'>0.33</td><td style='text-align: center; word-wrap: break-word;'>0.37</td><td style='text-align: center; word-wrap: break-word;'>0.17</td><td style='text-align: center; word-wrap: break-word;'>0.13</td><td style='text-align: center; word-wrap: break-word;'>0.14</td><td style='text-align: center; word-wrap: break-word;'>0.16</td><td style='text-align: center; word-wrap: break-word;'>0.04</td><td style='text-align: center; word-wrap: break-word;'>0.04</td><td style='text-align: center; word-wrap: break-word;'>0.03</td><td style='text-align: center; word-wrap: break-word;'>0.05</td><td style='text-align: center; word-wrap: break-word;'></td></tr></table>

10 秒的死角导航的中间横向误差。 10 秒的窗口代表在隧道、停车结构和建筑物内部遇到的短暂 GNSS 丢失持续时间 [^35]。

<div style="text-align: center;">TABLE IX: LATERAL LOCALIZATION AVAILABILITY @ 10s (%)</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="3">Method</td><td colspan="6">Tier 1: Suburban &amp; Urban Driving</td><td colspan="4">Tier 2: Campus-Level Navigation</td><td colspan="4">Tier 3: Indoor Environments</td></tr><tr><td colspan="2">KITTI (&lt;3.66m)</td><td colspan="4">Oxford (&lt;1.83m)</td><td colspan="4">NCLT (&lt;0.50m)</td><td colspan="4">ZJH-VO (&lt;0.25m)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Seq09</td><td style='text-align: center; word-wrap: break-word;'>Seq10</td><td style='text-align: center; word-wrap: break-word;'>11-12</td><td style='text-align: center; word-wrap: break-word;'>15-13</td><td style='text-align: center; word-wrap: break-word;'>16-14</td><td style='text-align: center; word-wrap: break-word;'>17-12</td><td style='text-align: center; word-wrap: break-word;'>02-02</td><td style='text-align: center; word-wrap: break-word;'>02-19</td><td style='text-align: center; word-wrap: break-word;'>03-17</td><td style='text-align: center; word-wrap: break-word;'>08-20</td><td style='text-align: center; word-wrap: break-word;'>F-09</td><td style='text-align: center; word-wrap: break-word;'>F-04</td><td style='text-align: center; word-wrap: break-word;'>F-01</td><td style='text-align: center; word-wrap: break-word;'>F-00</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>BEV-DWPVO [^6]</td><td style='text-align: center; word-wrap: break-word;'>83.4</td><td style='text-align: center; word-wrap: break-word;'>95.9</td><td style='text-align: center; word-wrap: break-word;'>95.4</td><td style='text-align: center; word-wrap: break-word;'>96.8</td><td style='text-align: center; word-wrap: break-word;'>97.7</td><td style='text-align: center; word-wrap: break-word;'>90.4</td><td style='text-align: center; word-wrap: break-word;'>80.4</td><td style='text-align: center; word-wrap: break-word;'>83.1</td><td style='text-align: center; word-wrap: break-word;'>82.2</td><td style='text-align: center; word-wrap: break-word;'>81.5</td><td style='text-align: center; word-wrap: break-word;'>80.7</td><td style='text-align: center; word-wrap: break-word;'>85.1</td><td style='text-align: center; word-wrap: break-word;'>75.7</td><td style='text-align: center; word-wrap: break-word;'>88.2</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>BEV-ODOM [^7]</td><td style='text-align: center; word-wrap: break-word;'>98.8</td><td style='text-align: center; word-wrap: break-word;'>92.7</td><td style='text-align: center; word-wrap: break-word;'>88.0</td><td style='text-align: center; word-wrap: break-word;'>92.1</td><td style='text-align: center; word-wrap: break-word;'>87.6</td><td style='text-align: center; word-wrap: break-word;'>90.0</td><td style='text-align: center; word-wrap: break-word;'>85.9</td><td style='text-align: center; word-wrap: break-word;'>87.3</td><td style='text-align: center; word-wrap: break-word;'>86.4</td><td style='text-align: center; word-wrap: break-word;'>84.5</td><td style='text-align: center; word-wrap: break-word;'>92.8</td><td style='text-align: center; word-wrap: break-word;'>91.7</td><td style='text-align: center; word-wrap: break-word;'>98.2</td><td style='text-align: center; word-wrap: break-word;'>92.1</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>BEV-ODOM2 (Ours)</td><td style='text-align: center; word-wrap: break-word;'>100.0</td><td style='text-align: center; word-wrap: break-word;'>97.0</td><td style='text-align: center; word-wrap: break-word;'>95.9</td><td style='text-align: center; word-wrap: break-word;'>98.0</td><td style='text-align: center; word-wrap: break-word;'>97.3</td><td style='text-align: center; word-wrap: break-word;'>94.8</td><td style='text-align: center; word-wrap: break-word;'>90.4</td><td style='text-align: center; word-wrap: break-word;'>94.2</td><td style='text-align: center; word-wrap: break-word;'>92.9</td><td style='text-align: center; word-wrap: break-word;'>94.2</td><td style='text-align: center; word-wrap: break-word;'>96.3</td><td style='text-align: center; word-wrap: break-word;'>94.3</td><td style='text-align: center; word-wrap: break-word;'>98.7</td><td style='text-align: center; word-wrap: break-word;'>97.7</td></tr></table>

10 秒的 DR 子轨迹中横向误差低于特定层级的阈值的比例。 阈值：3.66 米 = 普通道路的标准车道宽度 [^36]； 1.83 米 = 城市道路的一半车道宽度； 0.50 米 = 校园小路的半宽度 [^37]，[^38]； 0.25 米 = 值守停车的横向容差 [^39]，[^40]。

## 附录 E

## 死角导航应用分析

在隧道、停车结构、建筑物内部和城市峡谷等区域，GNSS 信号经常不可用。 在这种情况下，导航系统必须切换到死角导航（DR）以维持定位 [^36]。 因此，一个更好的视觉里程计模块的价值体现在它在这些 GNSS 信号缺失的间隔内，能够准确地维持平台的估计位置。 在标准轨迹级别 ATE/RTE 测量方法（如第 IV-B 节所述）的基础上，我们引入了两个互补的、专门针对死角导航的指标，以直接表征这种能力。

横向死角定位误差。我们将固定时间窗口内累积的位置误差分解为相对于地面真实heading的横向（跨航向）和纵向（沿航向）分量。横向分量确定平台是否偏离其可行驶路径，这是定位中断期间的主要安全问题[^36]。我们采用10秒的评估窗口，代表由过境、短隧道和室内过渡引起的短暂中断[^35]。对于每个序列，我们采样最多500个起始点，并报告所有子轨迹的中间横向误差。

定位可用性。我们定义定位可用性为横向DR子轨迹的比例，其横向位置误差保持在特定场景的上限以下。该指标改编自Reid等人[^36]的完整性框架以及Rehrl和Gröchenig[^37]的基于可用性的评估，它提供了一个百分比，总结了DR桥在多大程度上将平台保持在可行驶路径内。我们根据每个场景的物理约束设置特定等级的横向上限：对于1级，我们使用KITTI上的3.66米（郊区道路上的标准车道宽度[^36]）和Oxford上的1.83米（城市道路上半车道宽度，间隙较小）；对于2级校园级导航，使用0.50米（符合低速自动驾驶系统的横向边界约束的典型路径宽度[^37]，[^38]）；以及对于3级室内环境，使用0.25米，包括地下停车场、走廊和办公室区域。该上限与自动泊车中常用的0.20-0.30米的横向公差一致[^39]，并符合4Seasons基准中的中等精度等级[^40]。

表VIII和IX报告了基于BEV的三个方法在四个数据集上10秒时的横向DR误差以及相应的定位可用性。我们从最宽到最严格的横向上限，对每个等级进行分析。

1级：郊区和城市驾驶（KITTI，Oxford）。在KITTI上，BEV-ODOM2在Seq09和Seq10上的中间横向误差分别为1.01米和0.89米，均远低于3.66米的满车道上限。在Oxford上，所有四个序列的中间横向误差均在0.33-0.37米之间，低于1.83米的一半车道上限。相应的可用性在KITTI上达到97.0-100.0%，在Oxford上达到94.8-98.0%；在所有六个1级序列中，可用性超过94%，比BEV-ODOM高出5.6个百分点，比BEV-DWPVO高出3.9个百分点。这些结果证实，BEV-ODOM2可以在10秒的定位中断期间，将估计的位置保持在其路径内，几乎适用于所有评估的郊区和城市道路路段。

2级：校园级导航（NCLT）。在0.50米的校园路径上限下，BEV-ODOM2在所有四个NCLT序列中的中间横向误差分别为0.13-0.17米，比两个基线方法低15-35%。平均可用性达到92.9%，比BEV-ODOM高出6.9个百分点，比BEV-DWPVO高出11.1个百分点。所有四个序列均低于0.50米的横向上限，符合ISO 22737中低速自动驾驶系统的边界约束[^38]，可用性数据符合Rehrl和Gröchenig[^37]报告的经验定位基准，证实BEV-ODOM2可以在校园环境中可靠地弥补短暂的定位中断。

Tier 3: 室内环境（ZJH-VO）。在最受限制的环境中，BEV-ODOM2 的横向误差为 0.03–0.05 米，远低于 0.25 米的上限，该上限符合自动泊车所需的横向精度要求 [^39]。平均可用性达到 96.8%，比 BEV-

---

![Image](images/aec97a544594133505d15279e65dff67e59d441c7b217a1112bd93cde6cd05fc.jpg)

<div style="text-align: center;">Fig. 10: Lateral localization availability degradation over GNSS outage duration (5–30s) on four datasets. Each panel shows the mean availability (solid line) and sequence-level min–max range (shaded band) for three BEV-based methods. Background bands indicate quality tiers. Excellent ( $\geq$95%), Good (85–95%), Acceptable (70–85%), and Poor (<70%). Lateral ceilings are set per scenario: 3.66 m for KITTI suburban driving, 1.83 m for Oxford urban driving, 0.50 m for NCLT campus-level navigation, and 0.25 m for ZJH-VO indoor environments.</div>

DWPVO 提高了 14.3 个百分点，比 BEV-ODOM 提高了 3.1 个百分点。小于 5 厘米的横向精度将估计位置保持在走廊和通道的物理边界内，从而支持在 GNSS 信号受限的建筑物内部的安全导航。

可用性在长时间中断情况下的下降。上述结果是在固定的 10 秒窗口内进行的评估。图 10 进一步研究了可用性如何随着定位中断时间从 5 秒扩展到 30 秒而下降 [^35]。在所有四个数据集上，BEV-ODOM2 的下降速度比两个基线慢。在 KITTI 数据集上，BEV-ODOM2 在 15 秒时仍处于“良好”状态，而 BEV-DWPVO 已经进入“差”状态。在 Oxford 数据集上，BEV-ODOM2 在 5–30 秒的范围内始终优于两个基线。在 Tier 1 数据集上，所有方法在 30 秒时都进入“差”状态，但 BEV-ODOM2 在 KITTI 数据集上仍领先 21–28 个百分点，在 Oxford 数据集上领先 4–11 个百分点。在 NCLT 数据集上，BEV-ODOM2 的下降速度比两个基线慢，在 30 秒时仍领先 11–15 个百分点。在 ZJH-VO 数据集上，严格的 0.25 米上限导致所有方法下降速度更快，但 BEV-ODOM2 始终优于两个基线。阴影的最小-最大范围进一步表明，BEV-ODOM2 表现出更窄的序列间变化，表明在不同的路线和条件下具有更一致的性能。

讨论。在三个级别中，BEV-ODOM2 在 14 个序列中实现了最佳横向精度，并且在所有四个数据集上都具有最高的平均可用性。这种优势不仅在 10 秒时存在，而且在长达 30 秒的长时间中断中也存在。这些结果表明，基于 BEV 的里程计可以作为 GNSS 信号受限期间的可行定位桥梁。它不是一个独立的定位解决方案，而是一个模块，可以扩展在需要绝对校正之前的安全运行窗口。BEV 网格的度量比例约束了主视觉误差中的尺度漂移，而密集的光流监督以及 PV-BEV 融合进一步抑制了横向方向漂移，从而产生了 BEV-ODOM2 在 BEV-ODOM 和 BEV-DWPVO 上的持续改进。表 IV 进一步显示，BEV-ODOM2 在配备 TensorRT 后端的 Jetson AGX Orin 上运行速度为 21.84 FPS，满足嵌入式平台的实时要求。总而言之，这些准确性和效率结果表明，BEV-ODOM2 适用于在各种环境中部署，从室外道路到室内结构化空间。
