前言
有没有发现,用 Stable Diffusion 制作的AI图片时,想要对人物姿态进行精确控制是一件比较麻烦的事,虽然AI绘图生成的图片很精美,但随机性也比较大,那么如何对人物姿态进行控制呢?
比如,如果我想得到人物的上半身或全身图片,需要在提示词中加上upper body (上半身)或 full body (全身)的提示词(效果见下图)。
左为上半身图片,下为全身图片
如果我想得到人物坐姿或走路的图片,需要加入 sitting(坐姿)或walking(走路)的提示词(效果见下图)。
左为坐姿,右为走姿
虽然用提示词可以控制人物姿势,但相对来说还不能够达到精确控制人物姿势的程度,所以今天我们要用到 ControlNet 插件,来实现对人物姿势的精确控制。
来到图生图下方的 ControlNet 页面,拖入一张事先准备好的人物姿势图,点击启用后,预处理器和模型均选择 OpenPlse,设置好尺寸后点击生成即可。
在生成页面, OpenPose 会生成两张图片,一张是依据参考图片生成的AI图片,另一张是根据参考图片产生的骨骼图片。
可以看到,生成的AI图片和参考图片的姿势还是比较接近的。
如果找不到合适的人物姿势,这里给大家提供一个网址,可以在线调整人物骨骼姿势,调整好可以直接调入 ControlNet 中使用。
如果不想慢慢调整,可以依次点击左上角的文件-->设置随机姿势,然后点击右下角保存当前姿势。
选择一个喜欢的姿势拖进ControlNet 中,因为我们拖进来的就是骨骼图,所以在左下方预处理器的地方就不需要再选择 OpenPose 再进行姿态检测了,直接选择“无”就可以。
生成图片如下,效果还是挺不错的。
其实在刚接触 OpenPose 的时候,我就想到 3ds max 自带的 Biped 骨骼用在这里应该也挺合适的,如果你会 3ds max,用 Biped 进行骨骼调节要比上面这个网页版的骨骼调节起来方便快捷的多。不过要注意的事,用 Biped 做骨骼姿势时,要把左下角的预处理器里重新选择上OpenPose。
看下效果吧。
最后将这次做的AI图片来一个合集。
如果你喜欢这篇文章,多谢关注、点赞和评论,你的支持是我最大的动力。