Stylegan3 安装,配置,运行,生成!

Stylegan是由英伟达(皮衣刀客老黄家的)实验室发布的虚拟人脸生成算法,可以无中生有,生成非常逼真的虚拟人,按现在流行的说法是数字人。AI通过学习大量的高清人脸图片之后,就能生成几十亿现实世界中不存在的人脸。

Stylegan1出现的时候已经让人惊掉下巴了,第三代自然是更加牛逼,至于牛逼在哪里?这个…只能意会不能言传。说人话就是升级了变强了,更加细腻逼真。具体改进可以看github主页,大概路径是stylegan->stylegan2->stylegan2-ada->stylegan3 。

算法交给大佬们,如何用交给我。

我之前非常详细的写过Stylgan的安装方法,目前也依旧可用。但是如果要在30系列跑起来就要费点周折了。今天就来写一下,在Rtx30上运行Stylgan3,生成一百张虚拟人脸。

基础准备

工欲善其事必先利其器,为了成功运行Styegan3,需要一些必备的软硬件基础设施。下载软件的时候注意软件的【版本号】,CUDA和cuDNN必须配套。

必备软件:

  • 安装CUDA11.1+版本
  • 安装cuDNN v8.0.5
  • 安装Git
  • 安装Miniconda3
  • 安装Vs2019 C++部分
  • 科学上网工具

软件有点多,但是也不用太担心,基本都是下一步下一步安装。详细安装方法,可以参考我之前的文章《玩转StyleGan2:手把手教你安装并运行项目!。安装过程基本类似,注意区分版本即可。

必备硬件:

四肢健全的电脑一台

中高端N卡一张(我是3060 12G)

具体步骤

1. 获取源代码:

点击Windows开始图标,搜索mini,打开conda命令行工具。

输入命令:

E: cd dev 
git clone https://github.com/NVlabs/stylegan3.git

每输入一行命令,按一个回车,等待完成。我这里是把源代码放在了E盘下的DEV文件夹里,获取成功后会生成一个stylegan3的文件夹,里面的文件就是我们需要的东西。 这个步骤,一般来说很快,但是你极有可能被分在二班(谐音梗警告!)。

2. 设置环境变量

因为要用到VS,所以需要加一个环境变量。

环境变量路径:

C:\Program Files (x86)\Microsoft Visual Studio\<VERSION>\Community\VC\Auxiliary\Build\vcvars64.bat

这个环境变量加在Path下面,注意要替换成你本地环境的路径。如果你的VS是默认安装,那么主要是替换部分,根据我的版本来这里就是2019(尖括号不要留)。

3. 创建虚拟环境&安装依赖

官方已经准备好了一个environment.yml文件。里面有具体的依赖关系。直接运行相应命令就可以自动安装所有的依赖包

命令:

conda env create -f environment.yml 
conda activate stylegan3

第一行,创建环境,安装依赖

第二行,激活虚拟环境。

这一步完成,我以为万事俱备,就直接运行生成命了。没想到给了一个:

No CUDA runtime is found, using CUDA_HOME=’C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1′

问题是我已经安装过CUDA了,怎么说没有呢? 它是老大,只能按它说的。疯狂下载安装各种版本的CUDA,查各种牛头不对马嘴的解决方案。

最后…脑筋90度急转弯,我怀疑是Pytorch版本问题。

4. 安装最新版Pytorch

进入Pytorch官网

直接获取安装最新版的命令,怼上去!

pip3 install torch==1.10.2+cu113 torchvision==0.11.3+cu113 torchaudio===0.10.2+cu113 -f https://download.pytorch.org/whl/cu113/torch_stable.html

我的第一选择是使用conda命令安装,但是安装速度超级无敌慢,科学工具换了好几个都不行。最后用PIP命令以6M/s的速度安装成功。

上一步的问题真,的,解决,了。 针对这种牛头不对马嘴的错误提示,我无F可说,全凭悟性。目测是官方开发环境为linux,windows下加载包的时候没匹配到。

5. 运行命令生成图片

激动人心的时刻到了,开始创造虚拟人吧:

python gen_images.py --outdir=out --trunc=1 --seeds=2 --network=https://api.ngc.nvidia.com/v2/models/nvidia/research/stylegan3/versions/1/files/stylegan3-r-afhqv2-512x512.pkl

没有想到的是….生成了….一条狗!一定是打开方式不对!

输入新的命令:

python gen_images.py --outdir=out --trunc=1 --seeds=2 --network=./models/stylegan3-r-ffhq-1024x1024.pkl

终于,生成了一个人,但是总感觉奇形怪状~效果好像还不如以前。

继续悟道,继续修改命令:

python gen_images.py --outdir=out --trunc=0.5 --seeds=1-100 --network=./models/stylegan3-r-ffhq-1024x1024.pkl

运行截图:

100张高清人脸,成功生成。图片会保存在stylegan3下面的out文件夹里面。

这里简单介绍一个下四个参数的含义。

–outdir 是图标输出路径

–trunc 这个取值范围0~1,值越变化越大。

–seed 控制图片生成的“种子” ,可以是单个数字,可以是一个区间。

–network 模型路径,可以是本地路径或者网络路径。

6. 再次运行

安装好之后,下次使用的步骤为:

1. 打开miniconda

2. 用CD命令进入指定目录

3. 用activate命令激活虚拟环境

3. 执行生成命令。

好了,搞定,收工,希望大家也能成功!

 

小尾巴==========================
公众号:托尼不是塔克
交流群
知识星球
==============================

 



发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注

解决 : *
17 × 29 =