【PaddlePaddle论文复现】Few-shot Video-to-Video Synthesis论文笔记

【PaddlePaddle论文复现】Few-shot Video-to-Video Synthesis论文笔记

正参加百度AI studio的论文复现课程(https://aistudio.baidu.com/aistudio/education/group/info/1340)

研究背景——目前技术的局限性

  • 视频到视频合成(vid2vid)旨在将输入的语义视频(如人体姿势视频)转换为输出的真实感视频。

  • 虽然vid2vid的最新技术有了显著的进步,但是现有的方法有两个主要的局限性:

  • 他们渴望数据。训练需要大量目标人体或场景的图像。

  • 学习模型的泛化能力有限。一个位姿到人的vid2vid模型只能合成训练集中单个人的姿势,而不适用于不在训练集中的其他人。

本文研究工作介绍

  • 视频到视频合成(vid2vid)是指将输入的语义视频转换为输出的真实感视频的任务。通常,要获得这样的模型,首先要收集目标任务的训练数据集。它可以是一组目标人物执行不同动作的视频,也可以是一组用安装在汽车上的摄像机在城市里行驶时拍摄到的街景视频。然后使用数据集训练一个模型,在测试时将新的输入语义视频转换为相应的照片级真实感视频。

  • 换言之,我们期望一个用于人类的vid2vid模型可以生成同一个人执行不在训练集中的新奇动作的视频,而一个街景vid2vid模型可以生成与训练集中相同风格的新颖街景视频。随着生成性对抗网络(GANs)框架及其图像条件扩展的发展,现有的vid2vid方法已经显示出了很好的效果。

  • 我们认为,归纳到新的输入语义视频是不够的。人们还应该致力于一个模型,它可以推广到看不见的领域,比如生成训练数据集中没有包含的人类受试者的视频。

  • 更理想的是,vid2vid模型应该能够通过利用测试时给出的几个示例图像来合成看不见域的视频。如果一个vid2vid模型不能推广到看不见的人或场景样式,那么我们必须为每个新的主题或场景样式训练一个模型。此外,如果一个vid2vid模型仅用几个示例图像就不能达到这种领域泛化能力,那么就必须为每个新的主题或场景样式采集多个图像。这将使模型不容易扩展。不幸的是,现有的vid2vid方法存在这些缺点,因为它们没有考虑到这种泛化。

为了解决这些局限性,本文提出了少镜头vid2vid框架。少镜头vid2vid框架需要两个输入来生成视频,如下图所示。

  1. 像vid2vid中那样的输入语义视频
  2. -在测试时可用的目标域的一些示例图像(现有的vid2vid方法中没有这一点)
  • 本文的模型使用这些少量的示例图像,通过一种新的网络权重生成机制来动态配置视频合成机制。具体来说,训练了一个模块来使用示例图像生成网络权重。文章精心设计了学习目标函数,便于学习网络权值生成模块。使用几个大规模的视频数据集(包括舞蹈视频、说话头视频和街景视频)对各种基线方法进行了广泛的实验验证。实验结果表明,该方法有效地解决了现有vid2vid框架的局限性。
  • 此外,还证明了模型的性能与训练数据集中视频的多样性以及测试时可用的示例图像数量呈正相关。当模型在训练时间内看到更多不同的域时,它可以更好地泛化以处理看不见的域当在测试时给模型更多的示例图像时,合成视频的质量会提高。

【PaddlePaddle论文复现】Few-shot Video-to-Video Synthesis论文笔记
图示为vid2vid(左)和建议的少镜头vid2vid(右)之间的比较。现有的vid2vid方法没有考虑泛化到看不见的域。经过训练的模型只能用于合成与训练集中的视频相似的视频。例如,vid2vid模型只能用于生成训练集中的人的视频。要合成新人,需要收集新人的数据集,并用它训练一个新的vid2vid模型。而我们的少镜头vid2vid模型没有局限性,可以利用测试时提供的几个示例图像来合成新人的视频。

相关工作

  • 提出的少镜头vid2vid模型是基于GANs。
  • 具体来说,我们使用一个条件GAN框架。我们不是通过转换来自某些噪声分布的样本来生成输出,而是基于用户输入数据生成输出,这使得对输出的控制更加灵活。用户输入的数据可以采取各种形式,包括图像、分类标签、文本描述和视频。
  • 我们的模型属于最后一种。
  • 与现有的视频条件GANs以视频作为唯一的数据输入不同,我们的模型还采用了一组示例图像。
  • 这些示例图像是在测试时提供的,我们使用这些图像通过一个新的网络权重生成模块动态地确定视频合成模型的网络权重。这有助于网络生成看不见域的视频。图像到图像合成,将输入图像从一个域转移到另一个域中的相应图像.
  • 对于视频而言,新的挑战在于生成帧序列,这些帧序列不仅具有照片级真实感,而且在整体上具有时间一致性。
  • 视频生成模型可分为三大类:
    1)无条件视频合成模型,将随机噪声样本转换为视频片段;
    2)未来视频预测模型,根据观察到的帧生成未来的视频帧;
    3)vid2vid模型,将语义输入视频转换为真实感视频。
  • 我们的工作属于最后一类
  • 自适应网络是指根据输入数据动态计算部分权重的网络,我们将其应用于vid2vid任务。

少镜头视频合成

【PaddlePaddle论文复现】Few-shot Video-to-Video Synthesis论文笔记
图示为vid2vid框架的架构(a);提出的少镜头vid2vid框架的体系结构(b) 。它包括一个网络权重生成模块E,该模块将示例图像映射到用于视频合成的部分网络权重。模块E由三个子网络组成:EF、EP和EA(K>1时使用)。子网络ef从示例图像中提取特征q。当存在多个样本图像(K>1)时,通过估计软注意映射α和加权平均的方法将提取的特征进行组合。最后的表示然后被输入网络ept以生成图像合成网络H的权重θhf。

  • 这种建模允许F利用测试时给出的示例图像来提取一些有用的模式来合成看不见域的视频。
  • 我们提出了一个网络权值生成模块E来提取模式。具体地说,E被设计为从所提供的示例图像中提取模式并使用它们来计算中间图像合成网络H的网络权重θH。
  • 值得注意的是,网络E不生成权重θM或θwB。
  • 我们采用了目前最先进的语义图像合成模型SPADE生成器。
  • SPADE发生器包含几个空间调制分支和一个主图像合成分支。我们的网络权值生成模块只为空间调制支路生成权值。这有两个主要优点:
  1. 它大大减少了E必须生成的参数数目,从而避免了过拟合问题。
  2. 它避免创建从示例图像到输出图像的快捷方式,因为生成的权重仅用于空间调制模块,空间调制模块生成用于主图像合成分支的调制值。
  • 网络权值生成模块:
  • 如上所述,网络权重生成模块E的目标是学习通过控制其权重来提取可注入视频合成分支的外观模式。
  • 我们首先考虑只有一个示例图像可用的情况(K=1)。
  • 然后,我们将讨论扩展到处理多个示例图像的情况。我们将其分解为两个子网络:一个示例特征提取器EF和一个多层感知器EP。
  • 网络ef由若干个卷积层组成,并应用于示例图像e1上以提取外观表示q。
  • 然后将表示q输入ept以生成中间图像合成网络H中的权重θ。让图像合成网络H具有L层Hl,其中L∈[1,L]。
  • 我们设计的权值生成网络E也有L层,每个el生成对应Hl的权重
  • 这些生成的权重随后用于卷积当前输入语义映射st,以生成SPADE中使用的规范化参数(图2(c))。
  • 对于主SPADE生成器中的每一层,我们使用θl Hto计算反规范化参数γlandβlto来对输入特征进行反规范化。
  • 我们注意到,在原始的SPADE模块中,由固定权重生成的比例尺地图γland bias mapβlare对输入语义地图st进行操作。在我们的设置中,这些地图是由动态权重θlh生成的。
  • 此外,θl H包含三组权重:θl S、θlγ和θlβ。θl Sacts作为共享层提取共同特征,θlγ和θlβ分别取θl的输出生成γlandβlmap。
  • 此外,我们希望E能够从任意数量的示例图像中提取模式。
  • 由于不同的示例图像可能携带不同的外观模式,并且它们与不同的输入图像具有不同的关联度,因此我们设计了一个注意机制来聚合提取的外观模式q1,…,qK。
  • 为此,我们构造了一个新的注意网络EA,它由几个完全卷积的层组成。EA应用于示例图像的每个语义图像sek。
  • 扭曲示例图像。为了减轻图像合成网络的负担,我们还可以(可选地)扭曲给定的示例图像。
  • 我们使用与vid2vid框架中相同的学习目标。
  • 但是我们没有使用来自一个域的数据来训练vid2vid模型,而是使用来自多个域的数据。
  • 我们的少镜头vid2vid模型的性能与训练数据集中包含的域的数量呈正相关。
  • 这表明我们的模型可以从增加的视觉体验中获益。
  • 我们的框架是在有监督的环境中训练的。
  • 我们采用渐进式训练技术,逐步增加训练序列的长度。
  • 最初,我们设置T=1,这意味着网络只生成单个帧。之后,我们每隔几个时期将序列长度(T)加倍。
  • 在测试时,我们的模型可以获取任意数量的示例图像。
  • 结果是性能与示例图像的数量正相关。
  • 此外,我们还可以(可选地)使用给定的示例图像对网络进行微调,以提高性能。
  • 注意,我们只对权值生成模块E和中间图像合成网络H进行微调,并且保持与流估计相关的所有参数(θM,θH)不变。我们发现这样可以更好地保存示例图像中的人物身份。

实验结果

【PaddlePaddle论文复现】Few-shot Video-to-Video Synthesis论文笔记
表:对于舞蹈和街景视频合成任务,我们的方法优于现有的姿势转移方法和基线。对于位姿误差和FID,越低越好。对于像素精度和mIoU,越高越好。人类偏好得分表示受试者对我们方法合成结果的偏好程度。可以看出,在所有的性能指标上,我们的方法始终比其他方法获得更好的结果。

最后,为了验证我们的假设,一个较大的训练数据集有助于提高合成视频的质量,我们进行了一个实验,其中一部分数据集是在训练过程中进行的。我们改变训练集中的视频数量,并在下图(a)中绘制结果性能图。我们发现结果支持我们的假设。我们还评估是否可以访问更多的示例图像。【PaddlePaddle论文复现】Few-shot Video-to-Video Synthesis论文笔记
(a)该图显示,当我们使用更大的数据集训练合成视频时,它的质量会有所提高。大量的变化有助于学习更通用的网络权值生成模块,从而提高适应能力。
(b) 该图显示我们合成视频的质量与测试时提供的示例图像的数量相关。所提出的注意机制可以利用较大的样本集来更好地生成网络权重。
(c) 给出多个示例图像时注意力图的可视化。注意,当合成目标的前方时,注意地图表明网络利用了更多的正面示例图像,反之亦然。

局限性

  1. 虽然我们的网络在原则上可以推广到看不见的领域,但当测试域与训练域太不同时,它将不能很好地发挥作用。

例如,当测试CG角色时,这些角色看起来与现实世界中的人有很大的不同,网络将会出现问题。

  1. 由于我们的网络是基于语义估计作为输入,如姿势图或分割图,当这些预估失败时,我们的网络也可能失败。