UniMate Vibe 项目

文本驱动 + 跨骨架拓扑,Princeton/Berkeley/MIT/NTU 联合出品

项目简介

UniMate 是由 Princeton、UC Berkeley、MIT、NTU 联合发布、并被 SIGGRAPH Asia 2026 接收的「统一骨架动画生成」研究项目。它用一个 Transformer 扩散模型驱动所有类型的角色骨架——双足人类、四足动物、鸟类、海洋生物、昆虫、蛇形生物,乃至刚体铰接物体——只需输入一句文本提示,就能生成对应的动画。

核心功能

  • 跨拓扑统一驱动:同一个模型处理双足、四足、鸟类、海洋、昆虫、蛇形、铰接刚体等 7 类骨架,无需为每种生物单独训练。
  • 文本驱动动画:给定 "a dog running on the beach" 这样的描述,模型直接生成对应的运动序列。
  • 大规模数据集 UniML3D:13,006 条文本配对动作序列,覆盖 Mixamo、Objaverse-XL、Truebones ZOO 三大来源。
  • 完整数据处理流水线:download → export → render → caption → joint annotation → feature extraction,6 阶段全部开源。
  • 交互式 3D Demo:网页内可旋转浏览所有动画结果,直观对比模型生成质量。
  • HuggingFace 双开:数据集与模型权重均同步开放下载。

技术实现

UniMate 底层是一个基于 Transformer 的扩散模型,使用类似 SMPL-X 风格的统一骨架规范化(canonicalization)层把任意拓扑的骨架映射到统一 token 空间。架构层面提供两种注意力变体供研究者选择:一种是 graph + adaLN——把注意力拆成「按帧空间」和「按关节时间」两路,分别叠加 graph-distance、edge-type、depth 偏置,文本通过 adaLN 调制注入;另一种是 full + cross-attn——把 joint × time 展平后做一次联合注意力,文本以 cross-attention 的 key/value 进入每层 block。两种方案在论文中做了 head-to-head 对比。训练管线基于 🤗 Accelerate,单卡/多卡均可启动;不同数据集组合对应不同 batch size、层数(6/8/10)与最大关节数(60 或 100)。整个项目从训练到推理再到数据处理都遵循「可复现」原则,config 文件即开即跑。

快速上手

# 1. 创建并激活环境
conda create -n unimate python=3.10 -y
conda activate unimate

# 2. 安装依赖
pip install "setuptools<81"
pip install -r requirements.txt --no-build-isolation

# 3. 从 HuggingFace 下载数据集与预训练权重
#    https://huggingface.co/collections/Linzhan/unimate

# 4. 运行数据处理流水线(6 阶段)
#    详见 data_process/README.md

# 5. 启动训练
accelerate launch -m unimate.training.train   --config configs/uniml3d_60frames_graph_adaln.json

适用人群

计算机图形学研究者、3D 动画师、游戏开发者、动作捕捉研究者、ML 工程师、想要一键生成角色动作的独立开发者。

官方链接

项目主页:https://linzhanmou.com/unimate/

arXiv 论文:https://arxiv.org/abs/2609.05415

交互式 Demo:https://linzhanmou.com/unimate/interactive.html

GitHub 仓库:https://github.com/Friedrich-M/UniMate

团队信息

由 AI 猎手自动发现

评论与建议

0 条评论