侧边栏壁纸
博主头像
AI研究僧

hycj89@163.com

  • 累计撰写 1,899 篇文章
  • 累计创建 179 个标签
  • 累计收到 1 条评论
标签搜索

目 录CONTENT

文章目录

roop开源免费视频换脸工具安装使用

AI研究僧
2023-07-28 / 0 评论 / 0 点赞 / 845 阅读 / 1,170 字

简介

roop开源免费一键视频换脸工具,大大简化了换脸的操作过程。虽然结果还略有不足,但好在简单,且快,无需自己训练,只需要一张面部图片,一段视频就可操作。
原图
target
生成图
output

安装

建议直接使用大佬提供的一键安装包,如喜欢折腾,再看下边的内容。

该包制作者也是下方colab项目的作者,参考作者提供的文档:https://www.tonyisstark.com/1443.html

google colab

这里可以直接借助另个项目:https://github.com/dream80/roop_colab,已有大佬将构建流程搭建好,拿来直接用就行。
进入 https://github.com/dream80/roop_colab/blob/main/roop_v1.ipynb ,点击open in colab根据流程执行即可

进入colab后可将项目拷贝到自己的云硬盘中,之后开始运行,该项目中步骤清晰易懂

摘录如下:

# 克隆源代码
!git clone https://github.com/s0md3v/roop.git
!git clone https://github.com/dream80/roop_colab.git
# 进入项目
%cd /content/roop
Version = "v1.1.0" #@param ["v1.0.1","v1.1.0"]
vdict = {
    "v1.0.1": "773ce17897cd6507d1ac17132ccc64ff6b6f26cb",
    "v1.1.0": "3d02b267663e4badc5c7936d5295effcae3dfbc0",
}
commit=vdict.get(Version, "Invalid Version")
vcmd= f"checkout {commit}"
!git $vcmd

# 安装依赖
!pip install -r requirements.txt  # 安装过程有红色警告不用担心
#!pip install onnxruntime-gpu==1.15.0

# 准备素材,定义人脸图片路径,要换脸的视频路径,以及换脸完成后的输出路径,其中/content/roop_colab/不要修改,后边的路径可根据自己的文件名进行修改,修改后要再次运行这段代码块
source = "/content/roop_colab/1.jpg" #@param {type:"string"}
target = "/content/roop_colab/2.mp4" #@param {type:"string"}
output = "/content/roop_colab/out.mp4" #@param {type:"string"}

# 开始
Device = "cuda" #@param ["cuda", "cpu"]

Processor = "face_swapper" #@param ["face_swapper face_enhancer", "face_swapper","face_enhancer"]

VideoEncoder = "libx264" #@param ["libx264", "libx265","ibvpx-vp9"]

VideoQuality = "18" #@param {type:"string"}

KeepFPS = False #@param {type:"boolean"}
KeepAudio = True #@param {type:"boolean"}
KeepFrames = False #@param {type:"boolean"}
ManyFaces = False #@param {type:"boolean"}

KeepFPS ="--keep-fps" if KeepFPS==True else ""
KeepAudio ="--keep-audio" if KeepAudio==True else ""
KeepFrames ="--keep-frames" if KeepFrames==True else ""
ManyFaces ="--many-faces" if ManyFaces==True else ""

cmd = f"run.py --execution-provider {Device} -s {source} -t {target} -o {output} --frame-processor {Processor} --video-encoder {VideoEncoder} --video-quality {VideoQuality} {KeepFPS} {KeepAudio} {KeepFrames} {ManyFaces}"
print("cmd:"+cmd)
!python $cmd

以上可直接在colab中执行。测试过程中有些视频发现不会发生换脸,目前还没搞清楚原因,如果发现没有输出视频,换一个视频再试试。

本地安装

作者提到在本地安装后,可能运行会很慢

基础安装
环境要求
python (3.10 recommended)
pip
git
ffmpeg
visual studio 2022 runtimes (windows)

安装步骤

git clone https://github.com/s0md3v/roop
# 进入roop目录
pip install -r requirements.txt  # 这一步作者推荐使用虚拟环境(venv)安装
python run.py  # 首次运行会下载模型,耗费时间,对国内可能不友好,当然能够使用colab的这些都不是问题

显卡加速

如果拥有牛逼的 GPU 并可以解决安装过程中的各种问题,那么完成基本安装后,则可以选择安装这里的内容,从而显著提高运行速度。

# 1、安装 [CUDA 工具包 11.8](https://developer.nvidia.com/cuda-11-8-0-download-archive)

# 2、安装依赖项:
pip uninstall onnxruntime onnxruntime-gpu  # 如之前安装过,先卸载
pip install onnxruntime-gpu==1.15.1

# 3、启动
python run.py --execution-provider cuda

这里仅写cuda 的方案,其他如CoreML、DirectML 、OpenVINO参考文档实现

使用

执行 python run.py 命令将启动GUI窗口

左侧选择人脸,右侧选择视频,点击start,选择输出目录,之后等待执行即可。

也可以使用命令行模式,参考github

除了以上方式外,作者还提供了StableDiffusion的插件供使用,详见sd-webui-roop

注意事项

该项目主要目的是帮助艺术家完成诸如为自定义角色制作动画或使用角色作为服装模型等任务,不要将其用到不道德的地方,包括但不限于裸露,敏感材料,战争镜头等。

相关链接

https://github.com/s0md3v/roop
https://github.com/s0md3v/roop/wiki/1.-Installation
https://github.com/dream80/roop_colab
https://github.com/s0md3v/sd-webui-roop

博主关闭了所有页面的评论