

前言#
计算机视觉基础模型关注从图像、视频和点云中学习可迁移的表征与几何结构。相关工作覆盖经典视觉骨干、自监督预训练、开放词表检测、通用分割、点云表征与视觉几何,核心作用是为分类、检测、分割、三维理解、场景重建和机器人感知等任务提供稳定的基础感知能力。
OpenScene#
把 3D 场景点特征对齐到 CLIP 空间,实现开放词表 3D 场景理解。
OpenScene 关注的是开放词表 3D scene understanding,而不是单物体点云分类。 它的目标是给每个 3D point 预测一个和 CLIP/text/image pixel 共嵌入的 dense feature,这样任意文本 query 都可以通过 cosine similarity 在 3D 场景里生成热力图或语义分割。
方法分三步。
首先,用 OpenSeg 或 LSeg 这类开放词表 2D segmentation model 提取每张 RGB 图像的 dense pixel features;然后利用相机位姿和深度,把多视角 pixel features back-project 到 3D points,并做 multi-view average fusion,得到 F_2D。
其次,训练一个 MinkowskiNet18A 只从 3D geometry 输入预测 F_3D,用 cosine loss 蒸馏到 F_2D,这样没有 RGB 时也能做开放词表查询。
最后,用文本 prompt 与 2D/3D features 的相似度决定每个点采用 2D fusion 还是 3D distill feature,形成 2D-3D ensemble。
结果上,在 ScanNet 4 个 unseen 类别的 zero-shot segmentation 中,OpenScene-LSeg 达到 62.8% mIoU,而 3DGenZ 是 7.7%,MSeg voting 是 53.4%。 在标准场景语义分割中,OpenScene-OpenSeg zero-shot 在 nuScenes 上达到 42.1% mIoU / 61.8% mAcc,在 ScanNet 上为 47.5% / 70.7%,在 Matterport 上为 42.6% / 59.2%。 消融显示 2D-3D ensemble 通常优于只用 2D fusion 或 3D distillation;并且随着 label set 扩大,OpenScene 对长尾类别比全监督模型更稳。 总体看,OpenScene 把 CLIP 空间从 2D 图像和单物体 3D 扩展到真实 3D 场景,是开放词表 3D 场景理解的关键基线。
OpenMask3D#
面向开放词表 3D 实例分割,用多视角 CLIP 特征聚合到 3D 实例 Mask 上。
OpenMask3D 解决的是 OpenScene 的一个自然短板:OpenScene 学的是 per-point semantic feature,适合做语义热力图,但不能天然区分同类物体的多个 instance。 OpenMask3D 因此提出 open-vocabulary 3D instance segmentation:先拿到 class-agnostic 3D instance masks,再给每个 mask 计算一个开放词表 CLIP feature。
具体流程是两阶段。 第一阶段使用预训练 Mask3D 的 mask proposal module,只保留 binary instance masks,丢掉 closed-set class labels 和 confidence scores。 第二阶段对每个 3D mask 计算 mask feature:先根据可见点数量和深度遮挡选择 top-k RGB-D views;再把 3D mask 投影到 2D,并用 SAM 根据投影点生成更干净的 2D object mask;随后围绕 2D mask 做多尺度 crop,用 CLIP visual encoder 提取 crop features,最后跨 crop 和 view 平均,得到 per-mask feature。 查询时只需要把文本或图像 query 编成 CLIP feature,与每个 mask feature 做相似度匹配。
ScanNet200 validation 上,OpenMask3D 达到 AP 15.4、AP50 19.9、AP25 23.1,明显高于用 OpenScene features 加 mask 聚合的 open-vocabulary baselines;尤其 tail AP 为 14.9,而 OpenScene 2D Fusion + masks 是 9.9。 在 Replica 跨数据集测试中,OpenMask3D AP 为 13.1,也高于 OpenScene 变体。 如果 mask proposal 只用 ScanNet20 训练、再评估 ScanNet200,OpenMask3D 在 novel classes 上仍有 11.9 AP,说明它对未见类别主要依赖 CLIP mask feature,而不是 closed-set class head。 消融显示 SAM 2D mask refinement 和 multi-scale crops 都有帮助;oracle masks 实验中,OpenMask3D 的 tail AP 达到 32.9,甚至超过 fully supervised Mask3D 的 tail AP 17.9,说明瓶颈主要在 3D mask proposal 质量。
总体看,OpenMask3D 是从开放词表 3D 语义理解走向开放词表 3D 实例级交互的重要一步:它把 CLIP 的开放语义绑定到 object mask,而不是散落在每个 point 上。
VGGT#
把相机、深度、点图和点轨迹统一成一次前馈预测,是 DUSt3R 系列向通用视觉几何模型扩展的重要一步。
VGGT 的目标是把传统 3D pipeline 中分散的几何任务统一到一个前馈模型里。输入可以是一张、几张或上百张同一场景图像,输出包括每帧相机参数、深度图、point map,以及用于 3D point tracking 的 dense features。和 DUSt3R/MASt3R 依赖 pairwise prediction 再做全局对齐不同,VGGT 直接让多张图在一个大 Transformer 中交互,因此在很多任务上可以不经过 bundle adjustment 或 global alignment 就得到可用几何结果。
模型结构刻意减少 3D inductive bias。每张图先用 DINO patchify 成 tokens,然后进入 Alternating-Attention Transformer:一层 frame-wise self-attention 只在单张图内部建模,下一层 global self-attention 在所有图像 tokens 间建模。这样既保留单帧局部表征,又允许跨视角传播几何关系。第一帧被指定为参考坐标系,camera token 和 register token 用不同 learnable token 标记第一帧,使相机、深度和 point map 都在第一帧坐标系下预测。
输出头分为几类:camera head 从 camera token 回归旋转四元数、平移和 FoV;DPT dense head 从图像 tokens 回归 depth map、point map 和不确定性;tracking head 借用 CoTracker2 风格模块,用 dense tracking features 做点轨迹预测。训练时使用多任务损失,包括 camera、depth、point map 和 tracking loss。一个很有意思的结论是:虽然深度、相机和 point map 之间可以互相推导,但训练时同时预测这些量反而提升 point map 精度;推理时用独立预测的 depth + camera 反推点云,通常比直接使用 point map head 更准。
实验上,VGGT 强调速度和统一性。在 RealEstate10K/CO3Dv2 的相机估计中,feed-forward 模式 AUC@30 达到 85.3/88.2,已经超过 DUSt3R、MASt3R 和 VGGSfM v2;加 BA 后进一步到 93.5/91.8。DTU dense MVS 中,在不知道 GT camera 的设置下,VGGT overall 0.382,明显好于 DUSt3R 的 1.741;ETH3D point map estimation 中,depth+camera 推导点云 overall 0.677,也优于 DUSt3R/MASt3R 且只需约 0.2s。总体看,VGGT 是把视觉几何从“优化驱动 pipeline”推向“多任务大模型前馈预测”的代表,但它也依赖大量带 3D 标注的数据,复杂长序列和非常规动态场景仍可能需要后处理或专门模型补强。
DUSt3R#
直接从未标定图像对回归同一坐标系下的 3D point maps,把深度、匹配、相机和重建统一到一个表示中。
DUSt3R 的核心是把多视图几何问题改写成 dense point map regression。传统 SfM/MVS pipeline 通常要先做特征匹配、估计相机内外参、三角化,再做稠密重建;这些步骤彼此依赖,任何一步失败都会传递误差。DUSt3R 反过来:给两张 RGB 图像,不要求相机内参、外参或姿态初始化,直接预测两张图每个像素对应的 3D 点。
Point map 可以理解为一个 H×W×3 的 dense field:每个像素都对应一个 3D 坐标。关键设计是,DUSt3R 对输入图像 I1, I2 输出 X11 和 X21,两者都表达在第一张图的相机坐标系中。这样输出本身就包含了两个视角之间的几何关系:X11 是第一张图自己的点云,X21 是第二张图的像素对应 3D 点,但坐标也放在第一张图坐标系下。因此从 point maps 可以进一步恢复深度、像素匹配、相对位姿、相机内参,甚至绝对定位所需的 2D-3D 对应。
网络结构基于 CroCo/ViT。两张图先经过共享 ViT encoder 得到 tokens,再进入两个交织的 Transformer decoder;每个 decoder block 先做单视图 self-attention,再通过 cross-attention 和另一张图交换信息,最后由 DPT 风格回归头输出 point maps 和 confidence maps。训练使用带置信度的 3D 回归损失,并通过尺度归一化处理不同场景的尺度不确定性。confidence 不只是训练中的权重,也会在后处理中过滤低可信点。
当输入超过两张图时,DUSt3R 仍然先做 pairwise prediction,再构建图像 pair graph。每条边有一组 pairwise point maps,global alignment 优化每条边的刚体变换和尺度,把所有 pairwise point maps 对齐到同一个全局坐标系。这个优化不是传统 BA 的 2D reprojection error,而是在 3D 空间里对齐 point maps,因此更直接也更快。实验显示 DUSt3R 在相机位姿、多视图深度、单目深度、匹配和重建上都能作为统一几何基线;但它的主要限制也很明确:多图场景依赖 pairwise graph 和后处理优化,扩展到长序列或动态场景时成本和鲁棒性会受影响。
MASt3R#
在 DUSt3R 的 point map 基础上增加 dense descriptor 和快速 reciprocal matching,让图像匹配真正 3D-grounded。
MASt3R 可以看作 DUSt3R 面向图像匹配和视觉定位的增强版。DUSt3R 已经能从两张图预测同一坐标系下的 point maps,因此可以通过 3D 最近邻或 PnP 得到匹配和位姿;但 point map 本质是回归输出,噪声会让像素级对应不够精确,而且 DUSt3R 并没有显式用 matching loss 训练。MASt3R 的核心问题就是:如何保留 DUSt3R 对大视角变化的鲁棒性,同时提升匹配精度。
方法上,MASt3R 仍然保留 DUSt3R 的两图 Transformer 框架,同时输出 3D point maps、confidence maps 和额外的 dense local descriptors。新增 descriptor head 是一个简单 MLP,对每个像素输出单位归一化的局部特征。训练时除 DUSt3R 的 confidence-aware 3D regression loss 外,还加入基于 ground-truth correspondence 的 InfoNCE matching loss。这个损失把匹配视作分类问题:正确像素必须在另一张图的候选像素中被选中,而不是只要落在附近即可,因此会显著鼓励高精度匹配。
另一个贡献是 fast reciprocal matching。普通 dense reciprocal nearest neighbor 要比较两张图所有像素对,复杂度是 O(W²H²),对高分辨率图非常慢。MASt3R 从第一张图采样 k 个像素,反复做 image1 -> image2 -> image1 最近邻映射,收集形成 cycle 的 reciprocal matches,并过滤已经收敛的点。这样复杂度降到 O(kWH),既快很多,又带有一定 outlier filtering 效果。论文还提供 coarse-to-fine 方案,让用户在速度和精度之间调整。
实验重点在 matching/localization。Map-free localization 上,MASt3R 在 VCRE AUC 上达到 0.933/0.941 量级,相比 LoFTR+KBR 的 0.634 有约 30% 绝对提升;中位平移误差可降到约 0.36m,而传统强基线大约在 2m 左右。在 Aachen/InLoc 视觉定位中,MASt3R top20/top40 也明显优于 DUSt3R,特别是在 InLoc 上表现强。总体看,MASt3R 的价值在于把“匹配”从纯 2D appearance similarity 转成 3D-grounded correspondence:面对大视角、强外观变化或少视图定位时更稳,但它仍然主要处理 pairwise/binocular 设置,多图重建仍需要匹配后的三角化或额外 pipeline。
Spann3R#
用 Spatial Memory 把 DUSt3R 的 pairwise point maps 扩展为增量式全局重建,减少每个场景的全局优化。
Spann3R 解决的是 DUSt3R 的一个直接瓶颈:DUSt3R 每次只处理图像对,pairwise point maps 都在局部坐标系中;如果要重建多图场景,必须再做 per-scene global alignment。这个步骤虽然比传统 BA 简洁,但对实时增量重建和长序列仍然不够友好。Spann3R 的目标是让模型直接输出全局坐标系下的 per-image point maps,从而减少甚至绕开优化式全局对齐。
核心设计是 Spatial Memory。模型仍建立在 DUSt3R 范式上,并利用 DUSt3R 预训练权重;不同的是,处理新图像时,模型维护一个外部空间记忆,用来保存此前帧的相关 3D 信息。当前帧的几何特征会生成 query,历史预测经 lightweight memory encoder 编码成 memory values,另有 MLP heads 产生 memory keys。模型通过查询 memory 找到与当前帧相关的历史几何信息,再预测当前图像在同一全局坐标系下的 point map。
训练时,Spann3R 从视频/图像序列中采样 5 帧,要求模型逐步更新 memory 并输出全局 point maps。这样做的意义是把“全局对齐”从测试时优化问题转移到模型内部的记忆读取和前馈预测问题。对于有序图像序列,Spann3R 可以实时增量处理;对于无序图像集合,也可以通过选择顺序或检索方式组织输入。
实验上,Spann3R 在多个未见数据集上取得接近 DUSt3R+global alignment 的重建质量,同时速度更适合在线场景。它在 7Scenes、NRGBD、DTU 等重建指标中并不总是全面超过经过优化的 DUSt3R,但优势在于无需对每个场景做重型全局对齐,能够以 memory 方式持续吸收新帧。可以把它理解成 DUSt3R 到在线 3D reconstruction 的中间形态:牺牲一点离线最优精度,换取增量性、实时性和更好的长序列可扩展性。
MonST3R#
把 DUSt3R 的 point map 表示扩展到动态视频,通过小规模微调和视频约束估计深度、位姿与 4D 几何。
MonST3R 关注动态场景几何。DUSt3R 默认训练在静态场景上,当视频中存在运动物体时,pairwise point map 的对齐可能被前景运动干扰:模型有时会用运动物体作为对齐依据,导致静态背景错位;也可能把前景物体几何估错。MonST3R 的关键想法是,不显式建模 scene flow 或物体运动,而是继续使用 point map:每个时间步预测一个 point map,动态物体会在不同时刻出现在不同空间位置,这本身就能表示 4D 几何。
模型架构基本沿用 DUSt3R:两帧输入经过共享 encoder 和 cross-attention decoder,输出两帧 point maps 和 confidence maps。区别在训练数据与策略。动态场景缺少同时具备 RGB、深度和相机位姿的数据,因此论文选择以 DUSt3R 为初始化,只微调 decoder 和 prediction heads,冻结 encoder 来保留原有几何特征;训练数据混合 PointOdyssey、TartanAir、Spring 和 Waymo,其中 PointOdyssey 权重最高。训练 pair 的 temporal stride 从 1 到 9 采样,并偏向更大 stride,以增加相机运动和物体运动多样性;同时用 FoV augmentation 增强内参泛化。损失仍使用 DUSt3R 的 confidence-aware regression loss。
下游视频处理时,MonST3R 不对所有帧两两建图,而是在滑动时间窗口内计算 pairwise point maps。随后优化一个动态全局 point cloud 和每帧相机参数:基础项沿用 DUSt3R 的 point map alignment loss;新增 camera trajectory smoothness loss 约束相邻相机旋转和平移平滑;再加入 flow projection loss,让由相机运动诱导的 flow 在“可信静态区域”内接近外部 optical flow。可信静态区域通过比较相机诱导 flow 和估计 optical flow 得到,差异小的区域被认为更可能是静态背景。优化结果中包含全局 point maps、相机参数、内参和每帧深度,因此可以直接输出 video depth、camera pose 和动态/静态 mask。
结果上,MonST3R 在视频深度上对 DepthCrafter 等专门方法有竞争力:例如 scale-only normalization 下,在 Sintel/Bonn/KITTI 的 Abs Rel 为 0.345/0.065/0.106,优于 DepthCrafter 的 0.692/0.217/0.141。相机位姿方面,它在 Sintel 和 ScanNet 的 joint depth & pose 方法中表现最好或接近最好,并且不依赖 GT camera intrinsics;在 ScanNet 静态场景上也优于 DUSt3R with mask。总体看,MonST3R 是 DUSt3R 系列从静态图片集合走向动态视频/4D 重建的重要尝试,优点是表示简单、几何一致性强;限制是仍需要滑动窗口优化,对长时遮挡、开放场景和特殊相机内参比较敏感。
CUT3R#
用可持续更新的 Transformer state 做在线 3D 感知,把单图、多图、视频和未观测视角查询统一起来。
CUT3R 继续沿着 DUSt3R 系列的 point map 表示发展,但重点从 pairwise / window-based reconstruction 转向 continuous online perception。它认为真实智能体不是拿到一整组图片后离线优化,而是随着新观测不断更新对场景的内部理解。因此 CUT3R 维护一个 persistent latent state:每来一张新图,图像 tokens 一边从 state 读取已有场景信息,一边把新的观测写回 state,然后输出当前视角的 metric-scale point map 和相机参数。
这个 state 不是显式地图,而是一组可学习/可更新的 tokens。初始 state 是 learnable tokens;输入图像先被编码成视觉 tokens,再和 state 做交互。交互之后,一方面可以从当前图像读出每像素 3D point map、相机内外参,另一方面也能把当前观测融入 state。多帧 point maps 因为位于共同坐标系,可以直接累积成在线 dense scene reconstruction。这和 Spann3R 的 spatial memory 有相似目标,但 CUT3R 更强调 recurrent state 的持续更新,并且覆盖静态、动态、视频流和无序图像集合。
一个有趣能力是 unseen-view querying。CUT3R 可以用 virtual camera query,也就是 raymap,去读取 state,并预测这个未观测视角的 point map 和颜色。换句话说,state 不只是记住已经看见的点,还学到了一定的 3D scene prior,可以对未见区域做结构补全。这让 CUT3R 介于视觉几何模型和 feed-forward novel view / structure generation 之间。
实验上,CUT3R 覆盖单目深度、视频深度、相机位姿和 3D reconstruction。论文强调它在 video depth 中优于 DUSt3R、MASt3R 和 Spann3R,因为这些方法的 global alignment 默认静态场景,容易伤害动态物体;相比 MonST3R,CUT3R 不依赖额外 optical flow/global alignment 优化,保持在线,并报告接近或更快的性能。在 7-Scenes/NRGBD sparse image reconstruction 中,它明显优于在线 Spann3R,且接近甚至超过 DUSt3R-GA,同时速度约为其 25×。总体看,CUT3R 的关键价值是把 DUSt3R 类几何预测变成“可持续更新的状态模型”,更适合机器人、长视频和在线场景理解。
3D Gaussian Splatting#
用可优化 3D Gaussians 和可微 splatting 实现高质量实时新视角渲染,是 3D 表示与重建方向的核心转折点。
3D Gaussian Splatting 解决的是 NeRF 系列的核心痛点:神经辐射场质量高,但训练和渲染都慢,尤其在完整无界场景和 1080p 实时渲染上很难达到交互速度。3DGS 放弃用 MLP 隐式表示连续 radiance field,而是使用显式的 3D Gaussian primitives 表示场景。每个 Gaussian 带有位置、各向异性协方差、透明度和颜色/球谐系数;渲染时把这些 3D Gaussians 投影到屏幕上做 visibility-aware splatting。
初始化通常来自 SfM/COLMAP 的 sparse point cloud。每个点初始化为一个 3D Gaussian,然后通过可微渲染和图像重建损失直接优化。Gaussian 的协方差是各向异性的,这一点很关键:各向同性球形 blob 很难贴合表面,而椭球形 Gaussian 可以沿着表面展开,用更少 primitives 表达复杂几何和细节。颜色用 spherical harmonics 表达视角相关外观,透明度参与 alpha compositing。
训练中最重要的是 interleaved optimization 与 density control。模型一边优化 Gaussian 参数,一边根据梯度和大小进行 densification:对欠重建的小结构 clone Gaussian,对过大的 Gaussian split 成更小的元素,同时 prune 掉透明度低或无贡献的 Gaussian。这样表示会从稀疏 SfM 点逐渐长成高质量的显式场景。渲染端则使用 tile-based rasterizer:先按视图投影和深度排序,把影响同一 tile 的 Gaussians 聚合,再做快速 alpha blending。相比沿每条 ray 密集采样,splatting 避免了空空间计算,因此速度极快。
结果上,论文报告在 Mip-NeRF 360 等真实场景上达到接近或超过 Mip-NeRF360 的质量,但训练时间约 35–45 分钟,而 Mip-NeRF360 约 48 小时;渲染从秒级/帧提升到 1080p 30fps 以上。3DGS 的影响非常大:它把可微重建从“慢速神经场”推向“显式可编辑/可渲染 primitives”,成为后续动态 3DGS、feed-forward 3DGS、SLAM、AIGC 3D 表示和高斯场景编辑的默认基础。缺点是原始 3DGS 仍是 per-scene optimization,几何表面不是严格 mesh,透明/反射/稀疏视角等场景仍有挑战。
Depth Anything#
用 1.5M 有标注图像和 62M 伪标注无标注图像训练通用单目深度模型,显著提升零样本泛化。
Depth Anything 的目标是训练一个 open-world monocular depth estimation 模型。传统深度估计依赖少量带深度标注的数据,跨域泛化差;MiDaS 通过多数据集混训改善了这一点,但标注数据仍然有限。Depth Anything 的核心思路是:先用 1.5M labeled images 训练 teacher,再给 62M unlabeled images 生成 pseudo depth labels,最后用 labeled + pseudo-labeled 数据训练 student。
有标注训练部分沿用 MiDaS 风格的 affine-invariant depth loss。因为不同数据集的深度标注存在未知尺度和偏移,模型先把深度转成 disparity,再对每张图做 scale/shift normalization,训练目标关注相对深度结构而不是绝对 metric scale。encoder 使用 DINOv2 初始化,并额外对 sky 区域做 farthest disparity 处理。
论文发现,简单 self-training 并不会自动提升:当 teacher 和 student 架构/pretraining 相似、且 labeled 数据已经足够多时,student 很容易复制 teacher 的正确和错误。为此 Depth Anything 对 unlabeled images 加强扰动,让 student 在更难输入上拟合 teacher 的 clean pseudo label。扰动包括强颜色增强、Gaussian blur 和 CutMix;CutMix 时两张无标注图被拼接,loss 分别在对应区域和各自 teacher pseudo label 对齐。这样无标注数据才真正提供了额外视觉覆盖和鲁棒性。
另一个关键是 semantic-assisted perception。作者尝试过用 RAM + GroundingDINO + HQ-SAM 生成离散语义 mask 做辅助监督,但效果不好;最后改为用冻结 DINOv2 的 dense features 做 feature alignment。这个连续特征空间比离散类别更丰富,同时使用 tolerance margin,避免强制深度模型完全复制 DINOv2、损害同一物体内部的深度差异。结果上,Depth Anything 在零样本相对深度、metric depth fine-tuning 和下游语义分割上都表现强,NYUv2/KITTI fine-tune 也刷新当时结果。它的意义在于把“大规模无标注图像 + 伪深度 + DINOv2 表征”变成通用深度模型训练范式。
Depth Anything V2#
用高质量合成数据训练强 teacher,再伪标注真实图像训练 student,在细节、透明物体和效率上明显优于 V1/扩散式深度模型。
Depth Anything V2 的动机是修正 V1 的两个问题:V1 对复杂场景很鲁棒、速度也快,但细节不够细,透明/反射物体表现较弱;扩散式深度模型如 Marigold 细节好,但慢、重、迁移性差。V2 不追求复杂新结构,而是强调数据和训练策略:高质量 synthetic labels 比 noisy real labels 更适合训练 depth teacher,再用这个 teacher 给大规模真实图生成高质量 pseudo labels。
整体 pipeline 分三步。第一,用 DINOv2-G 作为 teacher backbone,只在精确 synthetic images 上训练,避免真实深度标注中的噪声。第二,用这个强 teacher 给 62M unlabeled real images 生成 pseudo depth。第三,训练不同大小的 student models(ViT-S/B/L/G),主要使用 pseudo-labeled real images,而不是混入真实人工/传感器标注。论文的一个重要观察是:在 student 阶段,去掉 synthetic labeled images、只用 pseudo-labeled real images,很多时候反而更好;这说明 teacher 生成的 dense pseudo labels 在细节和一致性上比许多真实深度数据更干净。
方法上,V2 仍采用 DINOv2 encoder + DPT depth decoder,输出 affine-invariant inverse depth。训练损失包括 scale-and-shift-invariant loss 和 gradient matching loss;后者对 synthetic data 特别重要,可以显著提升边界和薄结构的 depth sharpness。对 pseudo labels,V2 继承 V1 的 feature alignment 思路,用 DINOv2 语义特征保持泛化能力,并忽略 top 10% largest-loss regions,避免噪声 pseudo label 过度影响训练。
实验中,传统 KITTI/NYU/Sintel/ETH3D/DIODE 指标上 V2 和 V1 接近,但论文强调这些 benchmark 不足以衡量细节、透明物体和复杂布局。因此作者构建 DA-2K benchmark,覆盖 8 类代表性场景,用稀疏但高精度相对深度标注评估。DA-2K 上 V2-G 达到 97.4% accuracy,明显高于 Marigold 86.8%、DepthFM 85.8% 和 V1 88.5%。V2 还提供从 25M 到 1.3B 参数的模型,推理比 Stable Diffusion 系深度模型快 10× 以上。总体看,V2 的贡献主要是数据质量路线:用 synthetic 精确监督训练强 teacher,再把真实世界覆盖交给大规模 pseudo labels。
Depth Anything 3#
把 Depth Anything 从单目深度扩展到任意视角几何,用 depth-ray 表示统一深度、位姿和多视图空间一致性。
Depth Anything 3 的定位不再只是 monocular depth,而是 arbitrary visual inputs 下的 spatially consistent geometry。输入可以是一张图、多视角图像集合或视频,也可以选择是否提供已知相机位姿;模型输出每个视角的 depth map 和 ray map,从而恢复统一 3D 空间。论文的核心主张是 minimal modeling:不需要 VGGT 那样预测相机、深度、point map、track 等多个冗余任务,一个 plain Transformer 加一个合适的 depth-ray target 就足够覆盖 depth、pose 和 geometry。
Depth-ray representation 是关键。每个像素不直接预测 point map,而是预测 depth 和 camera ray。ray map 是 H×W×6,前三维是 ray origin,后三维是 ray direction;3D 点可以写成 origin + depth * direction。这种表示隐式包含相机位姿和内参:camera center 可由 ray origins 平均得到,旋转和内参可通过 ray directions 与 canonical rays 的 homography/RQ decomposition 恢复。相比直接回归旋转矩阵,它避免了正交约束;相比 point map,它把 depth 与 viewing ray 分开,更适合多视角一致几何。
架构上,DA3 使用标准预训练 ViT/DINO backbone,并加入 input-adaptive cross-view self-attention,让 selected layers 中不同视角 tokens 可以重排和交互,从而支持任意数量输入。输出端使用 dual DPT head,同一组特征经过不同融合参数分别预测 depth 和 ray。如果有已知相机,也可以通过简单 camera encoder 注入条件。训练采用 teacher-student 方式统一多来源数据:先用合成数据训练强 monocular teacher,再给真实数据生成高质量 dense pseudo-depth,并把 pseudo-depth 和原始稀疏/噪声深度对齐,兼顾细节完整性和几何准确性。
实验上,DA3 建立了覆盖 pose estimation、any-view geometry 和 visual rendering 的新 benchmark,包含 HiRoom、ETH3D、DTU、7Scenes、ScanNet++ 等 89+ 场景。论文报告 DA3-Giant 在相机位姿和几何上超过 VGGT:摘要中称相机精度平均提升 44.3%,几何精度平均提升 25.1%;在 pose 表中,DA3-Giant 在多数数据集 AUC@3/AUC@30 排第一;在 reconstruction 表中,DA3-Giant 在 HiRoom、ETH3D、ScanNet++ 等也领先。它还保留了 Depth Anything 系列在单目 metric depth 上的强泛化,ETH3D/SUN-RGBD/DIODE 上表现突出。总体看,DA3 是把单目深度基础模型升级成视觉几何基础模型的一步,但作为 2025 之后的新工作,生态和复现实践还需要继续观察。
Video Depth Anything#
面向超长视频的时序一致深度估计,在 Depth Anything V2 基础上解决逐帧深度闪烁问题。
Video Depth Anything 的目标是把 Depth Anything V2 从单图相对深度扩展到 temporally consistent video depth。它关注的问题不是单帧预测是否足够强,而是逐帧独立推理会在视频中产生明显闪烁,并且普通短窗口视频模型很难推广到分钟级长视频。论文因此保留 Depth Anything V2 的强图像先验,把时序建模尽量做成轻量、可零样本迁移的增量模块。
架构上,模型冻结 Depth Anything V2 encoder,把视频帧维度折叠进 batch 后提取单帧特征,再用一个基于 DPT 的 spatiotemporal head 做融合。时序 self-attention 只插在低分辨率特征层,避免在高分辨率 token 上做昂贵视频注意力;因此模型既能利用预训练单图深度能力,又能通过少量时序层吸收跨帧一致性。对长视频,推理采用 overlapping windows 和 key frames,把新窗口的深度预测对齐到已有窗口,从而把短时一致性延展到超长序列。
训练损失里最值得注意的是 Temporal Gradient Matching。作者没有直接用 optical-flow warping 约束,因为相机运动时同一个 3D 点在不同帧的深度本来就会变化,强行让 warping 后深度一致会引入错误监督。TGM 改为匹配同一像素位置上预测深度与真值深度的时间梯度,并只在真值时间变化稳定的位置施加约束,减少边界、遮挡和动态物体带来的噪声;空间上仍配合 scale-and-shift-invariant depth loss。
实验上,VDA 在 KITTI、ScanNet、Bonn、NYUv2、Sintel 和长 ScanNet 视频的 zero-shot depth / temporal consistency 指标上达到很强结果。论文还强调效率:小模型在 A100 上可以达到实时级别,适合长视频批量处理。局限在于它本质仍是相对深度和窗口式传播,极端动态场景、长期遮挡恢复以及全局 metric scale 仍不是它直接解决的问题。
Metric3D V2#
面向零样本 metric depth 和 surface normal 的单目几何基础模型,强调从单图恢复可度量 3D 结构。
Metric3D V2 的核心定位是 monocular geometric foundation model:单张图同时预测 metric depth 和 surface normal,并希望在未知测试域上保持可度量尺度。它要解决的主要矛盾是,单目图像中的尺度不仅受场景影响,也强烈受相机内参、焦距和视场角影响;如果把来自不同相机的数据直接混合训练,模型容易学到数据集偏差,而不是稳定几何规律。
论文的关键模块是 Canonical Camera Transformation Module。训练和推理时,输入图像会被变换到一个 canonical camera space,模型在这个统一相机空间中预测深度,再映射回真实相机坐标。这样做相当于把多相机内参造成的 metric ambiguity 从学习目标中剥离出来,使网络更专注于图像内容和几何结构本身。V2 还把 depth 与 normal 联合建模,因为深度提供全局距离,法向提供局部表面方向,两者在几何上互补。
架构上,Metric3D V2 可以使用 ConvNeXt 或 ViT backbone;强版本采用 DINOv2-reg 特征和 DPT decoder,并通过 ConvGRU 做 iterative refinement,不断更新 depth 和 normal。损失设计也比较工程化:silog loss 约束整体深度,Random Proposal Normalization Loss 强化局部深度对比,virtual normal 和 pair-wise normal regression 约束三维几何关系;当缺少真值法向时,则用 depth-normal consistency 提供弱监督。
实验中,Metric3D V2 使用大规模混合数据训练,在 DIODE、iBIMS、ETH3D、NuScenes 等 zero-shot metric depth 数据集以及 NYUv2、ScanNet 等 normal benchmark 上表现很强。它的意义在于把单目 metric depth 从“针对某个数据集拟合尺度”推进到“显式处理相机差异”的几何基础模型。不过它仍需要较复杂的数据配比、相机变换和多损失训练流程,工程成本明显高于纯相对深度模型。
UniDepth#
直接从单张图像预测 metric 3D points 和相机表示,目标是跨域泛化的通用单目 metric depth。
UniDepth 的目标是 universal monocular metric depth:推理时不要求用户提供相机内参,却仍希望从单张图恢复 metric 3D structure。相比只预测 depth map 的方法,它更直接地把输出写成每个像素对应的 3D points,因此问题不只是“这个像素多远”,还包括“这条成像射线朝哪里”。这使它和 Metric3D V2 一样关注相机建模,但选择了更端到端的自提示路线。
方法上,UniDepth 使用 pseudo-spherical output representation,把输出分解为 azimuth、elevation 和 log-depth。直观理解是,前两项描述像素射线方向,后一项描述沿射线的距离;这样能把 camera rays 与 depth 分离,减少把相机差异混进深度回归里的风险。论文还提出 dense camera representation,用每个像素的角度射线表示相机,并通过 spherical harmonic encoding 嵌入到网络中。
最有特色的是 self-promptable camera module。模型先从图像特征中估计 dense camera representation,再用这个“自生成相机提示”去条件化深度特征,相当于在不知道真实内参的情况下为自己补上相机上下文。训练时还加入 geometric invariance loss,使 camera-prompted features 在几何变换下更稳定。这个设计让 UniDepth 不必假设测试时有准确内参,也不只是把内参当作额外标量输入。
实验上,UniDepth 使用约三百万张真实图像训练,覆盖自动驾驶和室内数据,并在十个数据集上做 zero-shot 评估。论文报告它在多个 metric depth benchmark 上超过 Metric3D、ZeroDepth 等方法,提交时还在 KITTI Depth Prediction Benchmark 上排名第一。它的价值是把“未知相机单目 metric depth”做得更系统;局限是相机自估计一旦失败,会同时影响 ray 和 depth,两者误差会在 3D 点恢复中耦合。
MoGe#
开放域单目几何估计模型,用 point map 表示和几何监督提升单图 3D 恢复的细节与泛化能力。
MoGe 关注 open-domain monocular geometry estimation,目标是从单张任意图像恢复稠密 3D point map,而不只是 depth map。它的出发点是,开放域单目图像通常缺少可靠全局尺度和位移监督,如果强行要求模型预测真实世界坐标,数据噪声和尺度歧义会很严重;但如果只预测相对深度,又会丢掉更完整的三维几何结构。
论文采用 affine-invariant point map representation。每个像素直接对应一个 3D 点,但训练监督允许整体仿射尺度和偏移存在不确定性,从而避免把不可观测的全局尺度硬塞给模型。为了让模型仍然学到全局形状,作者设计了鲁棒高效的 point cloud alignment solver,对预测点云和监督点云进行对齐后再计算几何误差;同时加入 multi-scale local geometry loss,让局部曲面、边界和细节不会被全局对齐平均掉。
架构上,MoGe 使用 ViT/DINOv2 encoder 加轻量 CNN upsampler,除了 point map 之外还预测 valid region mask。这个 mask 很重要,因为天空、反光、远处无穷区域或无效深度如果被强制纳入监督,会破坏前景几何学习。相比 Depth Anything 系列更偏向深度排序,MoGe 的表示更接近 DUSt3R / VGGT 这类 point-map geometry,但它专门处理单目开放域和尺度不确定性。
实验覆盖 NYUv2、KITTI、ETH3D、iBims、Sintel、GSO、DDAD、DIODE 等数据集,并同时评估 point map、depth 和 camera FOV。论文报告 MoGe 在多项开放域几何指标上超过 LeReS、UniDepth、DUSt3R、Depth Anything、Metric3D V2、ZoeDepth、GeoWizard、Marigold 等方法。总体看,MoGe 的贡献是把单目几何从 depth-centric 推向 point-map-centric;代价是输出和评估更复杂,也更依赖有效区域与对齐策略的稳定性。
FoundationStereo#
零样本 stereo matching 基础模型,通过大规模合成数据和单目深度先验提升跨场景立体深度泛化。
FoundationStereo 的目标是做 stereo matching foundation model,让双目视差模型具备更强 zero-shot generalization。传统 stereo 网络经常在 Scene Flow、KITTI 或 Middlebury 这类特定数据上表现很好,但换到反光、低纹理、遮挡、不同基线和不同相机参数的真实场景就会明显退化。论文从模型和数据两侧同时处理这个问题:一边引入单目基础模型先验,一边构造更覆盖真实难例的合成训练集。
模型上,FoundationStereo 通过 Side-Tuning Adapter 利用冻结的 Depth Anything V2 特征,把强单目深度先验注入 stereo matching,而不是完全依赖双目匹配纹理。与此同时,它保留多层 CNN 高频特征来处理局部边缘和细节。核心匹配模块是 Attentive Hybrid Cost Filtering:先构建 hybrid cost volume,再结合 Axial-Planar Convolution 和 Disparity Transformer,在空间维度和视差维度同时过滤代价体,最后通过 GRU 迭代细化视差。
数据上,论文提出 FoundationStereo Dataset,使用 NVIDIA Omniverse 生成大规模高质量合成双目数据,覆盖透明反光、弱纹理、严重遮挡、多基线、多焦距和不同视场角等情况。它还做 iterative self-curation:先训练初始模型,在合成数据上找出高错误样本,再替换这些模糊或不可靠样本,重复多轮提升数据质量。这和 Depth Anything V2 的数据路线有点类似,都是把“高质量且覆盖难例的数据”视为基础模型泛化的关键。
实验中,FoundationStereo 在 Middlebury、ETH3D、KITTI-12/15 等 zero-shot benchmark 上表现突出,fine-tuned 版本在提交时达到 Middlebury 和 ETH3D leaderboard 第一。它的主要价值是把 stereo 从单一数据集监督推进到基础模型范式,并证明单目深度先验可以有效帮助双目匹配。局限也很明确:模型效率不是重点,论文报告高分辨率推理仍偏慢;此外透明物体等极端材质的合成多样性仍有提升空间。
Florence-2#
统一 prompt-based 视觉基础模型,用 FLD-5B 标注体系支持 caption、detection、segmentation、OCR 等多种任务。
Florence-2 的目标是把多种视觉任务统一成 prompt-based sequence-to-sequence learning。用户给一张图和一个文本任务提示,模型用文本形式输出结果;caption、object detection、grounding、segmentation、OCR 等任务都被改写成“输入提示到输出序列”的翻译问题。这里的关键不是提出某个新检测头,而是设计一个能表达不同空间层级和语义粒度的统一接口。
表示上,Florence-2 把普通文本、框、quad、polygon 等都序列化。检测任务输出类别和 box 坐标 token,referring segmentation 输出 polygon 顶点 token,caption 和 OCR 则输出自然语言文本。模型结构也相对直接:DaViT 作为 vision encoder,把图像转成 visual tokens;之后接标准 Transformer multi-modal encoder-decoder,把视觉 token 和任务提示一起编码,再自回归生成答案。
论文的另一半贡献是 FLD-5B 数据引擎。该数据集包含 126M 图像和约 5.4B 视觉标注,覆盖 image-level text、region-text pairs、text-phrase-region triplets 等多种粒度;其中 Grounding DINO、SAM 等模型也被用来生成或细化 region 与 mask 标注。通过这种自动标注与模型迭代,Florence-2 获得了比传统人工数据集更宽的任务覆盖。
实验上,Florence-2 在 zero-shot、fine-tuning 和 transfer learning 场景下都表现强,尤其说明统一多任务预训练能改善检测、分割、caption、grounding 等下游任务的通用表示。局限也比较明显:能力很依赖超大规模私有/半自动数据引擎;把所有输出都序列化虽然统一,但在高精度密集预测和实时部署上未必比专门模型更自然。
YOLO-World#
实时开放词表检测模型,在 YOLO 框架中加入视觉语言预训练,兼顾开放类别识别和推理速度。
YOLO-World 的问题意识很清楚:开放词表检测通常依赖大型视觉语言检测器,语义强但速度慢;YOLO 系列速度快,却只能检测训练集中固定类别。论文的目标是把 YOLOv8 这类 one-stage detector 扩展成 efficient open-vocabulary detector,让用户能用文本类别或短语定义待检测目标,同时保留实时部署能力。
方法上,YOLO-World 用 CLIP text encoder 编码类别词或名词短语,用 YOLO image encoder 提取多尺度图像特征,然后通过 RepVL-PAN 做视觉语言融合。RepVL-PAN 里包括 Text-guided CSPLayer 和 Image-Pooling Attention:前者把文本信息注入图像特征金字塔,后者让文本 embedding 结合图像上下文更新。检测头不再输出固定类别 logits,而是输出 object embeddings,并用 region-text contrastive learning 让 object embedding 与对应文本 embedding 对齐。
它最实用的设计是 prompt-then-detect。训练时每个样本构造 online vocabulary,包含正类别和负类别;推理时用户先把目标词表离线编码成 vocabulary embeddings,部署时可以把这些 embedding 重参数化进模型权重,从而不必每张图都跑文本编码器。这让 YOLO-World 在固定应用词表下比一般 open-vocabulary detector 更容易落地。
实验中,YOLO-World 在 LVIS 上报告 35.4 AP 和 52.0 FPS 的速度-精度组合,并且可迁移到 open-vocabulary instance segmentation、referring object detection 等任务。它的价值在于把开放词表检测从“强但重”的研究模型推向实时系统;局限是语义理解深度仍受轻量 YOLO 架构和离线词表约束,对复杂表达、关系 grounding 和极长开放类别集合不如更重的 Grounding DINO 类模型自然。
Grounding DINO 1.5#
Grounding DINO 的增强版本,继续推进开放集检测在性能和边缘部署上的能力。
Grounding DINO 1.5 是 Grounding DINO 的工程化增强版本,核心目标是同时推进 stronger generalization 和 faster deployment。它仍沿用“把开放集检测改写成 phrase grounding”的路线,用语言提示定义目标类别或短语,再输出对应 boxes;但 1.5 不只做一个模型,而是提供 Pro 和 Edge 两个方向:Pro 追求更强泛化,Edge 面向边缘设备速度。
Pro 版本保留 Grounding DINO 的 dual-encoder-single-decoder 框架,并采用更大的 ViT-L 视觉 backbone。论文强调 deep early fusion:在解码前就通过 cross-attention 融合图像和语言特征,这通常能提升召回和定位精度,但也可能带来 hallucination;因此训练中增加负样本比例,用更全面的采样策略平衡开放集召回与误检。数据上,Grounding DINO 1.5 构建 Grounding-20M,使用超过 20M 带 grounding 标注的图像扩展语义覆盖。
Edge 版本则从计算瓶颈下手。原 Grounding DINO 的 multi-scale feature enhancer 成本较高,Edge 改为只在高层 P5 特征上做跨模态融合,用 vanilla self-attention 替代 deformable self-attention,再通过 cross-scale feature fusion 把 P3/P4 的细节信息补回来;backbone 也换成更快的 InceptionNeXt-T。这个设计牺牲一部分模型容量,换取可部署的速度。
结果上,Grounding DINO 1.5 Pro 在 COCO zero-shot 上达到 54.3 AP,在 LVIS-minival zero-shot 上达到 55.7 AP;Edge 在 LVIS-minival zero-shot 上达到 36.2 AP,并可通过 TensorRT 获得高 FPS。它的意义在于把 Grounding DINO 从学术模型推进到高性能 API 和边缘部署;局限是论文更像系统升级报告,很多提升来自模型尺度、数据引擎和工程优化,而不是一个特别简洁的新算法。
OWL-ViT#
经典开放词表检测模型,直接用图文预训练 ViT 做文本条件目标定位,是后续 open-vocabulary detection 的重要基线。
OWL-ViT 是 open-vocabulary detection 里非常干净的一条基线:先用 CLIP/LiT 风格的 image-text contrastive pre-training 得到图像和文本编码器,再把预训练 ViT 直接改造成检测器。它的核心假设是,大规模图文预训练已经学到开放词表语义,只需要一个轻量检测适配过程,就能把 image-level 语义迁移到 object-level localization。
架构上,OWL-ViT 去掉 ViT 的 token pooling,把每个 image token 都看作一个潜在 object query,并在这些 token 上接轻量 box prediction head 和 objectness/classification head。文本查询由 text encoder 编码成 query embeddings,图像 token 与文本 embedding 做相似度匹配,从而得到 text-conditioned detection。由于图像和文本分支没有复杂融合,模型也可以把 query image patch 编码成 embedding,用同一套检测头做 one-shot image-conditioned detection。
训练上,OWL-ViT 在公开检测数据上 end-to-end fine-tune,同时用类别名字替代固定整数标签,使不同数据集的 label space 更容易合并。论文还强调一些 practical recipe:随机 prompt、prompt ensemble、mosaic/scale augmentation、pseudo-negative labels、严格去重等,这些细节对把 CLIP 式预训练迁移到检测很关键。
实验中,OWL-ViT 在 LVIS text-conditioned open-vocabulary detection 上取得强基线结果,最好模型在 unseen rare categories 上达到 31.2 AP,并在 image-conditioned detection 上明显优于当时复杂的 one-shot 检测方法。它的贡献是证明“简单 ViT + 图文预训练 + 检测微调”足以形成强开放词表定位器;不足是缺少深层图文融合,对复杂语言关系、短语 grounding 和密集多目标场景的表达能力有限。
GLIP#
将目标检测和短语 grounding 统一为 grounded language-image pre-training,是开放词表检测的高引用代表工作。
GLIP 是开放词表检测和 phrase grounding 走向统一预训练的代表工作。它的基本观点是:传统检测的类别标签可以看作文本短语,phrase grounding 的文本短语也可以看作开放类别检测目标;因此两者可以统一成 region-word alignment 问题。这样做的好处是,检测数据、grounding 数据和大规模图文数据都能进入同一个 object-level language-aware pre-training 框架。
在模型上,GLIP 以 Dynamic Head / Swin 等检测结构为基础,把分类损失替换成 grounding loss:给定图像和文本 prompt,模型预测区域并与文本中的词或短语对齐。它还提出 language-aware deep fusion,让视觉特征和语言特征在较深层进行交互,而不是只在最后分类时比较 embedding。相比只用闭集分类头的 detector,GLIP 的检测目标天然由语言定义,因此可以迁移到未见类别。
数据路线是 GLIP 的关键贡献之一。它先使用人工检测和 grounding 数据训练,再用已有 grounding 模型给大规模 web image-text pairs 生成框,形成 self-training 数据。论文报告预训练数据规模达到 27M grounding data,其中包括 3M human-annotated 数据和 24M web-crawled 图文数据。这个“先把图文数据转成 grounding 数据,再训练开放检测器”的路线,后来影响了 Grounding DINO、Florence-2 等工作。
实验上,GLIP 在不看 COCO 图像的情况下 zero-shot 到 COCO 可达到 49.8 AP,fine-tune 后达到 60.8 AP;迁移到 LVIS、Flickr30K Entities 和 ODinW 等任务也很强,甚至 1-shot 设置可接近全监督 Dynamic Head。它的局限是模型和数据管线都偏重,prompt 长度、类别拆分和伪框质量会影响效果;但从研究脉络看,它是 open-vocabulary detection 从 CLIP 后处理走向 grounded pre-training 的重要转折点。
SEEM#
通用交互式分割模型,支持点、框、scribble、mask、文本等多模态提示,拓展了 SAM 式分割接口。
SEEM 的目标是做一个 universal image segmentation interface,而不是只做 class-agnostic interactive segmentation。它支持没有 prompt 时的 semantic / instance / panoptic segmentation,也支持文本、点、框、scribble、mask、参考图像区域等多种 prompt。和 SAM 相比,SEEM 更强调 semantic-awareness:不仅给出 mask,还希望在开放词表语义空间里给 mask 贴上标签。
方法上,SEEM 使用通用 encoder-decoder 架构,但把 text prompts、visual prompts 和 memory prompts 都送入同一个 decoder 交互。visual prompt 是关键统一接口:点、框、scribble、polygon 或另一张图中的参考区域,都通过 Visual Sampler 从图像特征中采样成同一类 visual embeddings。这样模型不需要为每种输入单独设计 prompt encoder,也能把用户的非文本交互映射到统一空间。
论文提出四个设计目标:versatility、compositionality、interactivity、semantic-awareness。compositionality 体现在文本 prompt 和 visual prompt 可以直接拼接使用,即使训练时未显式覆盖所有组合;interactivity 则靠 memory prompts 记录上一轮 mask,通过 mask-guided cross-attention 把历史分割信息传给当前轮;semantic-awareness 则来自 joint visual-semantic space,让 visual prompt 输出也能和文本类别 embedding 对齐。
实验覆盖 interactive segmentation、generic segmentation、referring segmentation 和 video object segmentation 等任务。论文报告单个 SEEM 在 9 个数据集上用很少监督即可取得竞争表现,并且 visual + textual prompt 的组合能明显提升 referring segmentation。它的意义是把 SAM 式交互接口扩展成“可组合、可语义化”的通用分割接口;局限是系统复杂度高,训练需要同时平衡 panoptic、referring、interactive 多类损失,实时性和极端精细交互体验不一定优于专门模型。
X-Decoder#
统一 pixel、image 和 language 的解码框架,把开放词表分割、referring segmentation 和视觉语言生成放到同一解码器中。
X-Decoder 是 SEEM 的重要前置工作,核心目标是用一个 generalized decoder 同时输出 pixel-level segmentation 和 language tokens。它把 segmentation、referring segmentation、image-text retrieval、captioning、VQA 等任务放到同一框架里,重点不在 prompt 交互,而在建立一个共享的 pixel-level visual-semantic space,让像素级理解和语言级生成互相增强。
模型采用 image encoder、text encoder 加 X-Decoder。decoder 接收两类 query:generic non-semantic latent queries 和由文本输入诱导的 semantic queries;输出也分成 pixel-level masks 和 token-level semantic embeddings。generic segmentation 主要用 latent queries 预测 mask,再和类别文本 embedding 做 mask-text matching;referring segmentation 则把 referring phrase 作为 text query 调制 mask 解码;retrieval 和 captioning 则利用同一语义空间做跨模态匹配或生成。
一个重要设计是 image encoder 和 text encoder 完全解耦,文本不是在 encoder 侧和图像早融合,而是作为 decoder queries 参与解码。这使模型能同时利用 intra-image segmentation supervision 和 inter-image image-text supervision,也方便做 retrieval、captioning 这类全局视觉语言任务。相比只做开放词表分割的模型,X-Decoder 更像一个视觉语言解码器,把 region/pixel 任务和 token 任务接在一起。
实验上,X-Decoder 在 open-vocabulary segmentation、referring segmentation、captioning 和 retrieval 上都有较强迁移,论文特别强调在 7 个数据集 10 个设置上达到新的 open-vocabulary segmentation SOTA;消融也显示 retrieval 能帮助开放词表分割,captioning 和 referring segmentation 能互相增益。它的局限是统一性带来训练和任务调度复杂度,且交互式 prompt 能力不如后续 SEEM 明确;但作为“统一像素与语言解码”的框架,它为后来的通用分割接口打了基础。
Sapiens#
面向人体视觉的基础模型族,覆盖 2D pose、part segmentation、depth 和 normal,突出高分辨率人类中心视觉能力。
Sapiens 是面向 human-centric vision 的基础模型族,覆盖 2D pose estimation、body-part segmentation、depth estimation 和 surface normal prediction 四类任务。它的核心判断是:人体视觉任务需要高分辨率、细粒度解剖结构和跨场景泛化;与其用通用视觉模型硬迁移,不如在大规模人类图像上做 domain-specific pretraining,再用相对有限但高质量的任务标注微调。
预训练数据是 Humans-300M,来自约 10 亿张 in-the-wild 图像的筛选,保留高置信度、足够大的人体区域,并过滤水印、文字、艺术化和异常图像。模型采用 ViT/MAE 路线,在 1024×1024 高分辨率下用 masked autoencoding 预训练;patch size 为 16,因此每个 token 覆盖的图像区域比标准低分辨率 ViT 小很多,更适合人体关键点、手指、脸部和衣物边界这类细节。
下游适配保持简单:pose 用 top-down heatmap prediction,并扩展到 308 个关键点;part segmentation 使用 28 类人体部件;depth 和 normal 则主要用高质量 3D human scans / synthetic rendering 生成监督。论文强调 decoder 都比较轻量,主要能力来自高分辨率人类图像预训练和模型规模扩展,参数从 0.3B 扩展到 2B 时四个任务都持续提升。
实验上,Sapiens 在 Humans-5K pose、Humans-2K part segmentation、Hi4D depth、THuman2 normal 等 benchmark 上显著超过既有方法;例如 pose 相比 prior art 提升 7.6 AP,part segmentation 提升 17.1 mIoU,Hi4D depth 的 RMSE 相对降低 22.4%,THuman2 normal 角误差相对降低 53.5%。它的价值是证明“领域数据筛选 + 高分辨率 MAE + 大模型”对人体视觉非常有效;局限是数据和算力成本巨大,且对严重遮挡、拥挤人群、罕见姿态仍有失败案例。