First Order Motion Model for Image Animation论文解读

举报
冰糖柠萌 发表于 2021/02/02 15:09:56 2021/02/02
【摘要】 这是一篇NIPS2019的论文,任务是让源图像(source image)中的物体按照驱动视频(driving video)中的运动而运动。效果如下图所示。有开源的代码,地址:https://github.com/AliaksandrSiarohin/first-order-model论文的特点是不需要先验的标注信息,训练时仅需要一个包含同一类物体的视频集,用自监督(self-supervi...

这是一篇NIPS2019的论文,任务是让源图像(source image)中的物体按照驱动视频(driving video)中的运动而运动。效果如下图所示。有开源的代码,地址:https://github.com/AliaksandrSiarohin/first-order-model

Screenshot

Screenshot

论文的特点是不需要先验的标注信息,训练时仅需要一个包含同一类物体的视频集,用自监督(self-supervised)的方式分离外貌和运动信息。
在训练的时候,通过利用单帧图片和学习到的运动表示来重建训练集中的视频帧进行训练。在测试的时候,把源图像和驱动视频任一帧组成对,输出拥有驱动视频帧中动作的源图像。


上图是论文方法的总体框架图。包含两个主要模块:运动预测模块(motion estimation module)和图像生成模块(image generation module)。运动预测模块预测从驱动视频一帧D到源图像S的稠密运动场(dense motion field)。稠密运动场将D中的每一个像素点映射到S中,用函数TS<-D:R2-> R2表示,也叫做反向光流(backward optical flow)。运动预测模块分为两个子模块:关键点检测器和稠密运动网络。

关键点检测器

论文中物体的运动用其关键点处的运动表示,类似part-based model的思想,关键点通过自监督的方式学习。
首先假设存在一个抽象的参考帧R,这样预测TS<-D可以拆分成预测TS<-R和TR<-D。注意R是抽象的,可以在推导中消除。引入R的好处是可以将S和D分离。
对于某类物体,假设有K个关键点p1,p2,…,pK。
假设有一帧图片X,对于函数TX<-R,用在pK处的一阶泰勒展开表示R中的任意像素p点处的值有:

忽略高无穷小量,则

假设TX<-R满足在关键点的领域是双射双射,也就是有TR<-X =TX<-R-1这样在关键点pk附近有
通过带入一阶泰勒展开式,有

其中

这样,TS<-D在任一点处的值可以通过关键点处的值和关键点处的导数估计。

TS<-R(pk)和TD<-R(pk)用关键点预测器预测。关键点预测器使用标准的U-Net结构,预测K个热力图,每个热力图代表一个关键点。关键点预测器对每个关键点而外预测4个通道,用于计算

稠密运动网络

目的是用稠密运动网络联合各关键点的局部运动和源图像得到稠密的运动场。
根据K个关键点的局部运动,将原图片变形(warp)S1,S2,….,SK,再添加一个不运动的S0=S表示背景。另外计算Hk用于表示运动发生的像素点位置。

转换得到的图片S1,S2,….,SKHk拼接在一起通过另外一个U-Net得到掩码Mk。最后稠密运动场使用下面的公式计算:
在源图像中存在遮挡的时候,目标图像并不能完全通过warp源图像获得。所以考虑预测一个遮挡映射表示源图像那些区域需要被inpainted

这里fw表示反向变形操作。遮挡掩码通过在稠密运动网络中添加一个通道预测得到。

训练

训练的损失由多项组成。首先是基于perceptual loss的reconstruction loss。该loss用预训练的VGG-19网络作为特征提取器,对比重建帧和驱动视频的真实帧的特征差异:


另外考虑到关键点的学习是无标签的,这会导致不稳定的表现,引入Equivariance constraint用在无监督关键点的学习中。假设图片X经过过一个已知的变换TX<-Y,得到Y。标准Equivariance constraint是

通过对两边进行一阶泰勒展开有

用L1损失对上面两个公式进行约束。

测试阶段:相对运动

测试阶段的的目标是用驱动视频的每一帧D1,...,DT驱动源图像S1。文章采用相对运动的方式驱动Dt ,也就是通过D1和Dt 的相对运动驱动S1。好处是可以保持源图像中物体的几何信息。
 

要求是驱动视频的第一帧和源图像有相似的姿势。下面两幅图可以清楚看到使用相对运动的优势:
绝对运动

相对运动

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。