摘要RGB-D 相机在镜面、透明物体、弱纹理表面上频繁产生无效深度值。LingBot-Depth 提出 Masked Depth ModelingMDM-- 不把这些缺失视为噪声丢弃而是视为自然掩码借鉴 MAE 的自监督范式训练 ViT-Large 编码器学习 RGB 与深度的联合表示。通过分离 Patch Embedding 接收双模态输入、60-90% 的缺失感知掩码策略、以及 ConvStack 金字塔解码器模型统一了深度补全和单目深度估计两个任务。基于 3M 自建 RGB-D 数据2M 真实 1M 合成加 7 个开源数据集共 10M 样本训练LingBot-Depth 在深度补全上全面超越 OMNI-DC/PromptDA/PriorDA作为单目深度先验提升 MoGe 和 FoundationStereo还能零样本泛化到视频深度补全并支持透明物体灵巧抓取。论文Masked Depth Modeling for Spatial Perception代码robbyant/lingbot-depth数据3M RGB-depth pairs (2M real 1M simulated) 已开源一、问题背景1.1 RGB-D 相机的核心痛点RGB-D 相机RealSense、Orbbec Gemini、ZED是目前唯一能实时提供像素对齐的绝对尺度稠密深度的传感模态。但硬件局限导致大量场景下深度图严重不完整镜面反射厨房不锈钢、显示器、镜子 - 主动结构光/ToF 信号被镜面反射偏离接收器透明物体玻璃杯、储物盒 - 红外光直接穿透无回波弱纹理表面白墙、天花板 - 双目匹配失败强环境光户外阳光 - 红外信号淹没现有做法要么直接丢弃缺失区域信息浪费要么用简单插值填补几何不准。1.2 核心洞察缺失即掩码LingBot-Depth 的关键观察深度缺失不是随机噪声而是有语义关联的结构化模式– 缺失总是发生在特定外观条件下镜面、透明、弱纹理。这种自然掩码比 MAE 的随机掩码更难重建也更有信息量。将缺失值作为掩码后模型被迫从完整 RGB 上下文和残存有效深度中推理出缺失区域的几何 – 这同时学会了深度补全有部分有效深度时融合 RGB 和深度线索填补空洞单目深度估计极端情况下所有深度都缺失100% 掩码退化为纯 RGB 推理二、核心方法2.1 模型架构图 1LingBot-Depth 架构。RGB 和深度通过分离 Patch Embedding 进入 ViT-Large 编码器深度 token 按自然缺失模式掩码60-90%编码器学习跨模态联合表示后丢弃深度 token仅由 RGB 上下文驱动 ConvStack 解码器重建完整深度。重绘自 design skill。Patch Embed 1Patch Embed 2Masking 60-90%Discard latent depthRGB Image(3ch)RGB Tokensc_i ∈ R^nSensor Depth(1ch, with holes)Depth Tokensd_i ∈ R^nUnmasked Depth TokensConcat Positional Encoding(spatial modality)ViT-Large Encoder24 layers, [cls] tokenLatent Contextual Tokens [cls] broadcastConvStack Decoder(pyramid upsample)Dense Depth Map(metric, pixel-aligned)关键设计分离 Patch EmbeddingRGB 和深度各自有独立的线性投影层patch size 14follow DINOv2产生空间对齐但模态分离的 token。两种模态共享位置编码但有不同的模态编码RGB1, Depth2。掩码策略非随机深度值全部缺失的 patch - 必掩混合有效/无效值的 patch - 以 0.75 概率掩不足目标掩码率时 - 随机补掩全有效 patch总掩码率 60%-90%ViT-Large 编码器24 层DINOv2 预训练权重初始化。RGB tokens 全部保留不掩深度 tokens 仅保留未掩部分。编码器输出后丢弃潜在深度 tokens仅保留 RGB 上下文 tokens。ConvStack 解码器来自 MoGe金字塔结构从低分辨率特征逐步上采样stride 2分辨率翻倍每层注入 UV 位置编码保持空间一致性。最终双线性插值到原始分辨率。2.2 为什么丢弃潜在深度 tokens编码器输出后仅保留 RGB 上下文 tokens 作为解码器输入潜在深度 tokens 被丢弃。原因RGB tokens 在编码器中已通过自注意力充分吸收了深度信息注意力可视化证实不同空间位置的深度 query token attend 到对应的 RGB 区域避免解码器看到哪些 depth patch 被掩的位置信息强制从 RGB 上下文重建全部深度与 MAE 的浅层 Transformer 解码器不同ConvStack 更适合稠密几何预测2.3 损失函数简单的 L1 损失仅在有效 GT 深度像素上计算L 1 ∣ V ∣ ∑ p ∈ V ∣ d p p r e d − d p g t ∣ \mathcal{L} \frac{1}{|\mathcal{V}|} \sum_{p \in \mathcal{V}} |d_p^{pred} - d_p^{gt}|L∣V∣1​p∈V∑​∣dppred​−dpgt​∣其中V \mathcal{V}V是 GT 深度有效的像素集合。2.4 训练配置项目配置编码器ViT-L/14 (DINOv2 init)解码器ConvStack (随机初始化)编码器 lr1e-5 (warmup 2K iters)解码器 lr1e-4优化器AdamW, weight decay 0.05Batch size1024 (128 GPUs x 8)总迭代250K精度BF16 混合精度训练时长~7.5 天梯度裁剪max norm 1.0三、数据工程这是论文最有工程价值的部分。RGB-D 数据远比纯 RGB 稀缺且现有数据集要么深度太完美合成要么缺乏自然缺失模式。3.1 合成数据管线LingBot-Depth-S1M 样本不是简单渲染完美深度而是模拟真实 RGB-D 相机的成像过程Blender 渲染 RGB 完美深度 散斑红外立体对模拟结构光相机用 SGMSemi-Global Matching从红外对计算视差 - 得到传感器级深度含缺失和噪声完美深度作为 GT传感器级深度作为输入来自 442 个室内 3D 场景分辨率 960x1280。3.2 真实数据管线LingBot-Depth-R2.1M 样本自研模块化 RGB-D 采集平台3D 打印支架 多款商用相机RealSense、Orbbec Gemini、ZED 便携 PC 端。覆盖 30 场景类型住宅、商场、医院、车库、走廊等FoundationStereo 从左右红外对生成伪 GT 深度左右一致性检查过滤不可靠区域3.3 开源数据补充Taskonomy(4.63M)、ScanNet(0.79M)、TartanAir(0.61M)、ARKitScenes(0.49M) 等 7 个数据集。对已有完整深度的数据集用随机块掩码 高斯噪声模拟传感器缺失。总训练数据~10M 样本。四、实验分析图 2左自然掩码传感器缺失vs 随机掩码MAE的本质区别 – 自然掩码与场景外观相关迫使模型学习跨模态几何推理右六大下游应用及核心指标。重绘自 design skill。4.1 深度补全Protocol 1: Block-wise MaskingiBims, NYUv2, DIODE4 个难度级别方法iBims RMSE (easy/hard/extreme)NYUv2 RMSE (easy/extreme)OMNI-DC0.476 / 1.382 / 2.0530.234 / 0.643PriorDA0.409 / 0.520 / 0.8450.289 / 0.309LingBot-Depth0.175 / 0.289 / 0.3450.089 / 0.181在 extreme 难度下大面积缺失 重噪声LingBot-Depth RMSE 比最强基线低 59%0.345 vs 0.845。Protocol 2: Sparse SfM InputsETH3D方法Indoor RMSEOutdoor RMSEOMNI-DC0.6051.069PriorDA0.3601.238LingBot-Depth0.1920.223RMSE 降低 47%室内和 82%室外。4.2 单目深度估计用 LingBot-Depth 编码器替换 MoGe 默认的 DINOv2 backbone在 10 个 benchmark 上一致提升BackboneNYUv2 RELKITTI RELETH3D RELDIODE RELDINOv20.0560.1540.0640.112LingBot-Depth0.0440.1440.0530.105MDM 预训练将 3D 几何知识蒸馏进编码器即使去掉深度输入分支后依然有效。4.3 FoundationStereo 深度先验用 LingBot-Depth 替代 DepthAnythingV2 作为 FoundationStereo 的单目深度先验收敛更快epoch 5 就超越 DINOv2 baselineHAMMER EPE 0.27 vs 0.46训练更稳定MoGe-based 先验在 epoch 5 时 EPE 高达 2.84最终性能epoch 15 在 5/6 个 benchmark 上最优或并列4.4 下游应用视频深度补全仅在静态图像上训练零样本泛化到 30 FPS 视频流时序一致性良好。在水族馆隧道场景中ZED 立体相机因折射几乎完全失效LingBot-Depth 仍产生几何合理的深度。3D 点跟踪替换 SpatialTrackerV2 的 VGGT 深度前端在含大面积玻璃的室内场景中轨迹更平滑准确。灵巧抓取透明/反射物体目标物体LingBot-Depth 成功率原始传感器深度成功率不锈钢杯17/20 (85%)13/20 (65%)透明玻璃杯16/20 (80%)12/20 (60%)玩具车16/20 (80%)9/20 (45%)透明储物盒10/20 (50%)N/A (完全失败)透明储物盒原始深度完全损坏无法抓取LingBot-Depth 修复后成功率 50%。小结LingBot-Depth 的核心贡献是一个范式转换传感器缺失不是噪声是信号。将 RGB-D 相机的自然缺失模式作为掩码训练 ViT同时解决深度补全和单目深度估计并产出可用于立体匹配、3D 跟踪、机器人抓取的强空间表示先验。工程价值最高的三件事(1) 模拟真实传感器缺陷的合成数据管线SGM on 散斑红外对比渲染完美深度更有意义(2) 3M 自建 RGB-D 数据集开源(3) 作为 drop-in replacement 提升 MoGe/FoundationStereo 等下游模型。对于做 RGB-D 感知的团队LingBot-Depth 是直接可用的深度修复前端。