Python入门与进阶 2021-08-13
新智元报道 ,来源:Github
AI换脸技术「船新」升级,DeepFaceLive推出实时换脸软件,一键安装,新手友好,换脸后丝毫看不出破绽。
欢迎光临「DeepFace整容所」!
无需开刀!无需微创!
双眼皮、开眼角、瘦脸统统都不在话下!
让你秒变帅哥美女!
给你看看现在已经非常成熟的「整容技术」:
一个软件就能直接将Angela Baby整成迪丽热巴!
没错,这就是DeepFaceLive的实时换脸软件。DeepFaceLive项目地址:https://github.com/iperov/DeepFaceLive只要打开软件,就能够实时处理直播中的视频,给主播换脸。不同性别换脸,DeepFaceLive也能够完全驾驭。团队这次推出的软件除了能够给直播视频实时换脸,还能在视频通话的时候换脸。当然了,人脸替换的模型要先经过DeepFaceLab算法训练。论文地址:https://arxiv.org/pdf/2005.05535.pdf现在网络上95%以上的Deep Fake视频都是用DeepFaceLab制作的。DeepFaceLab项目地址:https://github.com/iperov/DeepFaceLab这次DeepFaceLive的推出,肯定会有更多好玩的视频甚至是直播了。软件运行起来也非常简单,只需要有64位的Win 10系统和NV的显卡就可以了。人脸检测器集成了YoloV5、S3FD以及CenterFace。人脸标记器提供了基于CPU加速的OpenCV LBF和基于GPU加速的Google FaceMesh。在人脸交换器中,需要载入用户提前用DeepFaceLab训练好的模型。详细教程可以访问:https://github.com/iperov/DeepFaceLive/blob/master/doc/setup_tutorial_windows/index.mdLab不需要手工挑选特征就可以实现流畅和逼真的换脸效果。只需要两个视频:源视频(src)和目标视频(dst)。不仅如此,两个视频之间还不需要匹配相同的面部表情。Lab的第一个阶段是从src和dst数据中提取人脸。Lab提供了两种典型的面部坐标提取算法来解决这个问题:
- 基于热图的面部坐标算法2DFAN(适用于具有标准姿势的人脸)
- 具有三维面部先验信息的PRNet(适用于具有大欧拉角的人脸,例如其中的一侧不在视线之内)。
在检索出面部坐标后,Lab提供了一个可配置时间步长的可选函数,以平滑单次拍摄中连续帧的面部坐标,进一步确保稳定性。然后,利用经典的点模式映射和转换方法来计算用于面部对齐的相似性转换矩阵。由于在计算相似性转换矩阵时需要标准的面部坐标模板,因此Lab提供了一个规范的对齐的面部坐标模板。此外,Lab可以利用获得的面部坐标自动预测欧拉角。在对齐之后,得到了一个带有标准正面或侧面视图的脸部数据文件夹。我们在此基础上采用精细的人脸分割网络(TernausNet),准确地分割出有头发、手指或眼镜遮挡的人脸,同时也可以移除不规则的遮挡物。由于一些SOTA人脸分割模型在某些特定的镜头中无法生成细粒度的掩码,因此Lab将XSeg引入。XSeg允许用户使用多张照片来训练模型,从而分割特定的人脸。
在XSeg的帮助下,用户可以用它来消除手、眼镜和任何其他可能覆盖面部的物体的遮挡,并控制特定的区域进行交换。
由于作者希望不用对src和dst的面部表情进行严格的匹配,因此Lab提出了两种结构来解决这个问题。DF结构包括一个编码器以及src和dst之间共享权重的Inter,两个分别属于src和dst的解码器。src和dst的泛化是通过共享的Encoder和Inter实现的。DF结构可以完成换脸的任务,但不能从dst继承足够的信息,而LIAE结构则可以用来解决光线的一致性问题。LIAE的结构要更复杂,有一个共享权重的编码器,一个解码器和两个独立的输入器。此外,Lab默认使用混合损失(DSSIM+MSE)。DSSIM可以更快生成人脸,而MSE可以提供更好的清晰度。此外,作者采用了一种真实面孔模式TrueFace,它可以在转换阶段使生成的面孔与dst有更好的相似性。而Lab可以让用户将src的脸换到dst,也可以逆向操作。为了保持人脸肤色一致,Lab又提供了五种颜色转移算法(Reinhard颜色转移、迭代分布转移等)。Lab的liae架构模型自带光影学习,在处理不同的肤色、脸型和光照条件的混合时,只要边缘羽化一下两张脸的结合处就不会显得突兀。由于SOTA模型所生成的脸部,或多或少都是平滑的,缺乏微小的细节(例如,痣,皱纹)。因此,Lab集成了一个预先训练好的脸部超分辨率神经网络用作混合后脸部的锐化。作者采用来自FaceForensics++数据集的开源项目来测试换脸结果。为了公平起见,作者将训练时间限制在3小时内,并采用了一个具有DF结构的轻量级的模型:Quick96,其输出分辨率为96×96。此外,作者使用Adam优化器(lr=0.00005,β1=0.5,β2=0.999)对模型进行优化。这些模型的训练都是在NVIDIA GeForce GTX 1080Ti GPU和Intel Core i7-8700 CPU上训练的。FaceForensics++人脸图像的定性换脸结果与DeepFakes和Nirkin的模型相比,Lab可以保留更多的姿势和表情。此外,转换阶段加入了超分辨率网络,Lab可以输出更有灵气的眼睛和线条明显的牙齿。研究人员不断追求效果自然,AI换脸技术也变得越来越「无懈可击」。如今直播带货行业乘着技术发展的翅膀,让商家们能够获利更多。软件的开发者「不愿透露姓名的滚石」表示,如果直播带货行业能够使用这个换脸软件,灵魂有趣但颜值不够的带货主播就能拥有高颜值,提高直播间吸引力。大大降低了商家开直播间成本的同时,还能够提高直播间的吸引力。这位开发者同时也表达了他的担忧:一但软件得到广泛应用,心怀不轨的人可能会利用实时换脸技术进行诈骗勒索。以往的换脸技术最多只能对视频换脸,如果要诈骗,只要保持警惕,视频很快就会露馅儿。但如果实时换脸技术被用于诈骗,在这个真真假假的虚拟世界中,可能大部分人都没有办法分辨屏幕那端是不是「本尊」。如果诈骗的是我们的父母这样年纪大一点的人,对方能够和父母互动,原本辨别力就不高的他们可能很容易就会被骗转账。在这个AI世界里,人与人之间还能保有最后一份真诚吗?
参考资料:
DeepFaceLive项目地址:https://github.com/iperov/DeepFaceLive
DeepFaceLab项目地址:https://github.com/iperov/DeepFaceLab
DeepFaceLab论文地址:https://arxiv.org/pdf/2005.05535.pdf
中文论坛地址:https://dfldata.xyz
- EOF -