AI绘画:使用Stable Diffusion ComfyUI进行换脸:IPAdapter FaceID全面教程

news2025/1/18 16:56:34

        在数字艺术和媒体编辑领域,换脸技术已经成为一种流行且强大的工具。它允许创作者将一个人物的面部特征无缝地转移到另一个人物上,创造出令人信服的视觉作品。Stable Diffusion ComfyUI提供了一个高效的平台,让用户能够轻松地实现换脸。本文将详细介绍如何使用ComfyUI中的IPAdapter FaceID插件进行换脸,从安装到实际操作,一步步引导你完成整个过程。

换脸技术简介

       换脸技术通过深度学习算法,识别并提取面部特征,然后将这些特征应用到目标图像上。在AI绘画中,保持角色一致性的方法之一就是通过换脸来实现。市面上有许多换脸插件,如Reactor、FaceFusion、Roop等,而IPAdapter推出的FaceID模型因其高效性和准确性而广受欢迎。

安装IPAdapter FaceID插件

在使用IPAdapter FaceID之前,我们需要确保ComfyUI是最新版本,以便兼容最新的插件。

更新ComfyUI

  1. 打开ComfyUI管理器。
  2. 点击“更新全部”以更新ComfyUI到最新版本。
  3. 如果你位于大陆境内,可能需要切换不同的网络环境(如不同的VPN节点)来成功更新。

安装IPAdapter FaceID Plus节点

有两种方法可以安装IPAdapter FaceID Plus节点:

方法一:通过管理器安装
  1. 打开ComfyUI管理器。
  2. 点击“安装节点”。
  3. 搜索“ComfyUI_IPAdapter_plus”并点击安装。

方法二:手动安装
  1. 访问IPAdapter FaceID Plus的GitHub主页:GitHub - cubiq/ComfyUI_IPAdapter_plus。
  2. 下载ZIP压缩包。
  3. 将下载的ZIP压缩包解压到ComfyUI目录下的custom_nodes目录中。
  4. 如果需要,可以删除文件夹名后的“-main”。

准备工作

在开始换脸之前,确保你已经安装了所有必要的模型和依赖项。

安装模型

  1. 下载IPAdapter模型和CLIP_VISION模型。
  2. 将模型文件存放在ComfyUI的models目录下。

模型文件的huggingface下载地址:https://huggingface.co/h94/IP-Adapter-FaceID/tree/main

ipadapter总共有4个版本的模型,每个模型都包含1个主模型和1个lora模型,建议将这4个版本的模型都下载下来,分别放入相对应的文件夹中:

主模型文件夹:“\ComfyUI_windows_portable\ComfyUI\models\ipadapter”

lora模型文件夹:“\ComfyUI_windows_portable\ComfyUI\models\loras\ipadapter”

点击“管理器”,选择“安装模型”,搜索关键词“clip”,将4个“clip_vision”模型都安装好,其中2个是1.5版的模型,2个是SDXL版的模型,虽然截至到本文发布的时候ipadapter尚未推出faceID的SDXL版模型,但是相信不就之后就会推出SDXL版!

 

安装InsightFace

  1. 检查Python版本是否兼容。
  2. 下载相应的.whl文件。
  3. 安装InsightFace库。

insightface是一个Python库,不管是运行reactor插件还是其他的换脸插件,都会用到这个Python库,由于ComfyUI是一个独立的虚拟环境,所以安装insightface库的方法有点特别

首先我们要查看下我们的comfyUI的虚拟环境中的Python版本

第一步:找到根目录下的“python_embeded”文件夹,进入到该文件夹中;

第二步:在该文件夹的路径栏输入“cmd”;

第三步:在弹出的cmd命令窗口中输入“python.exe -V”命令,此时我们就可以查看到我们ComfyUI中的Python版本,我的是“Python 3.11.6”版;

我们在上面一步已经查看了我们自己的Python版本,接下来根据自己的Python版本下载相对应的whl文件:

3.10版:insightface-0.7.3-cp310-cp310-win_amd64.whl

3.11版:insightface-0.7.3-cp311-cp311-win_amd64.whl

将下载下来的whl文件放在“\ComfyUI_windows_portable\python_embeded”文件下面

python -m pip install -U pip
python.exe -m pip install insightface-0.7.3-cp311-cp311-win_amd64.whl

 

创建换脸工作流

现在,终于。当我们顺利完成了上面的所有安装之后,我们已经准备好开始创建换脸工作流。使用“ComfyUI_IPAdapter_plus”节点来进行换脸!比起reactor等换脸插件,“ComfyUI_IPAdapter_plus”的换脸行为发生在图片生成之前,所以最后的效果会更加自然!下面是一个换脸操作的案例:

基础设置

  1. 打开ComfyUI并创建一个新的工作流。
  2. 添加必要的节点,包括“FaceID工作流”节点。

工作流注意事项

  • 确保所有节点正确连接。
  • 根据需要调整节点参数。
  • 检查模型版本是否与插件兼容。

开始换脸

  1. 导入源图像和目标图像。
  2. 调整FaceID工作流中的参数,如换脸强度、面部特征匹配等。
  3. 运行工作流并查看换脸效果。

工作流注意事项说明:

  1. ipadapter模型和lora模型一定要匹配;
  2. 可以根据自己的需要调整lora的权重,数字越大上传的参考图片对生成的图片影响越大,包括画质和构图,适当降低该权重,可以让AI发挥的空间越大,画面越自然,但是换脸效果可能会降低;
  3. ipadapter模型中的plus版和plusV2版本在换脸效果上并不比基础版要好,但是在画质上会相对较好;
  4. 工作流的最后面的组是高清放大和面部修复,该组我已经默认设置为“停用”模式,如果你有需要可以右键“启用该组节点”;
  5. 高清放大节点中的“降噪”参数设置得越小,高清放大之后的图片人物面部就越接近原图,过大的“降噪”参数会让高清放大之后的人物改变人脸的样式,该参数建议设置在0.05以下!

 

结语

通过上述步骤,你现在应该能够使用Stable Diffusion ComfyUI和IPAdapter FaceID插件轻松地进行换脸操作。记住,实践是掌握任何技术的最佳方式,所以不断尝试和调整参数,直到你达到满意的效果。如果你在过程中遇到任何问题,可在相关社区寻求帮助。


请注意,本文中提到的链接和资源可能需要在实际环境中进行验证和调整。此外,换脸技术涉及隐私和伦理问题,使用时应确保遵守相关法律法规,并尊重个人隐私权。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1569049.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

python和pip中常见命令和方法

玩python的同学想必没有不用pip的吧,pip是python包管理工具,和Nodejs的npm、Java的maven类似,这些依靠开源力量建立起的庞大软件库极大提高了开发的效率,下面是整理和总结pip中的常见命令和方法。 pip更新版本 python -m pip inst…

图像分割-综述篇

文章目录 图像分割算法类型全卷积FCNSegNetUNetDeeplab v1PSPNetDeeplab v2Deeplab v3Deeplab v3 基于候选区Mask RCNNMS RNN 基于GAN基于RNNReSegViTSwin TransformerSAM(Segment Anything Model) 图像分割算法类型 正如我在目标检测系列中提到的,图像分割&#x…

flutter官方案例context_menus【搭建与效果查看】【省时】

案例地址 https://github.com/flutter/samples/tree/main/context_menus 1:运行查看有什么可以快捷使用的,更新了些什么,可不可以直接复制粘贴 主要内容:在web端中模拟手机类型的点击长按操作,不能直接运行在安卓与io…

代码随想录Day27:回溯算法Part3

Leetcode 39. 组合总和 讲解前: 这道题其实在掌握了之前的组合问题之后再看并不是那么难,其关键就在于我们这道题中没有一个特定需要的组合大小,并且列表中的元素是可以重复使用的,那么比如说给的例子中的 输入: candidates [2…

使用Python获取红某书笔记详情并批量无水印下载

根据红某手最新版 请求接口必须要携带x-s x-s-c x-t,而调用官方接口又必须携带cookie,缺一不可,获取笔记详情可以通过爬取网页的形式获取,虽然也是无水印,但是一些详情信息只能获取大概,并不是详细的数值,因此既不想自己破解x-s x…

【chrome扩展】简 Tab (SimpTab)‘每日一句名言’样式

背景:最初参考“每日诗词”发现总是那几句,可以更换API接口完成“每日一句名言” 声明:本人不会ajax及ccs样式,非专业人士,借助CHATGPT代码生成完成。请友善交流。 每一句名言API: "https://api.xygeng.cn/open…

【MATLAB第102期】基于MATLAB的BRT增强回归树多输入单输出回归预测模型

【MATLAB第102期】基于MATLAB的BRT增强回归树多输入单输出回归预测模型 BRT,即Boosted Regression Trees(增强回归树),是一种用于回归问题的集成学习方法。它结合了多个决策树模型,通过逐步改进的方式来提高整体模型的…

【保姆级介绍Oracle】

🎥博主:程序员不想YY啊 💫CSDN优质创作者,CSDN实力新星,CSDN博客专家 🤗点赞🎈收藏⭐再看💫养成习惯 ✨希望本文对您有所裨益,如有不足之处,欢迎在评论区提出…

开放威胁情报社区

AlienVault - Open Threat ExchangeLearn about the latest cyber threats. Research, collaborate, and share threat intelligence in real time. Protect yourself and the community against todays emerging threats.https://otx.alienvault.com/

Kotlin:for循环的几种示例

一、 打印 0 到 2 1.1 方式一:0 until 3 /*** 打印 0 到 2*/ fun print0To2M1(){for (inex in 0 until 3){// 不包含3print("$inex ")} }运行结果 1.2 方式二:inex in 0 …2 /*** 打印 0 到 2*/ fun print0To2M2(){for (inex in 0 ..2){//…

哈哈哈哈哈

欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。 222 我们对Markdown编辑器进行了一些功能拓展与语法支持,…

【Linux】详解动态库链接和加载对可执行程序底层的理解

一、动静态库链接的几种情况 如果我们同时提供动态库和静态库,gcc默认使用的是动态库。如果我们非要使用静态库,要加-static选项。如果我们只提供静态库,那可执行程序没办法,只能对该库进行静态链接,但程序不一定整体…

Ds18B20理解与运用

在51单片机中,DS18B20是一个十分重要的外设,它是一个温度传感器,可以读取温度并以16位的数据输出。这个数据由四位符号位,7位整数位和4位小数位组成。当符号位都是0的时候,温度是零上温度;当符号位都是1的时…

基于隐私保护的可追踪可撤销密文策略属性加密方案论文阅读

论文是2022年发表的A Traceable and Revocable Ciphertext-Policy Attribute-based Encryption Scheme Based on Privacy Protection 摘要 本篇论文提出了一种具有用户撤销、白盒追踪、策略策略隐藏功能的CP-ABE方案。在该方案中密文被分为两个部分:第一个部分是和…

ros小问题之rosdep update time out问题

在另外一篇ROS 2边学边练系列的文章里有写碰到这种问题的解决方法(主要参考了其他博主的文章,只是针对ROS 2做了些修改调整),此处单拎出来方便查找。 在ROS 2中执行rosdep update时,报出如下错误: 其实原因…

296个地级市GDP相关数据集(2000-2023年)

01、数据简介 GDP,即国内生产总值(Gross Domestic Product),是指一个国家或地区所有常住单位在一定时期内生产活动的最终成果。 名义GDP,也称货币GDP,是指以生产物品和劳务的当年销售价格计算的全部最终产…

腾讯云4核8G服务器性能怎么样?大明白来说说

腾讯云4核8G服务器价格:轻量4核8G12M优惠价格646元15个月、CVM S5服务器4核8G配置1437元买1年送3个月。腾讯云4核8G服务器支持多少人同时在线?支持30个并发数,可容纳日均1万IP人数访问。腾讯云百科txybk.com整理4核8G服务器支持多少人同时在线…

WPF中通过自定义Panel实现控件拖动

背景 看到趋时软件的公众号文章(WPF自定义Panel:让拖拽变得更简单),发现可以不通过Drag的方法来实现ListBox控件的拖动,而是通过对控件的坐标相加减去实现控件的位移等判断,因此根据文章里面的代码,边理解边…

【随笔】Git 高级篇 -- 相对引用1(十二)

💌 所属专栏:【Git】 😀 作  者:我是夜阑的狗🐶 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询! 💖 欢迎大…

腾讯云4核8G12M服务器和标准型S5服务器配置价格表

2024年腾讯云4核8G服务器租用优惠价格:轻量应用服务器4核8G12M带宽646元15个月,CVM云服务器S5实例优惠价格1437.24元买一年送3个月,腾讯云4核8G服务器活动页面 txybk.com/go/txy 活动链接打开如下图: 腾讯云4核8G服务器优惠价格 轻…