Mac(Catalina)上的AI换脸,手把手教小白使用DeepFaceLab

劝退环节

**

在此郑重劝各位Mac友们百度搜索关键词“DeepFaceLab Colab”,你会发现新世界,比看我这篇文章有用多了!但你非要头铁用Mac玩换脸,那么请接着看吧。

**
一直以来在尝试利用手头的MacBook做AI换脸,首先说明的一点是,仅仅使用手中的MacBook Pro (13-inch, 2017, Two Thunderbolt 3 ports)成功换脸,但花费了大量精力和时间,得出的结论是:还是放弃用Mac玩这个吧。
一个短短10分钟的视频,前前后后需要花大约50小时的时间,真的不值。除非你想多次训练,比如连续好几个晚上就放那里不管这。如下图,DF模式平均约11秒一张的速度训练了9000张图片,loss值大约降到了0.5左右,合成后效果很屎。。。Mac(Catalina)上的AI换脸,手把手教小白使用DeepFaceLab_第1张图片Mac(Catalina)上的AI换脸,手把手教小白使用DeepFaceLab_第2张图片

前期工作

1.找到Documents文件夹,在里面新建文件夹deepfakes,在deepfakes文件夹里新建文件夹DeepFaceLab

名称一定要和我一致,否则会报错。
Documents文件夹的中文名叫文稿。

2.下载并安装Anaconda python 3.7

点击下载

3.下载DeepFaceLab

点击下载:从commits里找到2020年1月1日的版本下载,请确认一定要有requirements-cpu.txt文件
Mac(Catalina)上的AI换脸,手把手教小白使用DeepFaceLab_第3张图片
Mac(Catalina)上的AI换脸,手把手教小白使用DeepFaceLab_第4张图片如图可点击Download Zip然后稍等会自动下载,下载Anaconda和DeepFacelab时,点击链接会默认浏览器下载,也可再右键拷贝下载链接到迅雷里下载

4.将DeepFaceLab的zip解压到Documents/deepfakes/DeepFaceLab

解压时所有子文件或子文件夹要直接在DeepFaceLab中,如图所示

5.进入DeepFaceLab文件夹中,检查是否有requirement-cpu.txt文件,并新建文件夹WORKSPACE

将换脸视频和被换脸视频放入WORKSPACE文件夹中,分别命名为data_src.mp4和data_dst.mp4

若源视频为非mp4格式可强行修改后缀名。

进入正题

打开Terminal终端,依次输入以下指令:

若执行过程中出现问题请看文章末的解决方案,待问题解决后再返回继续操作

指令1

cd Documents/deepfakes/DeepFaceLab

指令2(在anaconda中可以看到deepfakes内核是否安装成功)

conda create -n deepfakes python=3.6

指令3(启动!)

conda activate deepfakes

指令4(会根据requirements-cpu.txt中的内容指示进行一些过程,需要等待很久,而且这个过程中可能会出现若干问题,可查看文章末的解决方案或自行解决)

pip install -r requirements-cpu.txt

指令5(这个过程也会出现一些问题,看文章末)

conda install pytorch torchvision -c soumith

指令6

conda install -c conda-forge ffmpeg

指令7

nano ~/.bash_profile

输入完会弹出新界面,不要慌
将以下指令8复制粘贴到新界面内容的最上面

指令8

export LC_ALL=en_US.UTF-8  
export LANG=en_US.UTF-8

复制粘贴完后点击ctrl+c退出,会回到之前界面,继续以下操作

指令9

source ~/.bash_profile

指令10(=指令3)

conda activate deepfakes

指令11(=指令1)

cd Documents/deepfakes/DeepFaceLab

指令12(将带有换脸者的视频导出成图片,可以在WORKSPACE中的data_src文件夹中查看)

python main.py videoed extract-video --input-file WORKSPACE/data_src.mp4  --output-dir WORKSPACE/data_src 

指令13(将带有被换脸者的视频导出成图片,可以在WORKSPACE中的data_dst文件夹中查看)

python main.py videoed extract-video --input-file WORKSPACE/data_dst.mp4  --output-dir WORKSPACE/data_dst 

指令14(切出换脸者的面部,可以在WORKSPACE—data_src中的aligned文件夹中查看)

python main.py  extract --input-dir WORKSPACE/data_src --output-dir WORKSPACE/data_src/aligned --detector mt --cpu-only

指令16(切出被换脸者的面部可以在WORKSPACE—data_dst中的aligned文件夹中查看)

python main.py  extract --input-dir WORKSPACE/data_dst --output-dir WORKSPACE/data_dst/aligned --detector mt --cpu-only

指令17(开始训练,训练模式可以选择DF、H64、H128等等,可自行查阅区别,几种模式的切换只需将下面代码中的“DF”换成相应的类型,建议第一次尝试的朋友用H128试试,实在太卡可选择H64)

python main.py train --training-data-src-dir WORKSPACE/data_src/aligned --training-data-dst-dir WORKSPACE/data_dst/aligned --model-dir WORKSPACE/model --model DF --cpu-only

指令18(将训练好的面部贴到被换脸者的脸上)

python main.py convert --input-dir WORKSPACE/data_dst --output-dir WORKSPACE/data_dst/merged --aligned-dir WORKSPACE/data_dst/aligned --model-dir WORKSPACE/model --model DF --cpu-only

指令19(导出MP4视频文件)

python main.py videoed video-from-sequence --input-dir WORKSPACE/data_dst/merged --output-file WORKSPACE/result.mp4 --reference-file WORKSPACE/data_dst.*

至此换脸完成,已在Documents/deepfakes/DeepFaceLab/WORKSPACE中导出result.mp4视频文件

过程中可能出现的问题及解决方案/修改意见 有待更新

有疑问联系qq:1503021788

你可能感兴趣的:(macos,深度学习)