StableDiffusion学习笔记——9、ControlNet使用介绍2:风格迁移类

目录
  大家好,我是阿赵。
  继续学习StableDiffusion的用法。
  上一篇介绍了一部分ControlNet控制类型的用法。那些类型都是比较好理解的,因为都是控制生成图片的总体形状或者姿势的。
  而这一篇要介绍的几个效果,会复杂一些。因为它们并不会直接的控制生成图片的形状,而是从风格上去控制生成图片。

1、IP-Adapter

  IP-Adapter是可以提取图片特征的预处理
在这里插入图片描述

  它有多种的预处理器可以选择,比如face_id类的,可以提取图片里面角色的脸部特征。
在这里插入图片描述

  需要注意的是,提取脸部特征、换脸之类的效果,一般都是需要先安装insightface的,不然运行的时候可能会报错。
安装insightface的网址:
https://huggingface.co/h94/IP-Adapter-FaceID
https://huggingface.co/lllyasviel/ControlNet-v1-1/tree/main
  另外一种报错,就是没有选择的预处理器对应的模型,比如这样:
在这里插入图片描述

  如果是这样,就要自行去寻找ControlNet使用的模型下载了。其他的预处理器也会存在这种情况。
  如果所有插件和模型都下载好的情况,就可以对参考图片进行提取特征了。
在这里插入图片描述

  比如我这里找了一个拳皇的角色图片进行提取,使用的是face_id_plus预处理器和对应模型:

在这里插入图片描述

  这时候生成图片,会看到所有生成的图片,都有原来参考图片的特征,主要体现在发型、发色、脸型、眉毛、眼神和表情。

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

  由于我使用的是face_id类预处理器,所以提取的特征主要集中在脸部,如果我选择auto类的预处理器,那么提取的特征就不限于脸部了:
在这里插入图片描述

  这时候再生成一下图片:

在这里插入图片描述

  可以看到,除了头部特征,包括了背景颜色特征、身体特征和纹身的特征都被收集到了,生成的图片会带有这些特征。

2、 局部重绘

  图生图功能本身也有局部重绘的功能,是可以通过遮罩来重绘原图的一部分。ControlNet里面也有一个局部重绘的功能,这个功能主要是能联系参考图片,生成出新的部分。
在这里插入图片描述

  比如我现在有一张比较窄的长方形图片,想扩充一下这个图片的大小,所以我选择了缩放后填充空白,并且把图片的尺寸改成了正方形:
在这里插入图片描述

  然后在ControlNet里面选择了局部重绘,并且生成图片。可以看到,原图里面没有的内容,在新生成的图片上面得到了补充,让整个画面扩充了,并且和原图的内容完美的结合在一起。
在这里插入图片描述

3、Instant-ID

  Instant-ID是一个很比较特殊的控制类型
在这里插入图片描述

  特殊的地方在于,它的预处理器,包含了embedding和keypoints这两种,必须两种预处理器一起使用才能生效:
在这里插入图片描述

  既然是需要两种预处理器同时使用,那么就需要使用2个单元的ControlNet了:
在这里插入图片描述

  在第一个单元里面,先选择embedding预处理器和对应的处理模型。

在这里插入图片描述

  这里我选择一张面无表情的男人图片作为参考,并且生成预处理结果预览。这个过程会提取这个面无表情的男人的脸部特征:
在这里插入图片描述

  然后在第二个单元,我再选择一张表情夸张的男人图片作为参考
在这里插入图片描述

  并且选择keypoints预处理器进行生成预处理预览:
在这里插入图片描述

  会看到预处理结果是一个类似于骨骼的点线结构:
在这里插入图片描述

  在实际生成图片之前,这里需要说明2点:
第一,Instance-ID需要配合XL模型使用,所以我这里选择了一个真境写真的XL模型:
在这里插入图片描述

第二, 由于需要提取脸部特征,所以insightface插件要装好。
第三, 由于是使用XL模型加ControlNet,所以对显卡的显存要求比较大,6G及以下显存的显卡就不要勉强了,会报错显存不足的。
  在满足了以上条件之后,就可以输入一些提示词并且生成图片了:
在这里插入图片描述

  可以看到,生成出来的图片,内容还是刚才那个面无表情的男人,但他的表情变了,变成了后面第二个单元的参考图的表情。
  所以,Instance-ID的作用可以理解成是识别脸部特征并改变表情。

3、 InstructP2P

  InstructP2P是一个加特效的控制类型,注意的是,它没有对应的处理器,但需要对应的模型:

在这里插入图片描述

  提取预处理
在这里插入图片描述

  然后输入一个提示词,具体的格式是make it xxxx。后面的xxxx是具体要什么效果,比如make it ice,把它变成冰:
在这里插入图片描述

  这时候再生成图片,会发现刚才那个面无表情的男人的图片变成了在冰的环境中间,男人的头发、脸部、衣服和背景都变成了结冰的状态了:
在这里插入图片描述

4、 Recolor

  Recolor(重上色)的功能很明确,就是给没有颜色的图片重新上色:
在这里插入图片描述

  照一张黑白的风景图作为参考,并生成预处理结果预览:
在这里插入图片描述

  在不输入任何关键提示词的情况下:
在这里插入图片描述

  可以直接生成图片,这时候,会发现之前黑白的图片有了颜色:
在这里插入图片描述

  这时候我们可以通过提示词去控制图片的颜色内容,比如我可以输入黄昏:
在这里插入图片描述

  这时候,生成的图片就会有所改变:
在这里插入图片描述

5、 Reference

  Reference(参考)只有预处理器,没有对应模型的选项:
在这里插入图片描述

  使用这个效果控制,上传一张参考图片并且生成预处理结果预览:
在这里插入图片描述

  这时候生成图片,就会发现生成出来的图片会带着参考图片的一些元素特征:
在这里插入图片描述

6、 Revision

  Revision仅针对SDXL模型使用的。它没有对应的模型,只有预处理器。它的作用有点类似于提取图片里面的提示词特征:
在这里插入图片描述

  这里我选择参考图片:
在这里插入图片描述

  在不输入提示词的情况下,生成图片,会看到生成的图片都带有原参考图的一部分特征:
在这里插入图片描述

7、 Shuffle

  Shuffle随机洗牌是一个很有意思的控制类型,它会提取参考图片的特征,并且以这些特征重新组合成新的图片。
在这里插入图片描述

  比如我这里拿了某个比较有风格的游戏的标题作为参考图,并且生成预处理结果预览:
在这里插入图片描述

  这时候,我需要生成一些物品的图标,所以我在提示词里面输入了item icon:
在这里插入图片描述

  然后生成图片,会发现生成出了一些和参考图片风格很类似的图标了:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值