免责声明
这款软件旨在为快速发展的人工智能生成媒体行业做出积极贡献。它可以帮助艺术家完成诸如为自定义角色制作动画或将角色用作服装模特等任务。
该软件的开发者意识到其可能存在的非道德应用,并承诺采取预防措施加以防范。软件内置了检查机制,可防止程序处理不适当的媒体内容,包括但不限于色情、血腥内容、战争镜头等敏感材料。我们将继续在遵守法律和道德的前提下,朝着积极的方向发展这个项目。如果法律要求,该项目可能会被关闭或在输出内容中添加水印。
本软件的用户应当在遵守当地法律的同时负责任地使用。如果使用真实人物的面孔,建议用户获得相关人员的同意,并在在线发布内容时明确说明这是深度伪造。软件开发者不对最终用户的行为负责。
如何安装?
基础版:更可能在你的电脑上运行,但速度会很慢。你可以按照基础安装说明进行操作(通常通过CPU运行)
1.设置你的平台
- python(建议3.10版本)
- pip
- git
- ffmpeg
- visual studio 2022运行时(Windows)
2. 克隆仓库
https://github.com/hacksider/Deep-Live-Cam.git
3. 下载模型
然后将这两个文件放入"models"文件夹
4. 安装依赖
我们强烈建议使用venv
虚拟环境以避免问题。
pip install -r requirements.txt
完成!!! 如果你没有GPU,你应该能够使用python run.py
命令运行roop。请注意,首次运行程序时,它会下载一些模型,这可能会根据你的网络连接速度花费一些时间。
*如果你想使用GPU加速,请继续以下步骤
CUDA执行提供程序(Nvidia)*
-
安装依赖:
pip uninstall onnxruntime onnxruntime-gpu
pip install onnxruntime-gpu==1.16.3
- 如果提供程序可用,使用以下命令:
python run.py --execution-provider cuda
CoreML执行提供程序(Apple Silicon)
- 安装依赖:
pip uninstall onnxruntime onnxruntime-silicon
pip install onnxruntime-silicon==1.13.1
- 如果提供程序可用,使用以下命令:
python run.py --execution-provider coreml
CoreML执行提供程序(Apple Legacy)
- 安装依赖:
pip uninstall onnxruntime onnxruntime-coreml
pip install onnxruntime-coreml==1.13.1
- 如果提供程序可用,使用以下命令:
python run.py --execution-provider coreml
DirectML执行提供程序(Windows)
- 安装依赖:
pip uninstall onnxruntime onnxruntime-directml
pip install onnxruntime-directml==1.15.1
- 如果提供程序可用,使用以下命令:
python run.py --execution-provider directml
OpenVINO™执行提供程序(Intel)
- 安装依赖:
pip uninstall onnxruntime onnxruntime-openvino
pip install onnxruntime-openvino==1.15.0
- 如果提供程序可用,使用以下命令:
python run.py --execution-provider openvino
如何使用?
注意:首次运行此程序时,它会下载一些大小约300MB的模型。
执行python run.py
命令将启动此窗口:
选择一张面孔(包含所需面孔的图片)和目标图片/视频(你想要替换面孔的图片/视频),然后点击Start
。打开文件资源管理器并导航到你选择输出的目录。你会找到一个名为<视频标题>
的目录,在那里你可以实时看到正在被替换的帧。处理完成后,它将创建输出文件。就这么简单。
对于网络摄像头模式
只需按照截图中的点击操作
- 选择一张面孔
- 点击live
- 等待几秒钟(通常需要10到30秒,预览才会出现)
只需使用你喜欢的屏幕捕捉工具(如OBS)进行流媒体直播
注意:如果你想更换面孔,只需选择另一张图片,预览模式会重新启动(所以稍等片刻)。
以下是额外的命令行参数。要了解它们的作用,请查看这个指南。
选项:
-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_enhancer, ...)
--keep-fps 保持原始fps
--keep-audio 保持原始音频
--keep-frames 保留临时帧
--many-faces 处理每个面孔
--video-encoder {libx264,libx265,libvpx-vp9} 调整输出视频编码器
--video-quality [0-51] 调整输出视频质量
--max-memory MAX_MEMORY 最大RAM使用量(GB)
--execution-provider {cpu} [{cpu} ...] 可用执行提供程序(选项: cpu, ...)
--execution-threads EXECUTION_THREADS 执行线程数
-v, --version 显示程序版本号并退出
寻找命令行模式?使用-s/--source参数将使程序以命令行模式运行。
想立即获得下一次更新?
如果你想要最新最棒的构建,或者想看一些新的出色功能,请前往我们的实验分支,体验贡献者们提供的内容。
致谢
- ffmpeg:使视频相关操作变得简单
- deepinsight:为他们的insightface项目提供了一个制作精良的库和模型。
- havok2-htwo:分享网络摄像头的代码
- GosuDRM:为roop解除审查
- 以及所有开发者在这个项目中使用的库背后的贡献。
- 脚注:这最初是roop-cam,在这里查看完整的代码历史。 请注意,代码的基础作者是s0md3v