什么是 StyleGAN

  • GAN 是机器学习中的生成性对抗网络,目标是合成与真实图像无法区分的人工样本,如图像。即改变人脸图像中的特定特征,如姿势、脸型和发型,GAN 的主要挑战就是如何图像变得更加逼真。
  • StyleGAN 是一种基于样式的 GAN 的生成器体系结构,是一个强大的可以控制生成图片属性的框架,它采用了全新的生成模型,分层的属性控制,能够生成 1024×1024 分辨率的人脸图像,并且可以进行属性的精确控制与编辑,可以生成最先进的结果—高分辨率图像,看起来比以前生成的图像更真实。

用 StyleGAN 技术生成的明星人脸图

如何使用 StyleGAN

安装 Anaconda

安装 CUDA 10.0

安装 cuDNN

安装 VS2019

下载项目

# 下载项目库
git clone https://github.com/a312863063/generators-with-stylegan2.git # 安装依赖
pip install tensorflow-gpu==1.14.0
pip install scipy==1.3.3
pip install requests==2.22.0
pip install Pillow==6.2.1

修改项目 MSVC

  • 需要打开项目中的文件 dnnlib/tflib/custom_ops.py,第29行所标注的 MSVC 的版本号
  • 这个依据自身电脑安装的版本进行修改便可,一般只需要修改下图的 14.16.27023 的位置即可
compiler_bindir_search_path = [
'C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64',
'C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64',
'C:/Program Files (x86)/Microsoft Visual Studio 14.0/vc/bin',
]

运行项目

  • 只需要运行 python main.py 即可生成对应的模型的图片
  • main.py 文件中,我们可以看到,可以自定义模型和一次性生成图片的数量
  • 模型需要自行下载,下载完成后放到 networks 目录下,想生成哪种类型的图片,只要更换模型路径即可
  • 现在支持网红脸、明星脸、萌娃脸、超模脸、黄种人脸等模型,下载链接在 networks 文件夹下文本文档中
def main():
os.makedirs('results/', exist_ok=True)
os.makedirs('results/generate_codes/', exist_ok=True) network_pkl = 'networks/generator_star-stylegan2-config-f.pkl' # 模型位置
generate_num = 20 # 生成数量 generate_images(network_pkl, generate_num)

运行结果

  • 生成的对应结果存放在 results 文件夹下

AI人脸生成结果

StyleGAN 生成 AI 虚拟人脸,再也不怕侵犯肖像权的更多相关文章

  1. VRS生成的虚拟观测值存在的问题

    目前生成的虚拟观测值. 天津的版本,如果有数据库中有天线类型,那么会对天线类型改正了两次. 解决方法:在生成虚拟观测值编码的部分,注释掉天线改正的部分. 对结果的影响:错误版本生成的虚拟观测值,移动站 ...

  2. SQL Server 怎样生成序列号(虚拟数字辅助表)

    </pre><pre name="code" class="sql">--生成一个"序列" 或者说生成一个" ...

  3. 在矩池云使用Disco Diffusion生成AI艺术图

    在 Disco Diffusion 官方说明的第一段,其对自身是这样定义: AI Image generating technique called CLIP-Guided Diffusion.DD ...

  4. centos配置虚拟用户再也不用那么麻烦了

    http://wiki.centos.org/HowTos/Chroot_Vsftpd_with_non-system_users yum install -y vsftpd db4-utils vs ...

  5. 基于百度AI开放平台的人脸识别及语音合成

    基于百度AI的人脸识别及语音合成课题 课题需求 (1)人脸识别 在Web界面上传人的照片,后台使用Java技术接收图片,然后对图片进行解码,调用云平台接口识别人脸特征,接收平台返回的人员年龄.性别.颜 ...

  6. 百度AI人脸识别的学习总结

    本文主要分以下几个模块进行总结分析 项目要求:运用百度AI(人脸识别)通过本地与外网之间的信息交互(MQService),从而通过刷脸实现登陆.签字.会议签到等: 1.准备工作: 内网:单击事件按钮— ...

  7. AI 技术咖们说,进入未来世界首先需要一个“虚拟的我” | 科技生活节倒计时8天

    http://www.tmtpost.com/3367762.html 未来世界是什么样子? 斯皮尔伯格在<头号玩家>中构建了一个充满科技感.富有浓烈浪漫主义色彩的虚拟世界.戴上VR眼镜, ...

  8. 技术范儿的 Keep 发力AI赛道,为什么“虚拟教练”会更懂你?

    http://www.tmtpost.com/3363367.html 摘要: 虚拟教练技术会整合到一些业务场景和硬件产品中收费,但是收费的具体情况彭跃辉还暂未透露. 图片来源于Unsplash 自去 ...

  9. c# 利用AForge和百度AI开发实时人脸识别

    baiduAIFaceIdentify项目是C#语言,集成百度AI的SDK利用AForge开发的实时人脸识别的小demo,里边包含了人脸检测识别,人脸注册,人脸登录等功能 人脸实时检测识别功能 思路是 ...

  10. webpack loader 生成虚拟文件的方案

    此文已由作者张磊授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 前言 使用 webpack 的时候,难免需要写一些 loader,接着就会遇到一个很纠结的问题.该 loade ...

随机推荐

  1. CCF 201803-4 棋局评估

    一. 对抗搜索的适用范围 在博弈论题目中,如果决策双方的获胜条件是截然相反的,即一方要求得分越高越好,另一方要求得分越低越好,这时我们就可以用上对抗搜索算法. 二.对抗搜索的主要思想 对抗搜索的核心思 ...

  2. noi 1.5 36 计算多项式的值

    描述 假定多项式的形式为xn+xn-1+-+x2+x+1,请计算给定单精度浮点数x和正整数n值的情况下这个多项式的值. 输入 输入仅一行,包括x和n,用单个空格隔开.x在float范围内,n < ...

  3. Houdini_Python笔记

    目录 Gemetry 用Stash节点预览模型 判断文件是否存在 PDG Gemetry 用Stash节点预览模型 import hou stashParm = stashNode.parm(&quo ...

  4. OPENGL入门的小知识点

    记录一下看到的知识点. 大部分知识点来自于https://learnopengl-cn.github.io/ 1.什么是OpenGL 一般它被认为是一个API,包含了一系列可以操作图形.图像的函数.然 ...

  5. libevent学习之入门--[02]从hello-world开始

    系列文章回顾 libevent学习之入门--[01]概述与安装 上一节介绍了libevent的下载和编译,从这节开始,我会从我学习的角度逐步探索libevent的源码,慢慢揭开它的神秘面纱. 面对几十 ...

  6. pytest与allure的使用

    --需要先安装pytest [1]数据驱动@pytest.mark.parametrize: @pytest.mark.parametrize只对于同一用例不同数据的传参 ①只有一个参数时 datat ...

  7. python+pytesseract识别图片文字

    此文只介绍一下python+pytesseract识别一些简单图片的数字,字母和汉字.如图1 import pytesseract from PIL import Image,ImageEnhance ...

  8. Jndi结合DynamicDataSource实现多数据源配置

    首先注意本框架是SSM,配置主要在两个地方.第一个是applicationContext.xml,第二个文件是Tomcat下面的context.xml里面 1.context.xml文件配置的代码如下 ...

  9. vue下载图片

      async works(obj) {       await this.axios({         method: 'get',         url: `entryFormControll ...

  10. 如何修改被编译后DLL文件 (转发)

    我们平时在工作中经常会遇到一些已经被编译后的DLL,而且更加麻烦是没有源代码可以进行修改,只能针对这个DLL的文件进行修改才能得到我们想要的结果:本文将通过一个实例来演示如果完成一个简单的修改;我们将 ...