1.抖音等各大短视频平台是如何进行换脸?
1.1 以前主流换脸框架
1.1.1 FakeAPP,是国内网络上广告最火的换脸软件,但是有水印,而且好像2.2版本还有极大的不安全后门,反正我早就不用了。
1.1.2 OpenFaceswap,是开源软件Faceswap的套壳版,集成了部分环境,更方便用户使用,并且会告诉用户每个操作需要哪些文件,但是只支持Win10,并且作者说现在Faceswap都是小更新,所以暂时不更新Open。
1.1.3 Faceswap,国外著名开源换脸软件,老版本没有GUI,新版有了GUI(这个GUI比Open的稍微难一点,开放的设置更多),在GitHub上面经常更新,但是每次小更新都会导致旧版的Model无法再次通用。
1.2 基于DeepfaceLab进行二次训练
1.2.1 DeepFaceLab是一种利用深度学习识别和交换图片和视频中的人脸的工具。目前抖音上最火的博主均采用这种方法,有手就行(当然还要有高端显卡支持,比如4路泰坦?)
1.2.2 目前有2个版本,分别是Linux版本和Windows版本,我研究了一下两个版本发现,Windows版本就是打包Linux系统版本。,代码上无任何差别。
2.DeepfaceLab操作与运行
2.1 基于Ubuntu18.04版本进行的DeepFaceLab环境配置
2.1.1 Anaconda安装
此处不再赘述,参考我之前的博客Ubuntu18.04 安装 Anaconda3及超详细操作步骤
2.1.2 所需包清单(gpu版本)
numpy==1.16.3
h5py==2.9.0
Keras==2.2.4
opencv-python==4.0.0.21
tensorflow-gpu==1.12.0
plaidml==0.6.0
plaidml-keras==0.5.0
scikit-image
tqdm
ffmpeg-python==0.1.17
git+https://www.github.com/keras-team/keras-contrib.git
2.1.3 环境激活
conda create -y -n deepfacelab python=3.6.6 cudatoolkit=9.0 cudnn=7.3.1
conda activate deepfacelab
2.1.4 文件夹设置访问权限
cd DeepFaceLab_Linux
chmod 777 scripts/*
2.1.5 安装ffmpeg
apt install ffmpeg
2.1.6 进入 scripts目录,执行视频转图片的脚本
./2_extract_PNG_from_video_data_src.sh
2.1.6 执行 提取SRC人脸的脚本
./4_data_src_extract_faces_S3FD_best_GPU.sh
2.1.7 针对mask的修饰(换脸更贴切)
2.1.8 执行 提取SRC人脸的脚本
./6_train_H128.sh