即使之前在 Midjourney 中有过图生图的利用经验,但大部门人对该功效的印象仅限于喂图,通过它可以让模型了解更多我们要传达的信息,从而达到准确出图的目的。但在 Stable Diffusion 中的图生图还要强大的多,除了控图还包含了手动涂鸦、全部重绘、图象扩展等更多功效。
今天的文章里我会为你详细介绍图生图的工作原理、东西解析和图象重绘的应用方向,如果没有看过「文生图篇」的朋友建议先去学习下,以便你更好的理解今天的实质。
一、图生图功效初识
1. 传统意义上的喂参照图
我们都知道,模型在运算时是根据我们提供的提醒实质来确定画图方向,如果没有提醒信息,模型只能根据此前的学习经验来自行发挥。在之前的文生图篇,我们介绍了如何通过提醒词来控制图象实质,但想要实现准确的出图成效,只靠简短的提醒词是很难满足实际需求的。
AI 绘画的随机性导致我们利用大段的提醒词来精确描述我们想要的画面实质,但毕竟文字能承载的信息量有限,即使我们写了一大段咒语,模型也未必能准确理解,不排除有时候还会出现前后语义冲突的情况。其实这个过程就像甲方给我们明确设计方向,除了重复沟通想要的画面实质外,有没有什么比口述更高效的沟通方式呢?这个时候,有经验的甲方会先去找几张目标风格的竞品图,让我们直接按照参照图的感觉走。
「感觉」这个词听起来似乎虚无缥缈,但在 AI 绘画领域是有实际道理的,因为图象能承载的信息要比文字多得多。以上面这张图为例,如果用提醒词描述,可能写上几百字都难以向模型解释清楚画面的实质,但图生图不同,模型会自动从参照图上提取像素信息,并将其作为特征向量准确映射到最终的画图结果上,通过这样的方式能最大程度还原参照图中的提醒信息,实现更稳定准确的出图成效。
因此,传统意义上的图生图就是将提醒词和参照图中的图象信息举行综合考虑并举行画图的过程。
2. 真正强大的图象重绘
当然,如果仅仅是喂图功效,Stable Diffusion 的图生图板块并不值得我们单独花一篇文章来讲解,它的真正价值在于提供了丰富的操作东西将图象可控性提升到了新的层次。
我们先来回顾下平时利用文生图举行 AI 绘画的过程:编写提醒词举行画图,然后根据出图结果再不断优化提醒词和各类参数举行抽奖,最终得到一张比较满意的图片。而图生图则是直接根据现有图片举行优化调整,因此图生图的操作过程可以简单理解成省去了前期文生图的抽奖过程,直接在现有图象约束的基础上举行的二次重绘。
需要注意的是,配合参照图举行图生图的过程是需要将参照图先逆向推导为潜空间的数据,再和提醒词综合考虑绘制成图象。因此相比没有逆向推导过程的文生图,图生图的绘制会占用更多的系统资源,根据这个原理,我们也就能理解利用参照图的尺寸越大,在逆向推导的过程中消耗的资源也会越多。
在 Stable Diffusion 中,我们可以通过蒙版和全部重绘等功效来控制只对图象特定部门的地区举行重绘,并配置各类参数来控制重绘的成效。此外通过选择不同的画图模型和调整图象尺寸,我们也能甚至还能实现画风转换、图象无损放大等更多玩法。相较于其他 AI 绘画东西,Stable Diffusion 中的图生图并非单纯的喂参照图,而是可以在现有图片的基础上通过人工干预来实现更加稳定可控的图象重绘。
二、图生图东西解析
在 WebUI 的功效导航栏中选择图生图模块,我们可以看到它的页面布局和文生图基本类似,同样有提醒词输入框、操作按钮和参数配置项,不同的是这里多了提醒词反推、支持上传图片的二级功效模块和对应的参数配置项。
1. 提醒词反推
先来看提醒词反推的功效:即根据提供的图片自动反推出匹配的文本关键词,也就是我们俗称的图生文功效。WebUI 这里提供了 Clip 反推和 DeepBooru 反推 2 种反推操作,其区别在于:
Clip 反推:推导出的文本倾向于自然语言的描述方式,即完整的描述短句,该功效的特点是可以描述出画面中对象间的关系
DeepBooru 反推:推导结果更多的是单词或短句,比较类似我们平时书写提醒词的方式,该功效更倾向于描述对象特征
不难看出,通过 Clip 和 DeepBooru 反推的提醒词中包含不少错误标签,需要人工举行二次筛选。其实,WebUI 在图生图模块内置提醒词反推是为了在上传图片后可直接获取相应的参照关键词,以便后面更好的通过提醒词来控制重画图象实质。但实际上我们平时反推提醒词时更常利用的是秋叶整合包中自带的 Tagger 插件,该插件除了生成的提醒词准确度和稳定更高,还提供了关键词分析和排名展示,属于 Stable Diffusion 的必备插件之一。
在 Stable Diffusion 中有非常多类似的开源插件可以有效提升画图效率,但不属于本篇文章重点,这里就不过多介绍了。
2. 二级东西栏概览
在图生图模块中为我们内置了许多二级东西栏,很多朋友看到这样可能会担心学习起来很复杂。但其实这里每款东西其实都是在上一个东西基础上举行的衍生,比如涂鸦和全部重绘是在原生图生图基础上增加了手绘和蒙版,而涂鸦重绘又是这 2 款东西的结合。系统来看,所有的二级东西都是围绕图象重绘、手绘涂鸦和蒙版选区这 3 个基础功效所举行的重组,而 WebUI 作者是为了方便我们利用将实际操作场景举行了细分。
上图中整理了不同东西的简介和差异对比,下面针对每款东西和相关参数为大家举行详细介绍。
3. 图生图东西
这部门的操作和文生图基本相同,区别在于支持额外上传参照图并增加了几项图生图专属的参数。下面介绍几项影响图生图成效的重要参数,这也是所有二级模块都需要用到的参数,其中和文生图模块中相同的参数这里就不再赘述了,大家可以回顾下「文生图篇」的相关实质。
①重绘幅度
重绘幅度可以说是图生图中最重要的参数,它的功效有点类似 Midjourney 中的 iw 参数。前面介绍图生图的原理是在原图基础上绘制一张新的图片,而重绘幅度就是用来控制在原图基础上重绘的发散性程度,数值越高,说明模型重绘过程中更加自由,绘制结果和原参照图的差异性越大,生成的图象也就更倾向于模型自身的画图风格。
可以看到当重绘幅度过高时,绘制的图象实质和原图基本就很难举行关联了,因此我们通常将重绘幅度的数值控制在 0.4~0.8 之间,这样既能维持参照图的控图成效,又能保证重绘后不会发生太强烈的变化。但从重绘幅度角度来看图象可操作的范围并不大,该参数的更多场景是配合其他功效项举行灵活调节,在下面的实质中我会配合各类东西举行详细介绍。
②重绘尺寸
故名思义,该参数用于配置重绘后的图象尺寸,可以分为直接配置图象宽高和配置图象缩放倍数 2 种调节方式。
默认情况下重绘尺寸会自动带入当前参照图的宽高数值,而当我们拖动尺寸滑块时,可以直观的在参照图上预览重绘后的图象范围。
③缩放模式
很多时候我们的参照图和重绘后的图片尺寸并不一致,而缩放模式就是用来选择采用何种变形方式来处理图象。这里虽然提供了 4 个按钮,但是可以分为 2 类场景来利用。一种是图象长宽比发生变化时利用,这里提供了 3 种我们常见的处理方式:拉伸、裁剪、添补(由于汉译插件不同,在名称上存在一定差异)。另一种是图象长宽比例不变时利用,多数情况下用于图象等比放大。
换句话说,如果重绘后的图象尺寸和原图完全一样,这几种缩放模式利用起来并没有区别。
下面我们来挨个介绍不同缩放模式的成效差异。首先是拉伸模式(仅调整大小),它的成效是将原图直接变形拉伸至新设定的尺寸。在下面的图中可以看到,在重绘幅度参数配置为 0 时,图象被直接变形拉伸为正方形,而随着提升重绘幅度,变形成效逐渐得到缓解,但同样也会导致和原图差异过大。
第二种裁剪模式(即裁剪后缩放)是根据新设定图象的长宽比,对原参照图的实质举行裁切。重绘后尺寸由矩形变为正方形,上下部门实质被裁切,这里的重绘幅度参数不会对图象的长宽比例产生影响。
第三个添补模式(缩放后添补空白)的成效根据新设定的长宽比例,将原图缺失的部门举行绘制添补。比如当图象从原图的 512*768 重绘为 768*768 时,下图的成效就是向左右添补了新的背景实质,且随着重绘幅度数值越大,添补部门和原图的融合成效越好。
最后一种缩放模式叫调整大小(潜空间放大),有的地方也叫直接缩放,该功效主要用于对图象举行等比放大,实现“小图转大图”的成效。当然如果重绘尺寸比例和原图比例不一致,则默认会采用拉伸的方式举行处理,但由于是反馈到潜空间中举行运算,因此图象出现了模糊变形的成效。
相较于单纯增加分辨率的放大做法,图生图中利用调整大小模式有重绘幅度参数可供调节,少量的重绘幅度可以为原图增加更多细节。
当然添加重绘幅度的弊端是不可避免的会导致图象发生改变,想要实现更好的成效还有更多定制插件可以实现低显存绘制高清大图,此处先按下不表。
对于调整大小功效的潜空间放大算法,我们可以在配置-放大-图生图放大算法中举行切换,选择之后记得保存配置并重启 webUI 界面。
综合利用场景来看,除非是需要对图象举行画布拓展,否则多数情况下还是建议先将参照图裁剪到目标比例再导入图生图中利用,这样的出图成效会更加可控。
下面我们再来看看图生图模块下的其他二级东西及参数,由于汉化差异,二级东西的名称可能不同,比如涂鸦重绘有的翻译插件下也被称作有色蒙版重绘。
4. 涂鸦东西
再来看看第二个涂鸦东西,涂鸦东西的参数项和图生图完全相同,唯一区别是上传图象后右上角多了画笔东西,支持我们对图象举行涂抹。涂鸦东西相当于增加了我们传统的手绘过程,在图片上涂抹色块后再举行全图范围的图生图,同时配合提醒词可以实现更加多样的重绘成效。
其中画笔支持调整调整笔触大小和切换颜色,自带的吸色东西也可以举行全屏幕范围内的取色。
在这几个操作东西中,返回上一步的按钮目前还存在 bug,有时候并不会逐步撤回而是将整个涂鸦笔触全部清空。并且由于不知名原因,上传的图片有时候会出现报错或失效等情况,需要删除当前图片后重新上传才能。
涂鸦东西的操作很简单,利用画笔在图象上涂抹颜色后点击生成,Stable Diffusion 会将手绘后的图象举行整体重绘,同时控制重绘幅度和增加描述关键词可以实现非常神奇的融图成效。在下图中可以看到女孩的衣服会根据涂鸦部门重绘成紫色的运动服,当重绘幅度配置为 0.5 左右时达到比较自然的融合成效。
需要注意的是通过涂鸦东西来重画图象时,由于重绘幅度的影响,画面中未被涂鸦的部门也会发生变化,因此涂鸦东西是针对画面整体举行重绘。
由于鼠标涂鸦的绘制成效不够准确,而且涂抹的颜色不支持透明度等细节调整,因此涂鸦东西平时利用并不多,一般都是导入 PS 中举行细致的绘制操作,这里就不做过多赘述了。
5. 全部重绘东西
再来看看全部重绘东西,在前几天,Midjourney 终于上架了大家期待已久的全部重绘功效,应该算得上是 Midjourney 目前在控图方向上最大的一次迈步,而 Stable Diffusion 在这块算得上是深耕已久。简单来说,全部重绘就是在图象中设定一块地区,在图生图过程中只针对该地区部门举行重绘,而其他部门保持不变,从而实现精准控制改变图象特定部门的成效。该功效通常用于对画面大部门实质都基本满意,但需要调整部门细节元素的场景。
在下图中可以看到,全部重绘同样是利用画笔举行涂抹,但这里涂抹的颜色只有黑色,因为被涂抹地区表示的是蒙版,而不是实际的颜色色块。
下面我们来看看全部重绘的各项参数。
蒙版边缘模糊度:该参数用于配置重绘地区和原图的融合程度,成效可以简单理解为 PS 中的选区羽化。边缘模糊度太小会导致边缘衔接过于生硬,而数值太高会削弱蒙版的地区限制成效,导致蒙版不精确或直接失效。默认情况下数值是 4,我们可以根据图象的融合成效来举行适度调节。
为方便对比蒙版成效,在下图的案例中我选择重绘黑色蒙版之外的地区,可以发现当边缘模糊度为 0 时,蒙版边缘非常生硬,而随着数值变大,重绘地区和原图的融合过渡也变得更加自然。
蒙版模式:「重绘蒙版地区」表示重绘涂抹过的蒙版地区,「重绘非蒙版地区」表示涂抹地区不变,而是重绘画面中的其他地区。该参数类似 PS 中的选区反转,在实际利用时根据重绘地区大小自由选择是涂抹需要重绘的部门还是剩余的背景部门。
蒙版地区实质处理:该选项用于配置重绘时的图象处理方式,这里提供了 4 个选项:添补、原图、潜空间噪声、空白潜空间,具体的成效可以看下图,相较之下潜空间噪声会比其他几项产生出更多变化,而原图的成效比较稳定。
该参数对画图结果的影响不太稳定,一般情况下保持默认的「原图」即可。
重绘地区:指的是重绘过程中用于参照的图象范围。在下图中可以清楚的看到,当重绘地区配置为「仅蒙版地区」时,绘制的部门只有涂抹的蒙版部门地区的元素,相当于把涂抹地区切割下来单独举行重绘,该选项下会打断选区和参照图其他部门的联系,最终画面的融合成效可能会下降。
仅蒙版地区下边缘预留像素:该参数只在重绘地区选择了「仅蒙版地区」时生效,用于控制切割下来重绘部门向外扩展的范围大小。观察下面重绘过程的进度图可以发现,边缘预留像素的数值越大,则绘制过程中会向四周裁剪更多的实质举行整体重绘。
在默认情况下全部重绘会参照全图举行绘制,并且被涂抹的范围并不代表都会发生变化,所以通常我们会在目标地区基础上对外再涂抹一部门地区,以保证重绘后更好的融合成效,而提高边缘预留像素也是同样的原理。
总结来看,由于手涂蒙版的方式比较方便也很自由,因此全部重绘被广泛用于图象的全部调整,比如常见的脸部修复、手部修复等。
6. 涂鸦重绘东西
涂鸦重绘东西可以理解为涂鸦+蒙版的结合,相当于在涂抹颜色的同时加上了全部重绘的蒙版,只不过这个过程中颜色涂抹和蒙版绘制是同时举行的。因此和全部重绘相比,涂鸦重绘多了一个参数项:蒙版透明度。
蒙版透明度配置的是涂抹色块在画面中的呈现成效:当透明度配置为 0 时涂抹颜色完全覆盖下方图片,此时等同于涂鸦东西的成效,50%时相当于半透明色块,而达到 100%时蒙版完全透明,相当于色块消失。需要注意的是,当透明度过高时涂抹色块可能无法被 Stable Diffusion 准确识别,绘制结果中会直接呈现出半透明色块成效(如下图中的 50%透明度时)。
下面举个实际案例,我们希望实现长裙变短裙的成效。如果只是单纯的全部重绘,重绘的部门始终会受到原图其他部门的影响出现裙摆,但这里的重绘幅度又不能调整过高,否则和原图会产生明显的割裂感。
但利用了涂鸦重绘相当于给 Stable Diffusion 提供了大概的范围参照,并且由于可以自由配置绘制色块的不透明度,不用担心完全覆盖原图实质,在整个重绘操控上更加准确和稳定。
对比来看,涂鸦重绘比单纯的涂鸦东西多了蒙版的全部控图成效,又比全部重绘东西多了颜色的指导作用,可以说是两款东西的结合体。
7. 上传重绘蒙版东西
虽然涂鸦重绘成效很好,但毕竟手动涂抹的方式不够准确,因此 WebUI 也提供了自行上传蒙版的方法来精准控制重绘地区。上传重绘蒙版和全部重绘的页面基本相同,区别在于支持额外上传一张已绘制好的蒙版图。
这里蒙版图片的颜色含义和 PS 中的蒙版相同,白色表示有实质,黑色表示为空,因此白色地区内的图象会被举行重绘。相信很多朋友都出现过黑白蒙版傻傻分不清楚的情况,这里给大家分享个小妙招。我们只要将蒙版图想象成黑板即可,黑色表示默认的空白,白色即粉笔添补后的实质。
需要注意的是,在 Stable Diffusion 中表示半透明蒙版的灰色并不适用,因此像黑白渐变的蒙版图不起成效,我们平时用黑白纯色即可。
上传蒙版的优势在于我们可以精准控制蒙版范围,通常在 PS 中举行抠图并添补成黑白蒙版图,再上传到 Stable Diffusion 中举行利用。
8. 批量处理东西
最后还有个批量处理东西,顾名思义可以批量对图象举行重绘操作。只需配置到相关参数和提醒词,配置到参照图文件夹和输出文件夹就能实现批量重绘。我们平时在抖音上看到那种用拍摄视频转换 AI 画图视频也是同样的原理,通过将视频拆解成逐帧图片再举行重绘,但目前开源社区中有用于制作动态视频更好用的插件,这里就不再赘述了。
三、关于图生图的更多知识
由于各款东西的名称都比较相似,加上不同功效项的调节参数和利用方法都不同,新手在学习图生图模块时很容易把各类功效弄混淆。因此,在学习这类 AI 绘画东西时,我更建议大家按照下面重绘应用方向的思路来理解,而不是单纯的从东西角度学习。
1. 重绘的 3 个应用方向
我们前面提到图生图的本质是举行图象的二次重绘,根据绘制地区的差异,可以将重绘功效划分为整体重绘、全部重绘和图象扩展三个方向:
整体重绘 Img2img:按照原图的比例举行整体重绘,即传统意义上的基于参照图举行图生图,需要注意的是图象比例不变,但尺寸可以等比例调整。
全部重绘 Inpaint:通过手动涂鸦或上传蒙版等方法控制只针对指定地区举行重新绘制。
图象拓展 Outpaint:在原画布尺寸基础上向其他方向拓展,添加更多原画布外的实质。
回过头来看,文生图、图生图、涂鸦都相当于整体重绘功效,而全部重绘、涂鸦重绘和上传重绘蒙版则是全部重绘功效,至于图象扩展则是在图象比例发生变化且缩放模式选择添补时启用。
我们横向对比其他东西来看,整体重绘、全部重绘和图象扩展可以说是所有图象处理东西的基础功效,毕竟可控性在商业领域的价值很多时候比创意性更加重要,而可以将两者结合起来灵活利用的 AI 绘画东西才称得上是行业翘楚。这也是为什么 PS 的创意生成和画布拓展绘制功效刚一推出就引起广泛热议,而像 Midjourney 近期更新的 Zoom Out 图象扩展和 Vary(Region)全部重绘等功效同样也是在向控图稳定性方向发展。
2. 图生图中的提醒词
前面提到图生图本质是增加了参照图的约束,虽然提醒词的信息权重被参照图削弱了一部门,但并不意味着提醒词就没用了。相反,很多时候还是需要通过提醒词来告诉 Stable Diffusion 我们希望绘制的实质。这时候有朋友会问,那我们是只填写需要重绘部门的实质还是将画面全部实质举行完整描述呢?其实,图生图的提醒词填写要根据实际的出图成效来调整。
当我们只希望更改画面中的部门元素而其他部门不变时,就需要在提醒词中将不更改的部门举行保留,并对修改部门举行调整或补充描述,为了保证出图成效还可以灵活增加对应关键词的权重。
而当全部重绘时,如果绘制部门和原有图象的融合成效不佳,我们可以增加蒙版部门之外的实质描述来加强和画面其他部门的联系,比如下面的图中通过交互动作来增加重绘后手部和环境的融合成效。
以上案例只针对提醒词举行了调整,实际利用时像 seed 值、重绘幅度、画图模型等因素也要举行灵活考虑。
3. 图生图和高清修复
如果有仔细观察的小伙伴应该已经发现了,图生图中并没有提供文生图中的高清修复选项,这是因为高清修复的本质就是举行了一次额外图生图操作,同样是先生成小图再举行放大,所以在图生图中想实现高清修复,只需将图象尺寸调大举行重绘即可,此外高清修复这一特性在图生图中有更多利用场景。
不知道大家平时是否发现过这样的现象,当人物在画面中占比越小,出图结果中出现脸部崩坏的情况就越常见,而当对人物脸部特写时很少出现崩坏情况。这是因为 Stable Diffusion 模型在逆向扩散的过程中对大地区的图象去噪处理会更加清晰,因此更擅长绘制画面中占比大的事物,通过利用这一点我们可以将图象中不清晰的小图截取出来举行放大重绘,然后再放回原图位置,即可有效修复全部变形的情况。
结束撒花
在今天文章里,我为大家介绍了 Stable Diffusion 中图象重绘的作用、各类东西和参数的功效解析以及关于图象重绘的学习思路。相比于文生图的一步成型,图生图更多是碎片化的利用思路,需要通过不断的修饰和调整全部细节来得到我们想要的图片。