StyleGAN 生成 AI 虚拟人脸,再也不怕侵犯肖像权
?? 什么是 StyleGAN
GAN
是机器学习中的生成性对抗网络,目标是合成与真实图像无法区分的人工样本,如图像。即改变人脸图像中的特定特征,如姿势、脸型和发型,GAN
的主要挑战就是如何图像变得更加逼真。StyleGAN
是一种基于样式的GAN
的生成器体系结构,是一个强大的可以控制生成图片属性的框架,它采用了全新的生成模型,分层的属性控制,能够生成?1024×1024
分辨率的人脸图像,并且可以进行属性的精确控制与编辑,可以生成最先进的结果—高分辨率图像,看起来比以前生成的图像更真实。
用 StyleGAN 技术生成的明星人脸图
?? 如何使用 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++的桌面开发
安装 Anaconda
安装 CUDA 10.0
安装 cuDNN
安装 VS2019
?? 下载项目
- 首先我们需要下载项目到本地,然后再安装项目所需的一些依赖即可
- 项目地址: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
文件夹下
AI人脸生成结果