4DAnyone:从随手单目视频重建可自由视角渲染的 4D 人体 4DAnyone: Create Anyone in 4D from a Casual Monocular Video
以 RCP 打包与 TCR 路由破解多视角扩散的上下文瓶颈,从单目视频重建 4D 人体
前置知识
4D Gaussian Splatting (4DGS)
把 3D Gaussian Splatting 扩展到动态场景:用一组随时间运动的 3D 高斯基元表示动态人体或场景,可从任意视角实时做照片级渲染。训练它通常需要标定好的多相机同步视频(如 DNA-Rendering 的 48 机位),本文用 FreeTimeGS 作为具体实现。
本文的最终产物就是一个 4DGS 模型,生成的多视角视频是喂给 FreeTimeGS 的输入。理解 4DGS 对输入一致性的苛刻要求,才能理解为什么论文强调“重建级”多视角一致性。
相机控制视频扩散模型
以相机参数(Plücker 射线、旋转平移矩阵)或参考视频 token 为条件,驱动视频扩散模型按指定轨迹生成新视角视频。分隐式(如 CameraCtrl、ReCamMaster,学习相机表征,无硬几何约束)和显式(如 Gen3C、TrajectoryCrafter,依赖深度/点云投影)两大类。
本文的对比基线全部属于这类模型,它们的“规模化一致性失效”正是论文要解决的核心问题,理解其条件机制才能看懂 RCP/TCR 的改进点。
DiT 与有界注意力上下文
Diffusion Transformer(如 Wan2.2)以 Transformer 为骨干,所有 token 通过自注意力交互。单次前向传播能容纳的 token 数受显存与算力限制,视角/帧数一多就必须拆分处理,拆分后各部分之间无法直接交换注意力信息。
论文把多视角一致性崩溃归因为这一“有界注意力上下文”架构约束,RCP 和 TCR 都是在此约束下分别解决条件端与生成端瓶颈的设计。
人体网格恢复(HMR)与 3D 骨架
从单目图像/视频回归 SMPL-X 等参数化人体网格的方法(本文用 GVHMR),输出地对齐的 3D 关键点/骨架序列,天然具有世界坐标系中的前后深度关系。现代 HMR 已能在野外视频上稳定工作。
本文用 HMR 输出的稀疏 3D 骨架作为几何条件,替代从野外视频难以可靠估计的稠密深度,是“准确优先于稠密”原则的载体。
扩散去噪的高低噪声阶段
扩散模型逐步去噪时,高噪声步决定画面的全局结构与布局,低噪声步只负责纹理与细节精修。去噪前期犯的结构错误会锁定到最终结果,后期错误只影响局部细节。
TCR 完全建立在这一时序分工之上:高噪声步轮换分组让全局结构跨组传播,低噪声步固定相邻组稳定细节,理解这一点才能理解 TCR 为什么有效。
深度缓冲(z-buffer)渲染
光栅化时为每个像素记录深度并只保留最近的图元,从而正确处理遮挡。对骨架逐关键点施加像素级 z-buffer 后,手在身前还是身后会渲染出不同结果,消除 2D 骨架的前后歧义。
naive 2D 骨架无法区分“手臂在躯干前/后”,会让不同目标视角生成互相矛盾的内容;深度缓冲是本文 3D 感知骨架条件的关键一环。
研究动机
自由视角 4D 人体内容在具身智能、沉浸式内容创作和 VR 中需求巨大,但现有获取手段都有硬伤。传统容积捕捉依赖昂贵的标定多相机阵列——例如 DNA-Rendering 需要 48 台相机同步拍摄;从单目视频直接拟合 4D 人体(GaussianAvatar、HumanNeRF、GauHuman 等)虽摆脱硬件,却依赖已知相机参数,且靠 SMPL 等参数化先验补全被遮挡区域,无法可靠地幻构出未观测视角的外观,画质存在天然上限。更有前景的“先生成新视角视频、再 4DGS 重建”流水线中,现役相机控制视频扩散模型(CameraCtrl、ReCamMaster、Gen3C、TrajectoryCrafter、CAT4D 等)在少量视角下视觉尚可,但 4DGS 重建需要约 16 个目标视角的视频;一旦视角数超过单次 DiT 前向的注意力上下文容量而被迫分组去噪,跨视角一致性就崩溃:参考上下文随已生成视角数按 $O(N)$ 增长、很快超出预算,各组目标上下文互不相交导致全局结构漂移,外观不一致与结构错乱直接毁掉下游重建。
本文的目标是本文的目标是:仅凭一段随手拍摄、相机内外参完全未知、带轻微相机运动的单目人体视频,生成围绕人物分布的约 16 个指定静态视角的“重建级”多视角一致视频,使其能直接作为 FreeTimeGS 等 4DGS 流水线的输入,重建出可从任意视角实时渲染的高保真动态人体;同时要求方法在野外(in-the-wild)视频上保持鲁棒泛化,全程不依赖稠密度量深度估计、深度对齐或源相机参数标定。一句话:把“单目视频 → 自由视角 4D 数字人”变成一条无需专用摄影棚、普通用户触手可及的流水线。
与已有工作不同的是,独特之处在于把一致性失效重新定义为“有界注意力上下文问题”:崩溃的根源不是相机控制不准,而是单次 DiT 前向能容纳的 token 数有限,视角一多必须分组,进而在条件端(参考上下文 $O(N)$ 增长)和生成端(组间上下文不相交)同时出现瓶颈。已有工作只解决其中一半——压缩参考上下文会削弱外观引导,独立去噪各组则无法抑制结构漂移,而 4DAnyone 首次联合攻这两个瓶颈。另一个差异化切入是几何条件上的“准确优先于稠密”原则:稠密度量深度在野外视频上估计误差大,误差会转化为相互冲突的几何约束使多视角生成发散;不如改用稀疏但 HMR 方法(GVHMR、SAM 3D Body 等)能稳定估计的 3D 骨架,把外观细节留给视频先验补全。
核心方法
直觉上,要把“几十个视角都一致”拆成两件事:外观要看着像同一个人(条件端),结构要转起来不散架(生成端)。技术路线是“生成辅助重建”:给定单目源视频 $V_{src}$,先用 GVHMR 恢复地对齐的 SMPL-X 网格序列,经稀疏顶点-关键点回归器抽取 40 个关键点组成 3D 骨架;把骨架按深度缓冲光栅化到每个目标视角,得到带遮挡信息的骨架视频;一个 3D 感知骨架编码器 $g_\phi$ 将其编码为 DiT 分辨率的残差,以 $\tilde{z}_i^t = z_i^t + g_\phi(S_i)$ 注入噪声潜变量,投影层零初始化保证训练从预训练权重平稳起步。骨干是 Wan2.2-TI2V-5B 视频扩散 Transformer:源视频 token、RCP 打包的固定参考 token、骨架条件化的目标 token 沿视角维拼接,经视频注意力、多视角注意力和文本交叉注意力联合去噪;目标视角分四视图组去噪,由 TCR 在去噪过程中轮换分组传播全局结构;最后用 FreeTimeGS 从生成的多视角视频训练 4DGS 模型,实现自由视角渲染。
核心创新是一对针对上下文瓶颈的正交设计。Reference Context Packing(RCP)的出发点是跨视角外观高度冗余:不必把每个已生成视图按原分辨率塞进上下文,而是借鉴 FramePack 用多尺度 patchify 做混合分辨率打包——压缩比 $r$ 的 patchify 层核与步长为 $(1, 2r, 2r)$,token 数缩为原来的 $1/r^2$;固定上下文 $C_R = [P_1(V_{src}), \{P_2(V_{a_j})\}_{j=1}^{3}, \{P_4(V_{b_j})\}_{j=1}^{4}]$,即 1× 源视频加 3 个 2× 压缩参考加 4 个 4× 压缩参考,把参考上下文复杂度从 $O(N)$ 降到 $O(1)$,且不像 CAT3D 的锚点选择那样有损丢弃外观信息。Target Context Routing(TCR)则利用扩散去噪的时序分工:全局结构在高噪声步成形、低噪声步只精修细节,于是在 $t > t_s$ 阶段每步把视角索引循环移位后重新划分四视图组,让信息跨组流动传播全局结构;$t \le t_s$ 后固定相邻四视图组联合去噪,稳定细节与跨视角过渡。与 CAT4D/Diffuman4D 的滑窗重叠去噪相比,TCR 在同样每组显存预算下实现了显式的跨组结构通信。
方法步骤详情
流程分四步。(1) 预处理(RTX 4090 约 2 分钟):GVHMR 估计地对齐 SMPL-X 序列,SMPL-X-to-Goliath 回归器(held-out 场景关键点平均误差 3.5mm,最近顶点基线 14.0mm)抽取 40 个关键点(17 身体、6 脚部、10 掌级手部、7 辅助颈肩肘),按逐像素 z-buffer 光栅化为带部位着色的骨架视频。(2) 参考视角生成:用最远点采样选视角,第一轮仅条件于 $P_1(V_{src})$ 生成 4 个参考视频,第二轮加入 3 个 2× 打包参考再生成 4 个,构建固定 RCP 上下文;训练时以 0.1 概率分别 dropout 两级参考以支持渐进推理。(3) 目标视角生成:16 个视角按方位角分四视图组,20 步去噪中前 16 步($t_s/T=0.2$)执行 TCR 轮换分组、后 4 步固定相邻组,组间可多 GPU 并行(单层 16 相机、双层 32、三层 48),单张 H20 生成 4 段 121 帧视频约 7 分钟。(4) 4DGS 重建:FreeTimeGS 以空间雕刻粗几何初始化,Adam 学习率 $1.6\times10^{-4}$ 迭代 5 万次,约 30 分钟。训练为三阶段课程:Stage 1 仅 DNA-Rendering 前景视频学骨架条件相机控制(20% 概率源与目标取不同时间窗,解耦姿态与外观);Stage 2 加入 MVGameHuman、SynCamVideo 并取消背景掩膜;Stage 3 加入 Pexels、TedTalk 单目数据并移除手指关键点。全程 704×1280、学习率 $1\times10^{-5}$ 微调 Wan2.2-TI2V-5B,损失 $\mathcal{L} = \mathcal{L}_{latent} + \lambda_L \mathcal{L}_{LPIPS}$($\lambda_L = 0.25$,LPIPS 在身体部位感知裁剪上计算),三阶段约 0.5、1、1.5 天,共 128 张 H20-3E。
技术新颖性
新颖性体现在五点。第一,问题定义新:首次把多视角扩散在重建规模下的崩溃归因于“有界注意力上下文”这一架构约束,并形式化出条件端与生成端两个耦合瓶颈(参考上下文 $O(N)$ 增长、组间上下文不相交),此前工作(CAT3D 锚点选择、CAT4D/Diffuman4D 滑窗)未做此联合分析。第二,RCP 把 FramePack 的多尺度上下文打包从时序帧预测迁移到多视角参考条件,以混合分辨率同时保留全局布局与精细外观,实现 $O(1)$ 参考成本的可扩展外观引导。第三,TCR 是纯推理期策略:无需任何重训练,仅靠去噪步间的循环移位分组,就让固定显存预算下的 16 个视角互相通信,且天然支持多 GPU 并行(Table 6 给出 4/8/8 GPU 三档配置),这是与滑窗重叠去噪本质不同的“结构广播”机制。第四,几何条件上贯彻“准确优先于稠密”:深度缓冲骨架渲染以零额外输入通道解决 2D 骨架前后歧义(Fig. 5);刻意排除 238 个面部关键点和 30 个手指关节以避开噪声检测,面部与手部细节交给源视频参考学习——条件设计处处围绕可靠性而非信息量。第五,零初始化投影、以预训练时序注意力初始化多视角注意力、按面积比缩放初始化多尺度 patchify 等细节保证了 5B 大模型微调的稳定性。
实验结果
定量结果见 Table 2(16 个目标视角,PSNR↑/SSIM↑/LPIPS↓)。DNA-Rendering 上:(i) 生成视频一致性(12 视角训 4DGS、4 个 held-out 视角评估)本文 24.33/0.862/0.163,最佳基线 ReCamMaster† 21.47/0.806/0.210,MV-Performer 21.25/0.799/0.222,TrajectoryCrafter 仅 13.56/0.641/0.331;(ii) 4DGS 重建(16 视角全训后与真值对比)本文 24.15/0.863/0.159,ReCamMaster† 20.55/0.807/0.214;(iii) 生成视频直接对比真值本文 23.69/0.850/0.165。DyMVHumans(对全部方法均 OOD)上一致性 24.48/0.862/0.109、4DGS 重建 23.28/0.846/0.117,PSNR 较 ReCamMaster† 分别高 2.54 与 3.42 dB,全部 18 项指标第一。消融(Table 3,8 个困难序列):完整 Sliding 路由 22.63/0.796/0.191,去 TCR 降为 22.21,再去 RCP 22.03,两者皆无仅 21.09,证明互补;Random(22.20)无增益、Strided(22.06)反降,说明保持视角局部相邻是路由收益关键。TCR 切换扫描(Table 7)显示收益在 $t_s/T=0.2$(前 16 步滑动)后饱和,验证“高噪声管结构、低噪声管细节”假设。定性上(Fig. 4–7):MV-Performer 在侧后方扭曲体型,TrajectoryCrafter 前后视角翻转时严重失败,ReCamMaster† 相机控制不精确致 4DGS 渲染噪乱;本文在背视角输入、复杂外观与复杂运动下均保持几何准确。单图入口经 Wan-Animate 链接也能得到 4D 头像(Fig. 9)。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| DNA-Rendering 生成视频一致性 | PSNR/SSIM/LPIPS | 24.33 / 0.862 / 0.163 | ReCamMaster† 21.47 / 0.806 / 0.210(次优);MV-Performer 21.25 / 0.799 / 0.222 | PSNR +2.86 dB,SSIM +0.056,LPIPS −0.047 |
| DNA-Rendering 4DGS 重建 | PSNR/SSIM/LPIPS | 24.15 / 0.863 / 0.159 | ReCamMaster† 20.55 / 0.807 / 0.214;MV-Performer 20.38 / 0.826 / 0.191 | PSNR +3.60 dB |
| DNA-Rendering 生成视频重建 | PSNR/SSIM/LPIPS | 23.69 / 0.850 / 0.165 | ReCamMaster† 20.74 / 0.809 / 0.204 | PSNR +2.95 dB |
| DyMVHumans 生成视频一致性(OOD) | PSNR/SSIM/LPIPS | 24.48 / 0.862 / 0.109 | ReCamMaster† 21.94 / 0.833 / 0.142 | PSNR +2.54 dB,LPIPS −0.033 |
| DyMVHumans 4DGS 重建(OOD) | PSNR/SSIM/LPIPS | 23.28 / 0.846 / 0.117 | ReCamMaster† 19.86 / 0.795 / 0.159;MV-Performer 18.69 / 0.787 / 0.158 | PSNR +3.42 dB |
| 消融(8 个困难 DNA-Rendering 序列,生成视频一致性) | PSNR | 22.63(完整模型,Sliding 路由) | 无 TCR 22.21;无 RCP 22.03;无 TCR 且无 RCP 21.09 | 完整模型较双无版本 +1.54 dB,验证 RCP 与 TCR 互补 |
局限与改进
作者承认并展示(Fig. 10、Supp. H)两类失败:一是宽松衣物——骨架对远离身体的飘动布料没有任何引导力,大摆裙等在跨视角下生成不一致、重建退化;二是 HMR 姿态误估被忠实传播——源视频中舞者踮脚(en pointe)被 GVHMR 误判为平脚,所有 16 个生成视角都继承该错误。我自己的观察:其一,性能上限受 HMR 与扩散先验双重制约,24 dB 左右的 PSNR 距真实多视角采集仍有差距,幻觉出的未见区域无从与真实外观校验;其二,骨架条件只覆盖人体,对人物与场景、道具的交互(扶栏杆、持球拍)没有几何约束;其三,流水线需两轮参考生成加分组目标生成,目标视频生成约 7 分钟(单 H20),离交互式应用尚远;其四,单层 16 相机只覆盖有限俯仰角,极端俯仰需 32/48 相机多层配置;其五,评估集中在以人体为中心、背景较简单的数据集,一致性指标依赖 4DGS 优化本身(作者也承认 $t_s/T$ 扫描中的非单调波动与 4DGS 优化方差相当),且缺少 FVD、用户研究等感知维度。
独立分析的弱点
独立分析几点弱点。第一,条件链路单点依赖 HMR:骨架是唯一几何信号,快动作、运动模糊、罕见姿态(踮脚、倒立)下 HMR 失准会被所有生成视角忠实放大,改进方向是引入时序平滑、多假设骨架,或按估计不确定性调节条件强度。第二,骨架对非刚性自由体(裙摆、长发、布料、手持物)零约束,跨视角撕裂在 Fig. 10 中清晰可见,可补一条轻量光流或粗深度残差通道,专管“远离身体的运动”。第三,超参较脆弱:分组大小固定为 4、$t_s/T=0.2$ 由网格搜索得到,视角数与帧数变化时的泛化未系统验证;Random 路由失效也说明 TCR 收益依赖局部相邻性,机制解释仍显经验化。第四,RCP 的 4× 压缩参考不可避免丢失高频外观信息,参考轮次增多后远端视角的面部、手部细节是否退化值得量化分析。第五,LPIPS 损失只在身体部位裁剪上计算,加上 Wan2.2 VAE 的高空间压缩,背景与远场区域缺乏直接监督,复杂场景的一致性存疑。第六,整条流水线假设单人、以人体为中心,多人遮挡与人物间交互完全未涉及。
未来方向
作者展示的直接延伸是单图到 4D:用 Wan-Animate 从一张图片生成驱动视频后接入 4DAnyone(Fig. 9),把入口门槛降到一张照片。顺着本文成果可延伸的方向:(1) 为服装与软体引入可微动力学先验,或混合粗深度+光流条件,解决布料与道具漂移;(2) 让 TCR 的分组大小与切换时刻自适应化,例如按跨组结构一致性指标在线调度,摆脱手工超参;(3) 扩展到长序列——RCP 的 $O(1)$ 参考上下文天然适合滚动生成更长时间与多机位叙事;(4) 多人场景与人物-物体交互,骨架可升级为多人分层骨架加场景布局条件;(5) 与文本/语义条件结合做 4D 一致的外观编辑(换装、换发型);(6) 把生成的 4DGS 用作具身智能与世界模型的动态人物资产,反向服务仿真数据生成;(7) 通过蒸馏减少去噪步数、扩大分组,压缩推理成本逼近准实时。
复现评估
复现条件较好但门槛分化。代码承诺开源(项目页 https://4danyone.github.io),骨干与配套组件全部公开:Wan2.2-TI2V-5B、GVHMR、FreeTimeGS、Sapiens2-1B、Depth-Anything-3 均为公开模型;推理细节给得非常充分——骨架编码器 10 层 Conv3d 的通道配置(3→16→32→64→128→256→$d$)、多尺度 patchify 的核尺寸与方差保持初始化、RCP dropout 概率 0.1、$t_s/T=0.2$、20 步去噪、多 GPU 配置表(Table 6)一应俱全。自建数据集 MVGameHuman(3.8 万段、318 演员、24 虚拟相机、2560×1440)由内部游戏引擎生成,论文未承诺公开,完整复现训练需自行构造类似规模的合成多视角数据。训练成本高:128 张 H20-3E 共约 3 天(0.5+1+1.5),学术实验室难以复现;但基线微调协议与全部消融细节写明,评估协议(测试序列 ID、相机编号、帧数逐一列出)相当友好。推理门槛低:预处理约 2 分钟(4090)+ 生成约 7 分钟(单 H20)+ 4DGS 约 30 分钟(4090)。综合:跑通推理为中等难度,完整复现训练为高难度。
论文图表
概览图:输入一段带轻微相机运动的随手单目视频,4DAnyone 生成多视角一致的人体视频,再经 4DGS 重建实现自由视角渲染,右侧展示了生成的多视角视频与渲染结果。
一图看懂论文要解决的问题(单目输入)与最终交付物(自由视角 4D 人体),是全文的导航图。
两类失败案例:左侧大摆裙等远离身体的布料因骨架无约束而跨视角生成不一致(红框);右侧舞者踮脚被 HMR 误判为平脚(源视图绿圈),所有生成视角继承该姿态错误(红框)。
明确方法的失效边界——骨架条件对非刚性自由体无约束、且会忠实传播 HMR 误差,是评估适用场景的必读信息。