deepfacelab使用介绍
前言
应朋友要求,研究下deepfacelab的环境搭建和使用步骤,记录下中间的问题和过程。
1、deepfacelab核心库
|
|
2、成熟的deepfacelab安装项目包
win10环境,软件磁力连接(迅雷复制下载):
|
|
3、安装前的准备
1、如果用的步骤3中的成熟项目包只需要依赖python3
2、如果用的步骤2中的核心库自行搭建的话,需要安装如下清单
|
|
4、执行如下步骤
本着快速应用的地步,优先选择步骤3的完整项目包
目录名 | 说明 |
---|---|
_internal | 完整项目工程包自带的第三方工具 |
worksapce | 工作区 |
worksapce_iron | 测试的钢铁侠和马斯克视频换脸工作区 |
*.bat | 运行脚本 |
changelog.html | 修改说明 |
步骤.txt | 运行脚本的顺序,自增给朋友说明的 |
4.1 在workspace目录下准备好2份视频,分别命名data_dst.mp4、data_src.mp4
name | 说明 |
---|---|
data_dst.mp4 | 需要被换脸的视频 |
data_src.mp4 | 可以提取脸的源视频 |
4.2 在workspace下检查工作目录,没有就参考如下截图创建空目录
workspace目录: data_dst目录: data_src目录:
5、开始工作
脚本中间的具体参数很好理解,这个工程也有完整的中文版,实在不熟悉的可以网上找下翻译好的中文完整工具包下载,这里不做过多说明,只简单告诉步骤
注意bat脚本因为带有空格和序号等符号,双击执行即可,cmd下不好执行
原理流程如下:
graph LR;
A(目标或源视频转成图片)-->B(目标或源视频转成的图片提取脸部)-->C(训练模型)-->D(人脸替换)-->E(合成视频)
5.1 把源视频拆分成图片
执行脚本
|
|
参考结果:
5.2 把目标视频拆分成图片
执行脚本
|
|
参考结果:
5.3 从源图片中提取人脸,也叫切脸
执行脚本
|
|
参数 | 说明 | 备注 |
---|---|---|
h | half face | 新版本参数,本文介绍的下载版本不带这个参数 |
mf | mid-half-face | 新版本参数,本文介绍的下载版本不带这个参数 |
f | full-face | 全脸 |
wf | whole-face | 带额全脸 |
head | 连头发一起换 | 越大越消耗GPU运算 |
示例图如下:
参考结果:
5.4 从目标图片中提取人脸
执行脚本
|
|
参考结果:
5.5 训练模型,耗时,不会自己结束
执行脚本
|
|
- 1、SAEHD模型做出来的视频质量更好,但是要求的配置更高。
- 2、退出后再次点击train Quick96.bat 可以继续训练,进度不会丢失
如下是几个小时训练的进度,分别是低于1000,1000 ~ 2000,2000 ~ 3000 3个阶段的,建议更多时间训练高于万次或者自己满意为止
列序号 | 介绍 |
---|---|
1、3列 | 是分别提取src和dst视频的原图 |
2、4列 | 是根据切脸参数提取的模型数据 |
5列 | 是替换后的demo效果 |
900次训练:
1000次训练:
2000次训练:
3000次训练:
最后生成自己训练的模型文件:如下图
5.6 图片换脸
执行脚本
|
|
5.7 把图片合成视频
执行脚本
|
|
参考结果:
- 原文作者:Anttu
- 原文链接:https://anTtutu.github.io/post/2021-03-29-change_face/
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。