ComfyUI InstantID 文生图,图生图完整运行指南


前言

本文在学习使用comfyUI,在了解初步文生图的基础上,比较感兴趣部分进行学习,在搜索相关的资料之后。整理出来学习过程中出现问题。


ComfyUI InstantID 文生图与图生图完整执行指南

本文档基于 InstantID 技术,详细介绍在 ComfyUI 中实现文生图+人脸控制脸部特征提取功能的完整流程,包括环境准备、节点安装、模型配备、参数调整等关键步骤,附操作细节与问题解决提示。

一、环境准备:模型下载与目录配置

搭建 InstantID 能力需先下载指定模型,并按路径放置(路径错误会导致功能失效)。

1.1 模型下载来源

优先从 Hugging Face 下载,若网络受限,可启用Hugging Face 镜像站(HF-Mirror),核心模型均来自 InstantX 仓库:

  • 主仓库地址:InstantX/InstantID at main(镜像站)
  • 其他辅助模型:SDXL 真人模型、VAE 模型、InsightFace 面部分析模型

1.2 核心模型列表与下载地址

模型类型模型文件名下载路径(HF-Mirror)用途
InstantID 核心ip-adapter.binInstantX/InstantID → main 目录人脸特征控制
InstantID ControlNetdiffusion_pytorch_model.safetensorsInstantX/InstantID → main 目录人脸姿态与细节控制
面部分析模型1k3d68.onnx/2d106det.onnxInsightFace 预训练模型(自动下载或手动获取)人脸关键点检测与分析
SDXL 真人模型例如 LEOSAM HelloWorld_SDXLliblibai(免费,热度排序)生成高真实度人物图像
SDXL VAE 模型sdxl_vae.safetensorsHugging Face 或 GitHub SD 项目仓库修复图像色彩与细节

镜像站搜索,对应的模型。haggingface网站一样搜索方法进行下载。就是下面
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.3 模型目录配置(关键!)

下载后需按以下路径放置模型,确保 ComfyUI 能正确识别:

ComfyUI-master/
├─ models/
│  ├─ instantid/          # InstantID 核心模型
│  │  └─ ipadapter/
│  │     └─ ip-adapter.bin  # 从 InstantID 仓库下载
│  ├─ controlnet/         # ControlNet 模型
│  │  └─ diffusion_pytorch_model.safetensors  # 从 InstantID 仓库下载
│  ├─ insightface/        # 面部分析模型(避免多一层目录!)
│  │  └─ antelopev2/      # 解压后直接放此目录,不含子文件夹
│  │     ├─ 1k3d68.onnx
│  │     ├─ 2d106det.onnx
│  │     └─ ...(其他 3 个 onnx 模型)
│  ├─ checkpoints/        # SDXL 真人模型
│  │  └─ LEOSAM HelloWorld_SDXL大模型.safetensors
│  └─ vae/                # VAE 模型
│     └─ sdxl_vae.safetensors

在这里插入图片描述在这里插入图片描述在这里插入图片描述

⚠️ 常见问题:若面部分析节点报错,大概率是 insightface/antelopev2 目录下多了一层解压文件夹(如 antelopev2/antelopev2/xxx.onnx),需删除多余层级。(这个本人在实际安装中遇到)

二、ComfyUI 节点安装

需安装 2 个关键节点:ComfyUI_InstantID(原生支持 InstantID)和 ComfyUI LayerStyle(换脸图层控制)。

2.1 安装步骤

  1. 打开 ComfyUI,点击左上角「节点管理」(ComfyUI-Manager);
    这之前有些文章介绍,可以查看这个链接:ComfyUI自定义节点安装教程
  2. 在「搜索框」输入节点名称,找到对应节点后点击「安装」
    • 节点 1:ComfyUI_InstantID(作者:Matteo,功能:原生 InstantID 支持,无需依赖 diffusers)
    • 节点 2:ComfyUI LayerStyle(作者:chflame163,功能:类似 PS 图层样式,支持换脸遮罩控制)
  3. 安装完成后,重启 ComfyUI 使节点生效。
    在这里插入图片描述

2.2 节点确认

在「已安装节点」列表中,确认以下节点存在:

  • ComfyUI_InstantID:包含 Load InstantID ModelInstantID Face AnalysisApply InstantID Advanced 等核心节点;
  • ComfyUI LayerStyle:包含 LayerMask: SegmentAnythingUltra V2 等换脸相关节点。

三、基础配置:文生图模板改造(含 InstantID 集成)

从 ComfyUI 默认文生图模板开始,逐步集成 InstantID 节点,实现「文本+人脸控制」的图像生成。

3.1 打开默认模板

  1. 启动 ComfyUI 后,默认加载「文生图模板」,包含以下核心节点:
    • Checkpoint 加载器(简易)CLIP 文本编码空 Latent 图像K 采样器VAE 解码保存图像
  2. SD1.5 模型,需替换为 SDXL 真人模型)。就是先删除原模板中失效的模型(默认
    在这里插入图片描述在这里插入图片描述

3.2 添加 InstantID 核心节点

从左侧节点栏拖拽以下节点到画布:

  1. Load InstantID Model:加载 InstantID 核心模型;
    • 配置:「模型」选择 ComfyUI-master/models/instantid/ipadapter/ip-adapter.bin
  2. InstantID Face Analysis:人脸关键点检测与分析;
    • 配置:「provider」选择 CPU(或 CUDA,需显卡支持),「image」后续连接换脸来源图;
  3. 加载 ControlNet 模型:加载 InstantID ControlNet 模型;
    • 配置:「ControlNet」选择 ComfyUI-master/models/controlnet/diffusion_pytorch_model.safetensors
  4. Apply InstantID Advanced:InstantID 高级应用节点(核心控制);
    • 初始配置:ip_weight=0.8cn_strength=0.8start_at=0.0end_at=1.0(后续可微调)。
      在这里插入图片描述

3.3 加载face来源图

添加「加载图像」节点:

  1. 拖拽 加载图像 节点到画布;
  2. 点击「选择文件上传」,上传你得用于「脸部的来源图片」(需包含清晰人脸);
  3. 将「加载图像」的「图像」输出端,连接到 InstantID Face Analysis 的「image」输入端。
    在这里插入图片描述

四、模型替换与节点重连

将默认模板的 SD1.5 模型替换为 SDXL 真人模型,并补充 VAE 节点,确保 InstantID 与新模型兼容。
在这里插入图片描述

4.1 替换 SDXL 真人模型

  1. 拖拽 Checkpoint 加载器(简易) 节点到画布;
  2. 配置:「模型」选择 ComfyUI-master/models/checkpoints/LEOSAM HelloWorld_SDXL大模型.safetensors(或其他 SDXL 真人模型);
  3. 「CPU/VAE」暂时留空,后续连接独立 VAE 节点。
    在这里插入图片描述

4.2 添加 SDXL VAE 节点

  1. 拖拽 加载 VAE 节点到画布;
  2. 配置:「vae 名称」选择 ComfyUI-master/models/vae/sdxl_vae.safetensors
  3. 作用:修复 SDXL 模型生成图像的色彩偏差(如偏灰、偏色)。

4.3 关键节点重连(核心步骤)

按以下逻辑连接各节点(参考示意图),确保数据流向正确:

输出节点输出端输入节点输入端
Checkpoint 加载器modelK 采样器model
Checkpoint 加载器clipCLIP 文本编码(正负)clip
CLIP 文本编码(正面)conditioningApply InstantID Advancedpositive
CLIP 文本编码(负面)conditioningApply InstantID Advancednegative
Load InstantID ModelmodelApply InstantID Advancedmodel
InstantID Face Analysisimage_kpsApply InstantID Advancedimage_kps
加载 ControlNet 模型control_netApply InstantID Advancedcontrol_net
Apply InstantID AdvancedconditioningK 采样器positive
空 Latent 图像latentK 采样器latent
K 采样器latentVAE 解码latent
加载 VAEvaeVAE 解码vae
VAE 解码image保存图像image

在这里插入图片描述

4.4 参数调整(优化生成效果)

  1. K 采样器配置
    • 采样器名称:选择 euler(快速测试,稳定);
    • 步数:20(基础值,可增至 30 提升细节);
    • cfg:2-3(控制文本与图像的关联度,过高易失真);
    • 降噪:1.0(默认,文生图模式);
  2. 空 Latent 图像部署
    • 宽度/高度:1024×1024(SDXL 模型推荐尺寸,避免拉伸);
  3. 提示词优化
    • 正面提示词:masterpiece, teenage, beautiful scenery, nature glass bottle landscape, purple galaxy bottle(可根据需求修改);
    • 负面提示词:text, watermark, low quality, blurry(过滤低质量元素)。
      在这里插入图片描述

直接运用文生图进行图片生成,脸部特征。
在这里插入图片描述

五、face效果扩展:添加遮罩与图层控制

在基础文生图+InstantID 配置上,增加 LayerStyle 节点,实现精准替换(替换指定face区域)。

5.1 添加face相关节点

从左侧节点栏拖拽以下节点:

  1. LayerMask: SegmentAnythingUltra V2:face区域分割(生成遮罩);
    • 配置:sam_mode=m_vit_l(1.25GB)threshold=0.30detail method=VITMatte
    • 作用:精准识别图像中的人脸区域,生成遮罩用于face;
  2. VAE 编码:将face来源图编码为 Latent 格式;
  3. 设置 Latent 噪声:控制face区域的融合度;
    • 配置:降噪=0.5(平衡真实度与融合度)。

5.2 face节点连接

  1. 将「加载图像」(face来源图)的「图像」输出端,连接到 LayerMask: SegmentAnythingUltra V2 的「image」输入端;
  2. LayerMask 的「mask」输出端,连接到 Apply InstantID Advanced 的「mask」输入端;
  3. VAE 编码 的「latent」输出端,连接到 K 采样器 的「latent」输入端(替换原空 Latent 图像);
  4. 确保 设置 Latent 噪声 的「latent」输出端,连接到 K 采样器 的「noise」输入端。

在这里插入图片描述

5.3 工作流确认

完整face工作流包含以下节点链:
加载图像(来源图)InstantID Face AnalysisLayerMaskApply InstantID AdvancedK 采样器VAE 解码保存图像

5.4 资源下载

通过下面是直接工作流材料下载,直接能够导入。
链接: link

六、运行与效果验证

  1. 启动生成:点击画布右上角的「运行」按钮,等待生成完成(根据显卡性能,1024×1024 图像约 10-30 秒);
  2. 效果查看:生成完成后,在「保存图像」节点的预览窗口查看结果,确认:
    • face是否与来源图一致;
    • 否符合文本提示词(如“purple galaxy bottle”);就是背景
    • 无明显face痕迹(可微调 ip_weight/cn_strength 优化融合度);
  3. 参数微调建议
    • 若face不清晰:提高 ip_weight(如 0.9);
    • 若背景与文本偏差大:降低 cn_strength(如 0.7);
    • 若face区域有边缘瑕疵:调整 LayerMaskthreshold(如 0.25-0.35)。
      在这里插入图片描述

七、后续优化与资源

  1. 工作流导出:完成配置后,可凭借 ComfyUI 的「保存工作流」功能导出为 JSON 文档,后续直接导入启用;
  2. 模型扩展:可尝试其他 SDXL 真人模型(如 RealVisXLJuggernautXL),或 InstantID 衍生模型(如 InstantX/FLUX.1-dev-Controlnet-Union);
  3. 问题排查:若节点报错,优先检查:
    • 模型路径是否正确(无多余目录);
    • 节点是否全部安装并重启 ComfyUI;
    • 显卡显存是否充足(SDXL 模型建议 8GB 以上显存)。

附录:关键节点机制速查

节点名称核心功能关键参数
Load InstantID Model加载 InstantID 特征模型模型路径(ip-adapter.bin)
InstantID Face Analysis脸关键点检测provider(CPU/CUDA)
Apply InstantID Advancedface与文本控制ip_weight、cn_strength
LayerMask: SegmentAnythingUltra V2人脸区域分割生成遮罩threshold、detail method
加载 VAE修复图像色彩偏差VAE 模型路径
K 采样器图像生成核心计算cfg、步数、采样器

总结

这篇文章主要在问文生图基础上,添加instantID节点进行face。后续的图生图的face,本文没有详细描述,不过直接参考链接免费资源图片face工作流json档案

重要报错模型文件安放位置,和节点安装。重要网络难题。大模型档案许可通过镜像站下载。

posted @ 2025-10-17 08:37  yxysuanfa  阅读(205)  评论(0)    收藏  举报