First Order Motion Model for Image Animation论文阅读笔记

介绍

图像动画包括生成视频序列,以便根据驱动视频的运动对源图像中的对象进行动画处理,而不使用任何注释或关于动画化的特定对象的先验信息。一旦在一组描述同一类别对象(如人脸、人体)的视频上进行了训练,我们的方法就可以应用于此类对象。
1、为了根据驱动视频的运动对源图像中的对象进行动画处理,使用自我监督公式将外观和运动信息解耦。
2、为了支持复杂的运动,我们使用由一组学习的关键点及其局部仿射变换组成的表示。
3、生成器网络对目标运动期间出现的遮挡进行建模,并将从源图像提取的外观和从驱动视频导出的运动进行组合。

例如:某个人的面部图像可以根据另一个人的面部表情进行动画处理
在这里插入图片描述
大多数方法通过在对象表示上假设强先验并求助与计算机图形学技术,这些方法被称为对象特定方法,要假设要动画化的特定对象的模型的知识。

生成对抗性网络(GANs)和可变自动编码器(VAE)已被用于在视频中传输面部表情或运动模式,但是这些方法依赖于预先训练的模型来提取特定于对象的表示,例如:关键点的位置,这些模型使用昂贵的地面实况数据注释构建,并且通常不适用于任意对象类别。
Monkey Net
第一个不可知对象的图像动画深度模型。
Monkey Net通过以自我监督的方式学习的关键点对运动信息进行编码。在测试时,根据驾驶视频中估计的相应关键点轨迹对源图像进行动画处理

主要弱点:在假设零阶模型的情况下,对关键点邻域中的对象外观变换建模不佳,这导致在大型对象姿态变化的情况下生成质量较差。
在这里插入图片描述
为了解决这个问题,我们建议使用一组自学习的关键点和局部仿射变换来对复杂运动建模。因此,我们将我们的方法称为一阶运动模型。
其次,我们引入了一种遮挡感知生成器,该生成器采用自动估计的遮挡掩码来指示在源图像中不可见的、应该从上下文中推断的对象部分。当驾驶视频包含大的运动模式并且遮挡是典型的时,这是特别需要的。
第三,我们扩展了通常用于关键点检测器训练的等方差损失,以改进局部仿射变换的估计。

相关工作

视频生成,解决条件视频生成的问题,条件生成的另一个典型情况是未来帧预测问题,其中生成的视频以初始帧为条件。在该任务中,可以通过简单地扭曲初始视频帧来获得逼真的预测。
1、将递归神经网络与V AE相结合,以生成人脸视频
2、MoCoGAN,这是一种经过对抗性训练的递归架构,用于从噪声、分类标签或静态图像中合成视频
我们使用翘曲公式来生成视频序列。然而,在图像动画的情况下,应用的空间变形不是预测的,而是由驱动视频给出的。
图像动画,在人脸动画中
1、以人脸的3D可变形模型为代价,产生了逼真的结果
2、图像到图像翻译框架来转移人体运动
3、通过结合时空线索来扩展条件GAN,以改善两个给定域之间的视频翻译。
为了给一个人制作动画,这种方法需要几个小时的视频,视频上标记有语义信息,因此必须对每个人进行再培训。与这些工作相反,我们既不依赖于标签、关于动画对象的先验信息,也不依赖于每个对象实例的特定训练过程。此外,我们的方法可以应用于同一类别中的任何对象(例如,人脸、人体、机械臂等)。

不需要先验知识的方法,X2Face使用密集运动场,以便通过图像扭曲生成输出视频,使用参考姿势来获得对象的规范表示,在我们的公式中,我们不需要明确的参考姿态,从而大大简化了优化并提高了图像质量。
Monkey Net,这是一种通过使用稀疏关键点轨迹来设置任意对象动画的自监督框架。在这项工作中,我们还使用了由自监督关键点诱导的稀疏轨迹。然而,我们通过局部仿射变换对每个预测关键点附近的对象运动进行建模。此外,我们明确地对遮挡进行建模,以便向生成器网络指示可以通过扭曲源图像生成的图像区域和需要修复的遮挡区域。

方法

在这里插入图片描述
运动估计模块和图像生成模块
运动估计模块的目的是预测从驱动视频D的维度为H×W的帧D∈R3×H×W到源帧S∈R3 X H×W之间的密集运动场。密集运动场随后用于将从S计算的特征图与D中的对象姿态对齐。
运动场由函数建模,其将D中的每个像素位置与其在S中的对应位置进行映射,通常被称为反向光流,使用双线性采样可以以可微分的方式有效地实现反向翘曲

我们的方法假设源图像S和驱动视频帧D的帧作为输入。
无监督关键点检测器提取由稀疏关键点和相对于参考帧R的局部仿射变换组成的一阶运动表示。
密集运动网络使用运动表示来生成密集光流和遮挡图
生成器使用源图像和密集运动网络的输出来渲染目标图像。

为了能够独立处理D和S,假设存在一个抽象的参考框架R。我们独立地估计两个变换:从R到S(TS←R) 以及从R到D(TD←R) 。请注意,与X2Face[41]不同的是,参考框架是一个抽象概念,在我们稍后的推导中被抵消了。

在第一步,以自监督方式学习的关键点获得的稀疏轨迹集来近似这两个变换。D和S中的关键点的位置由编码器-解码器网络分别预测。关键点表示充当瓶颈,从而产生紧凑的运动表示。这种稀疏运动表示非常适合动画,因为在测试时,可以使用驾驶视频中的关键点轨迹来移动源图像的关键点。
使用局部仿射变换对每个关键点附近的运动进行建模。与仅使用关键点位移相比,局部仿射变换允许我们对更大的变换族进行建模。
我们使用泰勒展开来表示TD←R通过一组关键点位置和仿射变换。为此,关键点检测器网络输出关键点位置以及每个仿射变换的参数。

第二步,密集运动网络将局部近似相结合,以获得最终的密集运动场,除了密集运动场之外,该网络还输出遮挡掩模指示D的哪些图像部分可以通过源图像的扭曲来重建,哪些部分应该被修复,即从上下文中推断。
最后,生成模块渲染如驱动视频中提供的移动的源对象的图像。在这里,我们使用生成器网络G,该生成器网络G根据最终的密集运动场扭曲源图像,并对源图像中被遮挡的图像部分进行修复。

为了进行训练,我们使用了包含相同对象类别的对象的大量视频序列集合。我们的模型经过训练,通过组合单个帧和视频中运动的学习潜在表示来重建训练视频。观察帧对,每个帧对都是从同一视频中提取的,它学习将运动编码为特定于运动的关键点位移和局部仿射变换的组合。在测试时,我们将我们的模型应用于由源图像和驱动视频的每一帧组成的对,并执行源对象的图像动画。

实验

数据集:
1、VoxCeleb数据集是从Y ouTube视频中提取的22496个视频的人脸数据集。为了进行预处理,我们在第一个视频帧中提取一个初始边界框。我们跟踪这个面,直到它离初始位置太远。然后,我们使用包含所有边界框的最小裁剪来裁剪视频帧。重复该过程,直到序列结束。我们过滤掉分辨率低于256×256的序列,并将剩余视频的大小调整为256×256,以保持纵横比。值得注意的是,与X2Face相比,我们获得了更自然的视频,其中人脸在边界框内自由移动。总体而言,我们获得了19522个训练视频和525个测试视频,长度从64帧到1024帧不等。
2、UvA Nemo数据集是一个面部分析数据集,由1240个视频组成。我们应用与VoxCeleb完全相同的预处理。每个视频都以一个中性的表情开头。我们使用1116个视频进行训练,使用124个视频进行评估。
3、BAIR机器人推送数据集包含Sawyer机械臂在桌子上推送不同物体所收集的视频。它包括42880个培训和128个测试视频。每个视频有30帧长,分辨率为256×256。
4、太极高清数据集,集了280个太极视频。我们使用252个视频进行训练,28个用于测试。每个视频都被分割成短片,如V oxCeleb数据集预处理中所述。我们只保留高质量的视频,并将所有剪辑的大小调整为256×256像素,最后,我们分别获得3049和285个视频块用于训练和测试,视频长度从128帧到1024帧不等。
评估协议
评估图像动画的质量并不明显,因为地面实况动画不可用。
度量
1、L1.我们报告生成的视频和地面实况视频之间的平均L1距离。
2、平均关键点距离(AKD)。对于太极高清、VoxCeleb和尼莫数据集,我们使用第三方预先训练的关键点检测器来评估输入视频的运动是否被保留。对于V oxCeleb和Nemo数据集,我们使用面部地标检测器。对于太极高清数据集,我们采用了人体姿态估计器。这些关键点是为每一帧独立计算的。AKD是通过计算检测到的地面实况的关键点和生成的视频的关键点之间的平均距离来获得的。
3、缺少关键点速率(MKR)。在太极HD的情况下,人体姿势估计器为每个关键点返回额外的二进制标签,指示关键点是否被成功检测到。MKR,它被定义为在地面实况帧中检测到但在生成的帧中没有检测到的关键点的百分比。该度量评估每个生成的帧的外观质量。
4、平均欧几里得距离(AED)。考虑到外部训练的图像表示,我们报告了地面实况和生成的帧表示之间的平均欧氏距离,采用了特征嵌入。
消融研究
在这里插入图片描述
基线:在不使用遮挡遮罩和雅克比,仅以最高分辨率用Lrec进行监督情况下训练最简单的模型。
Pyr .:金字塔损失被添加到基线
Pyr .+OS←D:关于Pyr,将生成器网络替换为遮挡感知网络;
Jac. w/o :我们的模型具有局部仿射变换,但对雅可比方程没有等方差约束。
Full:完整模型
在这里插入图片描述
与先进技术的比较
在这里插入图片描述
X2Face和Monkey Net都无法正确地传递驾驶视频中的身体概念,而是将源图像中的人体扭曲为斑点。相反,我们的方法能够生成外观更好的视频,其中每个身体部位都是独立动画。

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值