在众多AI换脸软件中Fakeapp是流传最广,操作最简单的一款,当然他同样也是源于Deepfakes。 这款软件在设计上确实是花了一些心事,只要稍加点拨,哪怕是再小白的人也能学会。下面我就做一个入门教程吧。跟着这个教程来,你肯定会学会的!

玩软件,无非就是两个环节。

  1. 如何安装?
  2. 如何使用?

下面先来介绍安装部分,可能这才是Fakeapp以及众多换脸软件最难啊的部分。因为这是一个基于深度学习的软件,所以需要装很多和深度学习相关的依赖软件。

整个安装过程可以分成以下几个步骤:

  1. 安装CUDA 9.0
  2. 安装CuDnn 7.0.5(注意不是7.5.0)
  3. 安装VS2015
  4. 安装Fakeapp

这么多软件,光下载工作量就不小,尤其是国内的网络情况大家都懂的,有些网址未必能打开了,所以我已经为大家准备好了所有必要的软件。

CUDA,CuDnn,VS2015:

https://pan.baidu.com/s/12yanVB1Gy-3uMVxXnhQwuw 提取码:hcb5

Fakeapp:

https://pan.baidu.com/s/1BXvUxl2Jw-5oT_09U8D3dg  提取码:nwxt

下面以Window10(Server 2016) 为例,详细完整的说明一下安装过程。

Fakeapp具体的安装流程如下

1.安装CUDA 9.0

参考:https://www.deepfakescn.com/?p=358

2.安装CuDnn 7.0.5

参考:https://www.deepfakescn.com/?p=376

这里要注意,安装的软件版本为7.0.5 并非7.5.0 , 因为这两个版本都可以对应CUDA9,但是如果装错了,软件运行过程就会出现问题。

3.安装VS2015

安装vs2015 是一个漫长的过程,并且下载的软件也比较大,其实用到的确实里面很小的一部分。其实这个步骤可以投机取巧一下,只需要安装一个很小的运行库就好了。软件见上面网盘。安装过程如下。

安装过程非常简单,就是所有配置都默认,直接 “下一步” ,“下一步”,“完成”就好了。 软件上的乱码不知道怎么回事儿,不影响使用,忽略即可。

这是一个比较良心的集合库,安装包很小,安装非常方便,而且一口气了带了N多版本。其实我们需要用的主要是 Visual C++ 2015版本。懂的可以选择性安装,不懂得,直接下一步,都没有问题。

安装完成后可以通过【控制面板】->【程序】->【程序和功能】进行查看,这里会出现很多Visual C++ 开头的文件。

如上图,这一部就成功了。

4.安装Fakeapp

Fakeapp的安装并不复杂,双击图标即可开始安装。

系统会跳出安全警告,可以直接点Run继续。

片刻之后桌面出现图标,即代表安装已经完成。 点击桌面的快捷方式即可打开软件!

不过,别高兴的太早。第一个坑出现了。你打开软件后,会弹出一个英文窗口,写了一大堆你看不懂的东西。然后你就束手无策了…

上面的英文说的是,更新日志,以及教你下载内核,然后安装内核,然后重新启动。具体的操作如下。

右键桌面图标-》属性(Properties)-》快捷方式(Shortcut)-》目标路径(Target ) 。通过这个方式可以找到Fakeapp的真是安装路径。

然后可以找到下面中的….\api 文件夹,默认情况下,里面只有一个ffmpeg文件。

先复制上面的路径,然后右键单击core压缩包,在跳出的窗口里黏贴路径,点击解压(Extract)。

解压完成后,再次打开桌面上的Fakeapp,就正常进入软件了。

Fakeapp这款软件确实很有意思。明明是一个桌面软件,却设计成了APP的样子。软件界面非常简单,具体使用请看下一篇文章。

更多关于 AI换脸DeepfakesFakeapp的问题可以去 Deepfakes中文网。

Fakeapp 入门教程(1):安装篇!的更多相关文章

  1. Systemd 入门教程:实战篇

    Systemd 入门教程:实战篇 上一篇文章,介绍了 Systemd 的主要命令,这篇文章主要介绍如何使用 Systemd 来管理我们的服务,以及各项的含义: 一.开机启动 对于那些支持 System ...

  2. Linux Capabilities 入门教程:概念篇

    原文链接:Linux Capabilities 入门教程:概念篇 Linux 是一种安全的操作系统,它把所有的系统权限都赋予了一个单一的 root 用户,只给普通用户保留有限的权限.root 用户拥有 ...

  3. 【转帖】Systemd 入门教程:命令篇

    Systemd 入门教程:命令篇  Copy From http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html 感觉 ...

  4. Linux 命令详解(八)Systemd 入门教程:实战篇

    Systemd 入门教程:实战篇 http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-part-two.html

  5. Linux 命令详解(七)Systemd 入门教程:命令篇

    Systemd 入门教程:命令篇http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html

  6. (转)Systemd 入门教程:命令篇

    Systemd 入门教程:命令篇 原文:http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html Systemd 入门 ...

  7. DataVeryLite入门教程(二) Entity篇

    DataVeryLite 是基于.net 4.0的数据库持久化ORM框架. 目前支持的数据库有Sqlserver,Mysql,Oracle,Db2,PostgreSql,Sqlite和Access. ...

  8. ActiveReports 报表控件官方中文入门教程 (1)-安装、激活以及产品资源

    本系列文章主要是面向初次接触 ActiveReports 产品的用户,可以帮助您在三天之内轻松的掌握ActiveReports控件的基本使用方法,包括安装.激活.创建报表.绑定数据源以及发布等内容.本 ...

  9. Fakeapp 入门教程(3):参数篇

    参数可以让软件自由度更高.Fakeapp的参数并不算多,但是也非常使用.本文就讲解下几个重要的参数.参数设置界面可以通过点击SETTINGS打开. 参数修改无需点击保存,一旦修改直接生效. Proce ...

随机推荐

  1. 四则运算 calc()

    它的出现还真的蛮令人惊喜的,很适用于百分比宽度.之前我们有box-sizng,而今又多了一个它,并且,calc的实用性更高.我们可以在border.margin.pading.font-size和wi ...

  2. deep copy and shallow copy

    链接A:浅拷贝就是成员数据之间的一一赋值:把值赋给一一赋给要拷贝的值.但是可能会有这样的情况:对象还包含资源,这里的资源可以值堆资源,或者一个文件..当值拷贝的时候,两个对象就有用共同的资源,同时对资 ...

  3. PHP中文手册1

    1.入门 关于换行 PHP 会在输出时自动删除其结束符 ?>后的一个换行.该功能主要是针对在一个页面中嵌入多段 PHP 代码或者包含了无实质性输出的 PHP 文件而设计,与此同时也造成了一些疑惑 ...

  4. CentOS 6.0 系统 LAMP(Apache+MySQL+PHP)安装步骤

    一.安装 MySQL 首先来进行 MySQL 的安装.打开超级终端,输入: [root@localhost ~]# yum install mysql mysql-server 安装完毕,让 MySQ ...

  5. 前端JS电商放大镜效果

    前端JS电商放大镜效果: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...

  6. iOS-加载数据的实现-MJRefresh

    使用CocoaPods加载三方库: pod 'MJRefresh' MJRefresh类结构图: 具体实现方法和效果图: The drop-down refresh 01-Default self.t ...

  7. 【迷你微信】基于MINA、Hibernate、Spring、Protobuf的即时聊天系统:6.技术简介之Protobuf

    欢迎阅读我的开源项目<迷你微信>服务器与<迷你微信>客户端 protocolbuffer(以下简称Protobuf)是google 的一种数据交换的格式,它独立于语言,独立于平 ...

  8. 更新浏览器,导致编写脚本报错Message: Unable to find a matching set of capabilities

    卸载更新浏览器后,所编写的脚本无法运行,报如下的错误:selenium.common.exceptions.WebDriverException: Message: Unable to find a ...

  9. Get query parameter from url

    URL = { getUrlParams: function ( name, url ) { if (!url) url = window.location.href; name = name.rep ...

  10. C++ vector容器类型的用法及注意

    转自http://www.cnblogs.com/charley_yang/archive/2010/12/11/1903040.html vector类为内置数组提供了一种替代表示,与string类 ...