Stable Diffusion基础:ControlNet之图像提示(垫图)

本文给大家分享 Stable Diffusion 的基础能力:ControlNet 之图片提示。

这篇故事的主角是 IP-Adapter,它的全称是 Text Compatible Image Prompt Adapter for Text-to-Image Diffusion Models,翻译成中文就是:用于文本到图像扩散模型的文本兼容图像提示适配器,名字很长很拗口,我们只要记住四个字就行了:图像提示,如果还觉得长,那就两个字:垫图。记不住也没关系,下面我会带大家一步步体会它的图片生成能力。

使用过 Stable Diffusion 的同学对提示词的重要程度应该深有体会,无论是文生图还是图生图,我们想要在图片上展现某些元素,都需要编写对应的提示词,有时候为了避免生成一些不想要的东西,我们还需要编写反向提示词。某种程度上可以说提示词就是图片的灵魂。

不过 Stable Diffusion 本身支持的提示词都是文本提示词,文本到图像的映射存在很大的不确定性。而IP-Adapter 可以一定程度上解决这个问题,它提供了一种图像提示的方法,让新生成的图片可以直接使用参考图中的某种主题元素,很多同学也称这个能力为垫图。从描述上看 IP-Adapter 的能力类似 Reference,不过它更高级,最主要的区别就是不用怎么编写提示词。百闻不如一见,先看看官方给的效果图。

IP-Adapter 是一个目前比较新的 ControlNet 类型,是由腾讯AI实验室发布的一个开源项目,项目地址:github.com/tencent-ail... ,懂技术的同学可以去研究研究。

下面开始我们的使用之旅。

安装

ControlNet 安装

工欲善其事必先利其器,ControlNet 还是先要安装好的,已经安装好的请跳过这一步。

之前的文章已经介绍过相关安装方法,大家请点击这个链接移步过去:ControlNet 安装与基本使用方法

注意需要将 ControlNet 插件升级到 v1.1.410 这个版本,这个版本支持新的 ControlType 类型。

IP-Adapter 安装

使用 IP-Adapter 前,还需要先安装两个预处理器,三个模型。

两个 预处理器

/extensions/sd-webui-controlnet/annotator/downloads/clip_vision/clip_g.pth

/extensions/sd-webui-controlnet/annotator/downloads/clip_vision/clip_h.pth

三个模型

/extensions/sd-webui-controlnet/models/ip-adapter_sd15.pth

/extensions/sd-webui-controlnet/models/ip-adapter_sd15_plus.pth

/extensions/sd-webui-controlnet/models/ip-adapter_xl.pth

不方便访问 huggingface 的同学可以通过我整理的资源下载,下载方式见文章最后;或者直接使用 AutoDL 上我发布的镜像:www.codewithgpu.com/i/AUTOMATIC...

基本使用

先选择一个大模型,提示词和反向提示词都不需要填写,采样器和采样部署都使用默认的就行。提示词也可以填写,会产生一些生图效果,后面会有相关介绍,这里先从最简单的开始。

在第一个 ControlNet 单元中上传一张照片,这里以大家都熟悉的蒙娜丽莎为例,这张照片就是用来做图像提示的,别忘了勾选"启用"和"完美匹配像素"。

然后是 IP-Adapter 的几个设置:Control Type 中选中 "IP-Adapter",预处理器和模型会自动带出,如果没有带出,请检查上一步的模型是否正确安装。

预处理器有两个:

  • ip-adapter_clip_sd15:适用于 Stable Diffusion 1.5 模型。
  • ip-adapter_clip_sdxl:适用于 Stable Diffusion XL 模型。

模型有三个:

  • ip-adapter_sd15:适用于Stable Diffusion 1.5。
  • ip-adapter_sd15_plus:适用于 Stable Diffusion 1.5,更细粒度的提示,生成图片和原画更接近。
  • ip-adapter_xl:适用于 Stable Diffusion XL。

然后点击生成就可以了,我这里对你了几个模型,大家看看效果。

主体的长相、表情、发型、衣着、姿态和参考图都挺像的,背景也基本都是相同的内容,只是不同的大模型也会有大模型各自的特色。

到这里大家应该能感受到 IP-Adapter 的图像提示能力了。

用途演示

更换主体的形态

这种方法是将图像提示应用到某个新的结构中,这需要再增加一个Control Type 用于控制图片的结构。

这个演示在文生图中进行,还是不需要填写任何提示词,第一个 ControlNet 单元选择 IP-Adpater,用作新生成图片的提示。

第二个 ControlNet 单元是 Depth,他将从图片中提取深度信息,用于控制图片的结构。

生成图片的效果如下:

除了 Depth,我们也可以使用 Canny、Lineart、SoftEdge、OpenPose 等来控制图片中的元素结构。

这里给出一个使用 IP-Adapter + OpenPose 的出图效果,人物的外形来源于参考图,姿势是 OpenPose 控制的。有了这个我们就可以在保持小姐姐外形不变的情况下,灵活的摆出各种姿势了,这对于绘本故事、小说推文一类的比较有意义。

替换主体到目标图中

在图生图页面中,选择"局部绘制",上传一张图片,我们要把她的面部替换掉,这里用局部绘制自带的涂抹工具把脸涂上。

ControlNet 单元这里还是要启用 IP-Adapter,上传一张要换脸的参考图。

最终处理效果:

改变画面元素

这里需要使用 文本提示+图像提示 一起发挥作用。看下面这个例子,在图生图中,给图片人物增加一顶帽子,同时背景设置为海滩。

ControlNet 单元中不需要再设置参考图,因为我们要修改的就是当前要图生图的图片,另外下边这个控制权重可以根据实际需要调整下,这里需要调整的小一些,问题提示词的作用才更明显。

看效果:

融合主体到画面中

这里以著名的坤图为例。还是在图生图中,这里不需要提示词,上传一张要融合到图像提示生成画面的图片。

注意重绘强度,太低了,人物融合不到图片中,太高了画面中看不出来人物的形态,根据经验,从 0.55 开始比较方便调整。

ControlNet 这里上传一张参考图,新生成的图片要按照它的提示进行处理。

看一下生成效果:

再看这张戴珍珠耳环的少女:

资源下载

本系列使用的模型、插件,生成的图片,都已经上传到我整理的 Stable Diffusion 绘画资源中,后续也会持续更新,如有需要,请关/注/公/众/号:萤火遛AI(yinghuo6ai),发消息:SD,即可获取下载地址。


以上就是本文的主要内容了,如有问题,欢迎留言沟通交流。

相关推荐
程序员X小鹿6 小时前
免费,手机可用!一款AI数字人生成工具,200+数字人形象任选,3分钟定制专属数字人!(附教程)
aigc
狼爷11 小时前
Reddit 舞台上的 AI:解码用户生活密码,隐私警钟敲响
安全·aigc
AI极客菌14 小时前
[ComfyUI]Flux:繁荣生态魔盒已开启,6款LORA已来,更有MJ6&写实&动漫&风景&艺术&迪士尼全套
ai作画·stable diffusion·aigc·midjourney·人工智能作画·comfyui·风景
袁庭新18 小时前
安装luasocket模块时提示“sudo: luarocks:找不到命令“问题,该如何解决?
java·人工智能·ai·aigc·lua·luarocks·袁庭新
阿牛牛阿1 天前
多模态大模型(1)--CLIP
算法·机器学习·ai·aigc
想成为高手4991 天前
成功男人背后的女人--解析AIGC幕后的算法原理
算法·aigc
量子位1 天前
百度打通两大国民产品!六边形 AI 创作新物种「自由画布」来了
人工智能·aigc
全域观察1 天前
出海攻略,如何一键保存Facebook视频素材
人工智能·新媒体运营·aigc·内容运营·程序员创富
是店小二呀1 天前
丹摩征文活动|Llama 3.1 开源模型快速部署:从零到上线
aigc·丹摩智算
浪遏2 天前
豆包姐姐成功引起了我对LangChain的注意🤡!
aigc