Expressive Body Capture: 3D Hands, Face, and Body from a Single Image
AI Generated
开场 & 问题定义
- 单张 RGB 图 → 3D 人体、手、脸:为什么重要?
- 现有方法只能做“身体”或“手/脸独立”,缺少全身统一方案。
研究目标
- 提出 SMPL-X:一个 119 维参数即可驱动的全身+手+脸模型
- 提出 SMPLify-X:仅用 1 张 RGB + 2D 关键点 → 10 k 顶点网格
背景 & 相关工作
- 分部位模型:SMPL(身体)、MANO(手)、FLAME(脸)
- 早期拼接模型 Frank/SMPL+H 的缺陷
- 单图 3D 人体估计:SMPLify、HMR、NBF 等——只到身体层级
技术路线总览
单图 → OpenPose 2D keypoints → SMPLify-X 优化 → SMPL-X 网格
SMPL-X 统一模型
组成
- 10475 顶点、54 关节、119 参数
- : 体型 | : 身体姿态 | θ_hand(24) : 手指 | : 表情
数学公式
线性蒙皮
偏移
- S: shape
- E: expression
- P: pose blend shapes
训练数据
CAESAR、MANO、FLAME 扫描 → 统一对齐 → 性别三模板
SMPLify-X 优化框架
目标函数
四大技术插件
- 3.3 VPoser:32 维 VAE 姿态先验
- 3.4 Collision:GPU-BVH 三角形级穿模惩罚
- 3.5 Gender:ResNet18 自动性别分类
- 3.6 优化:PyTorch + L-BFGS 三段退火
实验结果
- 新数据集 EHF:100 张图 + 伪真值
- 顶点误差:
SMPL 57.6 → SMPL+H 54.2 → SMPL-X 52.9 mm - 消融:VPoser –3.5 mm、Collision –0.6 mm、性别 –5.1 mm
- 与 Frank(500 相机)对比:单图即可达到相似或更自然效果
- in-the-wild 结果:LSP、MPII、COCO 示例
结论 & 展望
- 第一次把身体、手、脸统一在单张图下重建
- 代码 / 模型 / 数据开源:https://smpl-x.is.tue.mpg.de
- 下一步:大规模 in-the-wild 伪真值 + 直接回归网络
局限与未来工作
- 只依赖 2D 关键点 → 深度歧义仍存在,严重遮挡时估计会漂。
- 头发、衣服、软组织不在模型内,重建的是“裸模”。
- 下一步:
- 用大规模 in-the-wild 伪标签训练直接回归网络(类似 HMR)。
- 引入语义分割、深度、时序信息,解决遮挡和深度歧义。
- 把头发、衣物作为附加层。