如果前期工作已经准备完毕(DeepFaceLab下载https://www.deepfacelabs.com/list-5-1.html),然后安装相应的显卡驱动,DeepFaceLab使用教程(1.安装及分解视频)那么我们就正式进入AI换脸的关键环节:训练模型和合成转换视频,请按照图文步骤一步一步操作。

回到DeepFaceLab根目录,看到6) train 开头的批处理文件,这些代表不同的换脸模型:AVATAR(表情),DF(全脸),H64(64半脸),H128(128半脸模型),LIAEF128(改进型全脸),SAE(自定义模型),SAEHD(自定义高清模型)。建议刚接触的朋友先尝试H64、H128模型。考虑到大众使用的显卡一般比较普通,高模型可能无法使用,所以下面我们拿H64举例(可自行选择模型训练,不必拘泥于本教程的H64,你也可以选择H128或者SAE等模型)。

执行6) train H64

参数已经适配到最合适状态,不建议新手更改,所以只需要一路回车即可。

耐心等待(注意:如显存小于3G则有可能无法训练,请在看到Use lightweight autoencoder时选项写上y  执行轻量级)

当出现预览窗口的时候就表明你的训练开始了,正式进入AI换脸。英文输入状态下按P可以更新预览,Iter代表训练的迭代数。训练途中可以随时关闭,下次重新打开会接着训练,关闭请不要直接点 ×,请在英文输入状态在预览窗口上回车。如果觉得最后一列已经非常像第一列的时候就可以结束训练进行合成。(训练时间根据素材质量、时长、电脑配置有关,一般大约需要1-30天)下面请看合成(在预览界面回车结束训练)。

用什么模型训练就需要用什么模型合成,由于本教程使用的是 H64模型训练,所以这里就需要用7) convert H64合成。

这里是让选择是否采用交互式界面,直接回车使用即可。

这里是交互式窗口的简介,每个键位代表不同的功能,刚入门可以先不用管,这里直接按键盘上的Tab切换

看到这里不要懵,这不是你的问题,这是因为之前分解的data_dst视频帧前几张是黑色的,这里可以在英文输入状态下按  >  前进( <是后退 ),一直前进到有画面出来即可。

大概  > 前进到第六张就可以看到训练的结果,接下来我们可以调整一下参数以使合成更加自然。按Tab切换到交互式界面,我们重温一下。

每个键位代表不同的的合成参数,由于本教程是入门教程,这里我们只需要用到1-4和W A  E  D 这几个键位。按Tab切换回去。

从1到4都可以尝试一下,然后适当调节W A     E  D   试试不同的值得出自认为最好的合成效果。如果感觉效果满意可以回车执行。

合成之后的图片会在workspace\data_dst\merged目录,当全部都合成完毕可以关闭窗口,下一步转换视频。

建议mp4格式,选择8) converted to mp4

直接回车

稍等片刻,转换时间根据你的视频时长而定。

DeepFaceLab入门教程已经完毕,其实无非就是安装驱动、安装DeepFaceLab本体、分解视频、提取脸部、训练模型、合成图片、转换视频这几个步骤,如果按照本教程应该可以在半天时间入门AI换脸,后续会提供一些日常使用中的进阶知识。

AI换脸教程:DeepFaceLab使用教程(2.训练及合成)的更多相关文章

  1. AI换脸教程:DeepFaceLab使用教程(1.安装及分解视频)

    首先需要选择合适的DeepFaceLab下载(https://www.deepfacelabs.com/list-5-1.html),然后安装相应的显卡驱动,如果已经准备好这些工作,那么恭喜你,终于开 ...

  2. 程序员体验AI换脸就不要用ZAO了,详解Github周冠军项目Faceswap的变脸攻略

    本文链接:https://blog.csdn.net/BEYONDMA/article/details/100594136       上个月笔者曾在<银行家杂志>发文传统银行如何引领开放 ...

  3. TensorFlow 中文资源全集,官方网站,安装教程,入门教程,实战项目,学习路径。

    Awesome-TensorFlow-Chinese TensorFlow 中文资源全集,学习路径推荐: 官方网站,初步了解. 安装教程,安装之后跑起来. 入门教程,简单的模型学习和运行. 实战项目, ...

  4. TensorFlow 中文资源精选,官方网站,安装教程,入门教程,实战项目,学习路径。

    Awesome-TensorFlow-Chinese TensorFlow 中文资源全集,学习路径推荐: 官方网站,初步了解. 安装教程,安装之后跑起来. 入门教程,简单的模型学习和运行. 实战项目, ...

  5. Thiago2(TPO AI.ROSTO):集成式AI换脸软件(Autodesk Flame)

    如标题一样,Thiago2 是一款集成式AI换脸软件(TPO AI.ROSTO),需要与Autodesk Flame结合使用,从demo来看完成度还是很高的,算是一种完全GUI版的DeepFaceLa ...

  6. 从Vehicle-ReId到AI换脸,应有尽有,解你所惑

    最近在做视频搜索的技术调研,已经初步有了一些成果输出,算法准确性还可以接受,基本达到了调研的预期.现将该技术调研过程中涉及到的内容总结一篇文章分享出来,内容比较多,初看起来可能关系不大,但是如果接触面 ...

  7. AI换脸实战教学(FaceSwap的使用)---------第一步Extration:提取人脸。

    市面上有多款AI换脸的方法,笔者这里节选了Github那年很火的开源项目FaceSwap: (很早就实践了,但是忘记记录啦hhh,请勿用于不正当用途哦) 做了一篇详细教学,包括配置,参数设置,换脸效果 ...

  8. Android扫盲教程大全经典教程全分享

    Android扫盲教程大全经典教程全分享,相当于android的简单用户手册下载路径 Android扫盲教程大全经典教程全分享.rar

  9. 转帖-[教程] Win7精简教程(简易中度)2016年8月-0day

    [教程] Win7精简教程(简易中度)2016年8月 0day 发表于 2016-8-19 16:08:41  https://www.itsk.com/thread-370260-1-1.html ...

随机推荐

  1. fiddler抓取app的https的包

    线上问题的排查有时候需要抓包,但是是https协议的,则需要安装证书 在Android 6.0 (API level 23)及以前,APP默认信任系统自带的CA证书以及用于导入的CA证书,Androi ...

  2. CentOS mysql安装

    MySQL For Excel 1.3.5MySQL for Visual Studio 1.2.5MySQL Fabric 1.5.6 & MySQL Utilities 1.5.6Conn ...

  3. [转] JavaScript学习:BOM和DOM的区别和关联

    BOM 1.  BOM是Browser Object Model的缩写,即浏览器对象模型. 2.  BOM没有相关标准. 3.  BOM的最根本对象是window. 从1可以看出来:BOM和浏览器关系 ...

  4. java:LeakFilling(面向对象)

    1.类的修饰符只能是:public,默认的.另外:final  ,abstract,(修饰符 (只有:public, 默认,)interface+类名 ). 2.在main函数中创建对象时,new哪个 ...

  5. Docker 容器操作

    1. 创建并运行 一个容器 docker run -it --rm   centos:latest  bash run  运行容器 -it  以交互方式运行容器 --rm  退出容器后删除容器 cen ...

  6. Python密码登录程序的思考--学与习

    # 初学者的起步,对于开始的流程图结构还不太熟悉 #   思考: 1,write()与writelines()的区别,前者确定为字符串,后者为序列(列表,字典.元组等),自动为你迭代输入#      ...

  7. vue --》elementUI 中 el-table组件 如何实现点击列,让该列高亮显示 ?

    在elmentui官网中,只给了让当前行高亮显示的方法,但是如何让当前列高亮显示呢? <template> <div> <el-table :data="tab ...

  8. python 基础复习

    1.简述cpu.内存.硬盘的作用 cpu (1)cpu:处理逻辑运算.算术运算 (2)cpu:接受指令传给电脑硬件,让其运行 内存: (1)内存:从硬盘中读取数据,供其cpu调取指令运行,短暂的存贮数 ...

  9. Akka系列(四):Akka中的共享内存模型

    前言...... 通过前几篇的学习,相信大家对Akka应该有所了解了,都说解决并发哪家强,JVM上面找Akka,那么Akka到底在解决并发问题上帮我们做了什么呢? 共享内存 众所周知,在处理并发问题上 ...

  10. neo4j3.0多数库切换

    动机 类似与关系型数据库,创建了多个数据库 想要像访问关系型数据库那样来可以无缝切换多个数据库 然而,在neo4j 3.0都暂时没有办法做到:每次启动neo4j,它只能读取一个数据库.比如,现在有两个 ...