您现在的位置是:网站首页> AI工具使用

deepfacelive(简称DFLive)实时换脸

摘要

Deepfacelive介绍

DeepFaceLab



DeepFaceLive介绍

deepfacelive安装

点击查看教程

AI实时换脸-直播换脸 实时换脸教程,可能是由于内容开始是网络地址(http://...)截取后不能换行造成 为避免代码造成手机端排版的混乱,可适当增加文字描述,将代码往后推移

下载地址:https://pan.baidu.com/s/139ufJxAy_F9WHlcdQb-MYA?pwd=erx6#list/path=%2F

github地址:https://github.com/iperov/DeepFaceLive

你好,这是必应。根据我从网络上搜索到的信息,deepfacelive 是一个实时换脸程序,可以让你在视频会议或游戏直播中使用不同的面孔1。要制作换脸模型,你需要以下步骤:

准备一些目标人物的照片或视频,以及你想要替换的人物的照片或视频。

使用 deepfacelab 或其他深度学习软件来训练一个换脸模型23。训练的时间和质量取决于你的硬件配置和数据集大小。

将训练好的模型导出为.dfm 格式,以便在 deepfacelive 中使用2。你也可以在 discord 或论坛上找人帮你制作深度伪造模型。

在 deepfacelive 中选择你的摄像头和导入的模型,调整参数和选项,然后开始实时换脸4



deepfacelab使用

源视频和目标视频要求

高分辨率(4k webm 最好,不推荐低于 1080p)

脸部离相机不太远且畅通无阻

多角度,面部表情

明亮均匀地照明

面部应该有点匹配(胡须、帽子、头发、肤色、形状、眼镜)

需要至少 2 分钟的高质量视频,采访视频效果很好

下载软件

我们将使用 DeepFaceLab 来创建 deepfakes。另一个软件,FaceSwap 也可以使用,并且会有一个单独的教程。


下载 DeepFaceLab

确保为您的 GPU 选择正确的版本。如果您没有 GPU,请使用 CLSSE 构建

这是直接链接

在该文件夹中,您会找到一些预编译的人脸集。继续并下载其中之一以快速开始(否则您将不得不从视频/图像构建您自己的面孔集)

下载的 .exe 将提取程序并将其安装到您选择的位置。

workspace将创建一个文件夹。这是将发生所有操作的文件夹。


从源视频中提取人脸

命名源视频data_src并将其放入\workspace文件夹中。

大多数支持的格式都ffmpeg可以使用

跑步2) extract images from video data_src

使用 PNG(质量更好)

FPS <= 10至少可以获得2000 张图像(4k-6k 是理想的)

跑步4) data_src extract faces S3FD best GPU

提取的人脸保存到data_src\aligned.

跑步4.2.2) data_src sort by similar histogram

将检测到的相似面孔分组在一起

跑步4.1) data_src check result

删除不是正确人脸、超级模糊、被切断、倒置或侧向或被遮挡的面孔

跑步4.2.other) data_src util add landmarks debug images

_debug创建 带有后缀的新图像data_src/aligned,您可以在其中查看检测到的面部特征

寻找地标未对齐的面孔,并删除_debug那些面孔和原始图像

完成后, _debug使用搜索栏过滤删除所有图像_debug

跑步4.2.6) data_src sort by final

选择一个目标图像数量大约为您总面孔的 90%


从目标视频中提取人脸

您可以选择从 (1) 您想要的最终视频剪辑中提取,或 (2) 被剪切成仅包含您想要交换的面孔的视频剪辑。如果选择 1,则可能需要花费更多时间来清理提取的人脸。如果您选择 2,则必须在交换后编辑回最终视频(和音频)。


命名您的最终视频data_dst并将其放入\workspace文件夹中

跑步3.2) extract PNG from video data_dst FULL FPS

跑步5) data_dst extract faces S3FD best GPU

跑步5.2) data_dst sort by similar histogram

跑步5.1) data_dst check results

删除不是要交换的目标面的所有面,或者是目标面但倒置或侧向的所有面。您留下的每张脸都会在最终视频中交换。

跑步5.1) data_dst check results debug

删除任何未正确对齐或未对齐的面孔,特别注意下颌线。我们将在下一步中手动对齐这些帧。

跑步5) data_dst extract faces MANUAL RE-EXTRACT DELETED RESULTS DEBUG

我们运行此步骤以手动对齐我们在上一步中删除的帧。手动对齐的面将自动提取并用于转换。您必须手动对齐要转换(交换)的帧,即使这需要大量工作。如果您不这样做,您的交换将使用这些帧的原始面孔。

手动对齐说明:

对于每张脸,四处移动光标,直到它正确对齐到脸上

如果未对齐,请使用鼠标滚轮/缩放来更改框的大小

当对齐正确时,点击enter

,用and来回移动.。如果您不想对齐框架,只需跳过它.

鼠标左键单击将锁定/解锁地标。您可以通过单击或点击来锁定它enter。


训练

跑步6) train SAEHD


环境价值笔记

迭代100000或者直到预览中的眼睛和牙齿细节变得清晰为止。

解决128提高分辨率需要显着增加 VRAM

脸型F

学习掩码

优化器模式2 或 3模式 2/3 将工作放在 gpu 和系统内存上。对于 8gb 卡,您可以将其置于模式 3,并且仍然很可能能够以小批量进行 160 次 res fakes。

建筑学去向

ae_dims512如果 GPU 内存较少,则减少 (256)

ed_ch_dims21如果 GPU 内存较少,则减少

随机扭曲

真面目n

face_style_power0如果您想将 src 更多地变形为 dst,可以启用。但在 15k 次迭代后禁用。

bg_style_power10在 15k 次迭代时关闭。样式消耗 \~30% 更多 vram,因此您需要相应地更改批处理大小。

颜色转移变化尝试交互式转换器中的所有模式

剪贴画n

批量大小8个如果你没有用完内存则更高

偏航排序n不,除非你的 src 面孔很少

随机翻转

对于 NVIDIA GTX 1080 8gb GPU


可选:历史游戏中时光倒流

在转换之前,您可以对预览历史记录进行延时拍摄(如果您在训练期间保存了它)。仅当您了解什么ffmpeg是时才这样做。


> cd \workspace\model\SAEHD_history


> ffmpeg -r 120 -f image2 -s 1280x720 -i %05d0.jpg -vcodec libx264 -crf 25 -pix_fmt yuv420p history.mp4


转变

跑步7) convert SAEHD

使用交互式转换器并记住快捷键,它会加快很多过程。


环境价值笔记

交互式转换器一定要使用交互式转换器,因为您可以在转换所有帧之前尝试所有不同的设置

模式覆盖

屏蔽模式学到了

侵蚀修改器0-50如果 src 面在 dst 面的边缘外流血,增加它以“侵蚀”外面的 src 面

模糊修改器10-200脸部越相似,您可以设置的侵蚀和模糊越低,并获得很好的效果。

运动模糊0

颜色转移ebs尝试所有这些,甚至可以针对不同的场景/灯光使用不同的

锐化模式盒子

锐化量1-3

超分辨率RankSRGAN增强细节,尤其是眼睛周围

颜色降级功率n

export_alpha_maskn如果需要,输出透明的 PNG 用于后期制作工具

在转换运行时,您可以预览最终图像data_dst\merged文件夹以确保它是正确的。如果不是,只需关闭转换窗口,删除/merged并重新开始转换。

跑步8) converted to mp4

3-8 的比特率对大多数人来说已经足够了

完成

DeepFaceLab2.0 :超详细入门教程!


DeepFaceLab:视频中有多人,仅替换特定人脸的方法!

DeepFaceLab自带的视频素材,一个是钢铁侠托尼斯塔克,一个是变形金刚男主角山姆。每一个视频中只有一个人。所以当你第一次玩的时候很顺畅,什么都不用管,一步一步按教程来就好好了。

直到有一天你换了一个新的视频。而一个视频中出现的人物不止一个,或者一个画面中就有一群人。这个时候你就会遇到一个问题:如何只换你想换的那个人?按默认的流程来走的话,是所有人的脸都会被换掉。此时,你就必须学会一个新技能,如何指定换脸的对象。这个问题,其实软件本身已经考虑到了。 下面我具体说一下,如何实现只换一个人。


作者:托尼不是塔克

链接:https://zhuanlan.zhihu.com/p/81519167

来源:知乎

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

假设我们有一个视频,是《权力的游戏》中狼家四兄妹囧恩,三傻,二丫,布兰相聚的一个片段。而我们只是想要把囧恩换掉。 那我们就按正常流程,视频转图片,从图片中提取脸部,然后退得到一堆脸。


因为这个视频中出现的人物有四个,而且同一个画面中出现了三个人。所以默认情况下,提取完脸部后,在workspace\data_dst\aligned 会生成所有人的人脸。大致情况如下:


而这个aligned目录就是解决我们的问题的关键。 请记住一个规则,只要是在aligned目录中存在的人脸都会进行替换,换言之如果你不想替换二丫,三傻,布兰,那么直只需要把他们的头像从这个目录中删掉即可。


这么说应该很清楚了吧。aligned的头像是可以删的,只要留下目标人物的头像即可。这样换出来的视频就是你想要的样子了

如果你觉得一张一张删除有点麻烦,可以先用名字中带有sort的bat文件对头像进行排序,排序后同一个人就会在一起,删除起来就方便多了。




DeepFaceLab 小白入门系列教程:

DeepFaceLab小白入门(1):软件简介!

DeepFaceLab小白入门(2):软件安装!

DeepFaceLab小白入门(3):软件使用!

DeepFaceLab小白入门(4):提取人脸图片!

DeepFaceLab小白入门(5):训练换脸模型!

DeepFaceLab小白入门(6):脸部替换以及合成视频!


模型制作方法

其中人脸交换器需要选择一个模型,这个模型需要用deepfacelab训练好的模型,用最新DFL自带的“6) export SAEHD/AMP as dfm.bat”脚本进行格式转化获得。并放置在以下文件夹中DeepFaceLive\userdata\dfm_models

deepfacelab模型的训练和制作是个相当复杂事情,篇幅有限不再展开。需要先学会deepfacelab怎么使用。

1.jpg

新手玩家可以去dfldata.xyz免费学习deepfacelab和deepfacelive的教程,和下载现成模型


Top