Task: Low-overlap Surround-view Metric Depth Estimation / Spatially Consistent 3D Reconstruction
Method: SurroundNEXO, Ego-Ray Positional Encoding, Sparse Metric Anchoring, Progressive Geometry Transformer
Venue: arXiv
Year: 2026
Paper: https://arxiv.org/abs/2606.16960
Code: https://github.com/AutoLab-SAI-SJTU/SurroundNEXO
Project: https://henryyuan429.github.io/papers/SurroundNEXO/
一句话总结
SurroundNEXO 面向自动驾驶低重叠环视相机做 metric depth:它不强行在不同相机之间找密集图像对应,而是用 ego-frame ray、稀疏 LiDAR 尺度锚点和逐步扩展的 Transformer 交互,把每个相机的深度预测拉到统一的自车度量空间里。
研究背景与动机
领域现状:自动驾驶环视感知越来越依赖可度量的三维几何。检测、occupancy、BEV 表示都需要可靠的深度或空间结构作为底层支撑;近两年的 VGGT、DVGT、Depth Anything 3、MapAnything 等 feed-forward geometry 模型也说明,统一前向几何预测正在替代一部分传统 SfM / MVS 式管线。
现有痛点:普通多视角几何默认不同视图之间存在足够的重叠区域,可以通过视觉对应、极线约束或跨视图 attention 找到同一个三维点。但车载 surround-view camera rig 恰好不是这种设置:前、后、左、右相机朝外看,相邻相机的 FoV 重叠通常很窄,nuScenes 和 DDAD 的相邻视角平均重叠只有有限范围。模型如果直接做全局跨相机融合,早期特征很容易把不该对齐的区域混在一起。
核心矛盾:驾驶系统需要跨相机一致的 metric geometry,但环视相机天然缺少密集视觉重叠。也就是说,目标是“全局一致”,输入却是“局部不相交”。如果仍然把问题写成传统多视图 matching,方法就会卡在低重叠场景。
本文要解决什么?
- 每个相机自己的 depth 要准,不能只靠后处理 scale alignment。
- 不同相机预测出的深度在重叠区域和统一 ego 空间里要一致。
- 稀疏 LiDAR 或 sparse depth prompt 不能只作为输出端修正,而要真正进入网络内部传播尺度信息。
切入角度:作者把“跨视图关联”从图像平面搬到 ego-centric metric space。与其问“这两个 patch 外观是否相似”,不如先问“这两个 patch 的 viewing ray 在自车坐标系里指向哪里,以及附近有没有可靠的 metric anchor”。
核心 idea 一句话:低重叠环视深度不靠密集视觉对应,而靠 ego-frame ray reference + sparse metric anchors + progressive interaction,把各相机 token 组织到同一个可度量几何空间中。
方法详解
整体框架
SurroundNEXO 的输入包括多相机图像、相机内外参和稀疏 LiDAR / sparse depth observation;输出是每个相机视角下 metric-scale depth,并要求这些 depth 在统一 ego frame 下保持空间一致。
可以把框架拆成三层:
surround-view images + camera rigs + sparse LiDAR |
这个 pipeline 的关键不是“用了多视角 Transformer”,而是交互顺序被重新安排:先让每个 token 有 ego-frame 几何身份,再用稀疏物理观测校准尺度,最后才逐步扩大 attention 范围。这样做是为了避免浅层特征在低重叠视角之间过早全局混合。
关键设计
Ego-Ray Positional Encoding (ERPE):
- 功能:给每个 image patch 分配一个在 ego frame 中可比较的 viewing direction。
- 核心思路:根据 patch 中心、相机内参和 camera-to-ego rotation,把图像平面上的局部坐标转换成自车坐标系下的 ray direction,再用 Fourier features 编码后加到视觉 token 上。
- 设计动机:普通 2D position embedding 只知道 patch 在当前图像里的位置,不知道这个 patch 对应车体周围哪个方向。ERPE 让前视、侧视、后视 token 至少共享同一套方向坐标系。
- 相比已有方法:它不是在图像之间做 dense correspondence,而是先提供一个跨相机通用的几何参照。对于低重叠相机,这比强行早期 matching 更合理。
Sparse Metric Anchoring (SMA):
- 功能:把 sparse LiDAR / sparse depth observation 中的绝对尺度传给 dense RGB tokens。
- 核心思路:将有效稀疏深度点编码成 metric anchors,包含归一化坐标、深度值和该位置采样到的视觉特征;dense image tokens 通过非对称 cross-attention 查询这些 anchors,并加入空间距离衰减偏置,让尺度信息更倾向于在物理相近区域传播。
- 设计动机:ERPE 解决方向一致性,但不能凭空确定米制尺度。SMA 把少量物理深度观测放进 Transformer 内部,使视觉 token 在参与局部、跨视角或全局 attention 之前已经被尺度校准。
- 相比已有方法:论文特别强调,稀疏深度不应该只当作输出端的 DPT head 修正、额外 patch embedding 或全局 scale head。SMA 的优势在于让 sparse metric observation 与 dense visual tokens 在网络内部交互。
Progressive Geometry Transformer (PGT):
- 功能:控制多相机、多帧 token 的交互范围,从稳定局部表征逐步过渡到全局整合。
- 核心思路:浅层先做 intra-view attention,保留单视角深度先验;中间层分解为同一时刻的 cross-view interaction 和同一相机流的 cross-frame interaction;高层再做 global integration。
- 设计动机:低重叠场景下,早期全局 attention 很容易引入噪声对应;完全限制交互又会失去跨视角一致性。PGT 的折中是“先稳住单视角,再扩大几何交互”。
- 相比已有方法:相比 all-global 或 global-first 的交互策略,progressive schedule 在消融中同时改善单视角深度和跨视角一致性。
损失函数 / 训练策略
训练目标同时覆盖 metric depth accuracy、local depth structure、cross-view geometric consistency 和 confidence prediction。公开 HTML 中给出的解释是:dense metric supervision 使用 scale-aware logarithmic depth loss,局部结构使用 multi-scale log-depth gradient loss,跨视角一致性通过相邻标定相机之间的 depth reprojection 来约束,confidence regularization 参考 VGGT。
数据上,训练使用 NuScenes、Waymo、KITTI、DDAD 和 OpenScene 等带标定环视相机的数据集。为了避免模型过度依赖固定密度的稀疏深度输入,SMA 的 sparse input 会随机经历五种状态:保持不变、轻度稀疏化、中度稀疏化、极端稀疏化和完全移除。论文报告的概率分别是 0.50、0.25、0.15、0.05、0.05。
训练还采用 dynamic multi-view sampling:每个 scene 随机选取局部片段中的相机视角和时间帧,尽量让模型见到不同 surround-view layout。最终配置在可行时至少采样 2 个视角和 2 个时间帧,每次迭代最多 16 张图像。
工程代价不低:模型从 DA3-G 初始化,论文报告在 16 张 96GB NVIDIA H20 上训练 30k steps,约 9 天。代码仓库目前已经发布 pretrained checkpoint 和 inference code,但 evaluation code、training/data-processing code 仍未公开。
实验关键数据
主实验
论文实验覆盖单视角 metric depth、跨视角 depth consistency、sparse prompt robustness、3D reconstruction 和 zero-shot generalization。下面只保留最能支撑“低重叠环视几何一致性”的数据。
| 任务 / 数据集 | 指标 | SurroundNEXO | 强对比方法 | 说明 |
|---|---|---|---|---|
| Single-view depth / Waymo | Abs Rel ↓ / δ<1.25 ↑ | 0.048 / 0.975 | DA3-G†: 0.082 / 0.937 | 低错误率且不靠 GT scale post-alignment |
| Single-view depth / NuScenes | Abs Rel ↓ / δ<1.25 ↑ | 0.079 / 0.950 | DA3-G†: 0.112 / 0.911 | 对低重叠环视场景更关键 |
| Single-view depth / DDAD | Abs Rel ↓ / δ<1.25 ↑ | 0.077 / 0.956 | MetricAny.: 0.085 / 0.944 | 相比强 monocular metric baseline 仍有优势 |
| Cross-view consistency / NuScenes | Abs Rel ↓ / RMSE ↓ / δ<1.25 ↑ | 0.139 / 4.527 / 0.850 | DA3-G†: 0.173 / 5.132 / 0.801 | 衡量相邻相机重投影后的深度一致性 |
| Cross-view consistency / DDAD | Abs Rel ↓ / RMSE ↓ / δ<1.25 ↑ | 0.162 / 5.333 / 0.837 | DA3-G†: 0.238 / 5.589 / 0.769 | 在低重叠数据集上改善明显 |
有一个细节值得注意:KITTI 上 Pi3 的单视角 Abs Rel 达到 0.056,优于 SurroundNEXO 的 0.070。论文解释这与 KITTI 左右相机接近 100% FoV overlap 有关,正好适合依赖 dense correspondence 的方法。这个结果反而说明 SurroundNEXO 的目标不是替代所有 stereo / MVS 设置,而是解决 surround-view low-overlap 的驾驶设置。
稀疏 prompt 和 3D 重建结果更能说明 SMA 的价值:
| 任务 / 数据集 | 指标 | SurroundNEXO | 对比方法 | 说明 |
|---|---|---|---|---|
| Prompt depth / Waymo Avg. | Abs Rel ↓ / RMSE ↓ | 0.053 / 1.946 | PriorDA: 0.054 / 2.258 | 不需要 post-alignment 仍保持更低 RMSE |
| Prompt depth / NuScenes Random-0.1% | Abs Rel ↓ / RMSE ↓ | 0.103 / 2.343 | PriorDA: 0.139 / 3.976 | 极稀疏 prompt 下仍稳 |
| 3D reconstruction / Waymo | Acc. ↓ / Comp. ↓ | 0.223 / 0.133 | MapAny.: 0.288 / 0.361 | 点云重建质量明显提升 |
| 3D reconstruction / NuScenes | Acc. ↓ / Comp. ↓ | 0.281 / 0.173 | MapAny.: 0.330 / 0.201 | 相比 feed-forward 3D baseline 更稳 |
| 3D reconstruction / OpenScene | Acc. ↓ / Comp. ↓ | 0.145 / 0.116 | MapAny.: 0.198 / 0.190 | reconstruction completeness 改善明显 |
| Inference time | 单张 96GB H20 设置 | ~25.12s | DVGT: ~19.73s; MapAny.: ~34.49s | 速度不是最快,但质量/速度折中合理 |
Zero-shot Argoverse 也比较有说服力。Argoverse 没参与训练,SurroundNEXO 仍达到 Abs Rel 0.081、δ<1.25 0.954、3D reconstruction Acc. 0.337、Comp. 0.160,优于 VGGT、Pi3、OmniVGGT、DVGT、DA3-G 和 MapAny. 的大多数对应指标。这说明 ego-centric metric bridge 并不只是记住某个固定相机布局。
消融实验
模块消融把模型都初始化自 DA3-L,并在相同设置下训练。表格里 Single-view 与 Cross-view 都报告 Abs Rel 和 δ<1.25。
| 配置 | SMA | ERPE | Stage | Single-view Abs Rel ↓ / δ ↑ | Cross-view Abs Rel ↓ / δ ↑ | 说明 |
|---|---|---|---|---|---|---|
| all-global baseline | 否 | 否 | all global | 0.236 / 0.627 | 0.261 / 0.710 | 早期全局交互噪声大,尺度也不稳 |
| + SMA | 是 | 否 | all global | 0.120 / 0.893 | 0.197 / 0.749 | 稀疏尺度锚点显著降低单视角错误 |
| + global first | 是 | 否 | global first | 0.114 / 0.905 | 0.188 / 0.760 | 改善有限,说明交互顺序仍重要 |
| + progressive | 是 | 否 | progressive | 0.106 / 0.915 | 0.185 / 0.763 | 逐步扩大交互优于过早全局融合 |
| full model | 是 | 是 | progressive | 0.093 / 0.928 | 0.151 / 0.835 | ERPE 对跨视角一致性提升最明显 |
Depth injection 的消融也支持 SMA 的设计选择:
| 注入方式 | Abs Rel ↓ | Sq Rel ↓ | RMSE ↓ | δ<1.25 ↑ | 结论 |
|---|---|---|---|---|---|
| DPT Head | 0.105 | 1.962 | 1.340 | 0.918 | 输出端修正不够 |
| Patch Embed | 0.118 | 2.187 | 1.218 | 0.904 | 直接拼接稀疏深度 token 效果一般 |
| Scale Head | 0.112 | 2.257 | 1.209 | 0.905 | 全局尺度头太粗 |
| SMA / Ours | 0.086 | 1.945 | 0.919 | 0.947 | 稀疏 metric anchors 在网络内部传播更有效 |
关键发现
- SMA 是单视角 metric accuracy 的核心来源:从无 SMA 的 all-global baseline 到加入 SMA,Single-view Abs Rel 从 0.236 降到 0.120。
- PGT 解决的是交互时机:progressive 比 all-global / global-first 更稳,说明低重叠相机不能一开始就全局混合。
- ERPE 对 cross-view consistency 尤其关键:在 SMA + progressive 基础上加入 ERPE,Cross-view Abs Rel 从 0.185 降到 0.151,δ 从 0.763 升到 0.835。
- KITTI 不是它的最佳舞台。高重叠 stereo 更适合 dense correspondence 方法,SurroundNEXO 的优势主要在 surround-view low-overlap driving scenes。
亮点与洞察
- 把低重叠问题重新定义为 ego-frame organization:论文没有继续追求更强跨相机 matching,而是先给 token 一个自车坐标系里的几何身份。这是对问题本身的正确改写。
- 稀疏 LiDAR 的用法更像网络内部校准器:SMA 不是把 LiDAR 当额外输入贴到开头,也不是把输出 depth 乘一个 scale,而是在 attention 前把尺度信息注入视觉 token。这一点对多传感器融合很有启发。
- progressive interaction 是驾驶场景的现实主义设计:低重叠、多相机、多帧同时做全局 attention 很诱人,但浅层特征不可靠。PGT 的价值在于承认这个噪声,并把交互范围作为一个逐步放开的训练结构。
- 它连接了 depth 与 reconstruction:论文不是只看 depth map 数字,还把深度反投影到 3D 点云并评估 Acc. / Comp.,这更接近自动驾驶系统真正关心的几何质量。
局限性 / 可改进方向
- 训练成本高:30k steps、16 张 96GB H20、约 9 天,对个人或小团队复现实验并不友好。
- 依赖标定与 sparse depth availability:ERPE 需要可靠 camera rig,SMA 的最佳效果也依赖可用稀疏 metric observations。虽然论文做了极稀疏和移除输入的增强,但真实部署中传感器异常、标定漂移仍是风险。
- 代码还不完整:截至本笔记写作时,官方仓库发布了 pretrained checkpoint 和 inference code,训练、数据处理、评测代码还在 checklist 中未发布。
- 与下游感知/规划的闭环还没完全展开:论文已经评估 3D reconstruction,但还没有直接展示它对检测、occupancy、tracking 或 planning 的增益。下一步可以把 SurroundNEXO depth / point cloud 作为 BEV perception 或 occupancy 的 geometry prior。
- 动态物体与时序一致性仍值得继续追:PGT 有 cross-frame interaction,但论文核心还是 depth / reconstruction。若接入动态 object-aware geometry 或 motion-aware point map,可能更适合端到端驾驶。
相关工作与启发
- vs VGGT: VGGT 证明了 feed-forward visual geometry 可以统一 camera、depth、point map、track;SurroundNEXO 更窄但更贴近驾驶,重点是低重叠环视相机的 metric depth 与空间一致性。
- vs DVGT / DVGT-2: DVGT 系列 关注 dense point map 和 vision-geometry-action;SurroundNEXO 不直接做规划,而是把 sparse metric anchors 和 ego-ray reference 做成环视 depth 的稳定接口。两者可以互补:DVGT 给 action 链路,SurroundNEXO 给更强的尺度和跨视角 depth consistency。
- vs monocular metric depth: Depth-Pro、UniDepth-2、MoGe-2、MetricAny. 能从单图预测 metric depth,但各相机独立预测时容易出现跨视角尺度不一致。SurroundNEXO 的优势来自把相机 rig 和 sparse metric cue 纳入同一个网络。
- vs prompt depth methods: PriorDA、PromptDA、Omni-DC 等方法强调从 sparse depth prompt 恢复 dense depth;SurroundNEXO 的差别是把 prompt 变成 transformer 内部的 metric anchors,而不是单纯做外部提示或输出修正。
- 对站内后续笔记的启发:自动驾驶几何可以按两条线整理:一条是 VGGT / DVGT 这类 dense geometry foundation model,另一条是 SurroundNEXO 这种 calibration-aware metric depth foundation model。前者偏统一 3D 表示,后者偏环视低重叠下的稳定尺度桥接。
评分
- 新颖性: ⭐⭐⭐⭐☆ 不是从零发明多视角深度,但把 ego-ray、sparse metric anchors、progressive interaction 组合到低重叠环视问题上很准确。
- 实验充分度: ⭐⭐⭐⭐☆ 覆盖 depth、cross-view consistency、sparse prompt、3D reconstruction、zero-shot 和消融;缺少更直接的下游感知/规划实验。
- 写作质量: ⭐⭐⭐⭐☆ 问题定义清楚,模块解释顺畅,实验组织完整;HTML/PDF 中部分表格信息密集,读者需要主动拆解。
- 实用价值: ⭐⭐⭐⭐☆ 对自动驾驶环视 depth、BEV geometry prior 和 3D reconstruction 很有参考价值;但训练成本和未开源训练评测代码限制了短期复现。