FaceFusion 3.5.0 人脸融合流水线:从启动到出片只需三步
2026/9/24 0:17:33 网站建设 项目流程

FaceFusion 3.5.0 人脸融合流水线:从启动到出片只需三步

【免费下载链接】facefusionIndustry leading face manipulation platform项目地址: https://gitcode.com/GitHub_Trending/fa/facefusion

FaceFusion 是一个开源的人脸融合平台,负责把一张源人脸换进视频或图片,并顺带完成增强、修边和导出。这篇文章按「输入 → 换脸 → 增强 → 输出」这条流水线,把每个环节由哪个模块负责、关键参数在哪调,一次讲清楚。

快速上手:3 步跑通第一次人脸融合 🛠️

  1. 拿到代码并安装依赖:

    git clone https://gitcode.com/GitHub_Trending/fa/facefusion python install.py
  2. 启动界面:python facefusion.py run。首次启动会提示下载模型,让它把默认模型拉完即可。

  3. 在界面里分别选定 source(源人脸照片)和 target(目标视频),勾上 face_swapper,点运行。第一次不追求质量,先确认整条链路能出片。

全部参数都能落进 facefusion.ini,调好一组后就不用每次重填。

流水线拆解:输入、换脸、增强、输出各管什么

输入端:把人脸找对、盯住

  • 做的事:在每帧里检测人脸、打关键点、跨帧跟踪,并决定换哪一张脸。
  • 负责模块:face_detector、face_landmarker、face_selector、face_tracker(见 facefusion/ 根目录下的同名文件)。
  • 关键参数:face_detector_model(常用 scrfd 或 many,640x640 规格)、reference_face_distance(参考脸匹配距离)。多人群视频里最该动的是后者。

换脸环节:face_swapper 是主菜

  • 做的事:把源脸特征迁移到目标脸上,替换区域怎么画由掩码决定。
  • 负责模块:facefusion/processors/modules/face_swapper/。
  • 关键参数:
    • face_swapper_model:常用 inswapper_128、hyperswap_1a_256,显存紧可上 inswapper_128_fp16;轻量场景可选 hypermap_v1.256。
    • face_swapper_weight:0~1 之间,控制换脸的"硬度"。
    • 掩码:face_mask_types支持 box、occlusion、area、region 四类;遮挡模型可用 xseg_1/2/3,解析模型可选 bisenet_resnet_18。

增强环节:face_enhancer 负责回血

  • 做的事:把换完后略糊的纹理修细,提升面部清晰度。
  • 负责模块:facefusion/processors/modules/face_enhancer/。
  • 关键参数:face_enhancer_model(gfpgan_1.4、codeformer 等)、face_enhancer_blend(0~100,混合比例)、face_enhancer_weight

输出端:导出与质量

  • 做的事:编码、缩放、混音,生成最终文件或图片。
  • 负责模块:workflows 与 ffmpeg 相关封装,参数集中在output_creation段。
  • 关键参数:output_video_quality(0~100)、output_video_scale(0.25~8.0 倍)、output_video_fps

参数调优:按目标效果直接抄作业

目标效果推荐参数组合预期耗时(短片段参考)
极速预览、直播向inswapper_128(或 hypermap_v1.256)+ 默认 box 掩码,不挂增强3~5 秒
日常均衡、短视频hyperswap_1a_256 + gfpgan_1.4,blend 70~906~10 秒
质量优先、交付向xseg_3 遮挡掩码 + region 分区 + gfpgan_1.4 blend 90,face_swapper_weight0.4~0.6,output_video_quality90 以上15~30 秒

三个最常被动的旋钮:face_swapper_weight调融合硬度,face_enhancer_blend调增强强度,face_mask_blur(0.3~0.7)调边缘过渡。

常见问题排查:边缘锯齿、显存溢出都在这

现象:边缘锯齿、轮廓发硬 → 原因 → 解决原因:只用了 box 掩码,切边是直的。解决:在face_mask_types里补上 occlusion 或 region,face_mask_blur放到 0.3~0.7,遮挡模型换 xseg_3。

现象:换完肤色偏色 → 原因 → 解决原因:face_swapper_weight拉满,源脸色彩压过了目标环境光。解决:weight 回落到 0.4~0.6;若开了增强,把face_enhancer_blend从 90 往 70 降一档再比。

现象:显存溢出、中途崩溃 → 原因 → 解决原因:模型规格和显存档位不匹配。解决:video_memory_strategy切 strict;换 inswapper_128_fp16;execution_thread_count从默认往 4~6 收;执行提供商用 tensorrt 或 cuda。

现象:多人视频里换错人、频繁丢失 → 原因 → 解决原因:参考脸距离阈值太宽。解决:reference_face_distance收到 0.2~0.4,配合 face_selector 的参考位置(左上/右上等)锁定目标;检测漏脸时把face_detector_size升到 640x640。

现象:出片发糊、放大看细节碎 → 原因 → 解决原因:只换了脸没增强,或导出质量低。解决:挂上 face_enhancer,output_video_quality提到 90 以上,必要时开face_swapper_pixel_boost给换脸区域补采样。

硬件与性能建议:按显存档位选配置

设备档位执行提供商模型建议记忆策略
纯 CPU / 核显cpuinswapper_128,检测 640x640,线程 4~8strict
显存 6GB 以下cudainswapper_128_fp16 + gfpgan_1.4strict
显存 8~12GBtensorrt / cudahyperswap_1a_256 + gfpgan_1.4,可加 xseg_3strict 起步
显存 16GB 及以上tensorrt256 系换脸 + 增强 + 遮挡掩码全套按需放宽

没有 GPU 也能用,但增强和 xseg 遮挡掩码都会明显拖慢速度,建议先用极速档验证参数,再在好机器上放大跑。

适用场景与下一步

  • 短视频里换主角脸、统一出镜人
  • 老片修复类内容:换脸 + gfpgan_1.4 增强
  • 批量素材处理:用batch-run命令配合 job 系列子命令排队跑
  • 先验速度再定参数:跑一遍 benchmark,选 720p 档位测单轮耗时即可

更多细节看仓库里的 README.md 和 docs/,默认参数样例直接对照 facefusion.ini。

【免费下载链接】facefusionIndustry leading face manipulation platform项目地址: https://gitcode.com/GitHub_Trending/fa/facefusion

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询