ComfyUI 中你不得不了解的插件,IPAdapter 基础的使用

1 什么是 IPAdapter?

IPAdapter 是一个轻量级的适配器,它的作用是将一张图像或几张图像的风格迁移到另一张图像上去,可以把它当作只有一张图像的 lora。通俗的讲就是垫图。

IPAdapter 接受一张图像作为输入,将其编码为Token,并和标准的提示词输入混合作用于图像的生成。

图片

2 ComfyUI_IPAdapter_plus 的安装

第一步安装插件 ComfyUI_IPAdapter_plus

图片

图片

第二步下载模型到 ComfyUI 目录,下载地址:https://github.com/cubiq/ComfyUI_IPAdapter_plus?tab=readme-ov-file 或者公众号内回复 IPA 获取模型下载链接

目前作者插件支持的模型有以下

  • clip_vision 视觉模型:即图像编码器,下载完后需要放在 ComfyUI /models/clip_vision 目录下

    • CLIP-ViT-H-14-laion2B-s32B-b79K.safetensors

    • CLIP-ViT-bigG-14-laion2B-39B-b160k.safetensors

  • IP-Adapter 模型:下载完后需要放在 /ComfyUI/models/ipadapter 目录下

    • ip-adapter_sd15.safetensors:基本模型, 平均强度

    • ip-adapter_sd15_light_v11.bin:与ip-adapter_sd15相同,但更兼容文本提示

    • ip-adapter-plus_sd15.safetensors:比 ip-adapter_sd15 更接近参考图像

    • ip-adapter-plus-face_sd15.safetensors:人像模型

    • ip-adapter-full-face_sd15.safetensors:更强的脸模型,但效果不一定更好

    • ip-adapter_sd15_vit-G.safetensors:使用 ViT-bigG 视觉编码器

    • ip-adapter_sdxl_vit-h.safetensors:使用 ViT-H 视觉编码器

    • ip-adapter-plus_sdxl_vit-h.safetensors:更接近参考图

    • ip-adapter-plus-face_sdxl_vit-h.safetensors:SDXL人像模型

    • ip-adapter_sdxl.safetensors:SDXL 基本模型

需要注意,其中名字带有 sd15 适用于 sd15 大模型,带有 sdxl 的适用于 sdxl 大模型

其中名字带有 vit-h 的使用 ViT-H 视觉编码器,名字带有 vit-G 的使用 ViT-G 视觉编码器;

SDXL 大模型默认使用 ViT-G,SD15 大模型默认使用 ViT-H。

3 基础工作流

我们先从基础工作流开始,我们只使用 IPAdapter 引导图像扩散,而不使用提示词

图片

3.1 节点说明

其主要在文生图的工作流上添加了以下几个节点

图片

1)IPAdapter Advanced(应用IPAdapter(高级))

  作用:读取并转换图像特征

  输入:

  • model:接受 Unet 模型的输入

  • ipadapter:接受 ipadapter 模型

  • image:接受图像的输入

  • image_negative:接受负面图像输入,简单说就是传入不想要的元素。比如说我们不想要参考图的某种颜色,我们就可以将有该颜色的图片传入到 image_negative 中

  • attn_mask:接受图像遮罩,收到后,只会识别图像遮罩的部分

  • clip_vision:接受视觉编码器模型输入

  参数:

  • weight:参考权重

  • weigth_type:IPA的权重类型

  • combine_embeds:图像特征和其他问题提示词的组合方式

  • start_at:作用开始时间

  • end_at:作用结束时间

  • emdeds_scaling:

  输出:

  • model:输出经过 ipadapter 引导的大模型

2)IPadpter Model Loader

作用:IPadpter模型加载器

3)Load CLIP Vision

作用:CLIP视觉模型加载器

3.2 使用 IPAdapter 生成更好的图片

通常情况下,使用 IPAdapter 会导致生成的图像过拟合(burn),这时候需要降低一点CFG并提高一点迭代步数,可以看下面不同 CFG 和 步数下的对比。可以看到 CFG 在 6 的时候图像更加柔和。

图片

当然,我们还可以通过 image_negative 来输入图像消除过拟合的情况并平滑我们的画面。

我们需要在原工作流中增加一个 IPAdapter Noise(IPAdapter噪波节点,该节点接受原始图像,将其翻转并添加噪点后输入到 image_negative 中,能够对图像进一步去噪重绘。

图片

下面来看下该节点的详细说明:

图片

输入:

  • image_optional:接受原始图像输入

参数:

  • type:原始图像的类型

  • strength:添加的噪波强度

  • blur:输入图片的模糊程度

输出:

  • IMAGE:添加噪波的图像

  • IMAGE:添加噪点后的图像

我们还可以通过提示词配合 IPAdapter 来生成更好的结果。

输入提示词 A beautiful girl wearing pearl earrings,并适当降低 IPAdapter 的权重为0.7,查看生成的结果,效果非常不错。

图片

最后来看下优化后的对比图

图片

4 IP Adapter Plus Model 对比

ip-adapter-plus_sd15.safetensors 模型相比 ip-adapter_sd15.safetensors 生成的结果图像更加接近于原图。

下面看下同参数下 ip-adapter-plus_sd15 生成的图像对比。

图片

5 Prepping Images 预处理图像

IPAdapter 只支持方形的参考图,默认会自动居中裁剪。

图片

如果我们想要参考输入图片的脸部,这时候可以使用 Prep Image For ClipVision(CLIP视觉图像处理) 节点。

图片

5.1 Prep Image For ClipVision(CLIP视觉图像处理)节点

作用:将图像的最小边缩小到 224px,其它边按比例缩放,并按裁剪位置,裁剪输入图像到 224*224 的分辨率。

输入:

  • image:接受图像的输入

参数:

  • interpolatio:图像缩放时的插值算法。主要是作为图像图像缩放后新位置像素的计算方式。

  • crop_position:裁剪位置。

    • top/bottom/left/right/center/pad:以顶部/底部/左部/右部/居中/填补方式裁剪。使用该设置参考图像的不同位置。

  • sharpening:输出图像的锐化程度,图像模糊的情况下,可以适当增加锐化,提高图像清晰度。

6 多张输入图像的参考

IPAdapter 能够同时参考多张图片的风格。借助 Batch Images(图像组合批次)节点输入多张参考图。

图片

那么多参考图什么时候使用?我们以下面的例子分析下。输入4张参考图,并输入提示词1girl,red skirt,调整 IPAdapter 的强度为 0.7

图片

然后将输入的参考图像改为两张,可以看到输出的结果,虽然有细节上的变化,但是大致的构图和颜色是不变的。这是因为我们输入的参考图或多或少都表现出了相同的概念,红色的衣服,红色的头发等

图片

不难发现在使用 IPAdapter 时,提供相同元素的参考输入是没有意义的。因此我们在增加输入参考图像时,要考虑我们想要在结果图像中添加什么。

比如下面的,我们在输入的参考图中添加了一张蝴蝶背景的照片。可以看到输出结果图像发生很好的变化效果。

图片

7 ip-adapter-plus-face_sd15 模型

该模型是专门训练用来参考脸部的模型的,它会尽可能描述脸部的特征,眉毛形状、头发颜色等,来生成相似的脸部,因此我们输入的参考图需要尽量的聚焦于脸部。

因为只参考了脸部,所以我们需要输入提示词来描述生成图像的其他信息。

我们传入一张人脸照片,并输入提示词 A fairy woman wearing a long dress, with a heroic posture like a movie, dramatic lighting, close-up 一个穿着长裙的精灵女性,电影般的英雄姿势,戏剧性的灯光,特写

图片

8 SDXL 模型

接下来看 IPAdapter 在 SDXL 大模型的使用情况如何

将我们的 ipadapter 大模型选择为 ip-adapter_sdxl.safetensors,并选择适用于 SDXl 的 CLIP 视觉模型。

通常情况下,SDXL 对原图像有更高的参考性。

图片

图片

我们再来看下 ip-adapter_sdxl_vit-h.safetensors的效果,注意带 vit-h 的模型需要使用适用于 sd15 的 CLIP 视觉模型。最后生成的结果一言难尽!!

图片

图片

最后看下SDXL的脸部参考模型 ip-adapter-plus-face_sdxl_vit-h.safetensors 的效果如何。

效果也不是很好,事实上,原始的 IPAdapter 模型都是会参考原图像的风格的,面部模型只是更多的参考面部特征,生成的结果和原图的面部也不是很像,后续会讲到的 insightfaceinstantID 有更好的效果。

图片

图片

9 IPadapter 应用图生图

我们输入一张宇航员的图像作为图生图的底图,将降噪幅度选择为 0.35。

图片

图片

然后输入提示词 A woman wearing a spacesuit in space,减少 IPAdaper 的强度到 0.7 再看下结果

图片

图片

10 ControlNet

我们还可以在控制图像构图的情况下,增加 IPAdaper 的参考。

下面我们使用 Canny 来控制图像的构图看下生成的图像结果。

生成的结果保留构图的同时,也一定程度上参考了 IPAdaper 输入图像的风格。

图片

图片

11 IPAdaper 应用放大图像

这里我们来对比下在重绘放大时,使用 IPAdaper 参考和不使用的差异。我们将原图像放大两倍后,采用0.5的去噪强度进行重绘。

图片

明显可以看到使用了 IPA 后的放大图像是更像原图的,不使用IPA则更偏向于模型。

图片

12 Embedding 嵌入组

通常在基础工作流中,我们加载 CLIP 视觉模型后会占用我们显存,我们希望能够编码一次后就可以卸载 CLIP 模型。

这时候我们可以将 CLIP 视觉模型处理后数据保存为 Embedding,后续就可以用直接使用而降低显存了。

图片

在 CLIP 模型一直在的时候,显存大概占用 5G 左右。

图片

这里主要使用到以下两个两个新节点:

1)IPAdapter Encode(IPAdapter 编码)

作用:将输入图像经 CLIP 视觉编码后输出 embeddings。

输入:

  • IPAdaper:接受 IPAdapter 模型

  • image:接受图像输入

  • mask:接受图像遮罩输入

  • clip_vision:接受 CLIP 视觉模型输入

参数:

  • weight:控制强度

输出:

  • pos_embed:正向嵌入组

  • neg_embed:反向嵌入组

2)IPAdapter Embeds(应用IPAdapter(嵌入组))

作用:和 IPAdapter Advanced(应用IPAdapter(高级))一样,不过使用的是正反向接受的是 pos_embed 和 neg_embed 的输入。

插件中还提供了保存 Embeding 的节点,后续可以直接使用保存的 Embbeding 文件,而不用再加载图像和 CLIP 模型,节省显存消耗。

图片

其主要使用到了 IPAdapter Save Embeds(保存嵌入组) 节点来保存 Embedding 文件,其文件保存路径为 ComfyUI 的 output 目录下。

图片

然后将保存的 Embedding 文件放到 ComfyUI 的 input 目录下。使用 IPAdaper Load Embeds(读取嵌入组)节点加载Embeddings。

图片

可以看到直接使用 Embedding 的情况下,显存占用 4G 左右,节省了 1G 左右的显存。并且你还可以直接将 Embedding 文件发送给其他人使用。

图片

 

为了帮助大家更好地掌握 ComfyUI,我在去年花了几个月的时间,撰写并录制了一套ComfyUI的基础教程,共六篇。这套教程详细介绍了选择ComfyUI的理由、其优缺点、下载安装方法、模型与插件的安装、工作流节点和底层逻辑详解、遮罩修改重绘/Inpenting模块以及SDXL工作流手把手搭建。

由于篇幅原因,本文精选几个章节,详细版点击下方卡片免费领取

 

一、ComfyUI配置指南

  • 报错指南

  • 环境配置

  • 脚本更新

  • 后记

  • .......

img

二、ComfyUI基础入门

  • 软件安装篇

  • 插件安装篇

  • ......

img

三、 ComfyUI工作流节点/底层逻辑详解

  • ComfyUI 基础概念理解

  • Stable diffusion 工作原理

  • 工作流底层逻辑

  • 必备插件补全

  • ......

img

四、ComfyUI节点技巧进阶/多模型串联

  • 节点进阶详解

  • 提词技巧精通

  • 多模型节点串联

  • ......

img

五、ComfyUI遮罩修改重绘/Inpenting模块详解

  • 图像分辨率

  • 姿势

  • ......

img

六、ComfyUI超实用SDXL工作流手把手搭建

  • Refined模型

  • SDXL风格化提示词

  • SDXL工作流搭建

  • ......

img

由于篇幅原因,本文精选几个章节,详细版点击下方卡片免费领取

img

 

  • 22
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值