跳转至

DiffProxy: Multi-View Human Mesh Recovery via Diffusion-Generated Dense Proxies

会议: ECCV2026
论文: ECCV 原文
项目: DiffProxy
领域: 人体理解
关键词: 人体网格恢复、SMPL-X、稠密对应、手部细化、不确定性加权

身份核验:清单 ID 3382、缓存首页标题和正文研究内容一致,作者为 Renke Wang、Zhenyu Zhang、Ying Tai、Jun Li、Jian Yang。未发现副标题变化;PDF 抽取将 DiffProxy 中的连字显示成空格,不是另一篇论文。缓存来源为官方条目关联的 PDF,不能将 PDF 文件编号 1213 当作会议条目 ID。

一句话总结

DiffProxy 先用扩散模型从多视角图像生成身体分割与 UV 稠密对应,再通过手部细化、随机采样不确定性和 SMPL-X 重投影拟合恢复人体网格,仅用合成图像训练就在 RICH 上达到 35.1 mm MPVPE,但并非每个数据集的所有指标均最优。

研究背景与动机

人体网格恢复可以直接回归 SMPL-X 参数,也可以先检测图像证据再优化人体模型。前者速度快,却把相机几何、遮挡和身体姿态压进一个回归问题,网格错位时难以判断哪个环节出了问题。后者如 EasyMoCap 使用多视角关键点进行三角化与拟合,约束更明确,但关节很稀疏;一次错误检测就可能把整条手臂拉向错误位置,衣物覆盖区域也缺少直接表面约束。

DensePose 提供了另一种中间表示:让每个可见人体像素对应到标准人体表面。问题不是这种表示不够密,而是历史上的人工对应标注有噪声、CNN 预测器对少见姿态和复杂画面泛化不足。DiffProxy 重新考察这条路线,以可精确渲染的合成监督替代人工标注,再借助 Stable Diffusion 2.1 的视觉先验提高迁移能力。目标是高精度离线重建,不是实时人体跟踪。

核心 idea:把困难的图像到人体参数回归改为可检查的稠密对应生成,并把多次生成的不一致转化为几何拟合时的可靠性权重。

方法详解

整体框架

输入是同一人的多视角 RGB 图像与标定相机,输出是含身体和手部姿态的 SMPL-X 网格。稠密代理生成器先预测全身代理,从分割中定位手部并放大,再把手部裁剪作为附加视图联合预测。随后对多次随机输出做聚合,最终优化一个共享人体模型,使其表面点投影回各视图时匹配对应像素。

代理包含两张三通道图,而不是直接输出三维顶点:分割图用固定颜色编码身体部位,UV 图前两通道存储表面坐标、第三通道为一。部位标签和 UV 共同确定标准 SMPL-X 表面上的位置;三通道形式适配 SD 的 VAE,模型代理输出分辨率为 256×256。

%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
    Input["多视角图像与相机"] --> Generator["稠密代理生成"]
    Generator --> Hands["手部细化"]
    Hands --> Uncertainty["采样与可靠性估计"]
    Uncertainty --> Fit["加权几何拟合"]
    Fit --> Output["SMPL-X 身体与手部"]

关键设计

1. 稠密代理生成:用精确合成监督和预训练视觉先验恢复表面对应

训练集包含 BEDLAM 来源的 67,650 个样本和 SynBody 来源的 37,837 个样本,共 105,487 个多视角样本。每个样本渲染 8 个 1024×1024 视角,共 843,896 张图像;场景加入 7,953 个 ABO 物体网格、Hair20K 发型、863 张 HDR 环境图与衣物物理模拟。图像和 SMPL-X 代理由同一渲染过程得到,因此不需要人工猜测每个像素的表面位置。这里的样本数不能直接解释为不同真人身份数。

生成器使用 SD 2.1 的 UNet 主干,但保留其预训练权重,只训练注意力模块与 T2I-Adapter。文本条件指定输出类型和身体区域,例如全身分割图或全身 UV 图;T2I-Adapter 的残差特征负责像素对齐;冻结的 DINOv2 提供姿态和外观特征,通过图像交叉注意力参与生成。三者分别约束“输出什么”“与哪里对齐”和“画面里是什么姿态”,不是三个独立网格预测器。

跨模态注意力将 UV 与分割 token 拼接交互,避免部位类别和表面坐标彼此矛盾;跨视图极线注意力结合 Plücker 射线嵌入,让不同相机沿几何上可能对应的位置交换信息。网络因而不仅逐图预测代理,还在预测阶段引入多视角一致性。正文假设透视相机且没有镜头畸变,不能把这个几何模块直接当作未标定图像匹配器。

合成数据也不意味着所有姿态来源完全独立于评测数据集:作者使用 MPI-3DHP 和 MoYo 的训练集动作/姿态驱动部分渲染,并声明排除测试姿态。准确表述是没有用真实评测图像训练代理生成器,而不是“从未接触这些数据集的任何姿态”。各评测集共用一个模型,不做数据集专属微调。

2. 手部细化:用同一网络把小手放大为附加视图

全身画面中的手部通常不足 1% 像素,即使全身姿态预测正确,也可能没有足够分辨率分辨手指。第一遍预测只生成全身代理,利用其中的手部分割裁剪并放大左右手;第二遍将这些裁剪与全身图像一起送入同一生成器,而不是另训一个手模型。

裁剪后相机外参不变,但必须调整焦距和主点,才能让新像素坐标对应原来的射线。手部提示切换到更细的部位标签;正文将其描述为 12 个部位,即两个手掌与十根手指,不应误读为“单只手有十根手指”。跨视图注意力把放大的局部细节和全身上下文联系起来,减轻独立手部预测可能出现的左右手或朝向混淆。

训练时每个样本固定 4 个视图槽位,随机使用 2 至 4 个全身视图,其余填入同相机的手部裁剪。推理默认使用 4 个全身视图及各自左右手裁剪,共 12 个代理视图。新增的是已有相机画面的裁剪,不是新增 8 台物理相机;网络无需为此重新训练。

3. 采样与可靠性估计:把扩散随机性变成可用于拟合的置信信息

遮挡边界和左右肢体混淆可能让单次预测给出错误却看似清晰的对应。作者对每个视图生成 \(K\) 次随机代理,默认 \(K=3\)。UV 按像素取中位数作为最终对应,其不确定性为三通道样本方差的平均;分割先将 RGB 量化到最近的合法部位颜色,再按像素多数投票。没有标签取得过半票数时,分割不确定性置为一。

下面按正文对式 (3) 至式 (5) 的文字定义整理。缓存中的公式存在排版抽取损坏,记号整理不代表另加了归一化或方差缩放步骤;精确实现以原文和作者实现为准。

\[ U_v^{\mathrm{uv}}(x)=\frac{1}{3}\sum_{c=1}^{3}\operatorname{Var}_{k=1..K}\left[P_{k,v}^{\mathrm{uv},(c)}(x)\right],\qquad U_v^{\mathrm{seg}}(x)=\begin{cases}1,&n_{\max}(x)\le K/2,\\2\left(1-\frac{n_{\max}(x)}{K}\right),&n_{\max}(x)>K/2,\end{cases}\qquad W_v(x)=\left(1-U_v^{\mathrm{uv}}(x)\right)\left(1-U_v^{\mathrm{seg}}(x)\right). \]

其中 \(n_{\max}(x)\) 是像素处得票最多的标签的票数。标签不一致或 UV 波动大的位置贡献更小,使优化依赖其他更稳定视图;它不会凭空纠正所有样本都犯的同一种错误。增大 \(K\) 只增加推理计算,不更新网络权重;当 \(K=1\) 时论文直接令所有权重为一。

4. 加权几何拟合:用表面点投影约束共享的人体模型

每个前景像素的部位标签和 UV 定位一个 SMPL-X 表面点。随着身体形状和姿态改变,这个表面点在三维中的位置随之变化;优化要让它经已知相机投影后靠近原始图像像素。各视图都约束同一个人体,所以可靠的另一侧视图能补充单侧遮挡留下的信息缺口。

按正文式 (6) 的定义,目标是可靠性加权的平方重投影距离之和,而非直接匹配生成图的 RGB 颜色:

\[ \mathcal{L}_{\mathrm{reproj}}=\sum_v\sum_{x\in\mathrm{fg}(v)}W_v(x)\,d_v(x)^2. \]

这里 \(d_v(x)\) 表示相应表面点投影与像素 \(x\) 的二维欧氏距离。身体和手部姿态在轴角空间中优化,同时加入 DPoser-X 的一步去噪姿态先验;形状没有显式正则。实际拟合优化形状、姿态、平移和全局尺度,不优化面部表情,因此“使用 SMPL-X”不等于已经恢复了表情。

一个完整示例

设四台相机拍摄一个手臂局部被遮挡的人。第一遍输出四组全身代理,分割定位左右手,裁剪后得到八个附加手部视图;第二遍一共预测十二组代理,并以 \(K=3\) 重复采样。若某个腿部像素三次分割各不相同,则 \(n_{\max}=1\),其分割不确定性为一,拟合权重为零;若两票一致,则分割不确定性为 \(2/3\),还需乘上 UV 可靠性才能得到最终权重。

这只是按论文规则展开的说明例,不是另一个实验结果。优化仍可能在三维中把关节翻转到错误方向,因为投影一致不保证深度方向唯一,姿态先验也不是全局最优保证。

损失函数 / 训练策略

代理训练采用标准扩散噪声预测目标:将真值代理经 VAE 编码后加噪,条件网络预测加入的噪声。训练使用 Adam、学习率 \(5\times10^{-5}\)、batch size 2,共 30 个 epoch,在 4 张 RTX 5090 上约 36 小时。另以学习率 \(10^{-6}\)、batch size 8 微调 VAE 解码器 100K 次迭代,约需同样硬件 4 小时,以减轻高精度代理上的量化伪影。

拟合也使用 Adam,先求全局放置,再优化身体姿态与形状,最后优化手部;相邻迭代相对损失下降低于各阶段阈值时推进,正文给出阈值范围 1% 至 10%。缓存式 (7) 未完整保留先验权重,因此不编造该超参数;补充材料 Algorithm 1 的逐像素实现不在本缓存中,也不据此杜撰插值细节。

单张 RTX 5090 上,初始全身代理约 3 秒,十二视图代理每次约 15 秒,带手部的拟合约 60 秒。默认 \(K=3\) 时按分项相加约为 \(3+3\times15+60=108\) 秒;这是分项估算,不是论文单独报告的端到端实测。关闭手部细化和多次采样时,正文报告约 53 秒。

实验关键数据

主实验

MPJPE 是平均关节位置误差,MPVPE 是平均顶点位置误差;PA 版本先做 Procrustes 对齐,所有数值单位均为 mm,越低越好。正文第 4.3 节固定四个物理视角:3DHP 用 S8 的 0/2/7/8 视角,BEHAVE 用测试集全部四视角,RICH 用测试集前四个有效视角,MoYo 用验证集 1/3/4/5 视角,4D-DRESS 用全数据集四视角。通常每五帧取一帧,4D-DRESS 每五十帧取一帧;partial 设置另加随机裁剪。

以下摘自原文表 1,比较完整模型和同属优化拟合范式的 EasyMoCap。“减少”由两个 MPVPE 相减得到,不代表相对所有方法都领先。

数据集/设置 EasyMoCap MPVPE DiffProxy MPVPE 减少 DiffProxy MPJPE
3DHP 51.5 50.9 0.6 41.1
RICH 60.3 35.1 25.2 33.7
BEHAVE 40.4 39.9 0.5 32.7
MoYo 51.6 38.8 12.8 32.4
4D-DRESS 35.3 25.6 9.7 20.5
4D-DRESS partial 119.4 43.1 76.3 31.6

单视图基线逐相机评估后,报告每个数据集 MPVPE 最低的单视图结果,并做根节点对齐;不能把它理解为随机选一张照片的平均表现。表 1 的星号还标记了部分方法在对应数据集上训练过。尤其在 BEHAVE 上,EasyMoCap 的 MPJPE 为 29.6,优于本文 32.7;3DHP 上 HeatFormer 的 PA-MPJPE 为 29.2,也优于本文 32.8。

消融实验

下表摘自原文表 2,均为 BEHAVE。最后一列相对完整模型 MPVPE 39.9 计算,不能把各项差值相加当成组合移除的效果。

配置 PA-MPJPE MPJPE PA-MPVPE MPVPE MPVPE 增加
完整模型 22.8 32.7 31.3 39.9 0.0
移除 DINOv2 37.3 44.3 53.7 60.2 20.3
移除 T2I-Adapter 28.5 41.5 36.7 48.4 8.5
移除文本注意力 26.5 35.2 35.3 43.3 3.4
移除极线注意力 25.7 33.7 35.0 41.9 2.0
移除跨模态注意力 26.3 33.8 35.4 41.9 2.0

原文表 1 的模块开关还说明:RICH MPVPE 从基础配置 46.5,经手部细化降到 36.2,再经多次采样降到 35.1;但 3DHP 对应为 50.5、51.5、50.9,手部细化并未改善这一指标。因此不能照搬正文“持续改善”措辞为全指标结论。

原文表 3 用相同拟合流程检验代理来源,以下为 MoYo 结果:

代理来源 PA-MPJPE MPJPE PA-MPVPE MPVPE
DensePose 67.6 101.1 90.4 127.8
DensePose 合成集微调 60 epoch 66.5 88.8 84.5 111.4
DiffProxy 28.3 32.4 35.2 38.8

关键发现

  • 移除 DINOv2 的退化最大,支持姿态与外观先验对对应预测很重要;这不等于已证明全部收益仅来自扩散主干。
  • 4D-DRESS 从完整观测变为 partial 时,本文 MPVPE 为 25.6→43.1,EasyMoCap 为 35.3→119.4;稠密约束对部分可见人体更稳健,但误差仍显著上升。
  • 不使用真值相机时,VGGT 初始化并联合优化相机的变体在表 2 仅报告 PA-MPJPE 25.9、PA-MPVPE 37.3。未给出的非 PA 误差不能填写为零,也不能与完整模型的非 PA 指标直接比较。

亮点与洞察

  • 中间代理同时可视化、可监督、可用于几何优化,使错误能定位到分割、对应或拟合阶段。它提供的可诊断性不同于端到端参数回归。
  • 手部裁剪通过更新相机内参接入原有多视图网络,把增加像素分辨率与保持几何一致性结合起来。迁移到其他局部精细重建任务时,不能漏掉裁剪坐标系变换。
  • 随机采样的价值不只是平均预测,而是让有争议的局部证据少影响最终网格。分割投票和 UV 方差分别反映类别歧义与连续坐标不稳定。

局限与展望

  • 作者在图 10 展示正确二维对应仍导致三维关节翻转的局部最优;跨视图对应三角化或其他三维约束可能缓解,而增加相同二维损失的迭代不保证解决。
  • 推理以几十秒至约百秒计,不适合直接承担实时捕捉;论文建议端到端初始化、扩散蒸馏或一致性模型加速。
  • 单视图仍有深度歧义,目前面向单人;多人扩展需要跨视图身份关联,不能仅靠多跑几次单人模型完成。
  • 笔记观察:评测支持无真实图像微调的泛化,但部分训练姿态来源与评测数据集相关,应保留切分说明。DensePose 对比也未隔离预训练规模、网络结构和训练预算的全部影响。
  • 笔记观察:采样一致不代表预测正确,系统性错标仍可能被赋高权重;另需评估置信校准及衣物遮挡下的共享偏差。本文输出人体参数网格,并非完整的衣物表面重建。

相关工作与启发

  • 对比 EasyMoCap:两者都显式拟合人体,差别在稀疏关节证据与稠密表面证据。本文在复杂遮挡中更稳健,但在 BEHAVE 关节误差上并未超过它。
  • 对比 DensePose / DenseRaC:不是首次提出稠密对应拟合,而是用精确合成标注、扩散视觉先验与跨视图交互修补代理质量瓶颈。
  • 联系 Marigold / GenPercept / SPAD:前两者说明预训练扩散模型可用于稠密感知,后者提供极线约束注意力思路;本文把这些能力落到人体表面对应和下游几何拟合。
  • 对比 Look Ma, No Markers:同样以合成训练和重投影拟合为核心,但该方法预测固定稠密二维地标,本文预测逐像素对应。作者因前者模型未公开而未直接比较,不能据此宣称已超过它。

评分

  • 新颖性: 4/5。稠密代理路线并非新概念,但扩散生成、局部细化和不确定性拟合的组合具体有效。
  • 实验充分度: 4/5。五个真实数据集、六种设置及模块消融较完整,仍缺少同预算代理对比和更全面的相机误差分析。
  • 写作质量: 4/5。流程和失效案例清楚,但正文的普遍领先措辞需要结合表格边界阅读,缓存公式也有抽取损坏。
  • 价值: 4/5。适合高精度离线人体重建与标注,实时应用受推理成本限制。