Tevior commited on
Commit
0905f67
路
verified 路
1 Parent(s): 9da6e9b

Model card

Browse files
Files changed (1) hide show
  1. README.md +65 -0
README.md ADDED
@@ -0,0 +1,65 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: cc-by-nc-4.0
3
+ library_name: pytorch
4
+ pipeline_tag: text-to-3d
5
+ tags:
6
+ - text-to-motion
7
+ - motion-generation
8
+ - skeleton
9
+ - animation
10
+ - flow-matching
11
+ ---
12
+
13
+ # TopX
14
+
15
+ TopX generates motion for an unseen skeleton from a text prompt and the skeleton file alone: its kinematic tree, rest
16
+ pose and joint names. No clips of the character, templates, retargeting or fine-tuning are needed. It is a 73M-parameter
17
+ flow-matching transformer with attention factorised over joints and frames; across joints, queries and keys are rotated
18
+ by HK-RoPE, a heat-kernel rotary encoding of the skeleton graph. One model animates skeletons from 4 to 117 joints and
19
+ generates up to 240 frames at 30 fps.
20
+
21
+ **Code:** https://github.com/CHDTevior/TopX-OOD-Code 路 **Paper:** arXiv (link coming soon)
22
+
23
+ ## Files
24
+
25
+ | file | content | sha256 |
26
+ |---|---|---|
27
+ | `topx.pt` | `{"config": architecture and normalisation, "model": state dict}` (293 MB, float32) | `f6d8e086235d1f99069cce47a2a7e5d59141a9442b7b5b2880937716b0ee405a` |
28
+
29
+ ## Usage
30
+
31
+ ```bash
32
+ git clone https://github.com/CHDTevior/TopX-OOD-Code.git && cd TopX-OOD-Code
33
+ pip install -r requirements.txt
34
+ huggingface-cli download Tevior/TopX-OOD topx.pt --local-dir weights
35
+ bash demo/run_demos.sh # nine demo skeletons, no text encoder needed
36
+ python scripts/generate.py --ckpt weights/topx.pt --skeleton my_rig.bvh --up +Y --forward +Z \
37
+ --text "An object walks forward and sits down." --frames 120 --out out/
38
+ ```
39
+
40
+ The output is a BVH file of the input hierarchy (in its own axes and units), an `.npz` with joint positions and
41
+ rotations, and a GIF preview. Prompts and joint descriptions are encoded with LLM2Vec
42
+ (`McGill-NLP/LLM2Vec-Meta-Llama-3-8B-Instruct-mntp-supervised`, built on the gated `meta-llama/Meta-Llama-3-8B-Instruct`).
43
+
44
+ ## Training data
45
+
46
+ The training split of the SkelShift benchmark: the Objaverse-XL subset of UniML3D, the AniMo4D animal library with
47
+ HumanML3D, further animations and species from the same game library as AniMo4D, and the Truebones zoo (139,102 clips
48
+ on 5,127 skeletons with 6 to 142 joints). See the paper for the split and the evaluation.
49
+
50
+ ## License
51
+
52
+ The weights are released under [CC BY-NC 4.0](https://creativecommons.org/licenses/by-nc/4.0/): non-commercial use
53
+ with attribution. The code is MIT-licensed. Licences of the training data and of the text encoder apply to their
54
+ respective parts.
55
+
56
+ ## Citation
57
+
58
+ ```bibtex
59
+ @article{sun2026topx,
60
+ title = {TopX: Text-to-Motion for Unseen Skeletons from the Skeleton File Alone},
61
+ author = {Sun, Tengjiao and Fang, Pengcheng and Zhan, Xiaoyu and Fu, Dongjie and Cai, Xiaohao and Kim, Hansung},
62
+ journal = {arXiv preprint},
63
+ year = {2026}
64
+ }
65
+ ```