投稿问答最小化  关闭

万维书刊APP下载

论文一起读 | 从广播视频中学习物理模拟的网球技能

2023/6/16 10:16:31  阅读:77 发布者:

以下文章来源于深圳大学可视计算研究中心 ,作者孙豪文

导读

本文是VCC孙豪文同学对论文 Learning Physically Simulated Tennis Skills from Broadcast Videos 的解读,该工作来自斯坦福大学、英伟达、多伦多大学、向量研究所、西蒙菲莎大学并已被发表在计算机图形学顶级会议SIGGRAPH 2023上。

项目主页:

https://research.nvidia.com/labs/toronto-ai/vid2player3d/

该工作提出一种系统,从大规模的网球比赛视频中学习多样的、基于物理模拟的网球技能。该系统结合低层次的模仿策略和高层次的运动规划策略,解决了从视频中获取运动数据质量低的问题,从而使得角色能够在连续多个回合中使出复杂的网球技能。

注:本文

与视频均来自原论文与其项目主页。

I

 引言

近年来,深度强化学习和运动模仿技术的结合成为基于物理的角色动画控制器的重要核心,两者的结合使得虚拟角色能够执行逼真的动作以及各式的运动技巧。达成这些的前提是高质量的运动捕捉数据作为运动模仿技术的模仿对象,然而对于体育类型的运动、特别是对技巧高要求的运动,动作捕捉数据的获取是非常昂贵的,一方面来自于场地的限制(运动场地和动捕场地不同),另一方面来自于动捕演员和运动员的差异。相比之下,体育视频有着非常丰富的数据源。虽然现在有许多工作专注于从视频中估计人体位姿、重定向角色动画,然而从体育视频中提取出具有技巧性高的体育技能仍是一大挑战。比如这篇论文中的如何保证击球的高命中率,因为微妙而复杂的姿势变化(特别是挥拍)会很大程度的影响网球的飞行轨迹。

本次导读论文介绍一种从视频学习网球技能的基于物理的角色动画系统,该系统使用了现有的视频人体位姿估计的工作,并结合低层次的运动模仿策略 (motion tracking) 和高层次的运动规划策略,旨在让虚拟角色能够运用各式的网球技巧。因此,这里将有几个挑战需要被解决:

如何保证击球命中率?因为击球点位于骨架的末端(手部-网球拍),骨骼链路上的关节角的微小变化使得角色容易发生击球失误,而人体位姿估计相比于动捕数据,误差和噪声较高;

在没有标注的情况下如何学习不同且玩家可控的击球方式,如上旋球、切球、双反等带有旋转的击球。

II

 技术贡献

本工作主要贡献如下:

从广播视频中学习多样化和复杂的网球技能;

使用物理先验生成具有更高运动质量的运动嵌入的运动重建流程;

利用混合方法从不完美的运动数据中构建运动控制器。

III

 方法介绍

论文的方法分为四个阶段,如图1所示:

1 系统流水线总览

第一阶段的目标是从网球比赛视频中提取角色在世界坐标系下的运动信息;

第二阶段的目标是将第一阶段提取的人体运动信息转化为带有动力学约束的运动数据,并同时获得一个基于物理的低层次运动模仿控制器;

第三阶段的目标则是利用第二阶段所得的运动数据构建一个低维的隐空间和对应的解码器;

第四阶段的目标是构建一个高层次的运动规划策略,从利用第三阶段的隐空间和解码器进行采样、解码,并用第二阶段的低层次的运动模仿控制器输出关节扭矩,从而使得虚拟角色执行网球技能。

网球视频的信息提取(Video Annotation

第一阶段目标是获取网球手的位置以及击球信息。作者使用了Yolo4来获取网球手的边界框并将框内区域输入到ViTPose进行2D位姿关键点估计,最后再使用HyberIK技术估计出SMPL参数。这里只估计靠近相机的网球手(远离相机一侧的网球手占视频区域很小、位姿估计误差大)。

然而这些信息位于角色的坐标系下,而网球运动需要知道网球手在网球场的具体位置,因此网球手的运动轨迹也需要被提取出来。作者以网球场中心作为坐标原点,并通过网球场边界线来估算出相机矩阵。然后将踝关节的图像坐标结合相机矩阵计算出网球手的球场坐标,并通过一些方法来进一步减少误差。

最后,通过人工标记击球的时刻,并将一个击球周期(两次击球的时间间隔)映射到[0,2π],在经过正余弦编码,得出击球相位。这一数据将被用于后续的阶段。

低层次的运动模仿(Low-level Imitation

这一阶段有两个目标,一是从第一阶段得到的数据中学习网球技能(训练一个基于物理的模仿策略,输出关节扭矩),二是将第一阶段的数据转化为具有动力学约束的运动数据。由于这两个目标是矛盾的,因为第一阶段的得到的网球运动数据不保证物理合理,因此目标一训练这样一个模仿策略容易失败,而目标二又需要训练好的模仿策略。为此作者引入AMASS这一动作捕捉数据集,对模仿策略进行训练,然后再利用第一阶段所得的网球运动数据来进行微调。

这里使用深度强化学习进行训练,方案类似于SimPoE,状态 (state) 为关节的位置和速度,输出动作 (action) 为关节扭矩,奖励设计主要以当前状态和模仿对象的关节信息的L2距离为主,这里不再赘述。

网球运动隐空间构建(Motion Embedding

这一阶段目标是利用第二阶段通过模仿网球运动得到的运动数据,结合MVAE来训练编码器和解码器,并得到一个低维的运动隐空间,如图2所示。这时可以将编码器替换成一个隐空间的采样器,进行条件化采样,如图3所示。一般的做法是利用深度强化学习训练一个任务相关的策略,来进行隐空间采样然后解码,得到一帧运动,如图3所示。这个思路基本上就是MVAE这一篇论文的思路[2]

2 MVAE训练阶段,基于c-VAE,训练目标是重构运动,从而得到一个低维隐空间[2]

3 MVAE结合强化学习. 策略会采样出一个运动的隐变量,并通过解码得出一帧信息[2]

高层次运动规划(High-level Motion Planning

前三个阶段的目标主要聚焦在角色本身的运动上,而忽略了球的轨迹信息,因此这一阶段:高层次运动规划,需要考虑球的轨迹信息,并根据当前角色的状态来对隐空间进行采样、解码得到下一帧模仿目标,并使用第二阶段得到的低层次运动模仿策略的控制器来进行物理仿真。从而使虚拟角色使出具有动力学约束的网球技能。

这里的奖励设置主要有两部分组成且分别对应两个阶段:网球拍位置奖励函数对应击球前(式1)、击球落点的奖励函数对应击球后(式2)。

网球拍位置奖励函数,前一指数项为网球拍中心  与网球位置  的在第t帧的距离,后一指数项为击球时机  。只有在合适的击球时机、合适的击球位置,才会有得较多的奖励。

击球落点的奖励函数,当网球的旋转方向  符合目标旋转方向  (上旋或下旋)时,才有奖励,奖励的大小与网球落点  和目标落点  的距离成反比。

然而,这一阶段中使用的低层次模仿策略,模仿目标来源于MVAE的隐空间,而这个隐空间的构建又来源于噪声较高的位姿估计数据,这使得模仿策略控制的虚拟角色经常出现击球失误。为此,作者调整高层次运动规划策略,使其同时输出手部的关节角矫正,从而使得模仿目标的手部能够与球的轨迹相匹配。从而绕过了位姿估计带来的误差和噪声的影响。

总的来说,这个流水线,将视频信息转为运动学的位姿估计,并通过基于物理的模仿策略,为网球运动引入物理先验,然后构建一个隐空间,使得后续的高层次运动规划策略能够采样得到多样性的打网球的姿态,并再次通过低层次的模仿策略让虚拟角色能够运用带有动力学约束的网球技能。

IV

 部分结果展示

下面展示了虚拟环境中的网球运动,可以看到虚拟角色能够很好完成击球,并展现不同风格的击球动作。

4 发球

5 正手击球

6 反手击球

7 反手切球

V

 总结与展望

论文提出了一个系统,从大量的但质量较低的未标注网球比赛视频为出发,创建了数据驱动的流水线,使得虚拟角色学习到其中的网球技巧并能够在物理仿真环境中成功运用。结果显示角色能够进行多回合的击球,并比较高度地还原了真实人类的打球风格。在对网球拍、网球的物理建模比较细致,如网球飞行的马格努斯效应等。

这篇工作主要聚焦在如何模仿网球视频中的球手正确地击打网球,而非赢得比赛,因此并没有考虑更高层次的设计,如战术和打法。后续工作中引入这些对抗性设计将会是一个非常有趣的点。

VI

 思考与讨论

Q: 在高层次运动规划模块这里,能否直接查询第二阶段得到的网球运动,作为模仿目标,而不是使用MVAE来采样解码?

A: 方法上可行,比如利用Motion Graph或者Motion Matching。但可能存在一些问题,第一点就是二阶段得到的运动具有较高的噪声,这可能会影响生成的质量;第二点则是内存占用问题;第三点则是运动的多样性。而MVAE可以一定程度上兼顾这三点。

Q: 网球视频在使用双反击球时,此时双臂集中在身体左侧,且有遮挡。论文是如何保证成功学习到该技能呢?

A: 在视频中使用双反等需要双手持拍的时候,双手的相对位置是保持不变的,而由于位姿估计的误差和噪声问题,导致高层次运动规划策略采样解码得到的运动无法保证双手能紧握球拍。这里作者使用简单的使用反向动力学来将双手固定在拍柄上,来避免这个问题。

以下是开放性问题,欢迎读者朋友留言讨论:

Q: 基于深度强化学习和物理模拟的角色动画的工作,基本都会考虑使用运动模仿的技术。这一技术中的模仿目标姿态作为一个媒介,可以引入来自其它数据源的运动先验,从而生成高质量的运动。然而角色运动的控制、与环境的交互仍然需要根据具体任务来设计奖励函数和额外的约束,这需要很强的领域知识(如这篇文章的网球运动)。笔者在这提出一个问题:能否有一个类似的媒介(接口)来统一这些设计呢?能否借助大语言模型来完成这一目标?

转自:arXiv每日学术速递”微信公众号

如有侵权,请联系本站删除!


  • 万维QQ投稿交流群    招募志愿者

    版权所有 Copyright@2009-2015豫ICP证合字09037080号

     纯自助论文投稿平台    E-mail:eshukan@163.com