前言
在上一篇文章《OmniH2O——通用灵巧且可全身远程操作并学习的人形机器人(其前身H2O是HumanPlus的重要参考)》中的“2.3节趣味工作:语音指令控制机器人干活与GPT4o加持”时,我们提到
通过将与预训练的文本到人体动作生成扩散模型MDM[57-Human motion diffusion model]连接,实现了通过语音指令控制人形机器人
如下图所示
人类可以描述所需的动作,例如“举起你的右手”,然后MDM生成相应的动作目标,由OmniH2O跟踪「with humans describing desired motions, such as “raise your right hand”. MDM generatesthe corresponding motion goals that are tracked by the OmniH2O」
我个人感觉到很amazing,毕竟确实挺酷的,直接口头让机器人干活
- 语音模型根据人类语音转换成文本
- 然后类似MDM、Momask这样的模型再根据文本生成3D骨骼动画,作为机器人的动作目标
- 然后用训练好的策略 去驱动人形机器人达到该动作目标
我真的好想复现这个工作了..
故,本文来了
第一部分 Human Motion Diffusion Model
1.1 动态扩散模型
1.1.1 什么是MDM
22年9月,来自TAU的研究者们通过此篇论文《Human Motion Diffusion Model》提出了运动扩散模型MDM,在该文中,作者通过在无分类器的方式下对CLIP进行条件化来实现文本到动作的转换,类似于文本到图像
如下图所示「运动扩散模型(MDM)通过在给定文本提示的情况下生成多样化的动作,反映了文本到动作映射的多对多特性,其中,较深的颜色表示序列中的较晚帧,即最后生成的帧」
1.1.2 MDM的技术架构图
方法如下图所示
MDM的目标是在给定任意条件c的情况下合成长度为N的人体动作x1:N。这个条件可以是任何将决定合成的现实世界信号,例如音频(Li等,2021;Aristidou等,2022)、自然语言(文本到动作)(Tevet等,2022;Guo等,2022a)或离散类别(动作到动作)(Guo等,2020;Petrovich等,2021)
此外,也可以进行无条件的动作生成,此时将其表示为空条件,生成的动作
是由关节旋转或位置
表示的人体姿势序列,其中
为关节的个数,
为关节表示的维数(总之,MDM 可以接受由位置、旋转或两者共同表示的运动,下文还会详述此点)
首先,在整体框架上
扩散建模为马尔可夫噪声过程,,其中
取自数据分布,且有
其中,是常数超参数,当
足够小时,可以得到如此近似
。从这里开始,用
表示在噪声步骤
的完整序列
在该语境中,条件运动合成将分布建模为逐步清理
的反向扩散过程。且不再像 Ho 等人(2020)所提出的那样预测
,而是遵循 Ramesh 等人(2022)的方法,直接预测信号本身,即
,其目标是(Ho 等人,2020)
其次,在几何损失上
在运动领域,生成网络通常使用几何损失进行正则化(Petrovich等,2021;Shi 等,2020)。这些损失用于强化物理属性并防止伪影,促进自然和连贯的运动
在这项工作中,作者尝试了三种常见的几何损失来调节(1)位置(在我们预测旋转的情况下),(2)脚部接触,以及(3)速度
// 待更