← 返回 2026-01-16

V-DPM:基于动态点图的4D视频重建 V-DPM: 4D Video Reconstruction with Dynamic Point Maps

Edgar Sucar, Eldar Insafutdinov, Zihang Lai, Andrea Vedaldi 📅 2026-01-14 👍 11 2026-07-13 08:35
3D重建 4D重建 前馈网络 动态场景 点图表示 视频理解

将动态点图扩展到视频级多视角,实现单次前向传播的4D场景重建

前置知识

Point Maps(点图)

点图是DUSt3R提出的一种3D表示,将每个图像像素映射到一个3D点。给定图像 $I_i$ 和参考视角 $\pi_k$,点图 $P_i(\pi_k) \in \mathbb{R}^{3 \times H \times W}$ 为每个像素 $u$ 分配一个3D坐标 $P_i(\pi_k)(u)$。这种表示的关键优势是同时编码了3D形状和相机参数,且具有视角不变性——不同视角下的点图通过刚体变换关联。点图可以直接由神经网络预测,无需传统的多阶段优化流程。

点图是本文方法的基础表示,V-DPM正是在点图基础上扩展出时间维度,理解点图的定义和性质是理解本文核心贡献的前提。

Dynamic Point Maps (DPM, 动态点图)

DPM是点图在动态场景下的扩展,由同一组作者在ICCV 2025提出。给定两幅图像 $I_0, I_1$,DPM预测四个点图:$P_0(t_0, \pi_0), P_0(t_1, \pi_0), P_1(t_0, \pi_0), P_1(t_1, \pi_0)$,其中 $t_i$ 是时间戳,$\pi_0$ 是参考视角。这四个点图同时具有视角不变性和时间不变性,可以完整恢复3D形状、3D运动(场景流)、相机内参和相机运动。例如,像素 $u$ 的场景流为 $P_0(t_1, \pi_0)(u) - P_0(t_0, \pi_0)(u)$。但原始DPM仅支持图像对,处理多于两幅图像需要后处理优化。

V-DPM直接扩展DPM到多视角/视频设置,理解DPM的表示能力和局限性是理解本文动机和创新点的关键。

VGGT (Visual Geometry Grounded Transformer)

VGGT是CVPR 2025提出的前馈式多视角3D重建网络,基于Transformer架构。给定N幅图像 $I_0, \ldots, I_{N-1}$,VGGT在单次前向传播中输出相机参数、逐图像深度图和点图。其架构使用交替注意力Transformer(Alternating Attention Transformer),为每幅图像构建图像patch token $p_i$、相机token $c_i$和寄存器token $r_i$,经过多层处理后输出 $\hat{p}_i, \hat{c}_i, \hat{r}_i$。点图通过DPT(Dense Prediction Transformer)头从四层骨干特征解码得到。VGGT仅在静态场景上训练,但性能优异。

V-DPM以VGGT为骨干网络进行微调,理解VGGT的架构细节(token设计、DPT头、相机回归)对于理解V-DPM如何复用和扩展VGGT组件至关重要。

Scene Flow(场景流)

场景流描述3D场景中每个点在两个时间步之间的运动向量场。对于像素 $u$ 在图像 $I_0$ 中,其场景流为 $P_0(t_1, \pi_0)(u) - P_0(t_0, \pi_0)(u)$,即该点从时间 $t_0$ 到 $t_1$ 的3D位移。场景流是4D重建的核心输出之一,广泛应用于视频编辑、机器人导航、自动驾驶等领域。传统方法需要2D点追踪器等辅助组件来估计场景流,而DPM类方法可以直接从点图差分得到。

场景流是本文评估4D重建质量的核心指标之一,也是V-DPM相比仅恢复动态深度的方法(如MonST3R)的关键优势。

Adaptive LayerNorm (adaLN, 自适应层归一化)

adaLN是一种条件化机制,源自FiLM和DiT。标准LayerNorm对特征进行归一化后使用固定的缩放和偏移参数,而adaLN将这些参数替换为条件信号的线性投影。具体来说,给定归一化特征 $\hat{x}$ 和条件信号 $c$,adaLN输出 $\gamma(c) \cdot \hat{x} + \beta(c)$,其中 $\gamma, \beta$ 是 $c$ 的线性投影。本文中条件信号是目标时间token $\hat{t}_j$ 的投影,用于告诉解码器目标时间戳。

adaLN是V-DPM时间条件解码器的核心技术组件,理解它才能理解模型如何根据不同的目标时间戳生成对应的点图。

Feed-forward Reconstruction(前馈式重建)

与传统的优化式重建(如COLMAP需要迭代优化相机位姿和3D点)不同,前馈式重建使用神经网络在单次前向传播中直接预测3D信息。这类方法(如DUSt3R、VGGT)的优势是速度快(通常毫秒级)、鲁棒性强(对纹理缺失、重复结构等困难场景更稳健),且不需要测试时优化。代价是需要大量训练数据和计算资源进行预训练。

V-DPM属于前馈式方法,理解这一范式与优化式方法的区别有助于理解本文的定位和优势。

研究动机

现有的3D重建方法在处理动态场景时面临根本性挑战。DUSt3R提出的点图表示虽然在静态场景重建中取得了巨大成功,但它假设场景静止,无法表示时间维度的变化。这在实际应用中是严重限制,因为从娱乐(电影特效、游戏)到机器人(物体操控、导航),动态场景无处不在。DPM(Dynamic Point Maps)虽然将点图扩展到动态场景,引入了视角不变且时间不变的表示,但它继承了DUSt3R的另一个关键限制:仅支持图像对。处理多于两幅图像时,必须对每对图像分别运行网络,然后通过后处理优化来融合结果,这既慢又不优雅。更严重的是,DPM只能做成对重建,无法利用视频中的长程时序信息。例如在10帧视频中,DPM只能逐对处理(最多利用2帧的上下文),而无法一次性利用全部10帧的时序一致性。这导致在视频设置下,DPM的精度会显著下降——实验显示从2帧间隔8的2-view设置到10帧视频tracking,DPM在PointOdyssey上的误差从0.101上升到0.114。

本文的目标是本文的核心目标是将DPM扩展到多视角/视频设置,实现单次前向传播的4D重建。具体来说,给定N帧视频片段 $I_0, \ldots, I_{N-1}$,网络需要一次性输出所有帧的点图,这些点图既能表示3D形状,又能表示3D运动(场景流)。同时,作者希望充分利用已有的静态3D重建预训练模型(如VGGT),以最小化训练时间和数据需求——特别是因为大规模4D标注数据难以获取。最终目标是在标准benchmark上超越现有前馈式4D重建方法,同时保持方法的简洁性和实用性。

与已有工作不同的是,本文的独特切入角度在于对DPM表示的精心分解。作者观察到,对于N帧视频,完整的DPM表示需要 $N^2$ 个点图(每帧相对于每个时间戳和视角),计算代价过高。但这些点图存在大量冗余——同一视角下的点图通过刚体变换关联。基于此,作者提出将重建分为两个逻辑阶段:第一阶段预测时间变化的点图 $P_i(t_i, \pi_0)$(视角不变但时间变化),这与VGGT等静态模型的输出形式一致,便于复用预训练权重;第二阶段通过时间条件解码器将这些点图对齐到统一的时间戳 $t_j$,得到时间不变的点图 $P_i(t_j, \pi_0)$。这种分解不仅减少了计算量(只需 $2N-1$ 个点图而非 $N^2$),更重要的是自然地支持了预训练模型的微调——只需添加解码器并微调,而不需要从头训练。

核心方法

V-DPM的方法思路可以分两层理解。直觉上,给定一段视频,我们希望对每一帧重建其3D形状,同时追踪每个3D点在时间上的运动轨迹。这就像同时做3D重建和3D点追踪。技术上,V-DPM以VGGT为骨干网络,将其输出的点图从静态扩展为动态。关键设计是将DPM分解为两类:第一类是时间变化点图 $P_i(t_i, \pi_0)$,每个点图对应一帧图像,表示该帧像素在对应时间戳的3D位置;第二类是时间不变点图 $P_i(t_j, \pi_0)$,所有点图对齐到同一个参考时间 $t_j$,使得不同帧的点可以直接比较和关联。第一类点图由VGGT骨干直接预测(微调后),第二类点图由新增的时间条件解码器预测。通过改变 $t_j$,可以重建任意时刻的场景,而只需重新运行解码器。

V-DPM的核心创新是将DPM从成对扩展到视频级,同时保持预训练模型的可复用性。与已有方法的本质区别体现在三个方面。第一,与原始DPM和St4RTrack不同,V-DPM不是逐对处理图像,而是一次处理整个视频片段,充分利用时序上下文。第二,与MonST3R不同,V-DPM不仅恢复动态深度,还恢复场景流——每个像素的3D运动向量。MonST3R只能做动态深度估计,要获得场景流需要额外的2D追踪器。第三,与从头训练4D模型不同,V-DPM巧妙地将任务分解为两个阶段,使得第一阶段的输出与VGGT的输出形式一致,从而可以复用预训练权重。这意味着只需要相对少量的合成4D数据进行微调,而不是从头收集大规模4D标注数据集。

方法步骤详情

V-DPM的完整流程包含以下步骤。输入是N帧视频片段 $I_0, \ldots, I_{N-1}$。第一步,VGGT骨干网络处理所有输入帧,为每帧生成patch token $p_i$、相机token $c_i$和寄存器token $r_i$,经过交替注意力Transformer后输出 $\hat{p}_i, \hat{c}_i, \hat{r}_i$。第二步,从骨干网络四层提取特征 $\hat{p}_i$,通过DPT头解码为时间变化点图 $P_i(t_i, \pi_0)$(与VGGT原输出形式一致)。同时,相机回归器从 $\hat{c}_i$ 预测相机内参和外参。第三步,将目标时间戳 $t_j$ 编码为token并输入骨干网络,得到 $\hat{t}_j$。第四步,时间条件解码器(4层Transformer块,交替使用帧注意力和全局注意力)处理骨干特征 $\hat{p}_i$,通过adaLN以 $\hat{t}_j$ 为条件,将所有帧的特征对齐到时间 $t_j$。解码器对骨干的四层特征分别处理后拼接,通过共享权重的DPT头解码为时间不变点图 $P_i(t_j, \pi_0)$。最终输出包括 $2N-1$ 个点图、相机参数和场景流。通过改变 $t_j$ 并只重跑解码器,可以高效重建任意时刻的场景。

技术新颖性

V-DPM的技术新颖性体现在多个层面。首先,两阶段分解的设计极具巧思:第一阶段输出与静态模型兼容的表示,第二阶段通过轻量级解码器实现时间对齐。这种设计使得在VGGT(仅在静态数据上预训练)上添加少量层和微调就能获得4D能力,训练效率极高。其次,时间条件解码器使用adaLN而非简单的concatenation或cross-attention来注入时间信息,这更符合DiT等最新架构的设计哲学,能更好地控制解码过程。解码器的交替注意力结构(帧注意力+全局注意力)也很有讲究:帧注意力让每帧内部充分交互,全局注意力让不同帧之间交换信息,从而建立跨帧的动态对应关系。此外,训练时的loss归一化策略(先在每个样本内平均再跨batch平均)也很关键——它避免了静态数据集(标注密集)主导梯度、动态数据集(标注稀疏)被忽视的问题。最后,共享DPT权重的设计确保解码器输出的特征分布与骨干输出一致,减少了微调的难度。

Model architecture of V-DPM
Figure 2: Model architecture of V-DPM
V-DPM point maps
Figure 3: V-DPM point maps
Transformer block in the time-conditioned decoder
Figure 4: Transformer block in the time-conditioned decoder

实验结果

V-DPM在多个benchmark上取得了显著的性能提升。在4D重建任务(2-view设置)中,V-DPM在所有四个数据集(PointOdyssey、Kubric-F、Kubric-G、Waymo)上大幅超越DPM、St4RTrack和TraceAnything。以PointOdyssey(margin=2)为例,V-DPM的EPE为0.029-0.032,而DPM为0.115-0.117,St4RTrack为0.145-0.150,TraceAnything为0.159-0.163——V-DPM的误差约为DPM的1/4,St4RTrack和TraceAnything的1/5。在视频级tracking任务(10帧snippet)中,V-DPM保持了与2-view相近的精度(0.032),而DPM从0.101退化到0.114,说明V-DPM能有效利用长程时序信息。在视频深度估计方面,V-DPM在Bonn数据集上达到Abs Rel 0.057和δ<1.25 97.3%,超越除π3外的所有方法(π3使用了14+个数据集训练,而V-DPM仅用6个)。在相机位姿估计方面,V-DPM在TUM-dynamics上ATE为0.057,与DPM(0.056)和π3(0.014)相比有竞争力。消融实验证实了各设计组件的重要性:将解码器深度从4减到2导致P0(t1)误差从0.0500上升到0.0518,使用addition conditioning替代adaLN导致误差上升到0.0524,移除DPT解码器导致误差上升到0.0538。

2-View EPE error for 4D reconstruction
Table 1: 2-View EPE error for 4D reconstruction
Tracking EPE error reported for 10-frame snippets
Table 2: Tracking EPE error reported for 10-frame snippets
Video Depth Evaluation on the Sintel and Bonn datasets
Table 3: Video Depth Evaluation on the Sintel and Bonn datasets
Comparison of pose metrics on the Sintel and TUM-dynamics datasets
Table 4: Comparison of pose metrics on the Sintel and TUM-dynamics datasets
Dynamic point maps of a robot doing a manipulation task
Figure 5: Dynamic point maps of a robot doing a manipulation task
Qualitative comparison of dynamic 3D tracking on the DAVIS dataset
Figure 7: Qualitative comparison of dynamic 3D tracking on the DAVIS dataset
查看结构化数据
任务指标本文基线提升
2-View 4D Reconstruction (PointOdyssey, margin=2) EPE (End-Point Error) V-DPM: P0(t0)=0.029, P0(t1)=0.030, P1(t0)=0.032, P1(t1)=0.032 DPM: 0.115/0.114/0.115/0.117; St4RTrack: —/0.145/—/0.150; TraceAnything: 0.159/0.159/0.163/0.163 比DPM降低约74%,比St4RTrack降低约79%
Video Tracking (10-frame snippets) EPE V-DPM: 0.032 (PointOdyssey), 0.027 (Kubric-F), 0.035 (Kubric-G), 0.042 (Waymo) DPM: 0.114/0.088/0.109/0.103; St4RTrack: 0.137/0.153/0.201/0.167; TraceAnything: 0.152/0.107/0.126/0.119 比DPM降低约65-75%,比St4RTrack降低约75-83%
Video Depth (Bonn dataset) Abs Rel / δ<1.25 V-DPM: 0.057 / 97.3% DPM: 0.064 / 94.8%; MonST3R: 0.063 / 96.4%; π3: 0.043 / 97.5% 比DPM降低11%相对误差,δ<1.25提升2.5个百分点
Camera Pose (TUM-dynamics) ATE / RPE_trans / RPE_rot V-DPM: 0.057 / 0.017 / 0.34 DPM: 0.056 / 0.014 / 0.836; π3: 0.014 / 0.009 / 0.312; MonST3R: 0.074 / 0.019 / 0.905 RPE_rot比DPM降低59%,ATE与DPM持平
Video Depth (Sintel dataset) Abs Rel / δ<1.25 V-DPM: 0.247 / 69.4% DPM: 0.311 / 58.0%; MonST3R: 0.335 / 58.5%; π3: 0.210 / 72.6% 比DPM降低21%相对误差,δ<1.25提升11.4个百分点

局限与改进

本文存在几个明显的局限性。首先是训练规模的限制:作者明确指出受硬件资源限制,V-DPM只能在最多20帧的snippet上微调(尽管测试时可泛化到约50帧)。这限制了模型处理长视频的能力——对于数百帧的视频,需要使用滑动窗口和bundle adjustment优化来融合,增加了系统复杂度。其次是训练数据的限制:V-DPM仅使用6个数据集(2个静态+4个动态),而竞争对手π3使用了14+个公开数据集加内部数据集。作者自己也承认,如果采用更强的骨干网络(如π3的架构)和更多训练数据,性能差距可以缩小。第三,V-DPM的相机位姿估计在某些指标上不如π3(如TUM-dynamics的ATE:0.057 vs 0.014),说明在纯几何精度上仍有提升空间。第四,论文缺乏对真实世界复杂场景的定性分析——大部分实验在合成数据或受控环境中进行,对于遮挡严重、光照剧烈变化等极端情况的鲁棒性未充分验证。此外,模型的推理速度和内存占用也未详细报告,这对于实际部署很重要。

独立分析的弱点

V-DPM有几个值得深入分析的弱点。第一,时间条件解码器的设计虽然有效,但adaLN的表达能力可能有限——它本质上是对特征做仿射变换,对于复杂的非刚性运动(如布料褶皱、流体),可能需要更强的条件化机制,如cross-attention或多尺度条件注入。改进方向可以探索更灵活的条件化架构,如ControlNet-style的条件注入。第二,模型的泛化能力存在隐患:训练时使用5/9/13/19帧的snippet,但测试时可以处理约50帧,这种外推的可靠性未经充分验证。对于更长的序列或更复杂的运动模式,可能出现累积误差。改进方向可以引入自回归或增量式处理机制。第三,V-DPM的滑动窗口融合策略(用于长视频)引入了额外的优化步骤,破坏了端到端的简洁性。理想情况下应该设计一种能直接处理长视频的架构,如流式处理或记忆增强机制。第四,论文未讨论模型对相机运动的敏感性——当相机快速运动或存在运动模糊时,点图预测的可靠性可能下降。

未来方向

基于V-DPM的成果,有几个有前景的未来研究方向。第一,将V-DPM与更强的骨干网络结合:作者提到可以将V-DPM集成到π3等更强的模型上,这应该能进一步提升性能。第二,扩展到更长视频:当前模型受限于20帧的训练窗口,未来可以探索分层处理(先局部后全局)或引入长程记忆机制来处理数百帧甚至更长的视频。第三,结合生成模型:V-DPM的4D重建结果可以作为先验用于视频生成(如NeRF/Gaussian Splatting的动态扩展),或者反过来用视频扩散模型(如Geo4D的思路)来增强重建质量。第四,应用到下游任务:V-DPM的场景流输出可以直接用于视频编辑(物体移除、插入)、机器人操控(物体追踪、抓取规划)、自动驾驶(动态障碍物预测)等。第五,自监督/弱监督训练:减少对4D标注数据的依赖,利用视频的时序一致性等自监督信号进行训练。

复现评估

从复现性角度看,V-DPM的条件相对较好。作者明确表示代码和demo将在项目主页公开(https://www.robots.ox.ac.uk/~vgg/research/vdpm/)。训练使用了16块GH200 GPU训练60个epoch,这对大多数研究机构来说是可承受的计算量。训练数据方面,使用的6个数据集(ScanNet++、BlendedMVS、Kubric-F、Kubric-G、PointOdyssey、Waymo)都是公开可用的。数据处理流程也参考了DPM的方法,有据可循。VGGT骨干网络是公开的预训练模型。不过,论文未详细报告一些关键超参数(如学习率schedule的具体参数、数据增强策略、batch size的选择逻辑),这可能增加复现的难度。此外,消融实验使用35 epoch的较短训练,最终模型使用60 epoch,两者的差异也未充分讨论。总体而言,复现难度中等——有开源代码和公开数据,但需要较多GPU资源和对VGGT/DPM代码库的理解。