开始实验前,请确保你的机器硬件达到要求。内存推荐8GB以上,如果低于4GB.....建议你升级一下配置再来做这个实验。因为模型训练的过程中需要依赖GPU,所以你的显卡显存至少得达到4GB,不然可能跑不动这个程序。
1.首先需要安装的便是这个能让你傻瓜式换脸的应用FakeApp了,点击链接进入官网。安装过程中并没有什么值得特殊强调的地方,咱们一笔跳过。
2.接下来就是和GPU相关的CUDA8了,选择相应的系统版本便可以下载安装。在安装方式这一步建议大家使用本地安装exe[local]
的方式,exe[network]
的安装方式....可能有点慢。默认情况下CUDA会自动帮你添加到环境变量,如果没有,请手动添加,这一步非常重要。
至此,所有和环境相关的部署咱们已经大功告成了。
先简单介绍一下FakeApp的三个模块GET DATASET
:获取数据集,在这一步中,你的素材视频将被逐帧切割成图片,程序会自动识别并提取出图片中人物的面部数据。TRAIN
:训练模型,根据第一步中生成的数据集,机器会自动地帮你训练模型,从而进行面部的替换。CREATE
:生成视频,这一步便是整个实验中最为神奇的地方,他能根据你训练出的模型,将给定视频素材中人物的面部进行替换,最后生成替换后的视频。
1.第一步,生成数据集
先创建一个文件夹fake
,将素材视频存放进去
咱们姑且用A和B来区分这两个小姐姐好了,按照FakeApp的提示,将素材路径填入,点击EXTRACT,接下来无需任何操作,等程序跑完就行了。你会看到fake
文件夹中多出了一个dataset-A
的目录,这便是我们待会儿训练模型时需要的数据集了。A的训练集生成后,重复这一步骤,生成B的训练集。至此,咱们第一步结束了。
示例A
2.第二步,训练模型
在这一步开始前,你需要在fake
文件中创建一个model
目录,这里会存放模型文件。和之前一样,依次填入文件夹路径,下面的参数无需修改,使用默认配置即可。点击TRAIN,等待程序初始化后,会弹出一个预览框,这时,你几乎可以高枕无忧了。刚开始你会发现预览框最右侧的一列会非常模糊,不要紧,模型才刚开始训练。Loss A和Loss B代表模型的差异值,咱们无需关注数值产生的原理,你只需要知道,两者之差越小,说明模型训练的越好。
训练模型是一个很耗时间的活儿,以我为例,每个数据集各350张左右的面部图像,训练了大概13个小时,差异值稳定在了0.1%左右。如果你想要更好的效果,建议每个数据集不低于500张,至于如何确定数据集的大小,可以看上面的示例图A,图中的360代表dataset-A
的数据量。
值得一提的是,训练进度会被实时保存下来,也就是说你可以随时暂停训练,在预览窗口中,输入英文小写字母q即可保存退出,下次想要继续训练的话,打开FakeApp再点击TRAIN即可。
——-———————————分割线——-———————————
13个小时过去了,最右一列已经十分清晰了,效果也令人满意,要不咱们先合成一个视频试试?
——-———————————分割线——-———————————
3.在model
中填入我们先前训练好的模型路径,Video
则填入你想要替换的视频路径,依旧是傻瓜式,点击CREATE,稍安勿躁,让GPU飞一会儿~程序跑完后,你应该就能在fake
文件中看到生成的swap.mp4
文件了,让我们通过视频截图,看看效果如何。
替换前
替换后
总的来说效果还是令人满意的,虽然看起来有点违和,但绝对可以以假乱真。好了,至此咱们的简易教程就告一段落了,如果你有什么问题欢迎留言讨论.
作者:奥特虾
链接:https://www.jianshu.com/p/c2afe8919a35
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
自动播放
在《射雕英雄传》里演过黄蓉的,除了朱茵、翁美玲、周迅、林依晨,竟然还有杨幂?
不信看图:
这……造型怎么看着像94版《射雕》里朱茵演的黄蓉呢?连画风都是90年代的感觉。
原来,是有一位B站UP主“换脸哥”,用AI技术将杨幂的脸“贴”在了朱茵饰演的黄蓉脸上。
看,这是一张原版的截图:
我们把朱茵的脸换成杨幂:
再看朱茵的这个表情:
换成杨幂也一样:
换脸后人脸的轮廓、表情都一样,简直看不出是人造的。
整个视频,也十分流畅。
这样的效果,一下子就引来了一群吃瓜群众,微博话题阅读量达到了1.1亿。
那么,AI换脸背后是怎么回事呢?
不止朱茵变杨幂
从换脸程序deepfake传入国内开始,就有不少网友制作过换脸视频。比如把宅男们喜闻乐见的女主播换成国内当红小花。
有的把主播阿冷换成唐嫣:
有的把冯提莫换成赵丽颖:
上面这些还算效果好的,播放量都在几十万。
大多视频限于素材和硬件,制作水平参差不齐,比如脸型不匹配、表情不自然的问题依然很严重,总之就是不像。
网友感叹:把脸换成迪丽热巴,看起来却像黄子韬邪魅一笑。
AI换脸技术deepfake已经出现一年多,造出了无数假视频。在国外,它被引到了“不可描述”的方向。
在Reddit论坛上,它掀起过一股热潮,甚至出现过专门的讨论区。
某知名网站“珀恩哈波”各种“不可描述”视频被换上了好莱坞女星的脸,众多男性心中的女神寡姐斯嘉丽约翰逊、神奇女侠加尔·盖朵都中过招。
换脸教程
大胆的想法不敢有,但你可能想按照国内的老少皆宜用法,制作一部符合自己嗜好的换脸视频。
门槛并不算高,甚至都不用自己训练一个deepfake模型,有现成的程序用。
2018年1月,有人推出了Windows程序FakeApp,允许用户很轻松地自制换脸视频,即使没有任何AI方面的知识,大大降低了deepfake的使用门槛。
FakeApp只需要一个包含Nvidia GPU的个人电脑、3~4GB的存储空间,就能生成换脸视频。至于训练神经网络的材料需要用户自行寻找。
软件有了,相关的文字、视频教程应运而生。
首先需要下载FakeApp软件,建议有一张Nvidia 1060或以上级别的显卡,安装好CUDA toolkit 9.0。
接下来给人换脸分成3步:获取原始数据集,训练模型,转换视频。
按照程序要求分别有换脸和被换脸两个人的视频,并把她们的视频转换成256×256的图片。
然后调整合适的节点数、层数、Batch Size,不同的显存有不同的推荐参数。
当训练结果小于0.02的时候,就可以停掉训练程序,这个过程需要漫长的等待,可能持续8到12小时。
最后选择上面训练好的视频、换脸视频,再设置合适的帧率,就可以得到一段自制deepfake视频。
温馨提示:由于FakeApp争议性极大,目前官网已经挂掉,换脸教程也请不要用于非法用途。
网友:会有坏人替我换脸么?
换脸效果太高,足够以假乱真,这引起了一些网友的担忧。
有人担心,会有不法分子用AI换脸技术做坏事,进行诈骗等行为:
还有人觉得,如果技术被用在普通女性身上,换到一些不可描述视频上,会伤害许多女性的合法权益:
另外,此前包括斯嘉丽·约翰逊、艾玛·沃森特等许多国外女明星也饱受困扰,莫名其妙的被人换到了色情片中,Twitter、PornHub等网站也禁止上传此类换脸内容。
而上传换脸视频的UP主“换脸哥”账号中的视频也不见了,仅保留了两张图片,目前视频在B站已经看不到了。
但面临争议,UP主本人则认为,新技术应该让大家都知道,给公众打了“预防针”,以后看到类似假视频的时候才能反应过来“这是AI生成的”,不会被假新闻欺骗。
AI换脸是一种新技术,大家对它的认识还不够,希望让更多朋友了解, 否则将来有人伪造明星负面内容的视频时, 将会给公众人物带来更大的损失。这些作品没有任何恶意,也并非商业用途,如果认为这些内容有损您的权益,请私信联系,在下一定及时处理(`・ω・´)
正是因为PhotoShop等图片处理软件在今天得到普及,大家看到奇怪的图片都能意识到是假的,并不会信以为真、上当受骗,而PS类软件本身又给我们创造了大量有趣的美图、表情包、段子等内容。
另外,AI界也在用各种方法识别这种换脸视频,通过新的AI模型自动全网搜寻类似视频判断是否为换脸假视频,学界也在建立数据库帮助训练AI识别deepfake假视频。
未来,只要大家有足够的认识,意识到视频是“P的”,那么在遵守法律、尊重他人肖像权的情况下,像P图制作表情包一样娱乐性的使用换脸技术也无可厚非,还能为我们创造更多有趣的内容。
2018年09月30日 08:02:31 jacka654321 阅读数:16476
先下载APP和core文件;
链接:https://pan.baidu.com/s/1jJHShpk 密码:wekn
具体安装过程:
1、安装必要环境;
硬件和操作系统,支持cuda的Nvidia显卡,8G及以上的内存,Windows10 x64,
用python查看TensorFlow版本,升级到1.5;
安装python3.6和tensorflow1.5,python下载地址:https://www.python.org/downloads/,下载最新的3.6.4版本,安装时勾选最下面Add Python3.6 to PATH,推荐自定义安装,安装完确认下Python\Python36和Python\Python36\Scripts是否加入了环境变量,没有就手动添加一下。然后就可以打开命令行窗口,输入:pip install tensorflow-gpu==1.5安装tensorflow1.5的gpu版,为了提高下载速度可以先配置使用国内的源。
方法:在C:\Users\[your username]目录新建pip目录,再到pip目录下新建pip.ini,内容如下(清华的源)
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
进入python环境,
import tensorflow as tf
tf.__version__
安装CUDA;
安装cuda9.0(不是9.1)和对应版本的cudnn,下载地址:https://developer.nvidia.com/cuda-toolkit,点Download Now->Release Notes->右上角older->CUDA Toolkit 9.0 (Sept 2017)选择对应版本,把Base Installer,Patch 1 (Released Jan 25, 2018),Patch 2 (Released Mar 5, 2018)都下载下来并按顺序安装,会自动添加环境变量。
CUDA Toolkit 9.0 Downloads
https://developer.nvidia.com/cuda-90-download-archive?target_os=Windows&target_arch=x86_64&target_version=10&target_type=exelocal
先打开安装cuda_9.0.176_win10.exe;
再安装cuda_9.0.176.1_windows.exe;
安装cuda_9.0.176.2_windows.exe
下载解压cudnn到对应文件夹:
到https://developer.nvidia.com/cudnn下载cudnn,需要登陆,没有账号就注册一个,勾选I Agree To the Terms of the cuDNN Software License Agreement就会出现下载链接,Download cuDNN v7.1.1 (Feb 28, 2018), for CUDA 9.0,选择对应操作系统的版本,我的cuDNN v7.1.1 Library for Windows 10,下载得到压缩包,把里面的文件解压到cuda安装目录(我的:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0)下的对应目录,把CUDA_PATH\bin(我的:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin)添加到环境变量。Win+R组合键,输入cmd,回车,打开命令行窗口,输入nvcc -V,回车
https://developer.nvidia.com/user
打开默认安装目录:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0
把解压的文件放进对应的文件夹;
再cmd到命令行,进入python查看tf版本;
添加系统环境变量:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin
本例已经添加,先行跳过;
nvcc -V
查看版本
安装vc_redist.x64.exe;Windows10应该自带,如图所示,已经安装了,所以本例不需要安装,直接跳过;
1、确认已经安装好必要环境,CUDA和VC;
2、打开FakeApp Setup 2.2.0.exe,安装完看到如图所示;
3、打开windows目录,C:\Users\10984\AppData\Local\FakeApp\app-2.2.0\resources\api
解压core到目录api下
注意解压完成后,不要再执行安装FakeApp Setup 2.2.0.exe,否则文件夹core会被删除。
打开core文件,把里面的内容剪切到api下,或一步到位解压的时候,把\core删掉;
这些文件要和ffmpeg.exe同一个目录;
4、到桌面打开FakeApp快捷方式;
成功打开:
使用:
1.GET DATASET,输入视频路径和fps(视频较长就把fps设置低点,比如填1),使用默认设置(gpu模式)EXTRACT试试,先会把视频按fps拆分,再提取人脸。
2.TRAIN,自建model文件夹,把路径填进去,DATA A,B填人脸所在路径,修改设置,主要是Batch Size,Nodes,Layers,我的计算机配置太低,分别设置到[16,128,3]才能开始训练,否则一直报错,训练开始会弹出一个新窗口,在这个窗口上按“q”结束训练。
A为原视频的图片
B为要替换成的对象
3.CREATE,能训练了就接着试试生成,model路径,要换脸的视频路径,fps(必须输入)。
参考链接:
Fakeapp2.2安装,使用简记
https://www.cnblogs.com/iJessie/p/8568377.html
[搬运]Deepfakes FakeApp2.2教程
https://www.bilibili.com/video/av21715725/
FAKEAPP2.20版本(2018/02/20更新)
https://tieba.baidu.com/p/5627679192
转至https://www.fakeapp.org/forum/releases-tech-support/releases
下载地址:
App download: https://directme.ga/#!hSJkTAyT!mFeZ7x1ogMuy6tVWgqh-9LwxuQ24e3ZKGXd1bQA0PAo
Core library download: https://directme.ga/#!hGhRgIQD!n0Ueix8fP96F13mvluh-NTl0Soz7BypKBv94h3SJ0Lw
说明:
Once you have downloaded both, install the library by following these steps
1) Go to C:\Users\[USER]\AppData\Local\FakeApp\app-2.2.0\resources\api
2) Move core.zip to this directory
3) Extracted the contents of core.zip to this directory
4) Close and re-open the app
good job:
https://adultdeepfakes.com/v132401
使用:
【Fakeapp2.2】人工智能换脸软件使用教程 中文自制
https://www.bilibili.com/video/av19995025/
FakeAPP 2.2使用教程以及低配显卡的调教方式
https://www.bilibili.com/read/cv241156/
FakeApp换脸程序教程 - 中文字幕
http://www.miaopai.com/show/9TQ3E4YXK73UIDfh~elp6NC-pXUIOMKGngw7MQ__.htm
FakeApp 简明使用教程
http://www.5moon.org/deepfakes-fakeapp-tutorial