GAN Inversion: A Survey笔记

news2024/7/6 19:48:30

文章目录

  • 论文介绍
    • 问题描述
  • 交待准备工作
    • GAN模型
    • 数据集
    • 评价指标
      • Photorealism
      • Faithfulness
      • Editability
  • 论文方法
    • 隐空间介绍
      • Z空间
      • W和W+空间
      • S空间
      • P空间
    • 三种方法
      • 1 基于学习的GAN Inversion
      • 2 基于优化的GAN inversion
      • 3 混合GAN inversion
  • GAN inversion方法的特性
    • 所支持的分辨率

论文介绍

  Gan逆映射操作的目的就是将图像逆映射到预训练Gan模型的潜在空间,之后图像可以由生成器从逆映射的代码中可信的重建,使得可以在现有训练的GAN的潜在空间的可控方向上进行图像编辑。具体流程见下图,我们将真实图像逆映射到潜空间后,可以沿着一个特定方向改变代码来编辑图像属性。
在这里插入图片描述

  最后作者提及了给定图像获得的潜在隐空间应该具有的特性:可信逼真的重建图像以及促进下游任务,这也是GAN逆映射的目标。

问题描述

  Gan的生成器表达式为G:Z->X,当z1和z2在z空间无限接近时,那么生成的x1和x2也会很相似,那么我们可以利用这一点,将x逆映射回潜表示z*,之后放入生成器得到一个图像x*,保持接近真实的图像x。具体任务如下:(其中x是真实图像,z是隐空间向量,l是特征空间或者图像的距离度量函数,改变z*可以进一步获取经过处理的图像)
z ∗ = a r g min ⁡ z l ( G ( z ) , x ) z* = arg\min_{z} l(G(z),x) z=argzminl(G(z),x)
  作者在下文介绍了很多逆映射gan的模型以及方法,为了评估不同方法的性能,主要考虑两方面:重建图像的真实感(感知质量)和可信性(逆映射精度),其中第一个方面取决于如何求解公式,第二个方面取决于利用那些潜空间。

交待准备工作

GAN模型

1.DCGGAN 在鉴别器使用了卷积,在生成器中使用了分步卷积。
2 WGAN 将生成的数据分布与真实数据之间的Wasserstein距离最小化,这样就可以提供更多的模型稳定性,使得训练更容易。
3 BigGAN 生成高质量图像,通过对缩放、正交正则化进行修改,来提高大规模GAN的可伸缩性稳定性和鲁棒性。
4 PGGAN 也被称为proGAN和渐进式GAN,在训练中使用了增长策略,从生成器和鉴别器的低分辨率开始,然后逐渐添加新层,对越来越细粒度的细节进行建模,该方法提高了训练速度和稳定性。
5 styleGAN 隐式的学习用于图像生成的潜在风格。该模型操作每通道的均值和方差来控制图像风格,如下图所示,风格生成器将风格特征(由映射网络f定义)和随机噪声作为图像合成的输入。styleGAN2模型通过提出权重解调,路径长度正则化,生成器重设置和去除渐进增长,进一步提高了感知质量。styleGAN2-Ada提出了自适应鉴别器增强机制,可以以稳定的有限数据进行训练。styleGAN3观察到了GAN中存在的纹理粘连问题,通过在连续域中考虑混叠效应对结果进行适当的低通滤波,更适合于动画和视频。
在这里插入图片描述
对上图部分解释:z空间通过f映射到w空间,再输入生成网络得到生成图像x
(其中w空间就是z空间上建立的隐空间,在继承z空间功能的情况下获得更好的解耦能力,其中解耦能力简单说就是仅改变一个方向上的隐码,就可以改变面部的部分属性,而其他的整体属性不会被影响)

数据集

1 ImageNet 是一个用于视觉对象识别研究的大规模手工注释数据集,包含超过1400万幅图像,超过2万个类别。
2 CelebA 一个大规模的人脸属性数据集,由200k张名人图像组成,每个图像有40个属性注释。
3 Flickr-Faces-HQ (FFHQ) 是一个从Flickr中抓取的高质量人脸图像数据集,由70,000张1024×1024像素的高质量人脸图像组成,包含了相当大的年龄、种族和图像背景差异。
4 LSUN 包含10个场景类别(例如,卧室、教堂或塔楼)和20个对象类别(例如,鸟、猫或公共汽车)中每一个的大约100万个标记图像。 GAN反演方法中常用的是教堂和卧室场景图像以及汽车和鸟类物体图像。 一些GAN反演研究也在实验中使用其他数据集,如DeepFashion、AnimeFaces和Streetscapes。

评价指标

对GAN反演方法的评价有不同的维度,如photorealism, faithfulness of 生成图像、逆映射潜码的editability等。

Photorealism

1 Inception score (IS) 一个被广泛用于测量从GaN模型生成的图像的质量和多样性的度量。 它使用在ImageNet上预先训练的Inception-V3网络计算合成图像的统计量。 分数越高越好。
2 Fr´echet inception distance (FID) 由基于inception-v3 pool3层的真实图像和生成图像的特征向量之间的frechet距离定义的。较低的FID表示较好的知觉质量。
3 Learned perceptual image patch similarity (LPIPS) 使用在ImageNet上预先训练的VGG模型测量图像感知质量。 较低的值意味着图像补丁之间的相似度较高。

Faithfulness

  Faithfulness衡量真实图像与生成图像之间的相似性。 它可以通过图像的相似度来近似。 最广泛使用的指标是PSNR和SSIM。 一些方法使用像素重建距离,如平均绝对误差(MAE)、均方误差(MSE)或均方根误差(RMSE)。
1 Peak signal-to-noise ratio (PSNR) 是衡量重建质量应用最广泛的标准之一。 真值图像与重建图像之间的PSNR由图像的最大可能像素值和图像间的均方误差定义。
2 Structural similarity (SSIM) 基于亮度、对比度和结构方面的独立比较,测量图像之间的结构相似性。

Editability

这个主要度量反向潜在码相对于生成器的输出图像的某些属性的可编辑灵活性。现有的方法就是使用余弦或者欧氏距离或分类精度来评估输入x和输出x之间的属性。

论文方法

  作者在下文主要介绍了GAN模型的不同2隐空间以及有代表性的逆映射方法。除了用于一般GAN的Z空间之外,还专门为StyleGAN设计了几个潜在空间,包括W、W+、S和P空间。

隐空间介绍

  无论哪种gan逆映射的方法都包含一个重要步骤:将图像嵌入到哪个潜在空间。好的隐空间应该具备以下性质:易于解耦,好嵌入,可以忠实的逼近真实图像以及方便下游任务去编辑图像。

Z空间

  GAN中的生成器学习将简单分布的值映射到生成的图像。这些直接从分布中采样的值一般叫做潜在代码或者潜在表示(用z表示),Z空间适用于所有无条件GaN模型,如DCGAN,PGGAN,BigGAN,Stylegans。 然而,Z空间服从正态分布的约束限制了它对语义属性的表示能力和解耦性。

W和W+空间

  这是StyleGAN采用的隐空间,具有更高的自由度和解耦能力,因此肯定比z空间有更好的表达能力。styleGAN中是通过8个mlp实现的非线性网络映射将z转换为风格向量w。然而W空间也有缺陷,就是限制了能够忠诚表达重建图像的范围,因此出现了W+空间,在W+空间中,不同的隐向量W通过AdaIN被输入到生成器的每一层,这种将图像逆映射到W+空间的方法以牺牲可编辑性为代价减轻了失真。

S空间

  风格空间S通过生成器的每一层使用不同的学习仿射变换,从w开始变换,s空间是为了在语义层面之外的空间维度上实现更好的解耦能力。空间耦合主要由于基于风格生成器的固有复杂性和AdaIN归一化的空间不变性引起的,现在有人使用编码器学习的解耦多级视觉替换原始风格code,这些风格参数所跨越的空间称为y空间,实际上也是S空间的一种类型,通过直接插入风格code s,基于S空间的方法,实现了对局部翻译的细粒度控制。

P空间

  p = leaklyrelu5.0(w) Z->W->p->x 优点是这种变换将分布归一化,也就导致p空间所有方向都是各向同性的。

三种方法

图像中蓝色块表示可训练或迭代模块,红色虚线箭头表示监督。

1 基于学习的GAN Inversion

  基于学习的反演方法旨在学习编码器网络以将图像映射到潜在空间中,使得基于潜在代码的重建图像看起来尽可能类似于原始图像。这里的基于学习的GAN inversion主要涉及到训练编码器E(x;θE)来将图像x映射到潜在空间z中,注意在训练时解码器G的参数冻结。
θ E ∗ = a r g min ⁡ θ E ∑ n L ( G ( E ( x n ; θ E ) ) , x n ) \theta _{E}^{*} = arg\min_{\theta_{E}} \sum_{n}^{} L(G(E(x_{n};\theta _{E})),x_{n}) θE=argθEminnL(G(E(xn;θE)),xn)
  Perarnau等人提出了这种种早期的基于学习的GAN反演方法,真实图像x由潜在空间的z和属性向量y来编码,通过改变y来合成x,该方法包括了Ez以及Ey,为了训练Ez,该方法使用生成器来创建x和z的数据集,并且通过最小化z和Ez(G(z,y))之间的均方损失,并且通过使用 ∥ y − E y ( x ) ∥ 2 2 \left \| y-E_{y}(x) \right \| _{2}^{2} yEy(x)22作为目标函数来训练提高Ey,Ey最初使用生成的图像x和其他信息y来训练。
  由于现在styleGAN的流行,很多人提出了基于学习的styleGAN优化,Richardson提出了MAP2Style模块从相应的特征图去学习风格,其中18个潜在码被单独预测;Wei等人提出了有效的头,它由平均池化和全连接层组成,给定由FPN获得的三个不同语义级别的特征,这三个头分别从浅、中和深特征产生w15、…、w18、w10、…、w14和w1、…、w9;后面Tov分析了styleGAN潜在空间失真,感知质量和可编辑性之间的权衡;为了提高逆映射精度,Alaluf et al为编码器引入了细化迭代机制:在第t步,编码器对通过将给定图像x和预测图象进行级联获得的扩展输入进行操作,而不是前向传递直接进行预测潜在码,更细点说,∆t = E(x, yt),其中yt = G(wt),之后步骤t+1处的潜在码设置为wt+1 = Δ t +wt,w0和y0的初始值分别被设置为平均潜在码以及对应的图像。
  总之所有GAN inversion的目标都是确定训练GAN模型的潜在空间。
在这里插入图片描述

2 基于优化的GAN inversion

  基于优化的反演方法通过反向传播直接求解目标函数,以找到使逐像素重建损失最小化的潜在代码。现有的基于优化的GAN inversion方法基本都是通过优化隐向量来重建目标图像:
z ∗ = a r g min ⁡ z l ( x , G ( z ; θ ) ) z^{*} = arg\min_{z} l(x,G(z;\theta )) z=argzminl(x,G(z;θ))
  其中选择优化器至关重要,好的优化器可以缓解局部极小值问题,有两种类型优化器:基于梯度的方法(ADAM,LBFGS等等)和无梯度的方法(CMA),其中不同GAN反演方法选择不同的优化器。
  另一个重要的问题是潜在code的初始化。由于GAN inversion公式是非凸的,所以重建质量强烈依赖于z的良好初始化(在styleGAN是w),实验表明,不同初始值导致生成的图像显著感知差异,直观的几个解决方式是从几个随即初始值开始,以最小的成本获得最佳结果。StyleGAN研究了两种初始化选择,一种基于随机选择,另一种基于平均潜在码w。注意,基于优化的方法,通常需要内存和允许两方面钢轨的迭代过程,因此他们必须独立于的应用于每个潜在码。
在这里插入图片描述

3 混合GAN inversion

  混合方法首先使用编码器来生成初始潜在代码,然后用优化算法对其进行细化。如虚线E所示,E中包含了经过良好训练的编码器,作为优化的正则化器。(d图)
在这里插入图片描述

GAN inversion方法的特性

  这节作者讨论了GAN inversion方法的重要特性:支持的分辨率,语义感知,逐层处理和超出分布的泛化能力

所支持的分辨率

  GAN inversion所支持的图像分辨率主要取决于生成单元的容量和选区的反演机制。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1619506.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

无人机干扰技术及干扰设备突破性发展

无人机干扰技术主要指的是通过各种手段干扰无人机的正常运行,从而达到使其失去控制、降低其性能或获取其信息的目的。这些干扰手段可以包括无线电干扰、GPS干扰、信号屏蔽、光学干扰等。 1.无线电干扰:由于无人机在遥控、定位、数据传输等方面都依赖于无…

齐护K210系列教程(一)_软件硬件准备

关于课程 本课程是基于齐护AIstart(K210)和scratch图形化编程的系列课程。 关于AIstart 内置[Kendryte K210]AI芯片,专为机器视觉与机器听觉多模态识别而设计,可广泛应用于智能家居/机器视觉/智能机器人/安防监控等领域。更多详细内容请点击这里。 1 硬件准备 …

UDS故障码的状态

在使用UDS19 02 服务读取故障码信息时,读取到的故障码信息占四个字节,其中 04 20就代表 P0 04 20(动力系统故障),第三个字节00就代表发生故障的原因。第四个字节就是今天我们重点强调的故障码状态。 解读故障码状态字节…

Mimics21软件学习总结

一. Mimics21软件安装过程 ① 解压下载好的Mimics软件包; ② 双击“MIS_Medical_21.0.exe”打开等待安装程序初始化完成; ③ 进入安装向导点击“next”; ④ 点击选择“Iaccept the agreement”同意相关协议,随后点击“next”&…

网络编程 -- 简易TCP网络程序

一 字符串回响 1.1 核心功能 字符串回响程序类似于 echo 指令,客户端向服务器发送消息,服务器在收到消息后会将消息发送给客户端,该程序实现起来比较简单,同时能很好的体现 socket 套接字编程的流程。 1.2 程序结构 这个程序我们…

LangSmith帮助测试大模型系统

LangSmith是评估大模型能力好坏的评估工具,能够量化评估基于大模型的系统的效果。LangSmith通过记录langchain构建的大模型应用的中间过程,从而能够更好的调整提示词等中间过程做优化。想要使用LangSmith首先进入他的设置页面,https://smith.langchain.com/settings注册一个…

DaVinci Fusion Studio 19 for Mac/win:影视后期特效合成的巅峰之作

在影视后期制作的广袤天地里,一款强大的特效合成软件如同一位技艺高超的魔法师,能够化腐朽为神奇,将普通的影像素材转变为震撼人心的视觉盛宴。而DaVinci Fusion Studio 19,正是这样一款备受影视从业者推崇的巅峰之作。 无论是Ma…

python简易小时钟

import time import turtledef getTime():tt time.localtime() # 结构化的时间ss time.strftime(%Y年%m月%d日 %H:%M:%S, tt)return sspen turtle.Turtle()pen.backward(100) pen.speed(0)while True:time.sleep(1)times getTime()pen.clear()pen.write(times, font("…

恒峰智慧科技—森林消防泵:既可灭除火灾,又可清理水患

在广袤的森林中,火灾与水患如同潜伏的猛兽,时刻威胁着生态的安全。然而,随着科技的进步,我们有了更强大的武器来对抗这些威胁——森林消防泵。这款神奇的设备不仅能迅速扑灭火灾,还能在雨季到来时清理水患,…

基于Springboot的幼儿园管理系统

基于SpringbootVue的幼儿园管理系统的设计与实现 开发语言:Java数据库:MySQL技术:SpringbootMybatis工具:IDEA、Maven、Navicat 系统展示 用户登录 用户管理 教师管理 幼儿园信息管理 班级信息管理 工作日志管理 会议记录管理…

【用户投稿】Apache SeaTunnel 2.3.3+Web 1.0.0版本安装部署

项目概要 Apache SeaTunnel 是一个分布式、高性能、易扩展的数据集成平台,用于实时和离线数据处理,支持多种数据源之间的数据迁移和转换。 其中,Apache-seatunnel-web-1.0.0-bin.tar.gz和apache-seatunnel-2.3.3-bin.tar.gz代表了 Apache SeaTunnel Web…

FIR补偿滤波器——matlab的FDA实现

输入采样频率:192KHz 抽取倍数:2 通带截至频率:20KHz 通带衰减:0.1dB 阻带衰减:120dB 在更多选项那里,设置c为0.5,代表抽取倍数为1/c,p设置为4,代表级联阶数。FIR补偿…

新生儿听力筛查怎么做?宝爸宝妈必看

健康讲堂 根据全国第二次残疾人抽样调查结果显示,目前我国现有听力残疾人2780万,其中17岁以下单纯听力残疾儿童22.15万。新生儿听力障碍发生率约为1~3‰,如果没有得到早期有效的治疗,势必影响其情感、智力的正常发育&a…

CCFC3007 串口中断问题和W1C记录

最近在看国芯的一个串口中断问题。 串口发送完成中断和接收中断是这样写的。 寄存器描述是这样的: 发送完成和接收完成中断,写1清除。 乍一看,上面的中断处理函数写的应该没问题,但其实这样写是有隐患的。 先来看段程序&#x…

大模型应用RAG系列(1)初识RAG

题外话 之前我们在讲大模型的应用方向和架构时,有提到RAG、Agent、Fine-Tune。在作者写大模型专题的文章时,也是边学习,边梳理,边总结。在这个过程中,大模型在各个方向都不断地快速发展,对应的paper、理论…

第55篇:创建Nios II工程之Hello_World<一>

Q:本期我们开始介绍创建Platform Designer系统,并设计基于Nios II Professor的Hello_world工程。 A:设计流程和实验原理:需要用到的IP组件有Clock Source、Nios II Professor、On-Chip Memory、JTAG UART和System ID外设。Nios I…

YesPMP众包平台最新项目

YesPMP一站式互联网众包平台,最新外包项目,有感兴趣的用户可进入平台参与竞标。 (竞标后由项目方直接与服务商联系,双方直接对接) 1.查看项目:个人技术-YesPMP平台 2.查看项目&#xff1…

SpringBoot 启动控制台 --banner.txt实现打印炫酷控制台图案

文章目录 目录 文章目录 安装流程 小结 概要安装流程技术细节小结 概要 分析源代码,banner.txt实现打印控制台 控制台图案生成网址:Ascii艺术字实现个性化Spring Boot启动banner图案,轻松修改更换banner.txt文件内容,收集了丰富…

数据结构之顺序表(java版)

目录 一.线性表 1.1线性表的概念 二.顺序表 2.1顺序表的概念 2.2顺序表的实现 1.顺序表的接口 1.2顺序表的功能实现 1.顺序表初始化 2.新增元素功能: 3.清空顺序表是否为空&&获取顺序表长度&&打印顺序表: 4.判断是否包含某个…

vue2和vue3浏览器兼容性对比

一、Vue2.0不支持IE8, 因为Vue使用了IE8无法模拟的ECMAScript 5 特性,但它支持所有兼容ECMAScript 5 的浏览器。 二、Vue3.0 不支持 IE11 及以下版本。兼容ECMAScript 5的浏览器