面向真实世界运动语言模型的可插拔式二维运动接口 A Plug-and-Play 2D Motion Interface for Real-World Motion Language Models
即插即用的2D运动编码器让3D预训练MoLM直接接受2D动作输入,真实视频上反超3D
前置知识
VQ-VAE 与运动分词
VQ-VAE 由编码器、解码器和一个大小为 K 的码本组成:编码器把连续序列压缩为潜特征序列,每个特征向量按最近邻替换成码本中的离散码,解码器再从码恢复原信号。MoLM 借此把动作序列变成「动作词」序列,让语言模型像处理文本一样处理动作。本文的 2D 编码器要做的,就是把输出对齐到 VQ-VAE 编码器的连续潜空间并复用同一码本量化。
论文的方法设计、推理流程和全部分析(token 一致率、k 近邻替换实验)都建立在 VQ-VAE 潜空间与码本之上,不懂它就无法理解「即插即用」到底插在哪里。
运动语言模型(MoLM)
MoLM 指把人体动作与自然语言统一进同一语言建模框架的模型族:TM2T 最早用运动 token 实现动作与文本的自回归互译;MotionGPT 引入预训练语言模型与指令微调;MG-MotionLLM 用细粒度标注(FineMotion)强化细节描述。它们通常在 HumanML3D 等 3D 动作数据上训练,支持动作描述(motion captioning)与动作生成等任务。
本文实验在 TM2T、MotionGPT、MG-MotionLLM 三个基线上展开,目标是证明 2D 接口对任意基于 VQ-VAE 运动分词的 MoLM 都通用。
HumanML3D 263 维运动表示
每帧人体状态被编码为 263 维向量 $X^{3D}\in\mathbb{R}^{T\times 263}$:根旋转速度 1 维、根线速度 2 维、根 y 位置 1 维、21 个关节的 3D 位置 63 维、21 个关节旋转 126 维、22 个关节速度 66 维、脚部接触 4 维。其中关节旋转、深度与全局位置正是单目视频难以可靠估计的成分。
2D 接口的本质是从这 263 维中丢弃深度与旋转、只保留单目可见的 68 维信息,263 维对 68 维的对比是理解本文信息取舍的关键。
R-Precision 与 MM-Dist
R-Precision 是检索式指标:将动作与候选文本分别嵌入同一空间后做匹配,看真实配对文本能否排进 Top-1/2/3,衡量动作-文本语义一致性;MM-Dist 计算配对的动作-文本嵌入间欧氏距离,越低越好。论文常把它们与 BLEU、ROUGE-L、CIDEr、BERTScore 一起报告。
Table 1 与 Table 4 的核心结论都由这些指标支撑,例如 TM2T 上本文 Top-1 为 0.485,与 3D 输入的 0.488 几乎持平。
特征对齐(蒸馏式适配)
指冻结大模型、只训练一个轻量映射模块,用 $\mathcal{L}_{1}$ 距离让新模态特征逼近原模型内部特征的做法,类似知识蒸馏中的特征匹配。本文式 (1) 即 $\mathcal{L}=\frac{1}{SD}\lVert H^{2D}-H^{3D}\rVert_{1}$,real-video adapter 的式 (3) 也复用同一目标。
这是全文唯一的训练信号:理解该损失才能明白为什么原 MoLM 无需任何修改或微调就能吃进 2D 输入。
研究动机
运动语言模型(MoLM,如 TM2T、MotionGPT、MG-MotionLLM)先用 VQ-VAE 把人体动作离散成运动 token,再交给 T5 等语言模型做动作描述与理解,其能力建立在动作捕捉或多视角重建得到的高质量 3D 运动之上。这些模型采用的 HumanML3D 表示是 263 维状态向量:根旋转速度 1 维、根线速度 2 维、根高度 1 维、21 个关节位置 63 维、21 个关节旋转 126 维、22 个关节速度 66 维、脚部接触 4 维。而真实应用中输入来自单目相机,要从 2D 观测精确且高效地估计出包含关节旋转、深度与全局位置的等价 3D 运动非常困难,估计结果与训练分布的落差会严重损害运动理解性能。作者自建真实视频集上的实验印证了这一点:以 TRACE 或 WHAM 估计的 3D 运动为输入,MG-MotionLLM 的平均指标相对干净 3D 参考下降 −50.7% / −35.6%,TM2T 也下降 −37.7% / −35.9%。
本文的目标是本文有两个目标。工程目标是设计一个「即插即用」的 2D Motion Interface:一个外挂的 2D 运动编码器,让任何基于 VQ-VAE 运动分词的 3D 预训练 MoLM 不修改结构、不微调原模型就能接受 2D 运动输入(COCO 格式 13 关键点级别),且训练成本极低——单张 A100 40GB、batch 64、3000 epoch 即可完成。科学目标是利用该接口在统一的潜空间中直接对比 2D 与 3D 的运动特征和离散 token,检验「MoLM 的运动理解是否真的依赖 3D 特有信息(关节旋转、深度)」这一隐含假设;并进一步构建真实单目视频评测集、提出 real-video adapter,证明在单目姿态估计条件下 2D 输入比 3D 输入更实用、算力更低。
与已有工作不同的是,已有路线要么在 2D 运动上从头重训整个 MoLM——作者实测 TM2T 平均掉 −25.8%、MG-MotionLLM 掉 −12.8%,算力开销也大;要么先做 2D-to-3D lifting——但它只给 3D 关节位置,无法提供 MoLM 必需的关节旋转。本文的切入角度是「对齐而非重训、逼近而非重建」:完全冻结 MoLM,只训练一个小型 2D 编码器 $E_{2D}$,把 $X^{2D}\in\mathbb{R}^{T\times 68}$ 映射进 VQ-VAE 编码器 $E_{3D}$ 的连续潜空间,推理时直接借用原码本量化。由于 2D 与 3D 特征共享同一潜空间,论文首次得以在连续特征与离散 token 两个层面量化「2D 能多好地近似 3D」(Top-1 token 一致率 44.8%),并据此发现码本中邻域 token 语义高度相近:随机替换 50% token 平均掉 −34.2%,而 k 近邻替换在 k=9 时仅 −1.4%——这解释了为何不必逐 token 一致也能保住性能。
核心方法
语言模型真正消费的是运动 token 的语义:只要 2D 输入在 VQ-VAE 潜空间里被映射到与对应 3D 特征足够接近的位置,量化后选中的 token 就落在语义邻域内,下游几乎无感。技术路线分三段:先把 3D 运动退化为仅保留单目可见信息的 2D 运动——随机偏航/俯仰旋转后正交投影、丢弃深度,只保留 SMPL 与 COCO 共有的 13 个关节,组装成 68 维帧特征 $X^{2D}\in\mathbb{R}^{T\times 68}$;然后冻结 MoLM 的分词器与语言模型,仅训练 2D 运动编码器 $E_{2D}$,用 L1 特征对齐损失 $\mathcal{L}=\frac{1}{SD}\lVert H^{2D}-H^{3D}\rVert_{1}$ 把 $E_{2D}(X^{2D})$ 拉向 $E_{3D}(X^{3D})$;推理时 $H^{2D}$ 用原码本量化成 token,与提示 $P$ 一起送入语言模型输出 $\hat{Y}=\mathrm{LM}(P,C^{2D})$。真实视频下再在 $E_{2D}$ 前插入 real-video adapter 去噪。
核心创新是「潜空间对齐式即插即用接口」。与从头重训相比,它完整复用了在 3D 数据上学到的码本和语言模型,训练对象只是一个小编码器;与 2D-to-3D lifting 相比,它绕开了无法可靠估计关节旋转的难题,直接在 MoLM 自己的表示空间里「伪装」出 3D 特征。两个支撑性设计:其一,2D 运动构造时做视角随机化(训练期随机 yaw/pitch 旋转)并采用正交投影,使编码器对相机视角鲁棒且不引入相机参数假设,透视差距留给 adapter 处理;其二,针对真实视频的 real-video adapter——用 Pyrender 从随机视角渲染 AMASS 动作、再以 ViTPose 提取带置信度的 2D 姿态,构成「干净 3D + 姿态估计 2D」的伪真实训练配对,把轻量适配器 $A_{\text{real}}$ 插在 $E_{2D}$ 之前、只优化适配器本身,从而让整条推理链路以 17.2 GFLOPs/帧的 ViTPose 取代 250.2 GFLOPs/帧的 WHAM。
方法步骤详情
第一步,构造 2D 运动:输入 $X^{3D}\in\mathbb{R}^{T\times 263}$,重建 22 关节 SMPL 骨架,训练时随机 yaw/pitch 旋转,正交投影丢弃深度,仅保留 SMPL/COCO 共有的 13 关节得 $J^{2D}$,组装 68 维根相对特征(根取双髋中点)。第二步,训练 $E_{2D}$:潜维 512、时间下采样 4($S=T/4$),AdamW 学习率 $10^{-4}$,单张 A100 40GB 训 3000 epoch,损失为 L1 特征对齐。第三步,推理:$X^{2D}\to E_{2D}\to H^{2D}$,用码本 $B^{3D}$ 量化成 $C^{2D}$,与提示 $P$ 一起输入语言模型得输出。第四步,真实视频适配:由 ViTPose 输出构造 $X^{2D}_{PE}\in\mathbb{R}^{T\times 68}$ 与置信度 $\mathrm{Conf}\in\mathbb{R}^{T\times 13}$,冻结 $E_{2D}$,在渲染伪配对上用同样 L1 损失(式 3)只优化 $A_{\text{real}}$。
技术新颖性
技术新颖性有三点。第一,接口定义在「连续潜空间 + 共享码本」层面,而非输出层或提示层,使 2D/3D 一致性可被精确度量:Top-1/2/3 token 一致率为 44.8%/59.6%/67.1%,远高于 $K=512$ 码本下约 0.20%/0.59% 的随机基线,这是以往 2D-3D 跨表示工作(统一码本、V-VIPE 等)没有给出过的直接证据。第二,「邻域 token 语义等价」分析:把 3D token 序列中 50% 的 token 替换为潜空间 k 近邻 token,k=1 到 9 平均降幅最多仅 −1.4%,而随机替换掉 −34.2%,系统性证明了 VQ-VAE 码本的语义平滑性足以吸收 2D 近似误差,解释了 44.8% 一致率为何够用。第三,real-video adapter 的伪真实配对构造(渲染 AMASS + ViTPose + 置信度输入)绕开了「真实视频没有 GT 3D」的监督难题,且让推理链路每帧算力从 WHAM 的 250.2 GFLOPs 降到 ViTPose-Base 的 17.2 GFLOPs,约为原来的 1/14.5。
实验结果
干净数据上 2D 追平 3D:HumanML3D 动作描述上,TM2T 的 R-Precision Top-1 0.485 vs 3D 0.488(−0.2%;2D 从头重训 0.279、−25.8%);MG-MotionLLM 上 0.576 vs 0.583(−2.8% vs Scratch −12.8%)。FineMotion 细粒度 −0.5%/−1.1%(Scratch −4.9%/−4.4%)。PCA 显示两潜空间分布大面积重叠;Top-1/2/3 token 一致率 44.8%/59.6%/67.1%;k≤9 近邻替换仅 −1.4% 而随机替换 −34.2%。真实单目视频集(132 段、14,878 帧,86.4% 语义一致)上:估计 3D 大幅退化(MG-MotionLLM 上 TRACE −50.7%),2D + adapter 全面最优:TM2T vs 干净 3D 参考达 +4.3%,MG-MotionLLM −17.5% vs 3D WHAM −35.6%;算力 17.2 GFLOPs/帧仅为 WHAM 250.2 GFLOPs 的约 1/14.5。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| 动作描述(HumanML3D 测试集,TM2T) | R-Precision Top-1 / 平均降幅 vs 3D | 0.485±0.002,平均 −0.2% | 3D 输入 0.488;2D 从头重训 0.279(−25.8%) | 较 2D Scratch 提升 74%(0.279→0.485),与 3D 输入几乎持平 |
| 动作描述(HumanML3D 测试集,MotionGPT) | R-Precision Top-1 / 平均降幅 vs 3D | 0.523±0.002,平均 +0.4% | 3D 输入 0.516(2D Scratch 因复现问题省略) | 2D 输入首次反超 3D 输入(+0.4%) |
| 动作描述(HumanML3D 测试集,MG-MotionLLM) | R-Precision Top-1 / 平均降幅 vs 3D | 0.576±0.007,平均 −2.8% | 3D 输入 0.583;2D Scratch 0.487(−12.8%) | 比 2D Scratch 的降幅收窄 10 个百分点 |
| 动作转细粒度文本(FineMotion,MG-MotionLLM,序列级) | BLEU-1 / 平均降幅 vs 3D | 0.828±0.001,平均 −0.5% | 3D 输入 0.828;2D Scratch 0.814(−4.9%) | 与 3D 持平,几乎无细粒度损失 |
| 真实单目视频动作描述(自建 132 段数据集,TM2T) | 平均降幅 vs 干净 3D 参考 | 2D 输入 w/ $A_{\text{real}}$:+4.3%(BLEU-1 0.619、CIDEr 0.645) | 3D 输入(WHAM)−35.9%;3D(WHAM)w/ $A_{3D}$ −10.8%;纯 2D −18.5% | 反超干净 3D 参考 4.3 个百分点,领先最佳 3D 方案 15.1 个百分点 |
| 真实单目视频动作描述(MG-MotionLLM) | 平均降幅 vs 干净 3D 参考 | 2D 输入 w/ $A_{\text{real}}$:−17.5% | 3D 输入(WHAM)−35.6%;3D(WHAM)w/ $A_{3D}$ −34.9%;纯 2D −46.7% | 领先最佳 3D 方案约 17.4 个百分点 |
| 真实视频推理计算成本(每帧,不含人体检测) | GFLOPs | ViTPose-Base + adapter:17.2 GFLOPs | WHAM(3D 姿态估计):250.2 GFLOPs | 算力降至约 1/14.5,同时效果更好 |
局限与改进
作者承认的局限:real-video adapter 的回归式去噪会平滑动作序列、抑制细粒度差异,导致描述「过度泛化」——S 形轨迹被说成「走动后停下」、「双手举到脸前两次」被说成「鼓掌」;且越强的模型受影响越大:MotionGPT、MG-MotionLLM 相对干净 3D 参考降幅为 −18.5%/−17.5%,TM2T 却 +4.3%,作者推测是强模型对细粒度差异更敏感、adapter 平滑化后输出趋向「平均动作」。此外自建数据集偏小(132 段、10 人、743.9 秒),动作由被试模仿、存在模仿误差(约 13.6% 视频-文本对语义不一致)。我的补充观察:方法只适用于 VQ-VAE 离散分词型 MoLM,对连续潜空间或扩散式运动模型不直接可用;13 个 COCO 关节丢掉了手脚细节;正交投影假设在强透视与相机运动下全靠 adapter 补偿;BLEU/ROUGE/CIDEr 类指标偏好通用措辞,可能低估过泛化问题的严重性;实验仅覆盖 motion-to-text 方向,未验证动作生成。
独立分析的弱点
一是回归式对齐的均值坍缩:adapter 用纯 L1 特征对齐去噪,天然偏向输出「平均潜特征」,在需要细粒度轨迹的场景(S 形路径、双手举到脸)必然丢失信息;改进方向是引入置信度加权损失、对抗或分布匹配目标,或让编码器输出多假设 token 分布而非点估计。二是伪真实配对的域差:adapter 的「真实感」来自 Pyrender 渲染加 ViTPose,与真实视频在光照、遮挡、衣物、运动模糊上的差距依然存在,遇到复杂背景或多变机位可能失效;改进方向是加入少量真实视频的半监督微调或更强的域随机化渲染。三是评测盲区:BLEU/ROUGE/CIDEr 偏好通用描述,可能系统性奖励过泛化输出;建议补充轨迹级、细粒度指标或人工细评。四是真实数据集规模小(132 段、86.4% 一致率),统计功效有限;可在公开视频(如 AIST++、EgoBody)上复验。五是单人、motion-to-text only:多人交互(SocialGen 类)与 text-to-motion 方向均未验证,2D 接口对生成质量的反向影响未知,可先在动作生成任务上做对照实验。
未来方向
作者提出的方向:其一,从部署角度解决生成描述的过度泛化问题,让 adapter 在去噪的同时保留细粒度差异;其二,从能力扩展角度,用大规模带字幕的人体运动视频继续训练 MoLM 的语言模型,扩充运动词汇、实现更细粒度的动作理解。基于本文成果还可延伸:把 2D 接口推广到连续潜空间 MoLM 与扩散式动作生成模型,验证 text-to-motion 是否同样受益;利用置信度 $\mathrm{Conf}$ 做不确定性感知的量化与采样,让模型对低可信关节自动降权;以视频基础模型特征替代手工设计的 68 维 2D 特征;将 real-video adapter 扩展到 egocentric、多视角与多人场景;更进一步,可借该接口把互联网级海量视频的 2D 姿态变成弱监督信号,反向为 3D MoLM 做大规模预训练,形成「3D 预训练 + 2D 弱监督扩展」的闭环。
复现评估
复现条件较好:代码已开源(github.com/irajisamurai/2D-Motion-Interface),训练数据全部公开——HumanML3D(14,616 段动作、44,970 条描述)、AMASS、FineMotion(420,968 个片段);自建真实视频集(132 段、14,878 帧)在附录给出构建协议但需自行录制。算力门槛低:单张 NVIDIA A100 40GB、batch 64、3000 epoch、AdamW 学习率 $10^{-4}$ 即可训练 2D 编码器,adapter 训练同样轻量(AMASS 渲染加 ViTPose 推理生成伪配对)。注意事项:论文明确所有结果是作者环境下的复现值,MotionGPT 的 2D Scratch 因可复现性问题被省略,提示官方代码复现有坑;整条链路涉及 TM2T、MotionGPT、MG-MotionLLM、TRACE、WHAM、ViTPose 等多个第三方模型,环境搭建工作量中等;主结果报告了 3 个随机种子的均值与标准差,便于核对。总体复现难度:中低。
论文图表
概念对比图:左侧 (a) 现有 MoLM 以 3D 运动为输入;右侧 (b) 本文在 MoLM 前插入一个 2D Motion Interface(即 2D 运动编码器),使其直接接受 2D 运动输入,并标注两大优势——单目视频下 2D 姿态估计比 3D 更可靠、部署更容易。
一张图说清论文的动机与定位:本文不造新模型,而是给现有 VQ-VAE 型 MoLM 加一个即插即用的输入接口,这是理解全文的入口。
定性结果图:上半部是成功与失败案例对比——成功案例如准确描述「从地板起身」「用右手抛物」,失败案例如「S 形行走」被泛化成「走动后停下」、「双手举到脸前两次」被说成「鼓掌」;下半部把 2D 输入经码本送回 VQ-VAE 解码器做重建可视化,显示加 adapter 后重建的根轨迹丢失了 S 形细粒度信息。
直观展示了方法的能力边界:「过度泛化」失败与 adapter 平滑化导致的信息丢失都有直接视觉证据,是理解论文局限性最重要的图。