UniMate发布全记录:从数据集到训练推理代码的5大里程碑
【免费下载链接】UniMate[SIGGRAPH Asia 2026] UniMate: One Unified Model to Animate Diverse Skeletons项目地址: https://gitcode.com/GitHub_Trending/un/UniMate
UniMate 是 SIGGRAPH Asia 2026 收录的统一运动生成模型:给定任意骨骼 3D 资产和一句文本提示,它就能实时生成对应的骨骼动画——无需针对每个骨架重新训练,也无需测试时优化。从 2026 年 7 月论文录用到 9 月训练与推理代码全部开源,项目仅用两个月就走完了从数据集、数据处理管线到完整代码的"全记录"。本文带你按时间线回顾这 5 大里程碑,并附上新手友好的上手路径 🎬
核心亮点速览
| 时间 | 里程碑 | 关键词 |
|---|---|---|
| 2026-07-18 | 论文被 SIGGRAPH Asia 2026 接收 | 学术成果 |
| 2026-08-01 | 3D 交互式 Demo 上线 | 在线体验 |
| 2026-08-30 | UniML3D 数据集开源 | 13,006 条文本-运动配对 |
| 2026-08-30 | 六阶段数据处理管线开源 | 下载→导出→渲染→打标→关节标注→特征提取 |
| 2026-09-06 | 训练 + 推理代码 + 预览权重开源 | 完整复现 |
里程碑一:2026-07-18,论文录用 SIGGRAPH Asia 2026 🎉
UniMate 的名字来自 "Unified Mate"(统一伙伴):一个模型通吃双足人形、四足动物、鸟类、海洋生物、昆虫、蛇形骨架,甚至铰接刚体(机器人、卫星、花朵)等截然不同的骨骼拓扑。
它的统一性来自三件事:
- 拓扑条件化:每个对象的骨架结构(父子关系、拓扑距离、图拉普拉斯特征等)被打包进
cond.npy作为条件输入; - 规范化对齐:所有运动统一做朝向对齐、居中、按直径缩放、接地处理;
- 共享解剖词汇表:不同骨骼的关节名被清洗成统一的解剖学名称,让"同一种关节"在所有骨架中获得相同嵌入。
📄 项目完整说明见 README.md
里程碑二:2026-08-01,3D 交互式 Demo 上线
代码还没放出前,官方先开放了 Interactive Demo,可以在网页里直接以 3D 形式浏览各物种的动画生成结果。对新用户来说,这是理解"文本 → 动画"效果的最快途径——看一只狗匀速行走、一条飞龙扇翅起飞,比读十页论文都直观。
里程碑三:2026-08-30,UniML3D 数据集开源
同一天,大规模数据集UniML3D发布:包含13,006 条带文本描述的运动序列,覆盖 7 大类身体结构,全部经过统一规范化处理。数据集汇聚了三大来源:
| 来源 | 内容 |
|---|---|
| Mixamo | 人形角色动画(单一骨架) |
| Truebones ZOO | 动物动作包(商业授权,需自行购买动作文件) |
| Objaverse-XL | 10,000+ 带骨骼的 3D 资产(机器人、卫星、植物等) |
对研究者最有价值的一点:数据中每条运动都配有短文本描述 + 骨骼拓扑条件,天然适配 flow matching / diffusion 这类生成式训练。
里程碑四:数据处理管线开源,六阶段全流程可复现
随数据集一起放出的,是完整的数据处理管线(data_process/README.md 有逐阶段说明)。整条流水线分为六步,每一步都有独立的 bash 入口脚本,且全部支持断点续跑:
- 下载— data_process/scripts/run_download.sh
- 导出— Blender 无头模式把 FBX/GLB 转成 NPZ 运动数据(data_process/motion_export/)
- 渲染— EEVEE 四相机多视角渲染,供视觉模型打标(data_process/motion_rendering/)
- 打标— 视觉模型生成运动描述与身体结构分类(data_process/vlm_caption/)
- 关节标注— 规则 + LLM 双通道清洗关节名、选取朝向关节对(data_process/joint_annotation/)
- 特征提取— 规范化为训练片段并写出
cond.npy(data_process/feature_extraction/)
新手提示:如果只是想复现训练数据,不必跑前 5 步——直接下载 UniML3D 后执行阶段 4 的提取脚本即可,管线文档在 data_process/README.md 的 Quick Start 一节有现成命令。
里程碑五:2026-09-06,训练与推理代码全量开源
这是普通用户最关心的一步:模型怎么训、怎么推理、零训练还能做什么,全部开箱即用。
一键获取代码与环境
git clone https://gitcode.com/GitHub_Trending/un/UniMate conda create -n unimate python=3.10 -y conda activate unimate pip install -r requirements.txt --no-build-isolation全部组件共用一个 conda 环境,依赖见 requirements.txt。
训练:8 个现成配置,两轴自由组合
训练入口是 unimate/training/train.py,配置集中在 configs/,命名规则为{数据集}_{帧数}_{注意力}_{文本条件}.json:
- 注意力:
graph_adaln(空间/时间解耦 + 图距离偏置)或full_cross_attn(联合注意 + 交叉注意); - 数据:完整 UniML3D、Truebones、Mixamo、Objaverse 四种组合。
单卡一行启动(scripts/run_train.sh 已封装好选卡与环境激活):
accelerate launch -m unimate.training.train --config configs/uniml3d_60frames_graph_adaln.json训练采用flow matching目标,配合 EMA 权重与断点恢复——--resume可以精确接续到中断的那一步。模型主体在 unimate/models/(去噪网络、扩散/flow 模块、T5 文本编码器),核心实现如 unimate/models/denoiser/graph_adaln.py。
推理:文本生成运动,无需重训
给定一个骨骼资产和一句 prompt,模型直接生成动画特征(T, J, 12),再经 data_process/mesh_animation/ 驱动原始网格,导出带动画的 GLB/FBX。入口 unimate/inference/sample.py 支持 CFG 引导、固定种子、批量采样等参数,封装脚本为 scripts/run_sample_motion_text.sh。
零训练三大应用:同一套权重的"替换式采样"
妙处在于:以下三个应用不需要任何额外训练,原理都是"钉住已知信号、只去噪其余部分",约束被精确保持:
① 动作补帧(In-betweening)— 钉住关键帧,自动生成中间过渡,scripts/run_sample_motion_inbetween.sh
② 文本引导动作编辑(Motion Editing)— 钉住指定关节(如躯干),用新 prompt 重新生成其余部分,实现"保持主体、换掉动作",unimate/inference/motion_editing.py
③ 动作扩展(Motion Expansion)— 把多段 prompt 首尾衔接,链式生成长动作序列,scripts/run_sample_motion_expand.sh
写在最后
两个月内,UniMate 完成了从"一篇论文"到"数据集 + 管线 + 训练 + 推理 + 权重"的完整开源闭环 🚀。它诚实地声明自己是"通向任意骨架文本生成动画的早期一步"——仍有不少运动与骨架会失败,而扩充训练数据(从智能体蒸馏或从视频生成)是团队给出的下一步方向。
想动手试水,最短路径是:克隆仓库 → 配好环境 → 下载 UniML3D → 跑 scripts/run_train.sh 复现训练,再用 scripts/run_sample_motion_text.sh 生成你的第一条文本驱动动画。代码遵循 MIT 协议,动手就完事了 💪
【免费下载链接】UniMate[SIGGRAPH Asia 2026] UniMate: One Unified Model to Animate Diverse Skeletons项目地址: https://gitcode.com/GitHub_Trending/un/UniMate
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考