【SONIC】2.数据集介绍
·
NVIDIA GEAR-SONIC 数据集介绍
来源:Hugging Face
nvidia/GEAR-SONIC| 论文:arXiv 2511.07820 (2025)
整理时间:2026-04-27
一、项目概览
| 属性 | 说明 |
|---|---|
| 项目名称 | GEAR-SONIC: Supersizing Motion Tracking for Natural Humanoid Whole-Body Control |
| 开发方 | NVIDIA Corporation (NVIDIA Research GEAR Lab) |
| 项目定位 | 人形机器人全身控制行为基础模型(Behavior Foundation Model) |
| 核心思想 | 将运动跟踪作为可扩展训练任务,用单一统一策略实现自然全身运动 |
| 总大小 | 约 32.7 GB |
| 文件数量 | 54 个文件 |
| 许可证 | 双许可证:源代码 Apache 2.0 / 模型权重 NVIDIA Open Model License |
关键特性
- 统一全身控制:单一策略处理行走、奔跑、爬行、跳跃、双手操作等
- 运动跟踪:基于大规模人体运动数据训练,动作自然流畅
- VR 实时遥操作:支持 PICO VR 头显进行全身运动映射
- 硬件部署:C++ 推理栈,支持桌面 GPU 和 Jetson 边缘设备
- 运动风格规划器:实时生成多种运动风格(跑步、潜行、受伤、跪姿等)
- 多模态控制:键盘、手柄、VR、高级规划指令
二、目录结构总览
/Users/che.lin/Downloads/data/ # 32.7 GB
│
├── README.md # 官方文档
├── LICENSE # 双许可证
├── .gitattributes # Git LFS 大文件追踪
│
├── ═══ 神经网络模型 (ONNX) ═══
├── model_encoder.onnx (47.8 MB) # 策略编码器
├── model_decoder.onnx (39.0 MB) # 策略解码器
├── planner_sonic.onnx (738 MB ✅) # 运动学规划器
│
├── ═══ PyTorch 训练权重 ═══
├── sonic_release/
│ ├── config.yaml (28 KB) # 完整训练配置 (Hydra/OmegaConf)
│ └── last.pt (447.7 MB) # PyTorch 模型权重
│
├── ═══ 大规模训练数据 (30.7 GB) ═══
├── bones_seed_smpl/
│ ├── bones_seed_smpl.tar.part_aa (5.0 GB)
│ ├── bones_seed_smpl.tar.part_ab (5.0 GB)
│ ├── bones_seed_smpl.tar.part_ac (5.0 GB)
│ ├── bones_seed_smpl.tar.part_ad (5.0 GB)
│ ├── bones_seed_smpl.tar.part_ae (5.0 GB)
│ ├── bones_seed_smpl.tar.part_af (5.0 GB)
│ └── bones_seed_smpl.tar.part_ag (84 MB)
│
├── ═══ 样本数据 ═══
├── sample_data/
│ ├── robot_filtered/210531/ (2 files) # 机器人运动学过滤数据
│ ├── smpl_filtered/ (2 files) # SMPL 参数空间过滤数据
│ └── soma_filtered/210531/ (2 files) # SOMA 参数空间过滤数据
│
├── ═══ 配置文件 ═══
├── observation_config.yaml (2.3 KB) # G1 机器人观测空间配置
│
├── ═══ 演示媒体 (244 MB) ═══
├── media/
│ ├── Pipeline.jpg # 技术架构图
│ ├── gear_sonic_header.png # 项目 banner
│ ├── sonic-preview-gif-480P.gif (9.7 MB) # 预览动图
│ ├── teleop_*.gif (8 个) # VR 遥操作演示
│ ├── planner/ (9 个 GIF) # 运动规划器演示
│ └── pico_setup/ (7 个文件) # PICO VR 设置指南
三、核心文件详解
3.1 ONNX 神经网络模型
| 文件 | 大小 | 功能 |
|---|---|---|
model_encoder.onnx |
47.8 MB | 策略编码器:将运动参考信号编码为 64 维 latent token |
model_decoder.onnx |
39.0 MB | 策略解码器:将 latent token + 本体感知解码为 116 维关节动作 |
planner_sonic.onnx |
738 MB ✅ | 运动学规划器:实时运动风格生成 |
推理栈:ONNX Runtime → TensorRT,支持桌面 GPU / NVIDIA Jetson
3.2 训练配置 (sonic_release/config.yaml)
框架:Hydra / OmegaConf 结构化配置
关键 PPO 超参数:
| 参数 | 值 |
|---|---|
| actor_learning_rate | 2.0e-5 |
| critic_learning_rate | 0.001 |
| clip_param | 0.2 |
| entropy_coef | 0.01 |
| gamma | 0.99 |
| lam | 0.95 |
| num_learning_epochs | 5 |
| num_mini_batches | 4 |
| num_learning_iterations | 100,000 |
| num_envs | 4096 |
网络架构:
- Backbone:6 层 MLP (2048→2048→1024→1024→512→512),SiLU 激活
- Universal Token Module:基于 FSQ (Finite Scalar Quantization) 将多模态输入统一编码
- 三种编码器模式:
g1(mode_id=0):机器人运动跟踪teleop(mode_id=1):VR 遥操作smpl(mode_id=2):SMPL 人体模型驱动
- 辅助损失:5 种跨模态一致性损失(g1_recon, g1_smpl_latent, g1_teleop_latent, teleop_smpl_latent, reencoded_smpl_g1_latent)
3.3 观测配置 (observation_config.yaml)
总观测维度:436
| 观测信号 | 维度 | 说明 |
|---|---|---|
| token_state | 64 | 编码器输出的 latent token |
| base_angular_velocity | 12 | 基座角速度历史 |
| joint_positions | 116 | 29 个关节位置历史 (10 帧) |
| joint_velocities | 116 | 29 个关节速度历史 (10 帧) |
| last_actions | 116 | 上一步动作历史 (10 帧) |
| gravity_dir | 12 | 重力方向历史 (10 帧) |
编码器配置:
encoder:
dimension: 64
use_fp16: false
encoder_modes:
- g1 (mode_id: 0) # 需要关节位置/速度 + 锚点朝向
- teleop (mode_id: 1) # 需要 VR 3 点目标 + 锚点朝向
- smpl (mode_id: 2) # 需要 SMPL 关节 + 手腕位置
3.4 训练数据 (bones_seed_smpl/)
| 项目 | 说明 |
|---|---|
| 大小 | 30.7 GB(占项目总大小的 96%) |
| 格式 | 7 个 GNU tar 分卷 (aa~ag) |
| 内容 | SMPL 骨骼参数种子数据,用于训练阶段的运动跟踪监督 |
| 数据来源 | 大规模人体运动捕捉数据 |
解压命令:
cd /Users/che.lin/Downloads/data/bones_seed_smpl/
cat bones_seed_smpl.tar.part_* > bones_seed_smpl.tar
tar xf bones_seed_smpl.tar
3.5 PyTorch 模型权重 (sonic_release/last.pt)
- 大小:447.7 MB
- 格式:PyTorch state dict
- 加载方式:
torch.load("sonic_release/last.pt", map_location="cuda") - 用途:训练后的完整模型权重,可用于继续训练或导出 ONNX
3.6 样本数据 (sample_data/)
| 目录 | 文件 | 大小 | 说明 |
|---|---|---|---|
robot_filtered/ |
walk_forward_amateur_001__A001.pkl |
344 KB | 机器人运动学空间 |
robot_filtered/ |
walk_forward_amateur_001__A001_M.pkl |
344 KB | 镜像版本 |
smpl_filtered/ |
walk_forward_amateur_001__A001.pkl |
1.3 MB | SMPL 参数空间 |
smpl_filtered/ |
walk_forward_amateur_001__A001_M.pkl |
1.3 MB | 镜像版本 |
soma_filtered/ |
walk_forward_amateur_001__A001.pkl |
400 KB | SOMA 参数空间 |
soma_filtered/ |
walk_forward_amateur_001__A001_M.pkl |
400 KB | 镜像版本 |
- 格式:Python pickle (
.pkl) - 内容:业余演员行走前进的运动捕捉数据
- 后缀
_M:对称/镜像版本数据
四、技术架构
4.1 依赖框架
| 组件 | 技术 |
|---|---|
| 深度学习框架 | PyTorch |
| 推理引擎 | ONNX Runtime / TensorRT |
| 训练框架 | NVIDIA Isaac Lab |
| 人体模型 | SMPL (Skinned Multi-Person Linear) |
| 运动捕捉 | SOMA |
| 遥操作设备 | PICO VR 头显 |
| 部署平台 | Unitree G1 人形机器人 (29 DOF) |
4.2 推理流程
控制输入 推理层 执行层
┌─────────┐ ┌──────────────────────────┐ ┌──────────────────┐
│ 键盘控制 │ │ │ │ │
│ 手柄控制 │────→│ SONIC 统一策略 │────→│ G1 人形机器人 │
│ VR 遥操作 │ │ ┌──────┐ ┌──────┐ │ │ 29 个自由度 │
│ 运动规划 │ │ │Encoder│→│Decoder│ │ │ │
└─────────┘ │ └──────┘ └──────┘ │ └──────────────────┘
│ (ONNX + TensorRT) │
└──────────────────────────┘
↑
┌──────────────────────┐
│ Kinematic Planner │
│ 运动风格规划器 │
│ (planner_sonic.onnx)│
└──────────────────────┘
4.3 三种控制模式
| 模式 | 输入设备 | 应用场景 |
|---|---|---|
| 键盘控制 | WASD + 方向键 | 快速测试、Demo 演示 |
| 手柄控制 | Xbox/PS 手柄 | 精确操控、数据收集 |
| VR 遥操作 | PICO 头显 + 手柄 | 全身运动映射、人机交互 |
五、文件大小分布
| 目录/文件 | 大小 | 占比 |
|---|---|---|
bones_seed_smpl/ (训练数据) |
30.7 GB | 96.0% |
planner_sonic.onnx |
738 MB | 2.3% |
sonic_release/last.pt |
447.7 MB | 1.4% |
media/ (演示媒体) |
244 MB | 0.8% |
model_encoder.onnx + model_decoder.onnx |
86.8 MB | 0.3% |
sample_data/ |
~4 MB | <0.1% |
| 配置文件 + 文档 | <1 MB | <0.1% |
| 总计 | 约 32.7 GB | 100% |
六、使用建议
6.1 模型加载
import torch
import onnxruntime as ort
# PyTorch 权重加载
state_dict = torch.load("sonic_release/last.pt", map_location="cuda")
# ONNX 推理
encoder_session = ort.InferenceSession("model_encoder.onnx")
decoder_session = ort.InferenceSession("model_decoder.onnx")
planner_session = ort.InferenceSession("planner_sonic.onnx")
6.2 训练/部署参考
- 官方文档:https://nvlabs.github.io/GR00T-WholeBodyControl/
- 安装指南(部署):https://nvlabs.github.io/GR00T-WholeBodyControl/getting_started/installation_deploy.html
- 安装指南(训练):https://nvlabs.github.io/GR00T-WholeBodyControl/getting_started/installation_training.html
- GitHub 仓库:https://github.com/NVlabs/GR00T-WholeBodyControl
- C++ 推理栈:
gear_sonic_deploy/(GR00T-WholeBodyControl 仓库中)
七、许可证说明
| 组件 | 许可证 |
|---|---|
| 源代码、脚本、软件组件 | Apache License 2.0 |
| 训练好的模型权重、检查点 | NVIDIA Open Model License |
- Apache 2.0:允许自由使用、修改、分发,需保留版权声明
- NVIDIA Open Model License:允许商用(需署名),需遵守 NVIDIA Trustworthy AI 条款,需包含许可证副本
详见 LICENSE 文件完整声明。
八、下载说明
planner_sonic.onnx 下载记录
- 文件大小:738 MB ✅(已下载完成)
- 下载方式:通过 Hugging Face 国内镜像
hf-mirror.com下载 - 原因:直连
huggingface.co被网络环境阻断,改用镜像站成功下载
如果你的网络也无法直连 Hugging Face,可以使用国内镜像:
wget https://hf-mirror.com/nvidia/GEAR-SONIC/resolve/main/planner_sonic.onnx \ -O planner_sonic.onnx
九、相关链接
十、引用
@article{luo2025sonic,
title={SONIC: Supersizing Motion Tracking for Natural Humanoid Whole-Body Control},
author={Luo, Zhengyi and Yuan, Ye and Wang, Tingwu and Li, Chenran and Chen, Sirui
and Casta{\~n}eda, Fernando and Cao, Zi-Ang and Li, Jiefeng and Minor, David
and Ben, Qingwei and Da, Xingye and Ding, Runyu and Hogg, Cyrus and Song, Lina
and Lim, Edy and Jeong, Eugene and He, Tairan and Xue, Haoru and Xiao, Wenli
and Wang, Zi and Yuen, Simon and Kautz, Jan and Chang, Yan and Iqbal, Umar
and Fan, Linxi and Zhu, Yuke},
journal={arXiv preprint arXiv:2511.07820},
year={2025}
}
报告基于数据集实际文件内容和官方 README 整理。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)