注意:本文仅用于学习研究,严禁利用本文做违法乱纪的事。

随着深度学习技术飞速发展,产生了非常多的应用,丰富了我们的生活,人脸识别技术目前已经比较成熟,现在基本上成了手机上的基础功能。随着GAN网络的发展(GAN, Generative Adversarial Networks ,生成式对抗网络)是一种深度学习模型,是近年来复杂分布上无监督学习最具前景的方法之一,就有了换脸技术的出现,AI换脸技术应用很广泛,例如某影视剧里的某人出现了什么问题,就可以利用该技术把他的脸给换了等等。废话不多说,接下来就直接介绍如何利用faceswap来完成换脸,相应的算法理论,会在以后的文章中更新,谢谢。

教你使用AI换脸技术:教你使用AI换脸技术(1)

AI换脸

教你使用AI换脸技术:教你使用AI换脸技术(2)

一、AI换脸算法整体流程简介

教你使用AI换脸技术:教你使用AI换脸技术(3)

AI换脸算法整体流程简介

二、下载源码,配置环境

源码下载地址见评论

# 创建Python环境 conda create -n faceswap python==3.7 # 切换python环境 conda activate faceswap # 安装必须包 # 解压源码,路径切换到源码文件夹下 cd faceswap-master # pip安装requirements.txt pip install -i pypi.tuna.tsinghua.edu/simple -r requirements.txt # cpu用户 pip install -i pypi.tuna.tsinghua.edu/simple tensorflow # gpu用户 pip install -i pypi.tuna.tsinghua.edu/simple tensorflow-gpu # 安装faceswap python setup.py # 下图给出利用cpu的安装过程

教你使用AI换脸技术:教你使用AI换脸技术(4)

CPU安装过程

三、开始制作

# 运行 python faceswap.py gui

运行成功的界面如下:

教你使用AI换脸技术:教你使用AI换脸技术(5)

Faceswap制作界面

教你使用AI换脸技术:教你使用AI换脸技术(6)

教你使用AI换脸技术:教你使用AI换脸技术(7)

视频转换成图片

也可以使用以下命令:

pytho n faceswap.py extract -i C:/Users/Administrator/Downloads/Video/Obama.mp4 -o C:/Users/Administrator/Downloads/Video/Obama -D cv2-dnn -A cv2-dnn -nm none -min 0 -l 0.4 -een 1 -sz 256 -si 0 -L INFO

转换后如下所示

教你使用AI换脸技术:教你使用AI换脸技术(8)

文件夹1 Obama

教你使用AI换脸技术:教你使用AI换脸技术(9)

文件夹2 Trump

教你使用AI换脸技术:教你使用AI换脸技术(10)

训练模型界面

也可以使用以下命令:

python.exe faceswap.py train -A C:/Users/Administrator/Downloads/Video/Obama -B C:/Users/Administrator/Downloads/Video/Trump -m C:/Users/Administrator/Downloads/Video/outputs -t original -bs 64 -it 1000000 -s 100 -ss 25000 -ps 50 -L INFO

教你使用AI换脸技术:教你使用AI换脸技术(11)

生成新图片界面

也可以使用以下命令:

python faceswap.py convert -i C:/Users/Administrator/Downloads/Video/Obama.mp4 -o C:/Users/Administrator/Downloads/Video/outputs -m C:/Users/Administrator/Downloads/Video/model -c avg-color -M extended -sc none -w opencv -osc 100 -l 0.4 -j 0 -L INFO

ffmpeg -i video-frame- .png -c:v libx264 -vf "fps=25,format=yuv420p" out.mp4

最终效果展示,