AI换人脸facefusion项目口型同步API化改造及部署
一. 简介
FaceFusion是一款强大的AI换脸软件,它支持图片、视频以及直播换脸,官方将其称为“下一代脸部交换器和增强器”。FaceFusion的最新版本为2.6.1,这个版本在原有基础上增加了更多的模型和高清算法,显著提升了图片和视频的换脸效果。此外,FaceFusion还新增了三种遮罩功能,有效解决了脸部有物体遮挡时的融合效果差和跳闪问题。该软件拥有大量的模型,包括基础换脸模型、帧着色器模型、帧增强器模型、人脸增强模型以及人脸调试模型,所有模型总数达到44个,模型文件总计超过10GB。
FaceFusion的使用条件包括支持Windows 10或Windows 11操作系统,并且需要NVIDIA GPU(即[CUDA)版本至少为11.8。对于没有NVIDIA显卡的用户,软件也提供了CPU处理模式。安装过程相对简单,只需解压整合包并运行启动程序,然后按照提示操作即可。
FaceFusion的功能特点包括但不限于:
换脸功能:用户可以选择不同的换脸模型,实现高质量的面部替换。
遮罩功能:解决了脸部有物体遮挡时的融合问题,提高了换脸的自然度。
高清修复:提供人脸替换、人脸高清修复和背景高清修复等多种策略,每种策略下包含多个模型可自由切换。
自定义选项:用户可以根据自己的需求调整执行线程、执行队列、最大内存和输出路径等参数。
预览功能:在换脸前可以预览效果,支持自由选择换脸对象和多人换脸。
口型同步:通过Lip Sync技术,实现换脸后的视频中口型的自然同步。
此外,FaceFusion还提供了保姆级教程和免费学习工具,旨在让用户能够轻松上手,实现“换脸自由”,无论是自媒体从业者还是普通用户,都能通过这款软件探索无限创意,创造独一无二的面孔融合艺术作品12。
本项目的目的是在FaceFusion的基础上,使用其口型同步的功能,进一步改造封装,使其能够更高效调用执行,以及部署。
二. 源码分析
-
从程序入口 ./run.py 出发进入 ./facefusion/core.py

-
不难得知,首先会加载配置文档 ./facefusion.ini 的相关参数

-
由于此项目只需使用其口型同步功能,所以需要提前设定 ./facefusion.ini 的相关参数
target_path 需要替换嘴型的视频素材路径 execution_providers 若有CUDA环境设置为cuda,否则cpu execution_thread_count 推理线程数量,值越大占用显存越多,1080ti推荐4 face_selector_mode 若视频素材中包含多个人脸,设置为one,表示只对识别到的第一个人脸对口型 temp_frame_format 视频切片的帧格式,推荐jpg,png output_video_encoder 视频编码器,推荐h264_nvenc,可提高数据处理速度 output_video_preset 若想要提高合成速度,且能忽略微小瑕疵,推荐ultrafast output_video_fps 输出视频数据的帧数,推荐25 frame_processors 帧处理模型,口型同步必选lip_syncer -
当程序完成参数的加载后,进入到 run函数 ,首先检查参数是否配置正确,随即将参数提交到全局变量 facefusion.globals 中方便后续调用,然后进行检查并下载所需模型数据文件,当然,如果已经手动下载添加,可将配置文档skip_download 的值设置为true,从而跳过模型下载,或者使用代理进行下载,否则很慢。最后通过判断headless的值,判断是否为无头模式,否则启动为webui模式,到此初始化工作已完成

三. API改造
- 近期较忙,如有需求请参考GIT: https://gitee.com/xiaofang113/facefusion
四. API部署
相关文章:
AI换人脸facefusion项目口型同步API化改造及部署
一. 简介 FaceFusion是一款强大的AI换脸软件,它支持图片、视频以及直播换脸,官方将其称为“下一代脸部交换器和增强器”。FaceFusion的最新版本为2.6.1,这个版本在原有基础上增加了更多的模型和高清算法,显著提升了图片和视频…...
移动端问题
这里只是做一个记录,不一定大家都会有问题,参考就行 一、页面回弹 苹果有,安卓没有 解决:pages.json下 app-plus { bounce: none} 关闭回弹效果 二、onreachBottom触底生命周期,ios无法触发 修改触底数值:…...
Linux网络——网络初识
目录 1. 认识协议 2. 协议的分层 3. OSI 七层模型 && TCP/IP 五层(四层)模型 4. 网络传输的基本流程 5. 以太网的通信原理 6. 数据的跨网络传播 7. 认识 IP 地址 ① IP 是什么 ② IP 与 MAC 的关系 ③ 为什么需要 IP 在谈及网络之前,我们要先对学…...
从华为到创业公司
我有一个朋友,在华为工作了很长一段时间,一年多前,他从华为出来到了一家创业公司。 周末趁着有时间,我跟他聊了下关于从华为到创业公司的一些问题,总结给大伙看看。 ▎1 在华为工作和在创业公司工作最大的差别是什么呢…...
Vue 组件通信及进阶语法
文章目录 一、scoped 样式冲突二、data 是一个函数三、组件通信1. 父子通信1.1 props 校验1.2 props 比较 data 2. 非父子通信2.1 event bus2.2 provide-inject 四、进阶语法1. v-model 详解2. sync 修饰符3. ref 和 $refs4. $nextTick 一、scoped 样式冲突 注意点:…...
vue文本高亮处理
在vue的v-for循环中处理搜索关键字高亮问题,通过截取文字判断,分成三段拼接起来 <div class"check-list" v-if"shopList.length >0"><a-checkbox change"onChangeShop($event,item)" :checked"checkedL…...
androidstudio入门到放弃配置
b站视频讲解传送门 android_studio安装包:https://developer.android.google.cn/studio?hlzh-cn 下载安装 开始创建hello-world 1.删除缓存 文件 下载gradle文件压缩:gradle-8.9用自己创建项目时自动生成的版本即可,不用和我一样 https://…...
NLP论文速读(谷歌出品)|缩放LLM推理的自动化过程验证器
论文速读|Rewarding Progress: Scaling Automated Process Verifiers for LLM Reasoning 论文信息: 简介: 这篇论文探讨了如何提升大型语言模型(LLM)在多步推理任务中的性能。具体来说,它试图解决的问题是现有的基于结…...
【Linux学习】【Ubuntu入门】1-4 ubuntu终端操作与shell命令1
1.使用快捷键CtrlAltT打开命令终端,或者单击右键点击… 2.常用shell命令 目录信息查看命令:ls ls -a:显示目录所有文件及文件夹,包括隐藏文件,比如以.开头的 ls -l:显示文件的详细信息 ls -al࿱…...
【Qt】Qt在窗口中加载Web界面的方法汇总
1、Qt WebEngine 1)Qt版本:Qt5.4以上; 2)平台要求(https://doc.qt.io/archives/qt-5.9/qtwebengine-platform-notes.html): 例如:Windows下只能使用 MSVC 编译器,不支持MinGW编译器,会报错(: error: Unknown module(s) in QT: webenginewidgets) 并且不能用在Qt编…...
Java集合框架之Collection集合遍历
引言 在Java编程中,集合(Collection)框架是处理对象集合的核心工具。它提供了一套统一的接口和类来存储和操作对象集合。遍历集合是日常开发中的一项基本任务,本文将深入探讨Java Collection集合的遍历方法,并提供实际…...
基于STM32的智能充电桩:集成RTOS、MQTT与SQLite的先进管理系统设计思路
一、项目概述 随着电动车的普及,充电桩作为关键基础设施,其智能化、网络化管理显得尤为重要。本项目旨在基于STM32微控制器开发一款智能充电桩,能够实现高效的充电监控与管理。项目通过物联网技术,提供实时数据监测、远程管理、用…...
windows 查看yolo11 是否安装了cuda
一、通过python查看 import torch print(torch.cuda.is_available()) 二、通过 pip list 查看 在conda环境 可以看出torch 后面是2.1.4 cu124 说明GPU环境安装成功。 如果是cpu环境,则是:...
机器学习【激活函数】
笔记内容侵权联系删 激活函数的概念神经网络中的每个神经元节点接受上一层神经元的输出值作为本神经元的输入值,并将输入值传递给下一层,输入层神经元节点会将输入属性值直接传递给下一层(隐层或输出层)。在多层神经网络中,上层节点的输入在加…...
【OpenEuler】配置虚拟ip
OpenEuler系统手动配置虚ip 介绍操作方法临时生效永久生效 验证 介绍 我们知道通过keepalived服务可以为linux服务器设置虚拟ip,但是有些特殊场景下若无法安装部署keepalived服务,则需要通过手动设置的方式,配置服务器的虚拟ip。 本方案提供…...
数据分析师证书怎么考
在信息技术飞速发展的今天,数据分析已成为推动各行业进步的核心引擎。CDA(Certified Data Analyst)数据分析师证书以其权威性和实用性,成为许多数据分析从业者的职业加速器。本文将深入探讨如何考取CDA数据分析师证书,…...
【人工智能】text2vec-large-chinese模型搭建本地知识库
本demo使用 text2vec-large-chinese 模型进行文本处理,然后再过 bge-reranker-v2-m3进行增强 1. 对文本进行向量处理,并保存只至本地 from sentence_transformers import SentenceTransformer import torch import numpy as np import faiss import os …...
前端入门一之ES6--递归、浅拷贝与深拷贝、正则表达式、es6、解构赋值、箭头函数、剩余参数、String、Set
前言 JS是前端三件套之一,也是核心,本人将会更新JS基础、JS对象、DOM、BOM、ES6等知识点,这篇是ES6;这篇文章是本人大一学习前端的笔记;欢迎点赞 收藏 关注,本人将会持续更新。 文章目录 10、递归10.1、阶层案例10.…...
DevOps工程技术价值流:加速业务价值流的落地实践与深度赋能
DevOps的兴起,得益于敏捷软件开发的普及与IT基础设施代码化管理的革新。敏捷宣言虽已解决了研发流程中的诸多挑战,但代码开发仅是漫长价值链的一环,开发前后的诸多问题仍亟待解决。与此同时,虚拟化和云计算技术的飞跃,…...
IP数据云 识别和分析tor、proxy等各类型代理
在网络上使用代理(tor、proxy、relay等)进行访问的目的是为了规避网络的限制、隐藏真实身份或进行其他的不正当行为。 对代理进行识别和分析可以防止恶意攻击、监控和防御僵尸网络和提高防火墙效率等,同时也可以对用户行为进行分析ÿ…...
三步掌握MidScene:AI浏览器自动化的零代码实战指南
三步掌握MidScene:AI浏览器自动化的零代码实战指南 【免费下载链接】midscene Let AI be your browser operator. 项目地址: https://gitcode.com/GitHub_Trending/mid/midscene MidScene是一款革命性的AI驱动浏览器自动化工具,让您能够通过自然语…...
CST、Sspp与色散曲线的关联
CST cst Sspp 色散曲线在电磁仿真领域摸爬滚打过的工程师,对色散曲线这个磨人的小妖精应该都不陌生。今天咱们就来聊聊怎么用CST Studio Suite里的本征模求解器(Eigenmode Solver)提取波导结构的色散曲线,手把手带你从懵逼到上手…...
TensorRT性能调优实战指南:从瓶颈诊断到引擎优化
TensorRT性能调优实战指南:从瓶颈诊断到引擎优化 【免费下载链接】TensorRT NVIDIA TensorRT™ 是一个用于在 NVIDIA GPU 上进行高性能深度学习推理的软件开发工具包(SDK)。此代码库包含了 TensorRT 的开源组件 项目地址: https://gitcode.…...
如何快速掌握KLayout:专业版图设计的终极实战指南
如何快速掌握KLayout:专业版图设计的终极实战指南 【免费下载链接】klayout KLayout Main Sources 项目地址: https://gitcode.com/gh_mirrors/kl/klayout KLayout是一款功能强大的开源版图设计工具,专门用于集成电路(IC)和…...
专业级实时屏幕翻译工具深度解析:5大实战技巧提升工作效率
专业级实时屏幕翻译工具深度解析:5大实战技巧提升工作效率 【免费下载链接】Translumo Advanced real-time screen translator for games, hardcoded subtitles in videos, static text and etc. 项目地址: https://gitcode.com/gh_mirrors/tr/Translumo Tra…...
投资回报不到 1 年!这套导热油炉处理油泥减量化方案,凭什么火遍行业?
行业痛点:油泥处置面临的严峻挑战随着环保政策日趋严格,HW08类含油污泥的处理已成为石化、炼油等企业的必答题。然而,传统处理方式面临四大核心痛点:成本压力巨大:传统焚烧处置费用高达3000-5000元/吨,填埋…...
告别文档迁移困境:3个关键场景解锁飞书文档批量备份新方案
告别文档迁移困境:3个关键场景解锁飞书文档批量备份新方案 【免费下载链接】feishu-doc-export 项目地址: https://gitcode.com/gh_mirrors/fe/feishu-doc-export 还在为团队协作平台切换带来的文档迁移难题而烦恼吗?当企业从飞书切换到其他办公…...
OpenClaw对接Qwen3-VL:30B:飞书智能助手实战指南
OpenClaw对接Qwen3-VL:30B:飞书智能助手实战指南 1. 为什么选择这个组合? 去年冬天,当我第一次在本地电脑上部署Qwen3-VL:30B时,就被它的多模态能力震撼到了——这个模型不仅能理解文字,还能准确描述图片内容。但问题…...
SCN随机配置网络模型在多特征分类预测中的应用
SCN随机配置网络模型SCN分类预测,SCN分类预测,多特征 输入模型。 多特征输入单输出的二分类及多分类模型。 程序内注释详细,直接替换数据就可以用。 程序语言为matlab,程序可出分类效果图,迭代优化图,混淆矩…...
计算机毕业设计springboot基于的养老平台的设计与实现 SpringBoot架构下智慧养老综合服务系统的设计与实现 基于Java的社区养老数字化管理平台开发
计算机毕业设计springboot基于的养老平台的设计与实现(配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。我国正加速步入老龄化社会,老年人口规模持续扩大,传…...
