AI换脸技术原理是什么

发布时间:2021-11-25 22:10:39 作者:柒染
来源:亿速云 阅读:767

本篇文章给大家分享的是有关AI换脸技术原理是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

近来AI换脸技术引起了巨大的争议,众所周知,人脸互换是计算机视觉领域中的大热应用,在技术进步的同时也埋下了不少的隐患。因此在不久前的《网络音视频信息服务管理规定》中,国家出台了针对AI换脸造假视频的管控政策。由此可见AI换脸技术的迅猛发展,甚至达到了以假乱真的地步。既然AI技术如此神奇,就来带大家深度分析AI技术的具体原理。

AI换脸技术原理:

人脸互换一般可以用于视频合成、提供隐私服务、肖像更换或者其他有创新性的应用。最早之前,实现人脸互换是通过分别分析两者人脸的相似信息来实现换脸,也就是通过特征点匹配来提取一张脸中例如眉毛、眼睛等特征信息然后匹配到另一张人脸上。这种实现不需要进行训练,不需要的数据集,但是实现的比较差,无法自己修改人脸中的表情。

而在最近发展的深度学习技术中,我们可以通过深度神经网络提取输入图像的深层信息,从而读取出其中隐含的深层特征来实现一些新奇的任务,比如风格迁移(style transfer)就是通过读取训练好的模型提取图像中的深层信息来实现风格互换。也有使用神经网络进行人脸互换(face-swap),其中使用VGG网络来进行特征提取并实现人脸互换。这里我们通过特殊的自编码器结构来实现人脸互换,并且达到不错的效果。

自编码器:

AI换脸技术基础背景——自编码器

自编码器类似于神经网络,可以说是神经网络的一种,经过训练后能够尝试将输入复制到输出。自编码器和神经网络一样,有着隐含层h,可以将输入解析成编码序列,从而复现输入。自编码器内部有一个函数h=f(x)可以进行编码,同时也有一个函数r=g(h)实现解码,如下图所示。

AI换脸技术原理是什么

网络构架:

那么应该如何通过自编码器实现我们的换脸技术呢?在之前我们已经知道了自编码器可以学习输入图像的信息从而对输入图像信息进行编码并将编码信息存到隐含层中,而解码器则利用学习到的隐含层的信息重新生成之前输入的图像,但是如果我们直接将两个不同个体图像集的图像输入到自编码器当中会发生什么呢?假如我们仅仅是简单地将两张不同的脸的集合扔到自编码网络中,然后挑选一个损失函数去训练,但这样去训练我们是什么也得不到的,因此我们需要重新设计一下我们的网络。

怎么设计呢?既然我们想要将两张脸互换,那么我们可以设计两个不同的解码网络,也就是使用一个编码网络去学习两张不同人脸的共同特征,而使用两个解码器去分别生成他们。也就是我们设计一个输入端或者说一个编码器(分别输入两个不同的脸),然后两个输出端或者说两个解码器,这样我们就可以通过隐含层来分别生成两张不同的人脸了。

网络结构:

我们可以看到网络结构有一个输入端和两个输出端,输入端由卷积层和全连接层构成,而输出端则同样由卷积层构成,但是需要注意这里的输入端是下采样卷积,而输出端则是上采样卷积,也就是图像的分辨率是先变低再慢慢升高。

总得来说,这个换脸技术是一个结构简单但是知识点丰富的一个小项目,其结构简单易于使用以及修改,并且可以生成不错的效果,但是因为其拥有较多的参数,其运行速度并不是很快(当然我们可以通过改变编码层和解码层结构加快训练生成的速度),并且对于脸部有异物的图像可能会生成不真实的效果。

以上就是AI换脸技术原理是什么,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。

推荐阅读:
  1. 教你用Python制作表情包,实现换脸技术!
  2. cdn的技术原理是什么?

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

ai

上一篇:SimpleGUICS2Pygame是怎样替代simplegui

下一篇:C#如何实现基于Socket套接字的网络通信封装

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》