CVPR2022新作:P图不会,深度学习来帮忙,基于GAN逆映射的图像编辑(中)

GAN逆映射(GAN Inversion)实际上是逆向思维的极佳范式。简单来说,以往将编码z通过生成器合成图像;现在是求真实图像的编码,期望在特征空间的修改最终映射为对图像语义的修改,比如将人脸图像的属性进行修改(表情变为微笑、戴上眼镜等)。

论文回顾

这篇论文全名为"Style Transformer for Image Inversion and Editing",模型训练后可以一键修改人脸的各种属性(表情、头发、眼睛等)

CVPR2022新作:P图不会,深度学习来帮忙,基于GAN逆映射的图像编辑(中)_第1张图片

前置知识讲解

这篇论文涉及到了GAN逆映射(GAN Inversion),理解这个概念是理解本论文的关键,下面将从神经网络开始,逐步递进。

神经网络

CVPR2022新作:P图不会,深度学习来帮忙,基于GAN逆映射的图像编辑(中)_第2张图片

神经网络的结构主要有输入层,隐藏层,输出层构成,输入层需要根据特征数目来决定,输出层 根据解决的问题来决定,隐藏层的网路层数以及每层的神经元数就是可以调节的参数。

卷积神经网络(CNN)

CVPR2022新作:P图不会,深度学习来帮忙,基于GAN逆映射的图像编辑(中)_第3张图片

卷积运算可视化如动图所示,其中灰色3*3的区域为卷积核,左侧虚线区域为图像(简化),右侧区域为运算结果。运算过程为卷积核与当前图像重叠区域的每个数值相乘后求和,卷积核从左往右、从上往下进行移动。

生成对抗网络(GAN)

CVPR2022新作:P图不会,深度学习来帮忙,基于GAN逆映射的图像编辑(中)_第4张图片

生成对抗网络(英语:Generative Adversarial Network,简称GAN)是非监督式学习的一种方法,通过让两个神经网络相互博弈的方式进行学习。生成对抗网络由一个生成网络与一个判别网络组成。

生成网络从潜在空间(latent space)中随机取样作为输入,其输出结果需要尽量模仿训练集中的真实样本。判别网络的输入则为真实样本或生成网络的输出,其目的是将生成网络的输出从真实样本中尽可能分辨出来。

而生成网络则要尽可能地欺骗判别网络。两个网络相互对抗、不断调整参数,最终目的是使判别网络无法判断生成网络的输出结果是否真实。

GAN逆映射(GAN Inversion)

生成式对抗网络(GANs)虽然目前可以合成高质量的图像,但无法直接把这些训练好的模型做为先验信息,直接应用于真实图像编辑。为了让训练好的GAN能用于处理图像,可以尝试重新反向传播(寻找合适的Z)或者添加一个额外的编码器encoder将图像映射到潜在空间。当然除了这两种途径外,还有不少优化方法。

说到GAN逆映射,不得不提香港中文大学周博磊老师团队的工作"Image Processing Using Multi-Code GAN Prior"。周老师的论文提出一种新的逆映射(image->Z)方法,将训练好的GAN作为一个有效的先验去处理多种图像处理任务。具体而言,给定需要做逆映射的GAN模型,基于多个编码Z利用GAN模型生成多个特征图(映射到生成器的某个中间层),接着对它们加权组合生成目标图像。这种方式可以明显提升图像的重建质量。高质量图像重建作为一种先验信息,可以用在许多真实场景,比如:图像编辑、超分辨率、图像修复等。

资源下载

本论文涉及的代码和模型权重(国外网盘),已打包放入百度网盘。关注公众号实用AI客栈,在后台回复1002即可获取下载链接。

实用AI客栈

分享人工智能领域最新资讯,讲解各类实用的算法和模型。

原理剖析(续)

讲完了论文前置知识,论文详细原理将在下一篇公众号文章中展开。如有疑问,欢迎在评论区留言。

你可能感兴趣的:(论文解读,人工智能,深度学习,机器学习,pytorch,生成对抗网络)