HOI3DGen: Generating High-Quality Human-Object-Interactions in 3D¶
会议: CVPR 2025
arXiv: 2603.12126
代码: https://virtualhumans.mpi-inf.mpg.de/hoi3dgen/
领域: 3D视觉
关键词: 人物交互生成, Text-to-3D, 接触语义, 数据标注, SMPL
一句话总结¶
提出 HOI3DGen 框架,通过MLLM自动标注高质量交互数据 + 视角条件化微调扩散模型 + 3D提升与SMPL配准,首次实现从文本精确控制接触语义的高质量3D人物交互生成,在文本一致性上超越基线4-15倍。
研究背景与动机¶
- 领域现状:3D人物交互(HOI)生成对游戏、AR/XR 至关重要,现有方法要么只生成人或物,要么依赖 SDS(Score Distillation Sampling)从 text-to-image 模型蒸馏3D
- 现有痛点:SDS 方法(如 InterFusion)存在 Janus 问题、纹理噪声、穿模严重,且无法精确控制接触点。直接3D生成方法(如 TRELLIS)不具备交互感知能力。根本原因是缺乏高质量的文本-3D交互配对数据
- 核心矛盾:现有3D交互数据集(BEHAVE等)交互丰富但缺少精细文本描述;手动标注不可扩展;GPT-4V标注成本高且描述不自然
- 本文要解决什么:(1) 如何自动生成高质量交互文本标注?(2) 如何用极少数据让模型学会交互生成?(3) 如何确保3D结果有正确的接触语义?
- 切入角度:将复杂标注任务分解为外观/动作/接触子任务让开源MLLM分别解决;只需400个高质量样本即可微调出交互能力
- 核心idea一句话:用分解式MLLM标注管线 + 极少量精筛数据微调扩散模型,实现文本驱动的精确接触控制3D HOI生成
方法详解¶
整体框架¶
输入为文本描述(包含人物外观、物体、动作和接触部位),输出为分割后的人物和物体纹理网格 + 对齐的可动画SMPL模型。流程分三步:(1) 自动数据标注构建高质量训练集;(2) 视角条件化微调 text-to-image 模型生成2D交互图像;(3) 2D→3D提升 + 交互分割 + SMPL配准。
关键设计¶
- 分解式自动标注管线(Decomposed Annotation Pipeline):
- 做什么:从 ProciGen 3D交互数据集自动生成高质量文本描述
- 核心思路:将标注分解为三个子任务——外观标注(用 InternVL 从4个正交视角描述衣着/发型/鞋子和物体属性)、交互标注(从预定义动作列表选择动作类型 + 分析SMPL与物体<4cm的接触体表部位)、综合描述生成(用 LLaMA 3.1 70B 整合所有子标注为自然语言)
-
设计动机:避免端到端标注的幻觉问题,分解后每个子任务更简单,开源MLLM即可胜任;接触信息直接从3D几何分析获取而非生成,确保准确性
-
高质量数据精筛(Data Filtering):
- 做什么:从75万ProciGen样本中筛选400个高质量样本
- 核心思路:按8种接触配置分组(右手/左手/双手/背部/右腿/左腿/无接触/其他),过滤穿模、不合理动作、动作-接触不匹配样本,每类保留50个
-
设计动机:数据质量 > 数量——少量高质量多样性数据足以微调,避免噪声数据导致的遗忘和错误学习
-
视角条件化2D生成(View-Conditioned Generation):
- 做什么:微调 SANA 扩散模型,使其能生成指定视角的交互图像
- 核心思路:在文本 prompt 后附加视角描述 \(t_v \in \{\text{front}, \text{left diagonal}, \text{right diagonal}\}\),对应方位角 \(0°, -45°, +45°\),用标准扩散损失微调。生成后用 Flux 重新纹理化提升质量
-
设计动机:多视角生成使得后续3D提升更稳定——3个视角中至少有1个完整展示交互,接触准确率从单视角78%提升到3视角90%
-
3D提升 + 交互分割 + SMPL配准:
- 做什么:将2D交互图像提升为带语义的3D分割网格
- 核心思路:用 Hunyuan3D 提升为3D网格 → 沿相机轨迹渲染视频帧 → 用 Grounded SAM2 分割人/物 → 多视角投票分配顶点标签(Eq.2-3) → CameraHMR 估计SMPL + Chamfer距离优化7DoF
- 设计动机:端到端输出语义化3D交互——不仅有几何还有接触点语义和可动画属性
训练策略¶
在4块H100上微调SANA 24小时,有效batch size=16,分辨率1024×1024。仅微调400个样本。
实验关键数据¶
主实验¶
| 方法 | GPT文本一致性↑ | 接触准确率↑ | 用户偏好(文本)↑ | GPT质量↑ | 用户偏好(质量)↑ |
|---|---|---|---|---|---|
| InterFusion | 0.15 | N/A | 5.47% | 0.00 | 3.28% |
| TRELLIS | 0.04 | N/A | 3.44% | 0.21 | 10.16% |
| Ours | 0.81 | 90% | 91.09% | 0.79 | 85.56% |
消融实验¶
| 配置 | GPT↑ | 接触准确率↑ | 说明 |
|---|---|---|---|
| w/o 数据过滤 | 0.20 | 0.80 | 全ProciGen数据导致学到错误交互 |
| w/o 重纹理化 | 0.05 | 0.85 | GPT分数大幅下降 |
| Full model | 0.75 | 0.90 | 数据过滤+重纹理化组合最优 |
| 1视角提升 | — | 78.3% | 单视角3D提升接触常丢失 |
| 3视角提升 | — | 90.0% | 多视角大幅提升稳定性 |
关键发现¶
- 仅400个精筛样本就能让SANA获得强大的交互生成能力——预训练模型已有交互"潜力",只需结构化数据激活
- CLIP score 不适合评估交互质量——它对细粒度接触语义不敏感(Fig.3 展示反例),GPT评分和接触准确率更合理
- 基线 SANA 的接触准确率仅45.76%且主要集中在"右手"和"双脚"两种配置,移除这两类后降至23%,显示严重偏差
- SMPL配准方案(1.60cm Chamfer距离)大幅优于ETCH(4.30cm),因为ETCH只在站姿上训练
亮点与洞察¶
- 少量数据微调的威力:400个样本就能教会扩散模型生成多样交互,说明预训练模型已编码了丰富的交互知识,关键是用高质量数据正确激活。这一思路可推广到其他组合生成任务
- 分解式标注很聪明:不让MLLM一次性描述复杂交互,而是分成外观/动作/接触子任务再组合,大幅降低幻觉率
- 接触语义从3D几何直接分析而非语言模型猜测,确保了ground truth质量
局限性 / 可改进方向¶
- 对复杂人体姿态的文本描述不够精确——文本对姿态的描述天然模糊,未来可引入专门的text-to-pose模块
- 依赖Hunyuan3D进行2D→3D提升,其质量是瓶颈之一
- 接触配置标注依赖预定义列表,可能遗漏非典型交互模式
- 训练数据仅来自ProciGen(100个人体+18个物体类别),泛化到更多物体类别时需要更多数据
- 多人交互场景完全未涉及——当前仅支持单人单物,扩展到多人多物的组合爆炸问题需要新的数据策略
- SMPL配准步骤依赖CameraHMR的初始估计质量,对极端姿态(如倒立、蜷缩)可能失败
相关工作与启发¶
- vs InterFusion: SDS-based,慢且Janus问题严重,接触不可控。本文learning-based,快且接触准确
- vs TRELLIS: 强通用3D生成但无交互感知,常忽略物体或产生部分物体。本文交互感知且接触可控
- vs ComboVerse: 组合式3D生成需提供独立网格,本文直接从文本端到端生成
- 分解标注思路的泛化性:将复杂标注任务拆解为子任务让开源MLLM分别处理的方法可推广到其他多属性数据标注场景(如场景图、动作视频)
评分¶
- 新颖性: ⭐⭐⭐⭐ 分解标注+极少数据微调的思路有启发,技术新颖度中等
- 实验充分度: ⭐⭐⭐⭐⭐ 定量+用户研究+多维度消融,非常充分
- 写作质量: ⭐⭐⭐⭐ 清晰流畅,CLIP不适用的分析很好
- 价值: ⭐⭐⭐⭐ 对3D HOI生成有实际推动,数据标注管线可复用