Faceswap是一款智能换脸软件,能够根据视频中人物移动全程换脸,效果基本无瑕疵,是很多视频制作者的好帮手,有需要的朋友不要错过了,欢迎下载使用!
Faceswap是一款能够做到视频换脸的软件,更新很快,效率高,不容易出错,出错之后容易调试,最新版集成GUI图形界面,Faceswap需要一定的编程基础,需要安装python并用Python编译下载各种库文件
0.我们先启动GUI界面
左上角5个标签,分别是Extract – 提取头像,Train – 训练, Convert – 转换,后面的effmpeg和sort有bug,我们暂时不用。
下载的压缩包里面已经包含workspace文件夹。在workspace有视频素材,我们从这里开始演示一次,下面我们来看怎么使用。
Faceswap
data_dst 目标文件夹,分解data_dst视频后的图片,将放在这里,也可以自己定义目录
data_src目标文件夹,分解data_src视频后的图片,将放在这里,也可以自己定义目录
model, 训练模型,将保存在这里,也可以自己定义目录
data_dst.mp4,目标视频文件
data_src.mp4,源视频文件
这里,我们要将data_src.mp4里面的钢铁侠脸部表情,覆盖到data_dst.mp4里面去
1. 返回到faceswap目录下的,双击x)分解src视频成图片.bat,可以看到命令行窗口在分解视频
将视频分解完成之后,我们在workspace\data_src文件夹里面可以看到很多图片;
2. 同样的,我们把目录视频分解成图片,双击y)分解dst视频成图片.bat,完成目录视频的分解
3. 图片分解出来之后,需要提取头像,点击我们刚才启动的GUI窗口,选择左上角的Extract标签
Input Dir: 你要提取头像的图片目录,我们选择workspace\data_src这个文件夹
Output Dir: 提取到的头像保存目录,我们选择workspace\data_src\aligned这个文件夹
Detector: 提取的方法,我们选择all(如果太慢,就选hog)
其他的我们保持默认就行,选好了之后,就点击左下角的Extract,开始提取
下载
4.src图片提取完头像之后,我们需要对dst图片提取头像,同样在Extract这个标签里面
将Input Dir选择到workspace\data_dst这个文件夹
将Output Dir选择到workspace\data_dst\aligned这个文件夹,Detector也同样选all,然后点左下角的Extract提取。
5. 头像提取之后,就开始训练了。点击左上角的Train标签
Input A: 目标头像,注意是头像目录,不要选错成图片目录,这里选择workspace\data_dst\aligned
Input B: 源头像,选择workspace\data_src\aligned
Model Dir: 训练模型保存目录,我们选择workspace\model
Save interval: 保存间隔时间,可以设置为600
Trainer:选择Original
其他的不用理,选好了之后,点击左下角的Train,等加载好了之后,就开始训练,可以看到方框里的训练数值,一般Loss的数值在0.02以下之后,效果就比较好。训练会一直运行,你想停止就点击Terminate
6. 训练了一段时间之后,我们就可以来合成看看效果,点击左上角Convert标签
Input Dir: 注意这里的是图片目录,选择workspace\data_dst
Output Dir: 合成的图片目录,选择workspace\data_dst\merged
Detector:同样选all
Model Dir:选择模型目录workspace\model
Input Aligned Dir:要替换掉的头像,选择workspace\data_dst\aligned
Trainer:选择Original
下拉滚动条,seamless方框选中,其他的默认就行
选择好了之后,就点左下角的Convert,可以看到预览
7.最后一步,将合成的图片转为视频,点击目录下的 z)合成图片到视频.bat
(得用Potplayer才能打开,用QQ影音或者其他系统自带播放器放不了,如果效果满意,可以用小丸工具箱(推荐)或者格式工厂转换)
到这里,我们的视频就合成完成了,合成视频在workspace文件夹里,因为源文件是没有音频,所以这里也没有音频。如果源视频有音频,会输出ResultWithAudio.avi。
1.人脸素材需要多少?
DST:尽量不要少,因为它是有限的且需要被替换的素材
SRC:根据各软件的脸图筛选规则和网上大神的建议,总体来说,SRC脸图最好是大概700~3999的数量,像Deepfacelab的作者,他就认为1500张够了。对于SRC,各种角度、各种表情、各种光照下的内容越多越好,很接近的素材没有用,会增加训练负担。
2.手动对齐识别人脸模式如何使用?
回车键:应用当前选择区域并跳转到下一个未识别到人脸的帧
空格键:跳转到下一个未识别到人脸的帧
鼠标滚轮:识别区域框,上滚放大下滚缩小
逗号和句号(要把输入法切换到英文):上一帧下一帧
Q:跳过该模式
老实说,这个功能极其难用,画面还放得死大……
3.MODEL是个什么东西?
MODEL是根据各种线条或其他奇怪的数据经过人工智能呈现的随机产生的假数据,就像PS填充里的“智能识别”
你可以从 https://affinelayer.com/pixsrv/ 这个网站里体验一下什么叫MODEL造假
4.MODEL使用哪种算法好?
各有千秋,一般Deepfacelab使用H128就好了,其他算法可以看官方在GitHub上写的介绍:https://github.com/iperov/DeepFaceLab
5.Batch Size是什么?要设置多大?
Batch Size的意思大概就是一批训练多少个图片素材,一般设置为2的倍数。数字越大越需要更多显存,但是由于处理内容更多,迭代频率会降低。一般情况在Deepfacelab中,不需要手动设置,它会默认设置显卡适配的最大值。
根据网上的内容和本人实际测试,在我们这种64和128尺寸换脸的操作中,越大越好,因为最合理的值目前远超所有民用显卡可承受的范围。
6.MODEL训练过,还可以再次换素材使用吗?
换DST素材:
可以!而且非常建议重复使用。
新建的MODEL大概10小时以上会有较好的结果,之后换其他DST素材,仅需0.5~3小时就会有很好的结果了,前提是SRC素材不能换人。
换SRC素材,那么就需要考虑一下了:
第一种方案:MODEL重复用,不管换DST还是换SRC,就是所有人脸的内容都会被放进MODEL进行训练,结果是训练很快,但是越杂乱的训练后越觉得导出不太像SRC的脸。
第二种方案:新建MODEL重新来(也就是专人专MODEL)这种操作请先把MODEL剪切出去并文件夹分类,这种操作可以合成比较像SRC的情况,但是每次要重新10小时会很累。
第三种方案:结合前两种,先把MODEL练出轮廓后,再复制出来,每个MODEL每个SRC脸专用就好了。