各位好,我是亦束,本期内容讲图生图的使用教程。
图生图就是让AI参照你给它的图片再结合提示词来绘图。
例如我上传一张照片,让AI把他画成卡通的(cartoon)。当然也可以结合文生图,我们去文生图生成一张图片,然后直接点击发送到图生图,可以看到图片的参数都到了图生图里,我们调整一下提示词,可以看到它根据新的描述生成了相似风格的新图像。
我们讲一下基础使用流程,点选框内空白处上传图片,也可以拖拽进来。生成的图片尺寸跟设定的一样。
我们点击它进入目录选择图片,然后点击生成,生成的图片是512*512的尺寸,就是设定的尺寸。
这里有很多已经在文生图里见过的选项,这些和文生图里的概念是一样的,如填写正负提示词,采样算法,采样步数,CFG Scal,seed,这些按照文生图里的教程来调整就行,就不在复述了。
在提示词右边有两个按钮,Interrogate CLIP根据图像生成一段描述文本,Interrogate DeepBooru根据图像生成标签,更适用于动漫或者游戏人物的提示词。
我们随便拿张图来测试一下,可以看到CLIP生成了一段描述文本,然后我们试试DeepBooru的结果,生成的是一个一个标签。
下面有一个Resize Mode,意思是当参考图与原始图设定的宽高不一致时,该用哪个方式进行缩放。
我们将Denoising strength调整为零,生成的图像就几乎不受提示词的影响,这样在没有其它的变量影响下,我们调整选项,看看生成的结果。第一个选项可以看到拉伸,第二个选项图片被裁剪了,第三个可以看到图像新的部分取了参考图边缘的颜色进行填充,最后一个也被拉伸了,但是比较模糊。
Denoising strength,数值越小,生成的图像越偏向原图,数值越大,生成的图像差异越大。数值为0时,几乎不参考提示词,数值为1时,几乎不参考原图像。
我们拿张图来测试,把值调低,可以看到与上传的图片区别很小,把值拉高,可以看到图片几乎全都改变了。
我们在上传图片这里看到框上面有好几个选项。
sketch(将画笔涂抹的区域颜色来作为一种输入),能让AI将你绘制的部分改变成你绘制的颜色。
我们上传一张图片,然后将衣服部分用蓝色画出,点击生成。可以看到她的衣服变成了蓝色。
Mask mode调整为 Inpaint masked,作用是将涂抹的地方让AI进行填充。
例如给角色换衣,则在正提示词内加入 workingsuit 或civilian clothes 这类的提示词。
Mask mode 调整为 Inpaint not masked,作用是让AI把图片未涂黑处进行填充。
例如我们让它给空白处添加一个森林背景。则在正提示词内加入 forest 。
我们接着往下看局部重绘的参数。
Maskblur ,直译是蒙板模糊,数值越小边缘越硬,数值越大边缘越虚。
跟 Adobe 产品里的羽化概念是一样的。
为了方便我们观察,我们将Denoising strength调为零,因为种子和参数都是一样的,就没有了其它的变量,这样便于我们观察结果,关于这一点在文生图已经讲过,忘记了可以去回顾一下。
我们拉高数值,边缘就有了一个虚化的过渡,然后我们降低数值,可以看到模糊点边缘非常的硬。通常我们看到边缘太硬,或者羽化过大导致原图内容过度的保留了下来,我们就可以来调整这个参数直到达到理想的过渡效果。
左下角有个 Masked content ,其中 fill 为填充内容,会参考原图的主色调,新生成的图像与原始图像差异相对较大,original则是在填充内容的时候参考原图黑色底下的内容,适合对原图进行微调,latent noise 和 latent nothing是用前潜在空间噪声进行的填充,会生成差异非常大的内容。
我们将 Denoising strength 调回到 0.75 ,让它对图片有一定的自由绘制能力,然后我们再用相同的参数,不同的选项来看一下效果。
Mask mode ,Inpaint msked 为蒙板区域重绘,改成 Inpaint not masked 就变成非蒙板区域重绘,这个在之前例子里演示过就不再重复了。
内局部区域,有完整图像和仅蒙板部分的选项,完整图像意思是让AI参考整个图像来绘制,画出来的图像与原始图衔接起来会更合理。而仅蒙板的部分,就只在蒙板的区域生成一个全新的东西,适合创建一个独立的不需要与原图衔接的东西。
例如我们给一个人物换衣服,就更适合完整图像参考。如果我们用仅蒙板部分,就无法衔接上人物的身体。
如果我们要画一只鸟,就用仅蒙板部分,生成一个独立的对象。
后边这个选项,只在启用仅蒙板选项时才起作用,数值越小,细节越丰富。
刚刚生成的默认数值是 32 ,我们调小一点再生成,发现这个鸟的细节更丰富了。
Inpaint Sketch 从名字上来看就是前面局部重绘和颜色提示的组合,在 Mask 区域并结合你绘制 Mask 的颜色来生成图像。
例如我们给这个角色换衣服,我们用个红色的画笔,把衣服部分都涂抹上,可以看到新生成了一件不同的衣服,颜色是红色。
下面出现了一个新的选项,蒙板的透明度,顾名思义也就是这部分生成的内容的透明度,数值为零就不透明,Mask部分完全是新生成的内容,数值一百就是透明,没有新生成的内容。
用刚才一样的参数,我们调整这个数值,可以看到 0 的时候,被一个新的衣服完全覆盖,数值为 50 时,新生成的和原图相叠加,数值为 100 时,跟原图一样。
加载局部重绘,意思就是自己上传一张画好的蒙板图像来给它绘图,因为这里的画笔的工具并不能很细致的画蒙板,所以提供了一个自己上传蒙板的功能,这样你可以用其它工具画好蒙板再上传来生成新的图像,需要注意的是这里的蒙板区域是白色区域,而黑色区域是非蒙板区域。
例如我们用PS将这个图像的衣服用蒙板画出来,然后我们在SD里,上传一张原始图像,在下面一个框内上传画好的蒙板图,可以看到效果跟局部重绘是一样的。
批量处理。这个功能暂时比较鸡肋,虽然给了一个路径来填蒙板的目录,但它只会用第一张图来作为蒙板批量生成,而不是用命名匹配的。也就是说,你要给的所有参考图片蒙板部分都要一样,它才能给你批量生成,如果不一样它画的东西就适配不到你图像上。
我们用两张不同的图来测试一下,然后我分别都给画了蒙板区域,用了相同的命名,生成一下,可以看到两张图都用了一个蒙板。
本期内容已经把图生图基础功能全部讲完了,其中中间的那些选项都是插件脚本,放到以后再讲。
BGM:Prod.TheAsianOnes