AI换脸技术大比拼:PuLID vs InstantID vs FaceID

AI换脸技术大比拼:PuLID vs InstantID vs FaceID

今天,我们将通过一个ComfyUI工作流来对比三种AI换脸技术,分别是PuLID、InstantID和IP-Adapter的FaceID-V2版本。这些技术的核心原理相似,都是基于一个名为InsightFace的人脸分析技术,该技术需要授权才能商用。InsightFace是一个深度人脸分析库,用于人脸识别、人脸检测和人脸对齐。 IP-Adapter FaceID是这三种技术中最早推出的。接下来推出的是InstantID。PuLID是最近推出的换脸技术。 这三种方案都需要你提供一张人脸参考图。因此,换脸的效果在很大程度上取决于你提供的那张参考图的质量和适配度。 接下来我们来通过一个ComfyUI工作流同时对比这三种换脸方式的效果。工作流的下载地址是:https://pan.baidu.com/s/19K60iNk1LGlNZJBCu7HuJA?pwd=lzo4 。 我会先演示下如何使用这个工作流,然后用这个工作流生成4组图片,并进行打分,来评估它们的效果。 如果你喜欢看视频教程,那么我非常欢迎你观看本文所对应的视频(B站同名帐号): 工作流配置和说明 当你下载好相关节点并导入ComfyUI以后,可能会发现缺少一些节点。这时候只需要在ComfyUI管理器中安装这些节点并重启ComfyUI即可。 建议在安装节点之前先升级ComfyUI,否则即使安装了节点,也可能仍然提示缺失节点。除了节点之外,还需要安装一些必要的模型。 模型的下载地址和存放路径,可以在节点的GitHub主页上找到详细介绍。 以最近的PuLID为例,安装说明中提到需要下载PuLID的预训练模型,然后将其放到ComfyUI/models/pulid/文件夹中。另外,第一次运行PuLID时,会自动下载一些模型。 导入工作流以后,让我们从下往上看看它的结构。 1️⃣ 共享节点:最下面是PuLID、InstantID和FaceID共用的节点。它们使用的Checkpoint、提示词、潜空间图片的尺寸和固定的种子值是相同的,这样可以更有利于同时对比它们的效果。 2️⃣ 模型节点组:再往上,有三个节点组。从左到右依次是PuLID、InstantID和IP-Adapter-FaceID。工作流的作者将它们安排得井井有条,非常直观。 3️⃣ 参考图像节点:再往上,右击名称为”Face”的节点,通过右键菜单最上面的选项,可以发现它实际是一个”加载图像”的节点。这个节点加载的是一张有人脸的照片,用来给PuLID、InstantID和FaceID作为参考。 运行工作流并对比效果 了解了工作流的运行逻辑后,我们可以开始运行工作流,对比这三种换脸方式的效果。 运行步骤 1️⃣ 确保所有必要的节点和模型都已安装和配置正确。 2️⃣ 导入工作流,并检查各节点的连接和配置。 3️⃣ 加载参考图像,并确认图像路径和格式正确。 4️⃣ 运行工作流,生成三种换脸技术的效果图。 5️⃣ 对比生成的效果图,分析PuLID、InstantID和IP-Adapter FaceID的差异和优劣。 对比效果 用这个工作流生成4组图片,并进行打分,来评估它们的效果。我设定了4个评分维度,为了方便起见,每个维度的分值都设定为1-3分: 第一组图片:   PuLID InstantID FaceID 提示词契合度 2 3 1 脸部光效 1 3 2 人脸相似度 1 2 3 脸部细节度 1…

ComfyUI一键更换服装:IP-Adapter V2 + FaceDetailer(DeepFashion)

ComfyUI一键更换服装:IP-Adapter V2 + FaceDetailer(DeepFashion)

在这篇文章中,我们将探索如何使用新版的IP-Adapter和ComfyUI软件为人物进行换装。 整个过程非常简单,仅需要两张图片:一张服装图片和一张人物图片。 通过一系列节点的操作,ComfyUI就会把这个服装换到人物身上,并利用FaceDetailer节点来修复任何细微的服装问题。 如果你喜欢看视频教程,那么我非常欢迎你观看本文所对应的视频(B站同名帐号): 准备工作流 首先,请确保你已经下载并导入了工作流到你的ComfyUI。下载链接是:https://pan.baidu.com/s/1g684r19bLGUpb0zI4FOwTw?pwd=pbgb 如果在导入过程中遇到节点显示为红色色块,并且有弹窗提示缺失特定节点。 请按照以下步骤解决: 1️⃣ 更新ComfyUI: 在开始之前,请确保你的ComfyUI是最新版本,以免下载到过时的IP-Adapter版本。 2️⃣ 安装缺失节点: 打开ComfyUI管理器,选择“安装缺失节点”,并安装以下三个节点: 3️⃣ 重启ComfyUI: 安装完节点后,点击界面下方的重启按钮。如果重启后一些节点仍显示为红色,不必担心,只需简单刷新一下网页即可解决。 导入和准备图像 为了充分利用提供的工作流并实现人物换装,让我们一步步在ComfyUI中构建所需的操作。我将详细指导你如何加载图像、创建服装遮罩,并最终生成预览图像。 步骤一:加载人物图像 步骤二:创建服装遮罩 步骤三:遮罩细化和预览 完成上述步骤后,你将看到遮罩的图像,它将展示出裙子的具体形状。这个遮罩将用于下一阶段的换装过程,确保新的服装可以精确覆盖在原图的对应部分。 配置IP-Adapter 接下来,我们将详细介绍如何搭建IP-Adapter模块,使用另一张裙子的图片进行人物换装。这部分包含安装必要的模型、导入和连接各种节点,以确保换装过程的顺利进行。 安装必要的模型 导入服装图片 类似于加载人物图片的步骤,搜索并导入Load Image节点,上传你选择的新服装图片。 设置IP-Adapter 配置关注层遮罩和CLIP模型 设置K采样器与CLIP文本编码器 配置VAE编码器和解码器 完善VAE解码过程 应用提示词以精细化控制 评估和调整权重类型 1️⃣ 初次评估: 2️⃣ 调整权重类型: 引入FaceDetailer修复服装细节 为了进一步提升换装效果,特别是增强服装的立体感和细节表现,我们将引入”FaceDetailer”节点和服装区域检测功能。以下步骤将指导您如何安装必要模型、配置相关节点,并最终评估优化效果。 安装和配置DeepFashion模型 打开ComfyUI管理器,搜索并安装”DeepFashion”模型,该模型专为服装相关的图像处理优化。 配置FaceDetailer节点 配置服装区域检测节点 生成和比较图像 通过这些步骤,您不仅能够解决原始换装图像中存在的问题,还能显著提升服装的立体感和细节表现,使其看起来更加自然和逼真。 结论 通过以上步骤,你可以成功地为人物换装,并通过IP-Adapter的高级配置实现更自然和精确的视觉效果。这个工作流的构建不仅涉及基本的图片加载和节点连接,还包括对高级模型和编解码器的深入配置,使得整个过程既详细又具有教育意义。

升级版ComfyUI InstantID 换脸:FaceDetailer + InstantID + IP-Adapter

升级版ComfyUI InstantID 换脸:FaceDetailer + InstantID + IP-Adapter

在使用ComfyUI的InstantID进行人脸替换时,一个常见问题是该工具倾向于保留原始参考图的构图,即使用户的提示词与之不符。 例如,即使用户提供的是大头照并请求生成全身照,结果仍是大头照,没有显示出用户所期望的构图。 同样,从半身照生成全身照的工作流也会遇到同样的问题——生成的图像仍然是半身照。 为了克服这一挑战,我设计了一种新的工作流程,该流程可以将参考图中的人脸替换到任意一张照片上,而不受原始构图的限制。 这种方法不仅提高了创作的灵活性,还确保了生成的图像能更好地符合用户的实际需求。接下来的内容,我们将详细介绍如何实现这一工作流程。 如果你喜欢看视频教程,那么我非常欢迎你观看本文所对应的视频(B站同名帐号): 基础工作流的搭建 首先,使用SDXL生成一张肖像照片。这张照片将作为换脸操作的基底图像。用于换脸的基底图像,你也可以用Midjourney生成,或者是你自己拍摄的照片。这样就非常灵活了。 生成肖像照片 1️⃣ 准备工作:确保在ComfyUI管理器中安装了Efficiency Nodes效率节点。 2️⃣ 设置SDXL节点: 换脸操作 3️⃣ 加载所需节点: 在操作过程中,如果遇到任何疑问或需要进一步的详细说明,可以参考我之前发布的文章,里面使用了LoRA和FaceDetailer进行类似的换脸操作。 添加并配置InstantID以进行换脸操作 步骤 1: 安装和配置InstantID 1️⃣ 安装InstantID:在添加InstantID之前,您需要确保已经在ComfyUI管理器里安装了由cubiq开发的InstantID节点。这个节点是实现高质量面部替换的核心。 2️⃣ 配置节点: 步骤 2: 准备参考图像 3️⃣ 上传参考图: 步骤 3: 调整参数并连接 4️⃣ 连接节点: 5️⃣ 连接输出端口: 开始换脸操作 6️⃣ 执行换脸: 我们来对比下脸部参考图和换脸以后的图像。感觉有些不太像。 很多情况下,再加入IP-Adapter可以提高一些换脸的相似度。我们来接着添加IP-Adapter。 添加IP-Adapter以提高相似度 步骤 1: 安装和配置IP-Adapter 1️⃣ 选择IP-Adapter节点: 2️⃣ 配置IP-Adapter FaceID模型: 3️⃣ 连接IP-Adapter: 步骤…

在ComfyUI中用LoRA换脸,实现超高相似度

在ComfyUI中用LoRA换脸,实现超高相似度

在之前的一篇文章中,我介绍了如何在WebUI中利用Adetailer插件和自己训练好的LoRA为图片中的人物换脸。本文将进一步展示如何在ComfyUI中执行类似操作。 如果你喜欢看视频教程,那么我非常欢迎你观看本文所对应的视频(B站同名帐号): 准备工作 首先,确保您拥有一个已经训练好的LoRA。如果你不知道如何训练LoRA,可以看看我之前的文章。 这个LoRA可以仅使用被训练人物的大头照。我们的目标是使用LoRA生成与被训练人物高度相似的脸部,然后将其换到任何身体上,实现真正意义上的AI摄影。 安装必要的自定义节点 在开始之前,需要安装两个关键的自定义节点: 1️⃣进入ComfyUI,打开ComfyUI管理器。 2️⃣点击“安装自定义节点”的按钮。 3️⃣搜索“efficiency”并安装“Efficiency Nodes”。 4️⃣继续搜索“impact pack”并下载“ComfyUI Impact Pack”。 5️⃣安装完毕后,重启ComfyUI以确保所有节点正确加载。 搭建基础工作流 设置工作流 1️⃣双击打开搜索栏,输入“eff.”,找到并点击“Eff. Loader SDXL”。此节点整合了加载Checkpoint、VAE、提示词、设置图片尺寸等功能。 2️⃣再次打开搜索栏,输入“eff.”,选择“KSampler SDXL”作为采样器。 3️⃣将这两个节点相连,并正确设置Checkpoint和提示词。 运行并测试图像 4️⃣现在,运行工作流并检查生成的图像,确保没有问题。 添加换脸模块 面部检测与分割 1️⃣双击打开搜索栏,输入“ultra”,选择“UltralysticsDetectorProvider”。它提供了一系列检测面部,手部,人体的模型。然后选择模型名称“bbox/face_yolov8m”进行面部检测。它用方形边界框来检测面部,比下面这几个检测面部的模型体积更大一些,因此效果更好一些。Bbox就是方形边界框”bounding box”的缩写。 2️⃣接下来,添加图像分割节点。打开搜索框,输入“samloader”,选择“SAMLoader”。这个”sam”就是”Segment Anything”的缩写,在WebUI里也有这个插件。它是Facebook的母公司Meta开发出来的图像分割的模型。接着选择模型名称包含字母“h”的模型。它是里面体积最大的,因此效果更好一些。 实现换脸 模型都准备好了,接下来还需要一个具体执行换脸的节点。 3️⃣搜索并添加“FaceDetailer”节点,类似于WebUI中的Adetailer。 4️⃣有了这3个节点还不够,因为我们还需要让这个”FaceDetailer”可以使用单独的模型以及提示词。还需要它可以使用我们训练好的LoRA进行换脸。所以,我们再添加一个支持SD1.5的效率加载器。 5️⃣我们需要对SDXL模型生成的图像进行换脸。所以采样器的图像输出端应该连上”FaceDetailer”的图像输入端。因为我们要”FaceDetailer”使用单独的模型,所以把效率加载器上的模型输出端连上”FaceDetailer”的输入端。下面的端口我们也连一下。然后把这两个处理面部的节点也连接一下。 设置并预览 6️⃣配置“FaceDetailer”所需的模型、LoRA和提示词。 7️⃣在“FaceDetailer”的输出端添加一个预览图像节点。 8️⃣添加一个“把蒙版转化为图像”的节点,连接相应的“mask”端口。 9️⃣添加另一个预览图像节点以便预览处理好的面部蒙版。 🔟在SDXL的采样器图像输出端也添加一个预览图像节点,以便比较换脸前后的效果。 接着再点击”添加提示词队列”按钮,稍等一会儿图片就出来了。 调整与优化 结束语 至此,我们完成了在ComfyUI中使用LoRA进行人脸换脸的全过程。希望您能够利用这些技术,开启您的AI摄影创作之旅。如果您觉得这篇教程有帮助,请不吝点赞和关注,期待我们下次的分享。 另外,给大家推荐我正在跑SD的云平台:https://myaiforce.com.cn/lanrui/

在ComfyUI中使用XYZ图表测试LoRA

在ComfyUI中使用XYZ图表测试LoRA

在之前一篇训练人脸LoRA的文章中,我介绍了如何在WebUI中使用XYZ图表来测试训练好的一批LoRA。 虽然WebUI中的XYZ图表十分实用,但其运行速度相比ComfyUI要慢许多。测试LoRA时,我发现经常需要花费超过半小时来处理大量图像。 因此,本文将详细介绍如何在ComfyUI中使用XYZ图表进行LoRA测试的过程。 这个工作流程非常简单,只需要四个节点。 让我们开始吧。 如果你喜欢看视频教程,那么我非常欢迎你观看本文所对应的视频(B站同名帐号): 步骤一:设置效率加载器和采样器 首先,打开ComfyUI界面。使用鼠标左键双击以弹出搜索节点的工具栏。在搜索框中输入“efficient”,查找并选择“Efficient Loader”节点。 如果你不熟悉这个节点或其功能,可以参考我之前的文章,了解如何在ComfyUI中使用LoRA。 接下来,我们还需要一个采样器来进行图像生成。再次打开搜索栏,输入“efficient”,找到并选择带有“Efficient”标签的采样器节点。 这种采样器是专为与效率加载器配合使用设计的。将这两个节点连接起来后,我们的基础设置就完成了。 步骤二:选择模型并运行测试图像 现在,选择一个适合的模型并输入必要的提示词。然后,运行模型生成一张测试图像。确保图片显示正确无误。 步骤三:接入并配置XYZ图表 将效率加载器和采样器的节点稍微分开,为后续的其他节点留出空间。接下来,在采样器节点找到“script”脚本输入端口。点击并拖动此端口,选择出现的“XY Plot”(XY图表)选项。 将此图表的“dependencies”输入端连接至效率加载器的相应输出端。 然后,设置XY图表的轴。对于X轴,点击并拖动其输入端,选择“搜索”,在搜索框中输入“lora”,选择显示的LoRA图表。 设置测试LoRA的数量(例如10个版本),以及LoRA的路径(我用的是服务器,请根据你的情况适当调整路径格式)。设置Y轴测试的权重数量,例如从0.6到1的权重范围,填入5。此外,填入Y轴的起始值0.6和终止值1。最后,别忘了把Y轴的输出端也连接一下。 步骤四:生成并保存XYZ图表 完成所有设置后,运行图表并检查结果。 通过右击采样器节点并选择“打开图像”,查看X轴显示的10个LoRA及其名称,Y轴显示的是从0.6到1的权重范围。 如果需要保存图像,可以通过右键点击图像并选择“另存为”。 另外,回到ComfyUI设置,确保将“采样器输入图像”参数配置到图表中。 接着在采样器节点的图像输出端拖出一个“保存图像”的节点,再运行一次。这样,XY图表就可以保存到ComfyUI的输出目录,方便后续查看和使用。 以上就是如何在ComfyUI中使用XYZ图表来测试LoRA的完整流程。希望这篇教程对你有所帮助!另外,给大家推荐我正在跑SD的云平台:https://myaiforce.com.cn/lanrui/

ComfyUI 使用 LoRA 极简工作流

ComfyUI 使用 LoRA 极简工作流

ComfyUI的LoRA工作流相信大家都不陌生。开发者提供了大量基于默认节点功能搭建的工作流,其中就包括了如何使用LoRA。 仅仅使用一个LoRA也许还比较简单。只需要在基本工作流的基础上,再添加一个LoRA加载器的节点即可。如果要添加多个LoRA,就需要往里面继续加入LoRA加载器。这使得工作流变得很长,丧失了优雅和高效。 今天,我来介绍在ComfyUI中使用LoRA的极简工作流。如果只使用一个LoRA的话,只需要两个节点。 如果你需要再添加多个LoRA的话,只需要再添加一个LoRA节点。是不是非常简单呢? 如果你喜欢看视频教程,那么我非常欢迎你观看本文所对应的视频(B站同名帐号): 安装必要的工具 首先,我们需要安装称为“Efficiency Nodes”的一系列自定义节点。这需要你已经安装了 ComfyUI Manager。以下是安装自定义节点的步骤: 1️⃣ 打开 ComfyUI Manager 界面。 2️⃣ 点击安装自定义节点的按钮, 3️⃣在对话框中输入“efficiency”,并点击搜索。 4️⃣选择出现的第一个“效率节点”并安装。安装完成后点击重启按钮。 构建基础 LoRA 工作流 安装完效率节点后,就可以开始构建 LoRA 工作流了: 1️⃣ 双击空白处打开搜索节点的工具栏,输入“eff”,找到“Efficient Loader”节点。 2️⃣ 添加“Efficient Loader”节点,这个节点支持SD1.5,整合了多个功能如Checkpoint、VAE、Clip Skip 跳过层、LoRA、提示词、Latent宽高和批次数量。 3️⃣ 接下来,需要搭配一个采样器来生成图片。再次双击空白处,在搜索框输入“efficient”并选择一个基础版采样器。 4️⃣ 连接这两个节点。简单地用五条直线连接即可。 5️⃣设置模型和 LoRA 参数,写入提示词,然后生成图片。 如何同时使用多个 LoRA 如果需要同时调用多个 LoRA,操作如下: 1️⃣ 在“Efficient Loader”上找到“lora_stack”的输入端。 2️⃣ 拖拽并选择“LoRA Stacker”,以叠加多个 LoRA。 3️⃣ 设置要叠加的 LoRA 数量,例如选择两个:一个调节笑容的…