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

如何使用 StyleGAN
- 对于使用
StyleGAN技术生成人脸的技术已经开源了,已支持网红脸、明星脸、萌娃脸、超模脸、黄种人脸等图像的生成。 - 对于
windows中如何使用这项技术呢? - 首先我们需要有
Python3环境,这里推荐Anaconda集成环境,下载地址:https://www.anaconda.com/ - 另外我们需要安装
CUDA 10.0及以上的环境,下载地址:https://developer.nvidia.com/cuda-10.0-download-archive - 其次我们需要安装
CUDA 10.0对应的cuDNN,我下载的是cuDNN 7.6.4 for CUDA 10.0,下载地址:https://developer.nvidia.com/rdp/cudnn-archive - 最后我们需要安装
VS2017或VS2019,下载地址:https://visualstudio.microsoft.com/zh-hans/vs/,安装的时候一定勾选上 使用C++的桌面开发




下载项目
- 首先我们需要下载项目到本地,然后再安装项目所需的一些依赖即可
- 项目地址:https://github.com/a312863063/generators-with-stylegan2.git
- 如果你无法通过
git clone下载,也可以直接去链接里面下载压缩包,下载到本地后再解压
# 下载项目库
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文件夹下

StyleGAN 生成 AI 虚拟人脸,再也不怕侵犯肖像权的更多相关文章
- VRS生成的虚拟观测值存在的问题
目前生成的虚拟观测值. 天津的版本,如果有数据库中有天线类型,那么会对天线类型改正了两次. 解决方法:在生成虚拟观测值编码的部分,注释掉天线改正的部分. 对结果的影响:错误版本生成的虚拟观测值,移动站 ...
- SQL Server 怎样生成序列号(虚拟数字辅助表)
</pre><pre name="code" class="sql">--生成一个"序列" 或者说生成一个" ...
- 在矩池云使用Disco Diffusion生成AI艺术图
在 Disco Diffusion 官方说明的第一段,其对自身是这样定义: AI Image generating technique called CLIP-Guided Diffusion.DD ...
- centos配置虚拟用户再也不用那么麻烦了
http://wiki.centos.org/HowTos/Chroot_Vsftpd_with_non-system_users yum install -y vsftpd db4-utils vs ...
- 基于百度AI开放平台的人脸识别及语音合成
基于百度AI的人脸识别及语音合成课题 课题需求 (1)人脸识别 在Web界面上传人的照片,后台使用Java技术接收图片,然后对图片进行解码,调用云平台接口识别人脸特征,接收平台返回的人员年龄.性别.颜 ...
- 百度AI人脸识别的学习总结
本文主要分以下几个模块进行总结分析 项目要求:运用百度AI(人脸识别)通过本地与外网之间的信息交互(MQService),从而通过刷脸实现登陆.签字.会议签到等: 1.准备工作: 内网:单击事件按钮— ...
- AI 技术咖们说,进入未来世界首先需要一个“虚拟的我” | 科技生活节倒计时8天
http://www.tmtpost.com/3367762.html 未来世界是什么样子? 斯皮尔伯格在<头号玩家>中构建了一个充满科技感.富有浓烈浪漫主义色彩的虚拟世界.戴上VR眼镜, ...
- 技术范儿的 Keep 发力AI赛道,为什么“虚拟教练”会更懂你?
http://www.tmtpost.com/3363367.html 摘要: 虚拟教练技术会整合到一些业务场景和硬件产品中收费,但是收费的具体情况彭跃辉还暂未透露. 图片来源于Unsplash 自去 ...
- c# 利用AForge和百度AI开发实时人脸识别
baiduAIFaceIdentify项目是C#语言,集成百度AI的SDK利用AForge开发的实时人脸识别的小demo,里边包含了人脸检测识别,人脸注册,人脸登录等功能 人脸实时检测识别功能 思路是 ...
- webpack loader 生成虚拟文件的方案
此文已由作者张磊授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 前言 使用 webpack 的时候,难免需要写一些 loader,接着就会遇到一个很纠结的问题.该 loade ...
随机推荐
- 1.3 选择IDE
选择IDE 使用过的IDE 1.DEV-C++ 配合使用语言:C.C++ 个人体验:支持代码补全,信息竞赛遗留物,招很多入门教材喜欢,十分古老缺乏维护,功能简洁,安装完打开直接编译很方便,代码提示让人 ...
- Get Keys In Binary Tree Layer By Layer
Get the list of list of keys in a given binary tree layer by layer. Each layer is represented by a l ...
- if __name__ == '__main__':中的语句无法执行
在pycarm中我们用了pytest或unittest框架写测试用例,我们如果我们在最后加上if name == 'main':,如以下代码所示.最后我们右键点击运行的时候是不会执行**if name ...
- JS缓存三种方法_sessionStorage_localStorage_Cookie
1.sessionStorage:临时的会话存储 只要当前的会话窗口未关闭,存储的信息就不会丢失,即便刷新了页面,或者在编辑器中更改了代码,存储的会话信息也不会丢失. 2.localStorage:永 ...
- GAN的两种训练方式,以及梯度求导问题——detch(),retain_graph
http://t.zoukankan.com/LXP-Never-p-13951578.html detach():截断node反向传播的梯度流,将某个node变成不需要梯度的Varibale,因此当 ...
- JAVA第六七八次大作业
21201411-李英涵 前言:这几次的作业较为简单,主要思路就是利用正则表达式来过滤掉不需要的信息. 题量设置较为合理,比之前的多边形好做一些,应该是老师为了捞起来 ...
- PostgreSQL 存储过程 通过设定条件,返回指定的数据表记录
PL/pgSQL是 PostgreSQL 数据库系统的一个可装载的过程语言. PL/pgSQL的设计目标是创建一种可装载的过程语言,可以可用于创建函数和触发器过程, 在SQL语言中添加控制结构功能, ...
- JAVA框架入门理解
一:关于java开发的框架我们可以先从java web开发框架的变迁来给大家简单叙述一下: 1 SSH --Struts+Spring+Hibernate 2 Spring +SpringMVC + ...
- openSuse Tumbleweed 安装钉钉
办公软件钉钉提供了 Linux 版本,但是只有deb安装包. https://page.dingtalk.com/wow/z/dingtalk/default/dddownload-index ope ...
- 三大常用集群leader选举+哨兵模式原理
一,Zookeeper集群的leader选举 Zookeeper的选举机制两个触发条件:集群启动阶段和集群运行阶段leader挂机(这2种场景下选举的流程基本一致) 1,Zookeeper集群中的fo ...