使用controlnet:
controlnet可以识别图像边缘来重新上色、识别图像结构来画出类似的图像、识别人物姿势来画特定姿势的人物图像等等。他可以让你更大程度上控制你的生成结果。尤其是最后一点,使用controlnet即可在很大程度上控制生成出图像的构图了。
他的原理是先对你输入的图片进行处理,得到机器可以理解的一张参考图(如深度图/骨骼图等),然后再让stable diffusion按照参考图画画。对输入图片进行处理的过程称为预处理,而预处理的过程也是由ai完成的,此时即需要额外下载用于预处理的模型。
安装:
和LoRA类似,开启webui后依次点击扩展-从网址安装,并输入此网址:
https://github.com/Mikubill/sd-webui-controlnet
点击安装,安装完成后下面会有installed的提示。
随后点击重启webui,即可在参数栏下方看到ControlNet的选项卡。

显存小于8G就勾上低显存优化。
可以看到有一个预处理器选择框,这里的选项决定了controlnet在此发挥的作用。

此时我以openpose pose detection
举例,我们首先选择openpose姿态检测,然后去下载用于进行姿态检测的模型:
https://huggingface.co/webui/ControlNet-modules-safetensors/tree/main
此处提供了几个功能所需要的模型,我在此下载openpose这个模型,然后放进
stable-diffusion-webui\extensions\sd-webui-controlnet\models
这里面。
完成后点击右边的刷新,就能选择刚刚下载的模型了。
我们先来体验一下,在上面的图像栏传一张真人全身照图片,然后点击最下面的预览处理结果preview annotor result
,然后就卡住了.mp4
实际上,这个时候他会自动下载几个annotor用的模型:

所以大陆的朋友就会卡住了。大家就要去这里手动补一下,如图

右边的文件夹是在
stable-diffusion-webui\extensions\sd-webui-controlnet\annotator
当然不一定都下,但是这些东西也不大,都下了就一劳永逸了。建议都下。
完事了之后你再重启webui,重复上面的操作,就发现他成功的给你生成了一张骨骼图,恭喜:

(此照片使用CC授权)
使用:
打开controlnet选项卡,勾选启用(按需勾选低显存优化),然后上传你要让他学习的原图,按需选好预处理器并选择对应模型,然后写好prompt点生成就好了。他会先对你的图像进行预处理,生成参考图,然后直接用参考图画画,生成完就会在生成窗口里把参考图一并输出来。

几点注意:
controlnet提示我们不要忘记写反向提示词negative prompt
,并给我们提供了这一些:
longbody, lowres, bad anatomy, bad hands, missing fingers, extra digit, fewer digits, cropped, worst quality, low quality
。
openpose是一个用于检测真人的姿势的模型,扔进去二次元图片多半认不出来,所以你可以找个模特摆姿势然后拍照。
如果你也像我一样没有模特的话可以用blender直接生成出参考图扔给他用,以后再写。
到此为止你应该明白如何用controlnet控制人物的姿势了
留下昨晚上随便搓的图片
