论文:
《Few-shot Video-to-Video Synthesis Ting-Chun》
github:
https://github.com/NVlabs/few-shot-vid2vid
解决问题
尽管vid2vid(参见上篇文章Video-to-Video论文解读)已经取得显著进步,但是存在两个主要限制; 1、需要大量数据。训练需要大量目标人体或目标场景数据; 2、模型泛化能力有限。只能生成训练集中存在人体,对于未见过人体泛化能力差; 为解决上述问题,作者提出few-shot vid2vid,在推理时利用几张目标域样例,学习生成之前未见过目标或场景视频。通过运用attention机制的网络权重生成模块提升模型泛化能力;
算法
vid2vid方案
vid2vid结构如图2a,公式如式1, 生成图像
X
~
t
\tilde X_t
X~t?,基于过去的
τ
+
1
\tau+1
τ+1个分割图
s
t
?
τ
t
s^t_{t-\tau}
st?τt?以及过去的
τ
\tau
τ个生成图
X
~
t
?
τ
t
?
1
\tilde X^ {t-1}_{t-\tau}
X~t?τt?1?。生成器常规设计如式2,
m
~
t
,
w
~
t
?
1
,
h
~
t
\tilde m_t,\tilde w_{t-1},\tilde h_t
m~t?,w~t?1?,h~t?学习过程如式3,4,5,
m
~
t
\tilde m_t
m~t?为遮挡区域,
w
~
t
?
1
\tilde w_{t-1}
w~t?1?为光流,
h
~
t
\tilde h_t
h~t?为生成中间图像;
Few-shot vid2vid
但是vid2vid方法不能生成未见过域的视频,比如只能生成训练集中出现的人。为了使得
F
F
F适应于未见过域,增加额外输入,因此
F
F
F有两个输入:K个目标域样例图
e
1
,
e
2
,
.
.
.
,
e
K
e_1, e_2, ..., e_K
e1?,e2?,...,eK?,及对应语义图
s
e
1
,
s
e
2
,
.
.
.
,
s
e
K
s_{e_1} , s_{e_2} , ..., s_{e_K}
se1??,se2??,...,seK??,如式6 模型允许
F
F
F使用输入样例模态生成视频,因此作者使用网络权重生成模块
E
E
E提取样例模态,利用样例模态信息计算网络参数
θ
H
\theta_H
θH?,如式7。
E
E
E未用于
θ
M
\theta_M
θM?及
θ
W
\theta_W
θW?,是因为
θ
M
\theta_M
θM?及
θ
W
\theta_W
θW?基于过去生成图像缠身,本身已经跨域共享;
E
E
E仅为空间调节分支生成权重,该设计有两个优势: 1、减少
E
E
E生成参数量,避免过拟合; 2、避免样例与输出图像shotcut,因为生成参数仅用于空间调节模块
网络权重生成模块
E
E
E通过学习参数提取外观模态,引入视频生成分支; 考虑仅输入1个样例(k=1)及多个样例情况(k>1); 当输入样例为1,即k=1时,(image animation任务)
E
E
E解耦为两个子网络:特征提取器
E
F
E_F
EF?及多层感知机
E
P
E_P
EP?。 特征提取器
E
F
E_F
EF?包括几个卷积层,提取到外观表征
q
q
q,应用于多层感知机
E
P
E_P
EP?生成权重
θ
H
\theta_H
θH?,用于中间图像生成网络
H
H
H,
H
H
H有
L
L
L层,
E
E
E同样有
L
L
L层,如图2c所示;
当输入样例多于1时,即K>1,想要
E
E
E能够提取任意数量样例的外观模态,由于不同输入样例有不同角度相关性,因此作者设计attention机制
E
A
E_A
EA?,聚合提取到的外观模态;
E
A
E_A
EA?应用于每个样例语义图
s
e
k
s_{e_k}
sek??,得到关键向量
α
k
∈
R
C
×
N
\alpha_k \in R^{C \times N}
αk?∈RC×N,及当前输入语义图
s
t
s_t
st?,得到关键向量
α
t
∈
R
C
×
N
\alpha_t \in R^{C \times N}
αt?∈RC×N,进而通过
α
k
=
(
α
k
)
T
?
α
t
\alpha_k = (\alpha_k)^T \bigotimes \alpha_t
αk?=(αk?)T?αt?,得到attention权重
α
k
∈
R
N
×
N
\alpha_k \in R^{N \times N}
αk?∈RN×N,应用于外观表征
q
q
q。如图2b,在生成阶段attention map有助于捕获相关身体部件,如图7c。
为减轻图像生成网络负担,可以wrap样例,将其与生成中间图像
h
~
t
′
\tilde h'_t
h~t′?结合,如式11, 估计额外光流
w
~
e
t
\tilde w_{e_t}
w~et??及mask
m
~
e
t
\tilde m_{e_t}
m~et??,当输入多个样例时,
e
1
e_1
e1?为attention weight
α
k
\alpha_k
αk?中与当前帧具有最大相似性的样例;实验发现,在背景区域不变时,对生成pose有帮助;
实验
作者比较不同方法达到目标域泛化能力,如表1; Encoder表示编码样例为分风格向量; ConcatStyle表示编码样例为分风格向量,将其与输入分割图concat,生成增强的分割输入; AdaIN在H每个空间调制模块后加入AdaIN归一化层。 实现细节如图9所示,
图3为人体生成不同结果 图4为各种方法比较 图5为街道场景生成结果 图6为面部生成结果 图7a比较不同训练样本数量对结果影响,图7b比较不同样例数量对结果影响,图7c可视化attention map结果;
结论
few-shot vid2vid可生成未见过域视频,归因于基于样例图片的动态生成权重机制。 但目前仍存在两个限制: 1、当测试域与训练域差异特别大时,生成效果比较差; 2、当分割及关键点估计不准确时,生成效果比较差;
|