刷视频的时候,大家应该经常可以看到将视频中的演员换成其他人的人,自己的,或是自己想象的更合适的人,或是体验,或是娱乐,那么这种AI换脸是如何实现的呢?如果我们自己也想要制作这样的视频,又该如何操作呢?
现在有很多加入了AI技术的工具可以使用换脸的功能,你甚至可以在常用的美图软件中找到这个分区,本篇给大家介绍几款AI换脸的视频工具,仅供娱乐!
你可以在官网上查找到相关内容,下载原作者提供的预编译好的Windows版本。该版本的已有依赖库,只需要自己去安装nVidia的驱动就好。同时还准备了使用GPU和CPU版本,可以从MEGA下载:
https://mega.nz/#F!b9MzCK4B!zEAG9txu7uaRUjXz9PtBqg
注:因为是Python程序,当下载预编译好的Windows版本后,请检查作者是否有更新,同时可直接git拉取作者的最新版本程序:
%你安装的DeepFaceLab目录
%\_internal\DeepFaceLab\
完成下载并解压,你可以看到目录结构:
- _internal
- Workspace
- 1)clear workspace.bat
- 2)extract images from video data_src.bat
- 3.1) cut video (drop video on me).bat
- 3.2) extract images from video data_dst FULL FPS.bat
- 3.other) denoise extracted data_dst.bat
- 4) data_src extract faces MANUAL.bat
- 4) data_src extract faces MT all GPU debug.bat
- 4) data_src extract faces MT all GPU.bat
- 4) data_src extract faces MT best GPU.bat
- 4) data_src extract faces S3FD all GPU debug.bat
- 4) data_src extract faces S3FD all GPU.bat
- 4) data_src extract faces S3FD best GPU.bat
- 4.1) data_src check result.bat
- 4.2.1) data_src sort by blur.bat
- 4.2.2) data_src sort by similar histogram.bat
- 4.2.4) data_src sort by dissimilar face.bat
……
下载完成后,该如何使用它呢,你需要先放置素材文件,它的名称是固定的。
1、放置素材文件
- %你安装的DeepFaceLab目录%\workspace\data_src.mp4
#源视频,用它的脸)
- %你安装的DeepFaceLab目录%\workspace\data_dst.mp4
#目标视频,替换到它身上
- 2) extract images from video data_src.bat
#从源视频生成静态帧图片,可以选帧率(图片数)。
- 3.2) extract images from video data_dst FULL FPS.bat
#从目标视频生成全部帧图片,可以先用3.1截取小段。
- %你安装的DeepFaceLab目录%\workspaceldata_dst\
- %你安装的DeepFaceLab目录%\workspace\data_srcl
- 4) data_src extract faces S3FD all GPU.bat
- #从源静态帧图片,生成源脸部。
- 5) data_dst extract faces S3FD all GPU.bat
- #从目标静态帧图片,生成目标脸部。
- %你安装的DeepFaceLab目录%\workspace \data_dst\aligned\
- %你安装的DeepFaceLab目录%\workspace \data_src\laligned\
完成素材准备后,即可开始训练了。
注意同时会显示一个训练的预览窗口,可以看到图像的偏离度越来越低。你可以在上面按回车键停止训练。
选择怎么训练的,并选择对应的合成方式即可。
7.1合成的目标帧图片的目录:
- %你安装的DeepFaceLab目录%\workspace\data_dst\merged\
7.2 生成好的目标视频位置:
- %你安装的DeepFaceLab目录%\workspace\result.mp4
- 64像素模型,和fakeapp,FaceSwap等相似,但是做了一些改进,使用低配置参数可以在低显存的情况下运行。
- H128 (3GB+),128像素模型,和h64类似,但是像素更高,随之细节更加丰富。适合3~4G显存。比较适合扁平的亚洲脸型。
- DF (5GB+),全脸型的 H128 模型,强烈建议不要在 SRC 表面混合各种光照条件。
- LIAEF128 (5GB+),结合了DF,IAE的改进型128全脸模型,模型试图将SRC面变形为DST,同时保持SRC面特征,但变形幅度较小。模型存在闭眼识别问题。
- SAE ( minimum 2GB+, recommended 11GB+ ),风格化的编码器,基于风格损失的新型优秀模型。通过神经网络直接完成变形/风格化。对于有障碍物的脸部也就较好的重建。
开源:
www.oschina.net/p/deepfacelab
GitHub:
github.com/iperov/DeepFaceLab
中文网站:deepfakescn.com
操作方法
Faceswap 提供了一个预览工具,你可以在其中预览交换结果并调整设置以更好地将脸部与框架融合。
1.1 准备工作
OpenFaceSwap的安装和普通软件一样。不过由于他并没有像DFL⼀样集成CUDA和CuDNN,所以必须⼿动安装依赖环境。
1、安装CUDA 9.02.
2、安装CuDnn 7.0.5(注意不是7.5.0)
3、安装VS20154. 安装OpenFaceSwap
1.2安装流程
安装非常简单,它的所有配置都默认的,可以直接点击“下一步”并在最后点击“完成”就好,
安装完成后,打开“控制面板”-“程序”-“程序和功能”查看,这里会出现很多Visual C++开头的文件。
1.3安装OpenFaceSwap
以上准备好,它的安装非常简单,全程可视化,无需任何脚本和命令。
如何使用?
1、点击“IMAGES A”后的设置图标,设置自定义的内容,包含:
Format:导出图片的格式,默认为jpg。
Frame/Sec:切割图片的帧率,默认为25,A视频应该选择全帧率(查看视频属性可知,一般为24),而B视频如果比较长可以减小帧率,比如设置成10。
Prefix:文件名前缀
jpg quality:图片质量,数字范围为2到31, 2代表质量最高。
Detector:默认为cnn,cnn练图片提取器。通过小箭头还可以选择其他提取器。提取器的不同主要体现在提取效果、提取时间和提取需要的内存上。软件中蓝色字体说明:如果你使用的显卡显存为2GB ,那么你提取脸部的时候需要使用低内存引擎。
Trainer:默认为Original。也就是模型的类型,不同的模型会有不同的效果,而Original几乎是说有换脸软件都支持的模型。
Batch size:批处理大小。设置的值越大越好,但是越到需要的计算机资源就越多。这个软件默认是64。
Show preview:训练过程。是否显示预览窗口,选择“是”。
Epochs:设置迭代的次数。如设置1000次,那么模型训练次数达到1000就会自动停止。
Save interval:模型保存间隔。
Trainer:模型
Converter:转换器
Direction:决定谁换谁,是A换B,还是B换A
Detector:提取器。
Mask options,Adjust options 都是转换器的配置选项。
该参数操作类似。