Universal Skeleton Understanding via Differentiable Rendering and MLLMs
Organizations: State Key Laboratory of General Artificial Intelligence, Peking University, Shenzhen Graduate School, China · Tencent · Nanjing University of Aeronautics and Astronautics, Nanjing, Jiangsu, China
Abstract
Multimodal large language models (MLLMs) exhibit strong visual-language reasoning, yet cannot process structured, non-visual data such as human skeletons. Existing methods either compress skeleton dynamics into lossy feature vectors for text alignment, or quantize motion into discrete tokens that generalize poorly across heterogeneous skeleton formats. We present SkeletonLLM, which achieves universal skeleton understanding by translating arbitrary skeleton sequences into the MLLM's native visual modality. At its core is DrAction, a differentiable, format-agnostic renderer that converts skeletal kinematics into compact image sequences. Because the pipeline is end-to-end differentiable, MLLM gradients can directly guide the rendering to produce task-informative visual tokens. To further enhance reasoning capabilities, we introduce a cooperative training strategy: Causal Reasoning Distillation transfers structured, step-by-step reasoning from a teacher model, while Discriminative Finetuning sharpens decision boundaries between confusable actions. SkeletonLLM demonstrates strong generalization \revise{in open-vocabulary action recognition, while its learned reasoning capabilities naturally extend to motion captioning and question answering across heterogeneous skeleton formats} -- suggesting a viable path for applying MLLMs to non-native modalities. Code: https://github.com/wangzy01/SkeletonLLM.
Figures & tables
| Methods | Type | Venue | NTU-60 (Acc, %) | NTU-120 (Acc, %) | ||||||
| 55/5 | 48/12 | 40/20 | 30/30 | 110/10 | 96/24 | 80/40 | 60/60 | |||
| ReViSE ( Hubert Tsai et al., 2017 ) | Align | ICCV’17 | 53.91 | 17.49 | 24.26 | 14.81 | 55.04 | 32.38 | 19.47 | 8.27 |
| JPoSE ( Wray et al., 2019 ) | Align | ICCV’19 | 64.82 | 28.75 | 20.05 | 12.39 | 51.93 | 32.44 | 13.71 | 7.65 |
| CADA-VAE ( Schonfeld et al., 2019 ) | Align | CVPRW’19 | 76.84 | 28.96 | 16.21 | 11.51 | 59.53 | 35.77 | 10.55 | 5.67 |
| SynSE ( Gupta et al., 2021 ) | Align | ICIP’21 | 75.81 | 33.30 | 19.85 | 12.00 | 62.69 | 38.70 | 13.64 | 7.73 |
| PURLS ( Zhu et al., 2024 ) | Align | CVPR’24 | 79.23 | 40.99 | 31.05 | 23.52 | 71.95 | 52.01 | 28.38 | 19.63 |
| Training | Testing | Skeleton Format | Method | Acc |
| NTU-60 | NW-UCLA | Kinect v2 Kinect v1 | TDSM | 43.19 |
| NTU-60 | NW-UCLA | Kinect v2 Kinect v1 | MotionGPT | 10.35 |
| NTU-60 | NW-UCLA | Kinect v2 Kinect v1 | SKI-LVLM | 31.87 |
| NTU-60 | NW-UCLA | Kinect v2 Kinect v1 | SkeletonLLM | 60.38 |
| HumanML3D | NW-UCLA | MoCap Kinect v1 | MotionGPT | 9.11 |
| HumanML3D | NW-UCLA | MoCap Kinect v1 | SKI-LVLM | 28.74 |
| Method | R@1 | R@3 | MM-Dist | BLEU@4 | ROUGE-L | CIDEr | BertScore |
| MotionGPT | 2.83 | 9.86 | 12.27 | 3.50 | 13.83 | 4.16 | 14.03 |
| MotionLLM | 4.90 | 14.34 | 9.67 | 5.57 | 19.72 | 5.08 | 23.44 |
| InternVL3-8B | 6.25 | 20.08 | 6.36 | 7.15 | 27.01 | 9.49 | 29.45 |
| Ours | 11.60 | 28.56 | 5.94 | 9.63 | 39.84 | 18.25 | 37.28 |
| Task | Test Set | Format ( ) | Superv.? | Metric |
| Open-vocab recog. | NTU-60 (55/5) | Kinect v2 (25) | ✓ | 87.37% Acc |
| Cross-format recog. | NW-UCLA | Kinect v1 (20) | ✗ | 60.38% Acc |
| Cross-format caption. | HumanML3D | SMPL (22) | ✗ | 37.28 BertScore |
| Motion QA | Skeleton-QA | Kinect v2 (25) | ✗ | 68 / 65% Acc |
| Training | NTU-60 55/5 | NTU NW-UCLA | Skeleton-QA (Temp / Causal) |
| NTU-60 only | 87.37 | 60.38 | 68 / 65 |
| Joint training | 88.52 | 65.04 | 73.2 / 70.9 |
| Method | 48/12 | 30/30 |
| GPT-4o + 3D+Velocity | 35.74 | 19.27 |
| GPT-4o + DrAction | 43.52 | 25.68 |
| GPT-5.4 + DrAction | 53.18 | 33.11 |
| SkeletonLLM (joint-trained) | 64.72 | 37.84 |
| Renderer | NTU-60 (Acc, %) | NTU-120 (Acc, %) | ||||||
| 55/5 | 48/12 | 40/20 | 30/30 | 110/10 | 96/24 | 80/40 | 60/60 | |
| 3D+Velocity | 81.32 | 58.77 | 37.83 | 31.45 | 70.48 | 60.60 | 37.74 | 28.59 |
| 2D Projection | 81.51 | 58.16 | 38.81 | 31.80 | 70.94 | 61.09 | 38.30 | 27.69 |
| JTM | 55.86 | 26.37 | 23.45 | 16.83 | 45.51 | 34.03 | 15.09 | 8.75 |
| Ours (w/o NFM) | 83.30 | 61.09 | 40.93 | 33.87 | 71.29 | 62.62 | 40.69 | 30.67 |
| Ours (Full) | 87.37 | 64.72 | 46.15 | 37.84 | 76.05 | 67.20 | 44.37 | 34.94 |
| Configuration | NTU-60 (Acc, %) | NTU-120 (Acc, %) | ||||||
| 55/5 | 48/12 | 40/20 | 30/30 | 110/10 | 96/24 | 80/40 | 60/60 | |
| w/o CR-Distill | 85.27 | 63.37 | 43.06 | 35.90 | 74.68 | 64.97 | 43.96 | 33.79 |
| w/o Disc-FT | 85.80 | 63.66 | 45.58 | 36.29 | 75.25 | 65.90 | 43.05 | 33.40 |
| w/o Both | 84.43 | 62.09 | 40.78 | 35.05 | 72.95 | 64.05 | 41.13 | 32.77 |
| Joint Training | 82.68 | 61.46 | 40.30 | 34.10 | 72.42 | 62.03 | 40.18 | 30.94 |
| Full Pipeline | 87.37 | 64.72 | 46.15 | 37.84 | 76.05 | 67.20 | 44.37 | 34.94 |
Appendix figures & tables22 assets
Supplementary material from the paper’s appendix.
Appendix
| Component | Addresses | Key Mechanism |
| DrAction | Modality gap, format heterogeneity | Differentiable rendering with LBS |
| NFM | Information preservation | Pose-conditioned appearance |
| Cooperative Training | Optimization stability, reasoning depth | Progressive curriculum + distillation |
| Configuration | NTU-60 (Acc, %) | NTU-120 (Acc, %) | ||||||
| 55/5 | 48/12 | 40/20 | 30/30 | 110/10 | 96/24 | 80/40 | 60/60 | |
| w/o NFM | 83.30 | 61.09 | 40.93 | 33.87 | 71.29 | 62.62 | 40.69 | 30.67 |
| w/o Temporal | 86.35 | 63.56 | 45.62 | 36.94 | 74.80 | 65.98 | 43.01 | 33.45 |
| w/ RNN | 86.33 | 64.45 | 45.99 | 37.18 | 75.97 | 66.89 | 43.17 | 34.36 |
| w/ LSTM | 86.65 | 64.95 | 45.41 | 37.62 | 75.72 | 67.43 | 43.54 | 34.27 |
| w/ GRU (Full) | 87.37 | 64.72 | 46.15 | 37.84 | 76.05 | 67.20 | 44.37 | 34.94 |
| Methods | Type | Venue | Xsub (%) | Xview (%) | ||
| 46/5 | 39/12 | 46/5 | 39/12 | |||
| ReViSE ( Hubert Tsai et al., 2017 ) | Align | ICCV’17 | 54.2 | 19.3 | 54.1 | 12.7 |
| JPoSE ( Wray et al., 2019 ) | Align | ICCV’19 | 57.4 | 27.0 | 53.1 | 22.8 |
| CADA-VAE ( Schonfeld et al., 2019 ) | Align | CVPRW’19 | 73.9 | 33.7 | 74.5 | 29.5 |
| SynSE ( Gupta et al., 2021 ) | Align | ICIP’21 | 69.5 | 36.5 | 71.7 | 25.4 |
| SMIE ( Zhou et al., 2023 ) | Align | ACM MM’23 | 72.9 | 44.2 | 71.6 | 40.7 |
| Resolution | |||
| Top-1 (%) | 54.24 | 59.02 | 59.98 |
| Configuration | Per-frame (ms) | 12 frames (ms) | Memory (GB) |
| , FP32 | 1.7 | 20.4 | 0.5 |
| , FP32 | 1.6 | 19.3 | 0.5 |
| Stage | Latency (ms) | Proportion |
| DrAction rendering (12 frames) | 20.4 | 10.6% |
| Vision Encoder | 46.2 | 24.1% |
| LLM generation (avg. 16 tokens) | 125.0 | 65.3% |
| End-to-end total | 191.6 | 100% |
| Component | Memory (GB) | Note |
| InternVL3-8B (BF16) | 13.5 | Model weights |
| LoRA Adapters | 0.4 | Finetuning params |
| DrAction (Gaussians + NFM) | 0.5 | Renderer params |
| Intermediate activations (12 frames) | 1.1 | KV Cache + activations |
| Peak inference total | 15.5 | — |
| Dataset | Joints | Acquisition | Topology |
| NTU-60/NTU-120 | 25 | Kinect v2 | Kinect skeleton |
| NTU-60 (2D) | 17 | 2D Pose Est. | COCO keypoints |
| NW-UCLA | 20 | Kinect v1 | Kinect skeleton |
| HumanML3D | 22 | MoCap | SMPL model |
| PKU-MMD | 25 | Kinect v2 | Kinect skeleton |
| Method | Temporal | Causal | Fine-grained | Contrastive | ROUGE-L | BertScore |
| MotionGPT | 31 | 26 | 33 | 40 | 22 | 34 |
| MotionLLM | 37 | 33 | 39 | 43 | 27 | 39 |
| SKI-LVLM | 29 | 25 | 32 | 38 | 21 | 35 |
| InternVL3-8B | 53 | 48 | 55 | 59 | 39 | 49 |
| Ours (w/o CR) | 55 | 52 | 59 | 62 | 43 | 51 |
| Ours (Full) | 68 | 65 | 73 | 76 | 52 | 57 |
| Type | Example Templates |
| MQA | “Analyze the action sequence. Select the best match from options below. Describe your reasoning, then output the final result. A. [action1] B. [action2] …” |
| Temporal | “What is the first/last step of this action?” |
| “In what order do the body parts move?” | |
| Causal | “Why might this person be performing this action?” |
| “What could be the goal of this movement?” | |
| Fine-grained | “Which body parts are primarily involved?” |