前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Diverse Image-to-Image Translation via Disentangled Representations

Diverse Image-to-Image Translation via Disentangled Representations

作者头像
狼啸风云
修改2022-09-02 19:47:37
1.8K0
修改2022-09-02 19:47:37
举报

摘要:图像到图像的翻译主要学习两个视觉域之间的映射关系。主要有两个挑战:1)缺少对齐的成对的训练数据2)和对于一个输入图片的多种可能输出。这篇文章中,提出了基于解开表示disentangled representation的,在没有成对训练数据情况下,产生多样的输出。为了实现多样性,将图片分解为两个空间:一个域不变的内容空间来捕捉不同域之间的共享信息,和属性空间的特殊域。此模型从给定图片中提取解码的内容特征以及从属性空间中采样的属性向量来在测试阶段产生多样性图片。为了解决数据不成对问题,我们提出了一个新的基于解开表示的交叉循环一致性损失cross-cycle consistency loss。质量评估显示在没有成对训练数据的情况下我们能生成多样真实的图片。在量化比较中,我们用用户学习来评价真实性以及用感知距离度量来评价多样性。在MNIST-M和LineMod数据集上的应用性与其他先进算法的比较中具有有竞争力的表现。

与CycleGAN和UNIT比较 ,x,yX,Y域中的图像。CycleGAN把下x,y映射到分别的隐空间。UNIT假设x,y能映射到共享的空间。我们的方法将x,y的隐空间解开到共享的内容空间C和特殊的属性空间A

3.I2I翻译解开表示

我们的目标是学习在没有成对训练数据下两个视觉域X,Y的多模型映射。我们的由内容解码器\left\{E_{\mathcal{X}}^{c}, E_{\mathcal{Y}}^{c}\right\} 属性解码器\left\{E_{\mathcal{X}}^{a}, E_{\mathcal{Y}}^{a}\right\}生成器\left\{G_{\mathcal{X}}, G_{\mathcal{Y}}\right\} 和域判别器\left\{D_{\mathcal{X}}, D_{\mathcal{Y}}\right\}以及一个内容判别器D_{\text {adv }}^{\mathrm{c}} 。以X域为例,内容编码器映射图片到一个共享的,同域的内容空间\left(E_{\mathcal{X}}^{c}: \mathcal{X} \rightarrow \mathcal{C}\right) ,属性编码器映射图片到特殊的属性空间\left(E_{\mathcal{X}}^{a}: \mathcal{X} \rightarrow \mathcal{A}_{\mathcal{X}}\right) ,生成器生成在内容和属性向量条件下的\left(G_{\mathcal{X}}:\left\{\mathcal{C}, \mathcal{A}_{\mathcal{X}}\right\} \rightarrow \mathcal{X}\right) ,判别器D_{\mathcal{X}} 用于判别X域中的真实图片和生成图片。内容判别器 D^c 用于辨别两个域中提取出来的内容表示。为了在测试时实现多模态生成,我们对属性向量进行正则化,以便可以从先验高斯分布N(0;1)中抽取它们。

\begin{array}{ll} \left\{z_{x}^{c}, z_{x}^{a}\right\}=\left\{E_{\mathcal{X}}^{c}(x), E_{\mathcal{X}}^{a}(x)\right\} & z_{x}^{c} \in \mathcal{C}, z_{x}^{a} \in \mathcal{A}_{\mathcal{X}} \\ \left\{z_{y}^{c}, z_{y}^{a}\right\}=\left\{E_{\mathcal{Y}}^{c}(y), E_{\mathcal{Y}}^{a}(y)\right\} & z_{y}^{c} \in \mathcal{C}, z_{y}^{a} \in \mathcal{A}_{\mathcal{Y}} \end{array}

为了实现解开表示 我们运用了两个策略:权重共享和内容判别。我们共享E_{\mathcal{X}}^{c} \text { and } E_{\mathcal{Y}}^{c} 最后一层和E_{\mathcal{X}}^{c} \text { and } E_{\mathcal{Y}}^{c} 的第一层权重。通过权重共享,我们强制内容表示映射到同一空间。但是共享映射函数的高层不能保证对于不同域同样的内容表示编码成同样的信息,提出了内容判别器辨别编码后的内容特征z_{x}^{c} \text { and } z_{y}^{c} 。也就是内容编码器学习编码内容表示,这个内容表示不同域成员不能被内容判别器判别出来(理解就是把不同域的内容编码到同一表示)。

内容对抗损失函数为:

\begin{aligned} L_{\mathrm{adv}}^{\mathrm{content}}\left(E_{\mathcal{X}}^{c}, E_{\mathcal{Y}}^{c}, D^{c}\right) &=\mathbb{E}_{x}\left[\frac{1}{2} \log D^{c}\left(E_{\mathcal{X}}^{c}(x)\right)+\frac{1}{2} \log \left(1-D^{c}\left(E_{\mathcal{X}}^{c}(x)\right)\right)\right] \\ &+\mathbb{E}_{y}\left[\frac{1}{2} \log D^{c}\left(E_{\mathcal{Y}}^{c}(y)\right)+\frac{1}{2} \log \left(1-D^{c}\left(E_{\mathcal{Y}}^{c}(y)\right)\right)\right] \end{aligned}

交叉循环一致性损失:利用解开的内容和属性表示来循环重建。

1.向前翻译:给定未配对的图像x,y,我们将其编码\left\{z_{x}^{c}, z_{x}^{a}\right\} \text { and }\left\{z_{y}^{c}, z_{y}^{a}\right\} ,通过交换属性表示实现第一次转换。来产生\{u,v\}

u=G_{\mathcal{X}}\left(z_{y}^{c}, z_{x}^{a}\right) \quad v=G_{\mathcal{Y}}\left(z_{x}^{c}, z_{y}^{a}\right),u \in \mathcal{X}, v \in \mathcal{Y}

2.向后翻译。将u,v编码\left\{z_{u}^{c}, z_{u}^{a}\right\} \text { and }\left\{z_{v}^{c}, z_{v}^{a}\right\} ,再次交换属性表示进行第二次转换。

\hat{x}=G_{\mathcal{X}}\left(z_{v}^{c}, z_{u}^{a}\right) \ldots \hat{y}=G_{\mathcal{Y}}\left(z_{u}^{c}, z_{v}^{a}\right)

于是交叉循环一致损失函数为:

\begin{aligned} L_{1}^{c c}\left(G_{\mathcal{X}}, G_{\mathcal{Y}}, E_{\mathcal{X}}^{c}, E_{\mathcal{Y}}^{c}, E_{\mathcal{X}}^{a}, E_{\mathcal{Y}}^{a}\right)=& \mathbb{E}_{x, y}\left[\left\|G_{\mathcal{X}}\left(E_{\mathcal{Y}}^{c}(v), E_{\mathcal{X}}^{a}(u)\right)-x\right\|_{1}\right.\\ &\left.+\left\|G_{\mathcal{Y}}\left(E_{\mathcal{X}}^{c}(u), E_{\mathcal{Y}}^{a}(v)\right)-y\right\|_{1}\right], \end{aligned}
\left.\left.u=G_{\mathcal{X}}\left(E_{\mathcal{Y}}^{c}(y)\right), E_{\mathcal{X}}^{a}(x)\right) \text { and } v=G_{\mathcal{Y}}\left(E_{\mathcal{X}}^{c}(x)\right), E_{\mathcal{Y}}^{a}(y)\right)

自重建损失: L_{1}^{\mathrm{rec}}\hat{x}=G_{\mathcal{X}}\left(E_{\mathcal{X}}^{c}(x), E_{\mathcal{X}}^{a}(x)\right)\hat{y}=G_{\mathcal{Y}}\left(E_{\mathcal{Y}}^{c}(y), E_{\mathcal{Y}}^{a}(y)\right)

KL损失:为了在测试时随机采样,我们期望属性表示接近接近高斯分布:

L_{\mathrm{KL}}=\mathbb{E}\left[D_{\mathrm{KL}}\left(\left(z_{a}\right) \| N(0,1)\right)\right]

其中D_{\mathrm{KL}}(p \| q)=-\int p(z) \log \frac{p(z)}{q(z)} \mathrm{d} z

隐藏回归损失: 促进可逆的图像和隐空间映射,从高斯分布中提取隐藏向量z作为属性表示,并且努力重构\hat{z}=E_{\mathcal{X}}^{a}\left(G_{\mathcal{X}}\left(E_{\mathcal{X}}^{c}(x), z\right)\right)

因此整个损失函数为:

\begin{aligned} \min _{G, E^{c}, E^{a}} \max _{D, D^{c}} & \lambda_{\mathrm{adv}}^{\text {content }} L_{\mathrm{adv}}^{\mathrm{c}}+\lambda_{1}^{\mathrm{cc}} L_{1}^{\mathrm{cc}}+\lambda_{\mathrm{adv}}^{\text {domain }} L_{\mathrm{adv}}^{\text {domain }}+\lambda_{1}^{\mathrm{recon}} L_{1}^{\mathrm{recon}} \\ &+\lambda_{1}^{\text {latent }} L_{1}^{\text {latent }}+\lambda_{\mathrm{KL}} L_{\mathrm{KL}} \end{aligned}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-01-03 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档