论文题目:Mask-aware Photorealistic Face Attribute Manipulation

介绍

主要贡献:

  1. 提出一种有效的方法,对特征图中的pixles进行有限的修改,从而进行连续的人脸属性编辑。
  2. 提出Mask-Adversarial AutoEncoder (M-AAE) 训练目标,能有效地保护人脸细节和背景的一致性。
  3. 本文提出的方法在人脸属性编辑任务上取得了stoa的效果。

方法

1.png

M-AAE框架如图所示。VAE的编码器-译码器结构 $D e(E n(x))$ 作为GAN的生成器 $G(x)$ ,而判别器 $D(\cdot)$ 用于区分真假图片。我们使用一个相对值 $\pm \delta$ 来修改编码特征 $En(x)$ ,从而达到修改人脸属性的目的。使用带有相反属性的成对人脸图像对网络进行训练。训练过程中使用5个损失函数进行指导,既保护人脸细节又保证背景的一致性。

编码特征中的属性修改

为了能够连续地改变属性的强度,我们对编码器的特征进行修改,而不是输入一个one-hot向量。一种直接的想法是使用相对值 $\delta$ 均匀地增大或减小整个特征图response,我们观察到这样做会导致图片整体的格调变化。我们提出只修改感受野覆盖整张图片的最少数量的特征图pixels。在实践中,相对值 $\delta$ 选取为特征图pixels值变化范围的一半 ($\delta \approx 5$)。然后修改过的特征图被输入到解码器中生成输出图像 $G^{+}(x)$ 或 $G^{-}(x)$ 来进行属性增强或属性减弱。

Mask-Adversarial AutoEncoder的学习

VAE Loss

VAE由一个将输入图片映射为隐特征 $z \sim E n(x)=q(z | x)$ 的编码器,和一个将 $z$ 映射回图片空间 $x^{\prime} \sim D e(z)=p(x | z)$ 的解码器组成。VAE对隐分布 $p(z)$ 施加一个先验 $z \sim \mathcal{N}(0, I)$,并惩罚 $x$ 与 $x'$ 之间的重建误差,其损失函数为:

$$ \mathcal{L}_{\mathrm{VAE}} =\lambda_{1} \mathrm{KL}(q(z | x) \| p(z)) -\lambda_{2} E_{x \sim p_{\mathrm{data}}(x)}\left[\log p\left(x^{\prime} | x\right)\right] $$

其中 $\lambda_1, \lambda_2$是平衡系数,$\text{KL}$ 表示KL散度。重建损失项事实上与 $x$ 和 $x'$ 之间的L1 Norm相等,因为我们假设 $p(x|z)$ 服从拉普拉斯分布 (Laplacian distribution)。

GAN Loss

引入GAN损失来保证生成图片的逼真性:

$$ \mathcal{L}_{\mathrm{GAN}}=E_{x \sim p_{\text { data }}(x)}[\log D(x)] +E_{x \sim p_{\text { data }}(x)}[\log (1-D(G(x)))] $$

ID Loss

为了保持生成照片中的人脸与输入图像是同一个身份(identity),我们使用一个人脸识别网络来惩罚人脸身份的偏移。具体做法是,使用人脸识别网络分别提取输入图片和属性编辑后的图片的身份特征,并迫使它们接近:

$$ \mathcal{L}_{I D}=\left\|F_{\mathrm{ID}}(x)-F_{\mathrm{ID}}(G(x))\right\|^{2} $$

其中 $F_{I D}(\cdot)$ 是人脸识别网络的特征提取器。

Cycle Consistency Loss

我们希望在进行人脸编辑操作后保持人脸的比身份更高级的特征:

$$ \mathcal{L}_{\text { Cycle }}=\left\|G^{-}\left(G^{+}(x)\right)-x\right\|_{1}+\left\|G^{+}\left(G^{-}(y)\right)-y\right\|_{1} $$

Mask Loss

为了保证被改变图片的背景,我们使用FCN生成一个人脸mask,并惩罚输入图片 $x$ 与生成图片 $G(x)$ 之间的背景差异:

$$ \mathcal{L}_{\mathrm{Mask}}=\|\operatorname{Mask}(G(x))-\operatorname{Mask}(x)\|_{1} $$

其中 $\mathrm{Mask}(\cdot)$ 是使用生成的背景Mask进行的Mask操作。$x$ 生成的背景Mask被 $x$ 与 $G(x)$ 共享。

总体训练过程

最终的训练目标定义如下:

$$ \min _{G} \max _{D} \alpha_{1} \mathcal{L}_{\mathrm{VAE}}+\alpha_{2} \mathcal{L}_{\mathrm{GAN}} +\alpha_{3} \mathcal{L}_{\mathrm{ID}}+\alpha_{4} \mathcal{L}_{\mathrm{Cycle}}+\alpha_{5} \mathcal{L}_{\mathrm{Mask}} $$

$\alpha_{1} \sim \alpha_{5}$ 是5个损失项的平衡系数。生成器的编码器和解码器是联合训练的,而判别器单独训练。人脸识别网络只用来提取特征,它的权重是冻结的,我们使用Parkhi等人 (Deep face recognition) 提出的人脸识别网络的前11层作为特征提取器。

实验

2.png

3.png

通过调整隐特征中的属性强度实现连续的属性编辑:

4.png

参考文献

[1] Mask-aware Photorealistic Face Attribute Manipulation

Last modification:August 11th, 2019 at 11:11 pm
如果觉得我的文章对你有用,请随意赞赏