stylegan2本身就不赘述。目标很明确,比如希望给elon mask换个发色,下面是采用StyleCLIP但在 wp空间中修改的

或者,戴个眼镜,

达到这个目的有很多方法,这边主要要讲的是通过操纵stylegan2潜变量的几个方法来。

我们把这个问题分成几个步骤来看,

1. stylegan2基本网络结构,为了说清楚问题,这边简简单单放一张图(拷自https://zhuanlan.zhihu.com/p/263554045)

由图可知,输入为z,经过mapping网络得到w,w复制18分之后(复制之后的潜变量称做wp),送入synthesis网络生成人脸。所以,人脸可以通过z、或者w、或者wp来控制。此处注意synthesis网络,wp经过A输出style,这个style也可以认作是一种潜空间(StyleSpace)。StyleCLIP论文表示,StyleSpace相较z和w以及wp,都有比较好的属性解耦作用,所以StyleCLIP是在StyleSpace上做文章。

2. 从1分析可以知道,要修改人脸属性,可以通过操纵z、w、wp、以及s(StyleSpace)来进行。但我们的任务,输入其实是一张图片,这边需要有一个把图片映射成z(或者w、wp、s)的过程,此处方法很多,基本分成两种,这边假设求z

A. 随机生成z,设计合适的loss通过梯度优化获取目标图片的z变量

B. 训练一个encoder来获取z变量

这两种方法不论哪一种,都要既保证z经过synthesis网络之后得到的人脸,和原来长得像,还希望编辑这个z,修改某种属性的时候,保持其他属性不变。其实大多数论文都会去求wp,我个人也比较倾向这个方法。至于StyleCLIP提到的StyleSpace,我做了些实验,在wp上也照论文方法实现了一遍,个人认为主观效果上差不多,并且wp操作起来方便,直接送入synthesis便可推理,无需去提取synthesis网络内部的卷积结果。

这一个部分大家可以参考"Encoding in Style: a StyleGAN Encoder for Image-to-Image Translation"或者"Designing an Encoder for StyleGAN Image Manipulation"(e4e),后面这篇文章是基于前面一篇文章的成果上做的,实用价值更大,个人观察,很多stylegan2的encoder都采用了e4e的预训练权重去求wp。

3. 获取到wp(或z、w、s)之后,就可以进入我们的主题,如何操纵人脸属性了,做这块研究的文章也特别多,基本上分成几类方法,这边就假设要实现戴眼镜或去眼镜的功能

A. 先获取一个分类器(这个八仙过海各显神通,github上也不少),然后对一堆图片进行分类,提取他们的wp,随机取两个,假设为wp1和wp2,之后将所有随机取的两两差值wp2-wp1/diff_of_attribute相加再平均一下,就可以获取到修改属性需要的delta wp。

B. StyleFlow(StyleFlow: Attribute-conditioned Exploration of StyleGAN-generated Images using Conditional Continuous Normalizing Flows)的方法,可以直接使用StyleFlow,StyleFlow为了实现属性解耦,会将wp和z之间来回映射,看着巧妙。当然使用StyleFlow获取到成对样本(比如男变女,变老),再采用A的方法也是可以,这样在实际使用的时候推理更快。

C. StyleCLIP的方法,通过CLIP对齐图像和文本的属性,那么就可以通过某个短语实现对人脸属性的控制。论文里就这点,也有三种做法,其中第三种是适应性最强的,第二种的mapper方法用于具体任务时推理较为方便。

这些文章的github实现有些讨厌的地方在于使用的stylegan2代码不太统一,个人建议基于https://github.com/rosinality/stylegan2-pytorch完善一套自己的项目代码。

stylegan2通过操纵潜变量进行人脸编辑方法相关推荐

  1. 其他EFA相关的包和其他潜变量模型

    2019独角兽企业重金招聘Python工程师标准>>> 其他EFA相关模型 R包含了其他许多对因子分析非常有用的软件包. FactoMineR包不仅提供了 PCA 和 EFA 方法, ...

  2. 【CV秋季划】人脸编辑之统一属性编辑方法视频更新

    本次给大家带来的是有三AI-CV秋季划-人脸算法组的视频,包括人脸通用属性编辑上下两期的内容,如果你还不知道有三AI-CV秋季划-人脸算法组是什么,可以看下面的视频和图文. 点击边框调出视频工具条 [ ...

  3. ICCV2021 | 南洋理工大学、港中大提出Talk-to-Edit,对话实现高细粒度人脸编辑

    关注公众号,发现CV技术之美 本文为52CV粉丝投稿. 来自南洋理工大学.香港中文大学的研究者提出了一个交互式人脸编辑框架 Talk-to-Edit,可以通过用户和系统之间的对话进行细粒度的属性操作. ...

  4. 通过深度学习偏微分方程模型估计剩余使用寿命:使用潜变量的 退化的动力学解释框架/PINN 在发动机寿命预测的应用 文献总结和内容概要

    PINN 在发动机寿命预测的应用 文献总结 内容概要 一.引言 二.物理信息神经网络PINN 三.本文所提出的框架 3.1当前DL-PHM所面临的三个问题 3.2 本文相应的解决方案 3.3 DNN框 ...

  5. R与结构方程模型(2):潜变量

    R与结构方程模型 降维 主成分分析 因子分析(Factor Analysis) 结构和测量模型 因子分析的其他问题 术语 潜变量的其他用途 总结 R包 原文链接:https://m-clark.git ...

  6. 【技术综述】人脸算法新热点,人脸编辑都有哪些方向,如何学习

    人脸属性编辑是一个很广的应用领域,不仅可以用于辅助其他诸如人脸识别等相关的任务,也可以独立成若干新的任务,在人机交互,娱乐社交领域有广泛应用,本文我们简单介绍其中核心算法以及如何深入学习. 作者&am ...

  7. 华为云——AI人脸编辑让Lena微笑

    目录 1.进入AI人脸编辑页面案例页面,并完成基础配置 2.下载代码和数据并安装依赖​编辑​ 3.开始运行代码 1.进入AI人脸编辑案例页面,并完成基础配置 AI人脸编辑 (huaweicloud.c ...

  8. R数据分析:潜变量与降维方法(主成分分析与因子分析)

    今天把潜变量和降维分析的方法合起来给大家写写,因为这两个东西之间有诸多共同之处. 潜变量 为啥需要潜变量呢?考虑一个问题,比如你想测测一个人有多幸福,你怎么测? 估计你会看看这个人: 脸上有没有笑容 ...

  9. 机器学习笔记——3 logistic模型和probit模型基本原理,从哲学视角谈谈统一二者的潜变量模型

    logistic模型和probit模型基本原理,从哲学视角谈谈统一二者的潜变量模型 监督学习的两种类别 在监督学习中,根据标签值的类型可以将其分为两类: 一类是定量数据,其分为计量型和计数型,这种可以 ...

最新文章

  1. 基于R的混合线性模型的实现
  2. bzoj 4602: [Sdoi2016]齿轮
  3. java qq登录界面_用java实现QQ登录界面怎么写
  4. [导入]SQL中的临时表和表变量
  5. redis 使用-hiredis库使用(一) 基本篇 看完本文就可以上手工作了
  6. SAP CRM的数据库表CRMD_PRICING
  7. [html] html中如何使用svg?
  8. c++初学者如何学好基础?
  9. linux 安装 mysql off,linux下安装mysql
  10. 一种RTP接收和解包的程序
  11. django drf 改变retrive的pk查询字段
  12. EXCEL如何新建自定义单元格以及样式怎么设置
  13. 厉害!一年两登顶刊的31岁浙大硕导荣获杰青!
  14. JAVA常见异常之NullPointerException 空指针异常
  15. SqlServer利用ODBC连接Mysql数据库
  16. mathematica变分法和样条插值求解最小旋转曲面
  17. 计算机技术概论知识点,《计算机基础概论》知识点.pdf
  18. 淘宝客用微博推广方法
  19. 中国近代史-蒋廷黻-笔记-第一章-剿夷与抚夷-第二节-英国人做鸦片买卖
  20. 菜鸟+Sa+注入工具组合=肉鸡成群

热门文章

  1. asp.net后台为控件添加css样式
  2. 显示技术介绍(1)_概述
  3. Matlab画柱状图和折线图的暗黑技巧
  4. 关于访问 WIN10共享打印机提示 无法连接到打印机的问题
  5. 表白墙网站php源码,自适应响应式表白墙网站PHP源码 带后台管理
  6. c#中用声音提示报警 .
  7. 如何实现双向链表的插入、删除操作
  8. 匹兹堡计算机科学公司,UPitt的CS「匹兹堡大学计算机科学系」
  9. Unity教程初级Ruby‘s Adventure游戏实现带工程源码
  10. python的re_research是什么意思_research在线翻译_英语_读音_用法_例句_海词词典