【论文笔记】WarpGAN: Automatic Caricature Generation

WarpGAN: Automatic Caricature Generation

这篇论文因为是新发布不久的,网上能找到的资料都还比较少,再加上本人新手上路,感觉对于此篇文章还有很多理解不到位的,希望大家能够留言指正!

warpGan是一种全自动网络,它可以给定输入的人脸照片生成漫画。除了可以转换丰富的纹理样式,它还可以学会自动预测一组控制点,这些控制点可以使照片变形成漫画,同时保持原照片的身份信息。本文介绍了identity-preserving adversarial los,并将此加入到discriminator中去区分不同的个体。并且WarpGAN允许通过控制夸张程度和视觉样式来定制生成的漫画。

在本文的工作中,我们主要去创建一个完全自动化的可以通过CNNS和GANs将人脸照片变成漫画的系统。

和以往的漫画生成和风格转换不同,我们强调了在本文中的一些挑战:

  • 漫画生成包含纹理变化和形状变形;
  • 经过变形的脸依旧能够被辨认;
  • 卡通图片样本以不同的视觉和艺术风格存在。

为了解决以上挑战,本文提出了WarpGAN。在generator中可以自动预测control points,这些控制点将输入的人脸照片转换到最接近某一目标的漫画,还通过非线性滤波传递纹理样式。 Discriminator是通过identity-preserving adversarial loss来训练的,以区分不同的身份和风格,并鼓励generator在合成各种不同的漫画,同时自动夸大特定于身份的面部特征。

本论文的主要贡献是:

  • 一种domain transfer network ,它通过自动估计一组稀疏控制点对图像进行纹理样式和几何形状的decouple(解耦)。
  • 具有adversarial loss的domain transfer的texture style transfer和 image warping的联合学习
  • 通过对人脸识别性能的定量评价表明,该方法在传递纹理样式和变形后保留了识别信息。

2.related work

2.1 Automatic Image Warping

Parametric methods估计了少量的全局变换参数,因此不能处理fine-grained local的形变。
dense deformation需要预测变形网格中的所有变形,其中大部分是无用的,很难估计。
Landmark-based:their method requires pre-detected landmarks as input.
在这里插入图片描述

2.3 Caricature Generation

近年来,随着GANs的成功,一些工作尝试将style transfer networks应用于image-to-image caricature generation,如[1],[2]。然而,由于这些网络不适用于large spatial variation的问题,它们的结果存在视觉质量差的问题。

3.Methodology

文中提到的各个符号的含义:
在这里插入图片描述

3.1 Generator

在这里插入图片描述

  • 生成器一共包含三个部分:content encoder Ec,decoder Rwarp controller.
  • image x ∈ R H × W × C x \in R^{H×W×C} xRH×W×C
Texture Style Transfer

我们采用无监督的方法从feature map E c ( x ) E_c(x) Ec(x)中disentangle风格表示,这样我们可以将输入的照片转换为在漫画中呈现的不同的纹理样式。在训练中latent style code s ∼ N ( 0 , I ) \sim N(0,I) N(0,I)是正态分布的随机取样。R中的multi-layer perceptron解码s以生成R中的自适应实例标准化(AdaIN)层的参数。

为了防止 E c E_c Ec和R在纹理渲染过程中丢失语义信息,我们结合了 identity mapping loss和reconstruction loss去规范 E c E_c Ec和R。
L i d t p = E x p ∈ X p [ ∣ ∣ R ( E c ( x p ) , E s ( x p ) ) − x p ∣ ∣ 1 ] L_{idt}^p = E_{x^p \in X^p}[||R(E_c(x^p),E_s(x^p))-x^p||_1] Lidtp=ExpXp[R(Ec(xp),Es(xp))xp1]
L i d t c = E x c ∈ X c [ ∣ ∣ R ( E c ( x c ) , E s ( x c ) ) − x c ∣ ∣ 1 ] L_{idt}^c = E_{x^c \in X^c}[||R(E_c(x^c),E_s(x^c))-x^c||_1] Lidtc=ExcXc[R(Ec(xc),Es(xc))xc1]

Automatic Image Warping

warp controller是两个完全连接层的子网。其输入是 E c ( x ) E_c(x) Ec(x),这个控制器学习去估计k个控制点 p = p 1 , p 2 , . . . , p k p={p_1,p_2,...,p_k} p=p1,p2,...,pkresidual flow(???) Δ p = Δ p 1 , Δ p 2 , . . . , Δ p k \Delta p={\Delta p_1,\Delta p_2,...,\Delta p_k} Δp=Δp1,Δp2,...,Δpk,其中 p i p_i pi Δ p i \Delta p_i Δpi是在u-v space(???) 中的二维向量。 p ′ = p 1 ′ , p 2 ′ , . . . , p k ′ p \prime={p_1\prime,p_2\prime,...,p_k\prime} p=p1,p2,...,pk使我们的目的点,其中 p i ′ = p i + Δ p i p_i\prime=p_i+\Delta p_i pi=pi+Δpi。然后可以通过thin-plate spline interpolation(薄板样条插值)计算大小为H×W的grid sampler(网格采样器):
f ( q ) = ∑ i = 1 k w i ϕ ( ∣ ∣ q − p i ′ ∣ ∣ ) + v T q + b f(q)=\sum_{i=1}^{k}w_i\phi (||q-p_i\prime ||)+v^Tq+b f(q)=i=1kwiϕ(qpi)+vTq+b

  • q:表示target image中像素的u-v location
  • f(q):给出original image中像素q的逆映射
  • ϕ ( r ) = r 2 l o g ( r ) \phi (r)=r^2log(r) ϕ(r)=r2log(r),是一个核函数。
  • w,v,b 是 ∑ j H × W ∣ ∣ f ( p j ′ ) − p j ∣ ∣ 2 \sum_{j}^{H×W}||f(p_j\prime)-p_j||^2 jH×Wf(pj)pj2的最小化。

利用逆映射函数f(Q)构造网格样本,变形的图片为 G ( x , s ) = W a r p ( R ( E c ( x ) , s ) , p , Δ p ) G(x,s)=Warp(R(E_c(x),s),p,\Delta p) G(x,s)=Warp(R(Ec(x),s),p,Δp),这可以通过 bi-linear sampling去生成。

###3.2 Discriminator(感觉理解会有偏差)
在这里插入图片描述

Patch Adversarial Loss

(适合学习视觉风格转换)
(具有3个滤波器、步幅为1的1×1卷积层的单独分支连接到鉴别器最后卷积层,以输出D1,D2,D3用于patch adversarial loss。)
我们使用一个全卷积网络作为一个patch discriminator。它被训练为3级分类器,以扩大生成的图像和真实照片的样式之间的差异。设D1,D2和D3分别表示漫画,照片和生成图像这三类的对数。
L p G = − E x p ∈ X p , s ∈ S [ l o g D 1 ( G ( x p , s ) ) ] L_p^G=-E_{x^p \in X^p,s\in S}[logD_1(G(x_p,s))] LpG=ExpXp,sS[logD1(G(xp,s))]
L p D = − E x c ∈ X c [ l o g D 1 ( x c ) ] − E x p ∈ X p [ l o g D 2 ( x p ) ] − E x p ∈ X p , s ∈ S [ l o g D 3 ( G ( x p , s ) ) ] L_p^D=-E_{x^c\in X^c}[logD_1(x_c)]-E_{x^p\in X^p}[logD_2(x_p)]-E_{x^p\in X^p,s\in S}[logD_3(G(x_p,s))] LpD=ExcXc[logD1(xc)]ExpXp[logD2(xp)]ExpXp,sS[logD3(G(xp,s))]

Identity-Preservation Adversarial Loss

虽然patch discriminator适合学习视觉风格转换,它未能捕捉到不同身份的显著特征。根据不同的人的面部特征,不同的人实际上会有不同的风格。为了结合身份保留与风格学习,我们提出了将鉴别器培养为3M级分类器,(M是人身份的数量)第一,第二和第三M类对应于真实照片、真实漫画和假漫画的不同身份。 y p , y c ∈ 1 , 2 , 3 , . . . , M y^p,y^c\in {1,2,3,...,M} yp,yc1,2,3,...,M表示真实照片和卡通图的labels。
L g G = − E x p ∈ X p , s ∈ S [ l o g D ( y p ; G ( x p , s ) ) ] L_g^G=-E_{x^p\in X^p,s\in S}[logD(y_p;G(x_p,s))] LgG=ExpXp,sS[logD(yp;G(xp,s))]
L g D = − E x c ∈ X c [ l o g D ( y c ; x c ) ] − E x p ∈ X p [ l o g D ( y p + M ; x p ) ] − E x p ∈ X p , s ∈ S [ l o g D ( y p + 2 M ; G ( x p , s ) ) ] L_g^D=-E_{x^c\in X^c}[logD(y_c;x_c)]-E_{x^p\in X^p}[logD(y_p+M;x_p)]-E_{x^p\in X^p,s\in S}[logD(y_p+2M;G(x_p,s))] LgD=ExcXc[logD(yc;xc)]ExpXp[logD(yp+M;xp)]ExpXp,sS[logD(yp+2M;G(xp,s))]
(D(y; x)表示给定图像x的类y的对数。)

这鉴别器以告知真实照片,真实漫画,生成的漫画以及图像中的身份之间的差异。

最后,利用以下目标函数对系统进行端到端优化:
m i n G L G = λ p L p G + λ g L g G + λ i d t ( L i d t c + L i d t p ) min_G L_G=\lambda_pL_p^G+\lambda_gL_g^G+\lambda_{idt}(L_{idt}^c+L_{idt}^p) minGLG=λpLpG+λgLgG+λidt(Lidtc+Lidtp)
m i n D L D = λ p L p D + λ g L g D min_D L_D=\lambda_pL_p^D+\lambda_gL_g^D minDLD=λpLpD+λgLgD

4 Experiments

Dataset

我们使用的是WebCaricature数据集,包含6042张漫画和5974张人脸照片。首先我们将该数据集里的图片按照左眼、右眼、鼻子、左嘴角、右嘴角这五个点进行对齐处理。(由于原数据集中的17个landmarks中含有的坐标是左眼左角、左眼右角,所以将其两个值进行平均来得到左眼坐标。右眼坐标处理方式相同。)接着我们将图片resizes到256×256。

在训练是本文使用的是126个人物(3016张人物照片和3112张漫画),在测试是使用剩余的126个人物(2958张人物照片和2930张漫画)

实验细节

我们的网络结构是在MUNIT[3]模型上修改的。
在这里插入图片描述
下图表示为上图中各个符号的具体操作:
在这里插入图片描述

  • 我们在content encoder中使用 Instance Normalization (IN)

  • 在decoder中使用Adaptive Instance
    Normalization (AdaIN) ,但是在style encoder中没有使用归一化.

  • style decoder (多层感知器)具有两个隐藏的完全连接的128个滤波器层,没有归一化,并且warp controller只有一个隐藏的完全连接的128个滤波器层,具有Layer Normalization

  • 我们在discriminator中使用Leaky Relu(slope=0.2),但是在其他模块中使用ReLU

  • 在tensorflow中使用Adam优化器, β 1 = 0.5 , β 2 = 0.9 \beta_1=0.5,\beta_2=0.9 β1=0.5,β2=0.9

  • 训练的step为100000

  • 学习率设置为0.0001,并且在step为50000时线性地降到0。

  • λ g = 1.0 , λ p = 2.0 , λ i d t = 10.0 , \lambda_g=1.0,\lambda_p=2.0,\lambda_{idt}=10.0, λg=1.0,λp=2.0,λidt=10.0,

  • 控制点(control points)k=16

[1].Photo-to-caricature translation on faces in the wild.
[2].CariGAN: Caricature Generation through Weakly Paired Adversarial Learning.
[3].Multimodal unsupervised image-to-image translation

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值