温网停赛,想跟费德勒来场单打?

近日,网络上出现一幕网球名将 “费德勒” 同“小威廉姆斯”同场竞技的情景,网球爱好者们纷纷惊掉了下巴。

这场男女单打的破天荒对战,是如何发生的呢?

DeepTech 几经辗转,摸清了这件事的来龙去脉,原来是一名来自斯坦福大学计算机专业的博士生——张浩天,他和团队使用 AI 技术生成了上面的场景。好奇之下,DeepTech 联系到了他本人。

张浩天介绍,该项目的名称为 Vid2Player,可以让你操控选手并实时生成接近真实的比赛视频。除了能让费德勒同小威对战,它还有很多有趣的功能。

温网破天荒地被取消,多少球迷断供,Vid2Player 或许不失为一条新的 “解渴” 路径。

网球冠军的弟子

事情的起因很简单。

“我个人对视频理解与生成非常感兴趣,尤其是利用已有的大规模视频数据,比如在 YouTube 平台,来解决现实中遇到的问题。”张浩天说。

此前他曾做过一个项目,是使用 AI 技术去分析、理解过去十年来美国主要的三家有线电视网络(CNN、FOX News、MSNBC)的视频数据中出现的人物及内容。由于是严肃的报道内容,不太适合将视频生成技术应用其中,这让他非常遗憾。

所以在立项之初,他就决定挑选一个适合于做视频生成的领域,后来便选中了体育赛事类视频。

原因有三。首先,体育比赛中包含丰富的人类肢体动作及与相关道具的交互,而且运动员天然遵守比赛规则,有更强的规律性及约束性,这非常适合于做视频生成;其二,这一类素材在网络上非常容易获取;其三,体育赛事的受众很广,因此未来该技术的应用前景更加多元。

至于为什么选择网球,张浩天笑称,他的博士导师 Kayvon Fatahalian 在卡内基梅隆大学读本科阶段,曾经是美国大学生网球联赛(NCAA)的男子单打冠军,是非常优秀的运动员,选择网球或多或少受他的影响。

Vid2Player 从立项到论文定稿,大概经历了一年时间。

它更多地是基于计算机图形学(Computer Graphics)来展开,其中用到的最经典的方法是视频纹理(Video Texture)技术,该技术历史悠久,可以追溯到 “拳皇” 时代。

张浩天解释道,根据用户指定的输入,比如想要放一个“大招”,程序可以选择对应的视频片段来播放,玩家就可以看到他控制的角色做出了对应的动作。

“我们使用视频中的已有片段来呈现展示内容,会让生成的视频显得更加真实。而假如这个项目使用纯 AI 技术,就意味着运动员全部由模型通过神经网络生成,目前这类技术尚未成熟,生成的视频可能存在模糊、动作不连贯等问题。”

AI 技术在 Vid2Player 的应用主要是负责决策运动员的行为。

AI 会根据当前双方球员的位置及球的轨迹等信息,决定运动员接球的击打方式、落点以及击打后运动员恢复准备状态的位置。

他们根据原始比赛视频中运动员的历史数据为每一名网球名将训练了这样一个模型来负责控制角色的行为和规则。

以上两种技术分别负责运动员的外观和行为,再加上一个掌控全局的网球回合状态机(shot cycle state machine)——运动员击球前跑位、击球、击球后跑位,周而复始运行,一场完整的网球比赛就此生成。

自由 “操控” 网球名将

张浩天说,为了最终实现 Vid2Player,我们需要对从网络下载的视频进行必要的标注工作。

首先,预先逐帧框选出两个运动员的位置,然后标注遮罩(semantic mask)及姿势的关键点。

另外,还需要知道球的轨迹,相当于在每一帧标注出球的位置。这里有两个很关键的时刻——球被运动员击打的时刻和位置、球被击打出之后,落地反弹的时刻和位置。

最后,还要对现有视频中网球场地进行三维重建,将 2D 信息转换成 3D 的格式。

值得注意的是,目前每次击球的时间都需要人为手工进行标注。张浩天解释道,由于击球的瞬间球速很快,并且球体很小,他们的 AI 暂时不能很好地定位捕捉,这里的确有待改进。

除此之外,以上绝大部分的标注工作都可以通过计算机模型自动生成。包括张浩天在内的 Vid2Player 两名主力成员,本次共处理标注了 20 个小时左右的网球比赛素材。

此外,为了让输出的网球比赛更加贴近真实场景,他们做了很多的工作。

图 | 自然化处理,去掉因光线产生的阴影

图 | 自然化处理,在不同场次中,运动员的着装会发生变化,需要进行统一

图 | 因为摄像机的关系,需要将画面不完整的部分补全,例如上图的小腿部分

表现层处理完毕之后,需要加入控制层的逻辑。张浩天说,之后,你可以像玩游戏一样实时操控一方运动员,改变他的跑位及击球位置。

Vid2Player 中训练的运动员模型可以实现自动针对对方的弱势手、高难度接球、近网的位置截击等等技术动作。

图 | AI控制下运动员完成了一次漂亮的网前截击

图 | 有无行为模型对比图

比如上图,当程序的行为模型介入之后,成功“扭曲现实”,给出更加符合网球策略的击球方案。

加入状态机的逻辑之后,网球赛中的每个回合都被分解,循环往复串行。

在这些基础之上,可以做一些非常有意思的事情,比如可以编辑已有的网球比赛。

下面这个例子是费德勒在 2019 年温网决赛痛失赛点的一个经典失误,利用 Vid2Player 可以改变费德勒击球的落点,这一小小的改变足以扭转历史,让费天王拿下 2019 温网冠军!

你还可以改变对战双方的运动员,前提是该运动员处于视频集合当中。

比如开头的费德勒同小威廉姆斯的同场竞技,甚至你还可以请费德勒自己同自己对局。

图 | 费德勒 VS 费德勒

张浩天还发给 DeepTech 一则视频,在其中他们限制了费德勒和纳达尔只能用正手打球。

如果你愿意,甚至可以录制一些原始的素材,经由 Vid2Player 处理,生成同费德勒对战的视频。

应用前景

当 DeepTech 问及是否考虑未来将 Vid2Player 应用到游戏当中,张浩天回答道:“现在主流的游戏同我们采用完全不同的技术路线,一般情况下如果游戏厂商要做一款真人网球游戏,他们必须让运动员穿着采集器来建立 3D 模型,而 Vid2Player 目前是以纯二维的方式来解决问题。”

“我们更多地是从视频生成的角度,解决了生成真人网球视频的问题。理论上,这个解决方案也适用于乒乓球和羽毛球的单打比赛中。”

“目前 Vid2Player 所能做的其实比较有限,未来我们考虑让它能够兼容更多种的运动和模式。拿篮球运动来举例,届时我们希望它不再需要人类帮助定义状态机,而是让 AI 自己学会区分不同的状态,如传球、投篮、格挡等等。”

视频生成比图像生成要难得多,张浩天说。在图像生成领域,利用 GAN 已经能够生成很真实的图像,如人脸等。

但视频生成领域,纯 AI 的模型还很难生成任意的高像素、逼真的视频。

其原因在于,视频的复杂度较图像要高很多,当加入时间的维度之后,空间大小暴涨。需要无限的模型容量以及无限的训练数据,才可能有一个通用的 AI 生成视频模型。

他说,以目前的硬件和算力水平,这个问题尚无法解决。目前视频生成领域可以使用 AI 解决换脸的问题,原因在于脸部其实是一个非常强的约束条件,相比之下,至今还没有一款公开、通用且成熟的能够生成人体全身动作的 AI 模型。

“所以,我们的出发点不是一个通用的视频生成模型,而是专注于生成某领域的视频模型。Vid2Player 因此而诞生,它其实融合了两个领域的技术,一是视频生成,二是统计学意义上的体育视频分析。”

张浩天描述道,体育视频分析的商业前景广阔,已经有很多公司在做相关的数据挖掘的工作,比如篮球运动员的罚球命中率、抢篮板数等就是来自于此。再比如 Vid2Player 中用到的预测网球落点的技术,也是关键、且非常热门的技术。

“但是此前没有人将这两个领域结合到一起,某种程度上我们做了一件前人没做过的事。希望未来这项技术可以应用到体育新闻解说或体育教学的可视化中,为受众提供一种全新的体验。”