faceswap安装说明
Installing Faceswap
- Installing Faceswap
- Prerequisites
- Important before you proceed
- General Install Guide
- Windows Install Guide
Prerequisites预设
Machine learning essentially involves a ton of trial and error. You're letting a program try millions of different settings to land on an algorithm that sort of does what you want it to do. This process is really really slow unless you have the hardware required to speed this up.
机器学习包含多种多样的尝试和错误(误差)。你让一个程序尝试百万种不同的设置来加载在一个你希望的算法上。使它正确的执行。这个过程非常非常慢,除非你有所需的硬件使之加速。
The type of computations that the process does are well suited for graphics cards, rather than regular processors. It is pretty much required that you run the training process on a desktop or server capable GPU. Running this on your CPU means it can take weeks to train your model, compared to several hours on a GPU.
这种类型的计算很适合图像显卡,而非常规的处理器。非常有必要在一个桌面或者服务器移动GPU上运行训练过程。在你的CPU上运行这个意味着它可能花费几周时间来训练你的模型,而在GPU上可能是几小时。
Hardware Requirements硬件需求
TL;DR: you need at least one of the following:你需要以下至少一个:
- A powerful CPU强大的CPU
- Laptop CPUs can often run the software, but will not be fast enough to train at reasonable speeds电脑CPU通常可以运行这个软件,但是可能不够快。
- A powerful GPU强大的GPU
- Currently only Nvidia GPUs are supported. AMD graphics cards are not supported. This is not something that we have control over. It is a requirement of the Tensorflow library.目前只有Nvidia GPU支持。AMD显卡不支持。这不是我们能够改变的。因为它需要用到Tensorflow库。
- The GPU needs to support at least CUDA Compute Capability 3.0 or higher. To see which version your GPU supports, consult this list: https://developer.nvidia.com/cuda-gpus Desktop cards later than the 7xx series are most likely supported.GPU需要支持至少CUDA Compute Capability 3.0以上。要看你的GPU支持哪个版本,查询这个列表:https://developer.nvidia.com/cuda-gpus 。比7xx系列晚的Destop卡最可能支持。
- A lot of patience十足的耐心。
Supported operating systems支持的操作系统
- Windows 10 Windows 7 and 8 might work. Your milage may vary。Win10 Win7 Win8可能可以工作。但是可能麻烦一些。
- Linux Most Ubuntu/Debian or CentOS based Linux distributions will work. Linux大多数基于Ubuntu/Debian或CentO S的Linux分支可以工作。
- macOS GPU support on macOS is limited due to lack of drivers/libraries from Nvidia. 由于缺少Nvidia的驱动程序/库,MacOS对MacOS的GPU支持有限
Alternatively there is a docker image that is based on Debian.
Important before you proceed
In its current iteration, the project relies heavily on the use of the command line, although a gui is available. if you are unfamiliar with command line tools, you may have difficulty setting up the environment and should perhaps not attempt any of the steps described in this guide. This guide assumes you have intermediate knowledge of the command line.
The developers are also not responsible for any damage you might cause to your own computer.
General Install Guide
Installing dependencies
Python >= 3.2
virtualenv and virtualenvwrapper may help when you are not using docker.
If you are using an Nvidia graphics card You should install CUDA (https://developer.nvidia.com/cuda-zone) and CUDNN (https://developer.nvidia.com/cudnn). If you do not plan to build Tensorflow yourself, make sure you install no higher than version 9.0 of CUDA and 7.0.x of CUDNN
dlib is required for face recognition and is compiled as part of the setup process. You will need the following applications for your os to successfully install dlib (nb: list may be incomplete. Please raise an issue if another prerequisite is required for your OS):
- Windows: Visual Studio 2015, CMake v3.8.2
- Linux: build-essential, cmake
- macOS: xquartz
Getting the faceswap code
Simply download the code from http://github.com/deepfakes/faceswap - For development it is recommended to use git instead of downloading the code and extracting it.
For now, extract the code to a directory where you're comfortable working with it. Navigate to it with the command line. For our example we will use ~/faceswap/
as our project directory.
Setup
Enter the folder that faceswap has been downloaded to and run:
python setup.py
If setup fails for any reason you can still manually install the packages listed within requirements.txt
About some of the options
- CUDA: For acceleration. Requires a good nVidia Graphics Card (which supports CUDA inside)
- Docker: Provide a ready-made image. Hide trivial details. Get you straight to the project.
- nVidia-Docker: Access to the nVidia GPU on host machine from inside container.
CUDA with Docker in 20 minutes.
INFO The tool provides tips for installation
and installs required python packages
INFO Setup in Linux 4.14.39-1-MANJARO
INFO Installed Python: 3.6.5 64bit
INFO Installed PIP: 10.0.1
Enable Docker? [Y/n]
INFO Docker Enabled
Enable CUDA? [Y/n]
INFO CUDA Enabled
INFO 1. Install Docker
https://www.docker.com/community-edition
2. Install Nvidia-Docker & Restart Docker Service
https://github.com/NVIDIA/nvidia-docker
3. Build Docker Image For Faceswap
docker build -t deepfakes-gpu -f Dockerfile.gpu .
4. Mount faceswap volume and Run it
# without gui. tools.py gui not working.
nvidia-docker run --rm -it -p 8888:8888 \
--hostname faceswap-gpu --name faceswap-gpu \
-v /opt/faceswap:/srv \
deepfakes-gpu
# with gui. tools.py gui working.
## enable local access to X11 server
xhost +local:
## enable nvidia device if working under bumblebee
echo ON > /proc/acpi/bbswitch
## create container
nvidia-docker run -p 8888:8888 \
--hostname faceswap-gpu --name faceswap-gpu \
-v /opt/faceswap:/srv \
-v /tmp/.X11-unix:/tmp/.X11-unix \
-e DISPLAY=unix$DISPLAY \
-e AUDIO_GID=`getent group audio | cut -d: -f3` \
-e VIDEO_GID=`getent group video | cut -d: -f3` \
-e GID=`id -g` \
-e UID=`id -u` \
deepfakes-gpu
5. Open a new terminal to interact with the project
docker exec faceswap-gpu python /srv/tools.py gui
A successful setup log, without docker.
INFO The tool provides tips for installation
and installs required python packages
INFO Setup in Linux 4.14.39-1-MANJARO
INFO Installed Python: 3.6.5 64bit
INFO Installed PIP: 10.0.1
Enable Docker? [Y/n] n
INFO Docker Disabled
Enable CUDA? [Y/n]
INFO CUDA Enabled
INFO CUDA version: 9.1
INFO cuDNN version: 7
WARNING Tensorflow has no official prebuild for CUDA 9.1 currently.
To continue, You have to build your own tensorflow-gpu.
Help: https://www.tensorflow.org/install/install_sources
Are System Dependencies met? [y/N] y
INFO Installing Missing Python Packages...
INFO Installing tensorflow-gpu
INFO Installing pathlib==1.0.1
......
INFO Installing tqdm
INFO Installing matplotlib
INFO All python3 dependencies are met.
You are good to go.
Run the project
Once all these requirements are installed, you can attempt to run the faceswap tools. Use the -h
or --help
options for a list of options.
python faceswap.py -h
or run with gui
to launch the GUI
python faceswap.py gui
Proceed to ../blob/master/USAGE.md
Notes
This guide is far from complete. Functionality may change over time, and new dependencies are added and removed as time goes on.
If you are experiencing issues, please raise them in the faceswap-playground repository instead of the main repo.
Windows Install Guide
Setting up Faceswap can seem a little intimidating to new users, but it isn't that complicated, although a little time consuming. It is recommended to use Linux where possible as Windows will hog about 20% of your GPU Memory, making Faceswap run a little slower, however using Windows is perfectly fine and 100% supported.
Prerequisites
Microsoft Visual Studio 2015
Important Make sure to downoad the 2015 version of Microsoft Visual Studio
Download and install Microsoft Visual Studio 2015 from: https://go.microsoft.com/fwlink/?LinkId=532606&clcid=0x409
On the install screen:
- Select "Custom" then click "Next"
- Uncheck all previously checked options
- Expand "Programming Languages" and select "Visual C++"
- Select "Next" and "Install"
Cuda
GPU Only If you do not have an Nvidia GPU you can skip this step.
At the time of writing Tensorflow (version 1.12) only supports Cuda up to version 9.0, but check https://www.tensorflow.org/install/gpu for the latest supported version. It is crucial that you download the correct version of Cuda.
Download and install the correct version of the Cuda Toolkit from: https://developer.nvidia.com/cuda-toolkit-archive
NB: Make a note of the install folder as you'll need to access it in the next step.
cuDNN
GPU Only If you do not have an Nvidia GPU you can skip this step.
As with Cuda you will need to install the correct version of cuDNN that the latest Tensorflow supports. At the time of writing this is Tensorflow v1.12 which supports cuDNN version 7.2, but check https://www.tensorflow.org/install/gpu for the latest supported version.
Download cuDNN from https://developer.nvidia.com/cudnn. You will need to create an account with Nvidia.
At the bottom of the list of latest cuDNN release will be a link to "Archived cuDNN Releases":
Select this and choose the latest version of cuDNN that supports the version of Cuda you installed and has a minor version greater than or equal to the latest version that Tensorflow supports. (Eg Tensorflow 1.12 supports Cuda 9.0 and cuDNN 7.2. There is not an archived version of cuDNN 7.2 for Cuda 9.0, so select cuDNN version 7.3)
- Open the zip file
- Extract all of the files and folders into your Cuda folder (It is likely to be located in
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA
):
CMake
Install the latest stable release of CMake from https://cmake.org/download/. (Scroll down the page for Latest Releases and select the relevant Binary distribution installer for your OS).
When installing CMake make sure to enable the option to CMake to the system path:
Anaconda
Download and install the latest Python 3 Anacconda from: https://www.anaconda.com/download/. Unless you know what you are doing, you can leave all the options at default.
Git
Download and install Git for Windows: https://git-scm.com/download/win. Unless you know what you are doing, you can leave all the options at default.
Setup
Reboot your PC, so that everything you have just installed gets registered.
Anaconda
Set up a virtual environment
- Open up Anaconda Navigator
- Select "Environments" on the left hand side
- Select "Create" at the bottom
- In the pop up:
- Give it the name: faceswap
- IMPORTANT: Select python version 3.5
- Hit "Create" (NB: This may take a while as it will need to download Python 3.5)
Entering your virtual environment
To enter the virtual environment:
- Open up Anaconda Navigator
- Select "Environments" on the left hand side
- Hit the ">" arrow next to your faceswap environment and select "Open Terminal"
Faceswap
- If you are not already in your virtual environment follow these steps
- Get the Faceswap repo by typing:
git clone https://github.com/deepfakes/faceswap.git
- Enter the faceswap folder:
cd faceswap
Easy install
- Enter
python setup.py
and follow the prompts.
If you have issues/errors follow the Manual install steps below.
Manual install
If dlib failed to install you can follow the steps to manually install dlib.
Once dlib is installed follow these steps:
- Install tkinter (required for the GUI) by typing:
conda install tk
- Install requirements:
pip install -r requirements.txt
- Install Tensorflow (either GPU or CPU version depending on your setup):
- GPU Version:
pip install tensorflow-gpu
- Non GPU Version:
pip install tensorflow
- GPU Version:
Running Faceswap
- If you are not already in your virtual environment follow these steps
- Enter the faceswap folder:
cd faceswap
- Enter the following to see the list of commands:
python faceswap.py -h
or enterpython faceswap.py gui
to launch the GUI
Create a desktop shortcut
A desktop shortcut can be added to easily launch staight into the faceswap GUI:
- Open Notepad
- Paste the following:
%USERPROFILE%\Anaconda3\envs\faceswap\python.exe %USERPROFILE%/faceswap/faceswap.py gui
- Save the file to your desktop as "faceswap.bat"
Updating faceswap
It's good to keep faceswap up to date as new features are added and bugs are fixed. To do so:
- If you are not already in your virtual environment follow these steps
- Enter the faceswap folder:
cd faceswap
- Enter the following
git pull --all
- Once the latest version has downloaded, make sure your requirements are up to date:
pip install --upgrade -r requirements.txt
Dlib
You should only need to follow these steps if you want the latest Dlib code or the process was unable to install Dlib for you.
For reasons outside of our control, this is the trickiest part of the process, and most of the prerequisites you installed are to support just Dlib. It is recommended to build Dlib from source for 3 main reasons:
- To get the latest version
- Enable GPU Support in Dlib
- To prevent yourself running into a whole host of issues later in the process.
If you are not bothered about having GPU support or the latest version, scroll to the end of this section for a simple one-liner to install the CPU version of Dlib.
Build Latest Dlib with GPU Support
- If you are not already in your virtual environment follow these steps
- In the terminal type:
git clone https://github.com/davisking/dlib.git
- Enter the dlib folder:
cd dlib
- Add Visual Studio to your path by typing:
SET PATH=%PATH%;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin
- Enter:
python setup.py -G "Visual Studio 14 2015" install --yes USE_AVX_INSTRUCTIONS --yes DLIB_USE_CUDA --clean
This will build and install dlib for you. It is worth backing up the generated .egg file somewhere so that you can re-install it if you ever need to rather than having to re-compile:
- From within the dlib folder copy the file named
dlib-xx.yy.zz-py3.5-win-amd64.egg
to somewhere safe - If you ever need to install it again, then from within your virtual environment enter:
python -m easy_install <path to saved .egg>
Once Dlib is built, you can remove Visual Studio and CMake from your PC.
Easy install of Dlib without GPU Support
NB: Don't do this if you have already compiled Dlib with GPU support.
- If you are not already in your virtual environment follow these steps
- In the terminal type:
conda install -c conda-forge dlib
faceswap安装说明的更多相关文章
- 程序员体验AI换脸就不要用ZAO了,详解Github周冠军项目Faceswap的变脸攻略
本文链接:https://blog.csdn.net/BEYONDMA/article/details/100594136 上个月笔者曾在<银行家杂志>发文传统银行如何引领开放 ...
- faceswap使用手冊
cd faceswap cd faceswap-master python faceswap.py gui Notice: This repository is not operated or mai ...
- OpenFaceswap 入门教程(1):软件安装篇
---恢复内容开始--- 众多换脸软件中,DeepFaceLab其实是安装和使用最方便,更新最快的,但是由于其没有可是化界面,对于很新手来说,可能入门还是有点难度.那么今天就来介绍一款操作极其直观和简 ...
- faceswap深度学习AI实现视频换脸详解
给大家介绍最近超级火的黑科技应用deepfake,这是一个实现图片和视频换脸的app.前段时间神奇女侠加尔盖朵的脸被换到了爱情动作片上,233333.我们这里将会从github项目faceswap开始 ...
- AI换脸实战教学(FaceSwap的使用)---------第一步Extration:提取人脸。
市面上有多款AI换脸的方法,笔者这里节选了Github那年很火的开源项目FaceSwap: (很早就实践了,但是忘记记录啦hhh,请勿用于不正当用途哦) 做了一篇详细教学,包括配置,参数设置,换脸效果 ...
- docker——容器安装tomcat
写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...
- 网络原因导致 npm 软件包 node-sass / gulp-sass 安装失败的处理办法
如果你正在构建一个基于 gulp 的前端自动化开发环境,那么极有可能会用到 gulp-sass ,由于网络原因你可能会安装失败,因为安装过程中部分细节会到亚马逊云服务器上获取文件.本文主要讨论在不变更 ...
- Sublime Text3安装JsHint
介绍 Sublime Text3使用jshint依赖Nodejs,SublimeLinter和Sublimelinter-jshint. NodeJs的安装省略. 安装SublimeLinter Su ...
- Fabio 安装和简单使用
Fabio(Go 语言):https://github.com/eBay/fabio Fabio 是一个快速.现代.zero-conf 负载均衡 HTTP(S) 路由器,用于部署 Consul 管理的 ...
随机推荐
- UIButton 点击事件传参数
#import <objc/runtime.h> UIButton *btn = // create the button objc_setAssociatedObject(btn, &q ...
- UGUI RectTransform
RectTransform解析 当 Anchor 在同一点时,显示的是物体的座标与大小Pos X.Pos Y.Width.Height ,当 Anchor 不在同一点时(此时会形成矩形),显示的会是 ...
- Process子类
创建新的进程还能够使用类的方式,可以自定义一个类,继承Process类,每次实例化这个类的时候,就等同于实例化一个进程对象,请看下面的实例: from multiprocessing import P ...
- C语言高级-结构,共用体,文件,链表
C语言结构 标准声明方式 struct student{ int age; char sex; }; 这个可以在main函数中定义: struct student ...
- ldd3 源码相关问题参见
参考地址: http://www.verydemo.com/demo_c92_i235635.html http://blog.csdn.net/silvervi/article/details/64 ...
- HttpClientUtil 工具类
/* * * * FileName: s.java * * Description:TODO(用一句话描述该文件做什么) * * Created: jiangzhanghong 2017年11月14日 ...
- 微擎系统 微信支付 get_brand_wcpay_request:fail
支付授权目录问题,有一个是域名加app的
- apache的80端口被占用
1.netstart -ano | findstr "80":查看80端口是否被占用,并找出对应的pid 2.关掉pid对应的进程
- Debian 利用 iso 镜像完全离线更新 apt-cdrom
1 目的 在日常的 linux 服务器管理中,出于某些考虑,服务器要求与 Internet 完全隔离. 这使得我们对系统的更新和软件包的升级感到无比头疼. 下面介绍的这种方法,采用 ISO 文件,进行 ...
- OSGi 系列(十)之 Blueprint
OSGi 系列(十)之 Blueprint blueprint 是 OSGi 的一个规范,类似于 spring 的 IOC,用来处理 OSGi 的动态特性,可以大大简化服务的使用. blueprint ...