解锁视频换脸:掌握ReActor与RIFE,成就专业视频编辑

CN
ComfyUI.org
2025-03-19 10:44:03

解锁 AI 驱动的人脸替换功能,采用 ReActor 和 RIFE 模型,实现无缝且高质量的效果。探索使用场景和关键组件。

使用场景
Portrait
适用场景
Portrait
关键节点
Reactor
显存
中等显存(12–16GB)
阅读时间
8 分钟
更多 Portrait 工作流

工作流概览

解锁 AI 驱动的人脸替换功能,采用 ReActor 和 RIFE 模型,实现无缝且高质量的效果。探索使用场景和关键组件。

内容类型: Workflow

主要用途: Download

所需节点

  • Reactor

配置说明

  • 打开工作流模板前,请先安装所需模型。
  • 推荐硬件:中等显存(12–16GB)。

🟢 1️⃣ 工作流概述

m8fsq0znwx57na8xl3fb0bb9afe5d2e7ef112dfae081f2b8b1eb2c7ee1ad049508ef5c7782399223908.jpg

作用与目的:
该工作流用于将视频中的人物人脸替换为目标人脸,同时保持原视频的背景、动作和音频。它结合了 ReActor 人脸替换、RIFE 插帧 和 视频合成工具,实现了高质量的视频换脸。

主要功能:

  • 将视频人物人脸替换为指定图像中的人脸

  • 使用 RIFE VFI 插帧平滑过渡,提升换脸视频的流畅性

  • 合成音视频,生成最终换脸视频

适用场景:

  • 短视频创作与换脸特效

  • 视频换脸修复与增强

  • AI 换脸测试与研究


🔥 2️⃣ 核心模型

✅ ReActor FaceSwap 模型

  • 模型名称:inswapper_128.onnx

  • 功能:ReActor 是一款基于 ONNX 格式的人脸替换模型,可以将目标人脸融合到源视频人物上,保留头发和光照细节

  • 依赖组件:

    • retinaface_resnet50:检测面部特征点

    • GPEN-BFR-512.onnx:面部增强模型,优化换脸细节

✅ RIFE 插帧模型

  • 模型名称:rife47.pth

  • 功能:RIFE 是一种基于光流估计的视频插帧模型,通过插入中间帧来使换脸视频更加平滑流畅


⚙️ 3️⃣ 组件说明

1️⃣ VHS_LoadVideo

  • 功能:加载源视频,并将视频拆分为帧,同时提取音频

  • 参数:

    • force_rate:强制帧率,默认 25fps

    • custom_width/custom_height:自定义分辨率(默认 720x1280)

    • frame_load_cap:限制加载的最大帧数

    • select_every_nth:帧选择率,例如每隔 2 帧读取一次

  • 输出:视频帧图像、音频流

  • 安装方法:

    • 该节点属于 ComfyUI-VideoHelperSuite 插件,安装方式:

    • git clone https://github.com/ltdrdata/ComfyUI-VideoHelperSuite.git


2️⃣ LoadImage

  • 功能:加载目标人脸图像

  • 输出:目标人脸图像

  • 作用:为人脸替换提供目标参考

  • 参数:

    • 文件格式支持:.png.jpg


3️⃣ ReActorFaceSwap

  • 功能:执行人脸替换,将目标人脸应用到视频人物

  • 参数:

    • inswapper_128.onnx:人脸替换模型

    • retinaface_resnet50:面部检测模型

    • GPEN-BFR-512.onnx:面部增强模型

    • face_boost:面部修复增强

  • 输出:替换后的视频帧图像

  • 安装方法:

    • 该节点属于 ComfyUI-ReActor-Node 插件,安装方式:

    • git clone https://github.com/dustysys/ComfyUI-ReActor-Node.git


4️⃣ RIFE VFI

  • 功能:对换脸后的视频帧进行插帧处理,使视频流畅

  • 参数:

    • rife47.pth:插帧模型

    • 倍速系数:帧率倍增,默认 2 倍

  • 输出:插帧后的视频帧

  • 安装方法:

    • 该节点属于 ComfyUI-Frame-Interpolation 插件,安装方式:

    • git clone https://github.com/mediapipe/ComfyUI-Frame-Interpolation.git


5️⃣ VHS_VideoCombine

  • 功能:将插帧后的图像与原视频音频合成,输出最终视频

  • 参数:

    • frame_rate:合成视频的帧率,默认为 25fps

    • format:输出视频格式,默认 h264-mp4

    • crf:视频压缩质量(越低质量越高),默认 19

  • 输出:生成的视频文件

  • 安装方法:

    • 该节点属于 ComfyUI-VideoHelperSuite 插件


🔨 4️⃣ 工作流结构

该工作流分为以下主要分组:

🟡 Group 1:视频与人脸加载

  • 组件:VHS_LoadVideo + LoadImage

  • 作用:加载原始视频和目标人脸图像

  • 输出:视频帧图像、音频流、人脸图像


🟢 Group 2:人脸替换

  • 组件:ReActorFaceSwap

  • 作用:将目标人脸替换到视频人物上

  • 输出:换脸后的视频帧


🔵 Group 3:插帧处理

  • 组件:RIFE VFI

  • 作用:对换脸后的视频帧进行插帧,使视频流畅

  • 输出:插帧后的视频帧


🟣 Group 4:视频合成

  • 组件:VHS_VideoCombine

  • 作用:将图像序列与原视频音频合成

  • 输出:最终换脸视频


🔍 5️⃣ 输入与输出

✅ 输入参数:

  • 视频文件:原始视频文件

  • 人脸图像:用于替换的视频目标人脸

  • 分辨率:可自定义输出分辨率

  • 帧率:默认 25fps


✅ 输出结果:

  • 换脸视频:带音频且流畅的换脸视频

  • 格式:MP4 (H.264)


⚠️ 6️⃣ 注意事项

  • 硬件需求:

    • 建议使用 >=12GB VRAM 的显卡以获得更快的处理速度

  • 生成时间:

    • 插帧和人脸替换阶段较为耗时,生成时间取决于视频长度和分辨率

  • 模型兼容性:

    • 确保所有插件与模型版本一致,避免加载错误

  • 优化建议:

    • 将帧数上限设置为合适值,防止大视频加载过慢

    • 插帧倍数可调整以控制生成速度与流畅度

常见问题