Roop安装使用
《roop》只需要一张人脸的就能把一个视频中的人脸进行替换,不需要进行任何训练。
2023-09-08补充:
好吧,项目停止维护了,但是还能用 仓库地址 (opens new window)
# 准备环境
roop支持在 Linux
,MacOS
,Winodows
系统上运行。
下面只介绍windows环境下使用,其他系统自行查看文档 (opens new window)。
在使用roop之前,你需要先安装如下软件
- python
- git
- FFmpeg
- VisualStudio2020
如果没有的话使用如下命令:
注意
下面命令使用到了winget
,如果你没有安装,请查看微软官网文档 (opens new window)。
# 安装python
winget install -e --id Python.Python.3.10
# 安装PIP
python -m ensurepip
# 安装git
winget install -e --id Git.Git
# 安装FFmpeg
winget install -e --id Gyan.FFmpeg
# 安装VisualStudio及相关开发包
winget install -e --id Microsoft.VCRedist.2015+.x64
winget install -e --id Microsoft.VisualStudio.2022.BuildTools --override "--wait --add Microsoft.VisualStudio.Workload.NativeDesktop --includeRecommended"
# 开始
# 下载项目
git clone https://github.com/s0md3v/roop
# 安装依赖
pip install -r requirements.txt
这一步需要等待一会,等待完成后执行
python run.py
等待界面出现就可以愉快的玩耍了。
# 命令参数
当然你也可以用命令行运行roop,毕竟这样显得更帅。 命令行的运行格式为:
python run.py [options]
以下为当前版本所支持的参数:
命令 | 描述 |
---|---|
-h, --help | 显示帮助并退出 |
-s SOURCE_PATH, --source SOURCE_PATH | 要替换的人脸路径 |
-t TARGET_PATH, --target TARGET_PATH | 需要替换人脸的视频路径 |
-o OUTPUT_PATH, --output OUTPUT_PATH | 替换人脸后的视频保存路径 |
--frame-processor FRAME_PROCESSOR [FRAME_PROCESSOR ...] | 帧处理器,默认:face_swapper (可多选: face_swapper, face_enhancer) |
--keep-fps | 保持原视频帧率 |
--keep-frames | 保持原视频帧文件目录 |
--skip-audio | 跳过视频音频 |
--many-faces | 处理多张脸 |
--reference-face-position REFERENCE_FACE_POSITION | 人脸位置参考:用于定位人脸 |
--reference-frame-number REFERENCE_FRAME_NUMBER | 人脸帧数参考:用于定位人脸 |
--similar-face-distance SIMILAR_FACE_DISTANCE | 人脸识别阈值,默认值:0.85。对比人脸的相识度,遇到跳脸现象,可加大阈值 |
--temp-frame-format {jpg,png} | 帧文件图片格式 |
--temp-frame-quality [0-100] | 帧文件质量 |
--output-video-encoder {libx264,libx265,libvpx-vp9,h264_nvenc,hevc_nvenc} | 输出视频编码 |
--output-video-quality [0-100] | 输出视频质量 |
--max-memory MAX_MEMORY | 最大内存(以GB为单位) |
--execution-provider {cpu} [{cpu} ...] | 可用的执行提供程序,默认:cpu ,通常使用cpu和cuda (需要安装相关环境) |
--execution-threads EXECUTION_THREADS | 执行线程数 |
-v, --version | 显示程序的版本号并退出 |
到这里已经可以正常的使用roop了,不过当前使用的是cpu。如果你对执行速度有更高的要求,可以指定execution-provider
加速图像生成
# 加速
roop支持的加速方式有:
- CUDA (Nvidia)
- CoreML (Apple)
- DirectML (Windows)
- OpenVINO (Intel)
我的桌面机使用的是N卡,所以我选择的是Nvidia CUDA加速,如果是其他方式可以查看文档 (opens new window)。
使用CUDA加速需要安装:CUDA Toolkit
和cuDNN for Cuda
,其中下载cuDNN
需要Nvidia账号。
安装时请注意版本,确保和roop兼容。
我的版本信息:
roop 1.3.2
(opens new window)CUDA Toolkit 11.8
(opens new window)cuDNN for Cuda 11.x
(opens new window)
安装完上述软件后执行下载依赖:
pip uninstall onnxruntime onnxruntime-gpu
pip install onnxruntime-gpu==1.15.1
然后就可以使用加速命令了
python run.py --execution-provider cuda
到此roop的安装过程就结束了,快去愉快的玩耍吧。
上次更新: 2024/11/05, 08:29:31